From e5968a14f11d71d60213d840e10bb8d77caa46f9 Mon Sep 17 00:00:00 2001 From: bje Date: Sat, 18 Sep 2004 09:03:41 +0000 Subject: [PATCH] * Merge with edge-vector-mergepoint-20040918. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/edge-vector-branch@87701 138bc75d-0d04-0410-961f-82ee72b054a4 --- ChangeLog | 12 +- MAINTAINERS | 2 + config/ChangeLog | 1 + configure | 162 +- configure.in | 3 +- fixincludes/ChangeLog | 29 + fixincludes/fixincl.x | 182 +- fixincludes/inclhack.def | 67 +- fixincludes/tests/base/curses.h | 5 - fixincludes/tests/base/fcntl.h | 14 - fixincludes/tests/base/stdlib.h | 6 + fixincludes/tests/base/sys/cdefs.h | 5 + fixincludes/tests/base/sys/time.h | 5 + gcc/ChangeLog | 1340 ++- gcc/ChangeLog.vec | 4 + gcc/LANGUAGES | 12 + gcc/Makefile.in | 107 +- gcc/aclocal.m4 | 2 +- gcc/ada/ChangeLog | 354 +- gcc/ada/Makefile.in | 2 +- gcc/ada/Makefile.rtl | 2 +- gcc/ada/a-calend.adb | 2 +- gcc/ada/a-direct.adb | 81 +- gcc/ada/a-direct.ads | 5 +- gcc/ada/a-except.adb | 31 + gcc/ada/a-retide.adb | 28 +- gcc/ada/ada-tree.def | 23 +- gcc/ada/ada-tree.h | 7 +- gcc/ada/ali.adb | 6 + gcc/ada/atree.adb | 1 - gcc/ada/bindgen.adb | 40 +- gcc/ada/checks.adb | 1 + gcc/ada/cuintp.c | 20 +- gcc/ada/decl.c | 117 +- gcc/ada/exp_ch3.adb | 72 +- gcc/ada/exp_ch3.ads | 2 +- gcc/ada/exp_ch6.adb | 28 +- gcc/ada/exp_dist.adb | 1507 ++- gcc/ada/exp_dist.ads | 17 + gcc/ada/exp_pakd.ads | 8 +- gcc/ada/g-pehage.adb | 8 +- gcc/ada/g-pehage.ads | 58 +- gcc/ada/g-perhas.ads | 67 - gcc/ada/g-trasym.ads | 4 +- gcc/ada/gigi.h | 22 +- gcc/ada/gnat_rm.texi | 27 +- gcc/ada/gnat_ugn.texi | 119 +- gcc/ada/gnatbind.adb | 2 +- gcc/ada/gnatdll.adb | 182 +- gcc/ada/gnatls.adb | 460 +- gcc/ada/impunit.adb | 3 +- gcc/ada/init.c | 5 +- gcc/ada/lib-writ.adb | 4 + gcc/ada/lib-writ.ads | 3 + gcc/ada/link.c | 6 +- gcc/ada/mdll.adb | 59 +- gcc/ada/mdll.ads | 24 +- gcc/ada/misc.c | 4 +- gcc/ada/opt.adb | 2 +- gcc/ada/opt.ads | 4 + gcc/ada/prj-attr.adb | 124 +- gcc/ada/prj-attr.ads | 82 +- gcc/ada/prj-dect.adb | 22 +- gcc/ada/prj.ads | 3 + gcc/ada/raise.h | 2 +- gcc/ada/s-parint.adb | 95 +- gcc/ada/s-parint.ads | 71 +- gcc/ada/s-solita.adb | 36 +- gcc/ada/s-taprob.adb | 48 + gcc/ada/s-taskin.adb | 1 + gcc/ada/s-taskin.ads | 21 + gcc/ada/s-tasren.adb | 38 + gcc/ada/s-tassta.adb | 33 + gcc/ada/s-tpoben.adb | 80 +- gcc/ada/s-tposen.adb | 88 +- gcc/ada/sem_ch3.adb | 7 +- gcc/ada/sem_disp.adb | 3 +- gcc/ada/sem_dist.adb | 294 +- gcc/ada/sem_dist.ads | 12 +- gcc/ada/sem_prag.adb | 11 +- gcc/ada/sem_type.adb | 125 +- gcc/ada/sem_util.adb | 40 +- gcc/ada/sem_util.ads | 3 +- gcc/ada/trans.c | 490 +- gcc/ada/utils.c | 112 +- gcc/ada/utils2.c | 222 +- gcc/alias.c | 28 +- gcc/attribs.c | 8 +- gcc/basic-block.h | 5 +- gcc/bb-reorder.c | 2 +- gcc/builtins.c | 70 +- gcc/c-common.c | 173 +- gcc/c-common.def | 24 +- gcc/c-common.h | 13 +- gcc/c-decl.c | 1422 ++- gcc/c-format.c | 78 +- gcc/c-incpath.c | 23 +- gcc/c-incpath.h | 5 +- gcc/c-lang.c | 4 +- gcc/c-lex.c | 18 +- gcc/c-objc-common.c | 10 +- gcc/c-opts.c | 14 +- gcc/c-parse.in | 39 +- gcc/c-pch.c | 10 +- gcc/c-pragma.c | 26 +- gcc/c-tree.h | 89 +- gcc/c-typeck.c | 157 +- gcc/cfg.c | 6 +- gcc/cfgexpand.c | 24 +- gcc/cfgloop.h | 10 + gcc/cfgloopmanip.c | 9 +- gcc/cgraph.c | 6 + gcc/cgraph.h | 95 +- gcc/cgraphunit.c | 1098 +- gcc/common.opt | 20 +- gcc/config.gcc | 4 +- gcc/config.in | 18 +- gcc/config/alpha/alpha.c | 8 +- gcc/config/alpha/alpha.h | 2 +- gcc/config/arm/arm.c | 75 +- gcc/config/arm/arm.h | 2 +- gcc/config/arm/arm.md | 2 +- gcc/config/arm/bpabi.h | 2 +- gcc/config/arm/elf.h | 3 - gcc/config/arm/predicates.md | 2 +- gcc/config/c4x/c4x.c | 5 +- gcc/config/cris/cris-protos.h | 2 +- gcc/config/cris/cris.c | 7 +- gcc/config/darwin-c.c | 50 +- gcc/config/darwin-protos.h | 2 +- gcc/config/darwin.c | 89 +- gcc/config/darwin.h | 5 +- gcc/config/frv/frv.c | 6 +- gcc/config/frv/frv.md | 126 +- gcc/config/h8300/h8300.c | 5 +- gcc/config/h8300/h8300.md | 4 +- gcc/config/i386/gmm_malloc.h | 2 +- gcc/config/i386/i386-protos.h | 2 +- gcc/config/i386/i386.c | 138 +- gcc/config/i386/i386.h | 14 +- gcc/config/i386/i386.md | 211 +- gcc/config/i386/predicates.md | 13 +- gcc/config/i386/winnt.c | 6 +- gcc/config/ia64/ia64.c | 35 + gcc/config/ia64/ia64.md | 2 +- gcc/config/ip2k/libgcc.S | 2 +- gcc/config/m32r/m32r.md | 2 +- gcc/config/m68k/m68k.c | 5 +- gcc/config/m68k/m68kelf.h | 2 +- gcc/config/mcore/mcore.c | 6 +- gcc/config/mcore/mcore.md | 2 +- gcc/config/mips/mips-ps-3d.md | 6 +- gcc/config/mips/mips.c | 77 +- gcc/config/mips/mips.h | 8 +- gcc/config/mips/mips.md | 66 +- gcc/config/pa/pa.c | 3 +- gcc/config/pa/pa.h | 2 +- gcc/config/rs6000/aix.h | 2 +- gcc/config/rs6000/darwin.h | 13 +- gcc/config/rs6000/linux-unwind.h | 6 + gcc/config/rs6000/linux64.h | 7 +- gcc/config/rs6000/rs6000.c | 17 +- gcc/config/s390/s390.c | 14 +- gcc/config/sh/sh.c | 10 +- gcc/config/sh/sh.md | 20 +- gcc/config/sh/symbian.c | 14 +- gcc/config/sh/t-sh | 2 +- gcc/config/sh/t-sh64 | 4 +- gcc/config/sol2-c.c | 6 +- gcc/config/sparc/sparc.c | 11 +- gcc/config/t-darwin | 4 +- gcc/configure | 3064 ++++- gcc/configure.ac | 36 +- gcc/convert.c | 4 +- gcc/coverage.c | 14 +- gcc/cp/ChangeLog | 181 +- gcc/cp/call.c | 37 +- gcc/cp/class.c | 116 +- gcc/cp/cp-gimplify.c | 2 +- gcc/cp/cp-lang.c | 6 +- gcc/cp/cp-objcp-common.h | 2 + gcc/cp/cp-tree.def | 95 +- gcc/cp/cp-tree.h | 37 +- gcc/cp/cxx-pretty-print.c | 5 +- gcc/cp/decl.c | 107 +- gcc/cp/decl2.c | 7 +- gcc/cp/error.c | 6 +- gcc/cp/lex.c | 43 +- gcc/cp/mangle.c | 60 +- gcc/cp/method.c | 2 - gcc/cp/name-lookup.h | 2 +- gcc/cp/parser.c | 38 +- gcc/cp/pt.c | 107 +- gcc/cp/search.c | 44 +- gcc/cp/semantics.c | 13 +- gcc/cp/tree.c | 21 +- gcc/cp/typeck.c | 18 +- gcc/cp/typeck2.c | 30 +- gcc/cselib.c | 27 +- gcc/cselib.h | 1 + gcc/dbxout.c | 41 +- gcc/dbxout.h | 11 + gcc/ddg.c | 2 +- gcc/defaults.h | 2 +- gcc/doc/c-tree.texi | 3 - gcc/doc/cfg.texi | 18 +- gcc/doc/compat.texi | 2 +- gcc/doc/cpp.texi | 2 +- gcc/doc/cppopts.texi | 2 +- gcc/doc/extend.texi | 425 +- gcc/doc/hostconfig.texi | 2 +- gcc/doc/include/texinfo.tex | 2 +- gcc/doc/install.texi | 21 +- gcc/doc/invoke.texi | 166 +- gcc/doc/md.texi | 20 +- gcc/doc/passes.texi | 11 +- gcc/doc/sourcebuild.texi | 10 +- gcc/doc/tm.texi | 33 +- gcc/doc/tree-ssa.texi | 14 +- gcc/doc/trouble.texi | 12 +- gcc/dominance.c | 26 + gcc/dwarf2out.c | 15 +- gcc/emit-rtl.c | 52 +- gcc/except.c | 37 +- gcc/expmed.c | 23 +- gcc/expr.c | 166 +- gcc/final.c | 63 +- gcc/fix-header.c | 14 +- gcc/fold-const.c | 330 +- gcc/fortran/ChangeLog | 192 +- gcc/fortran/array.c | 4 +- gcc/fortran/check.c | 17 + gcc/fortran/data.c | 4 +- gcc/fortran/decl.c | 4 +- gcc/fortran/dependency.c | 2 +- gcc/fortran/error.c | 2 +- gcc/fortran/f95-lang.c | 14 +- gcc/fortran/gfortran.h | 9 +- gcc/fortran/gfortran.texi | 2 +- gcc/fortran/interface.c | 2 +- gcc/fortran/intrinsic.c | 12 +- gcc/fortran/intrinsic.h | 3 + gcc/fortran/io.c | 2 +- gcc/fortran/iresolve.c | 26 + gcc/fortran/match.c | 2 +- gcc/fortran/misc.c | 2 +- gcc/fortran/module.c | 9 +- gcc/fortran/parse.c | 6 +- gcc/fortran/parse.h | 2 +- gcc/fortran/resolve.c | 4 +- gcc/fortran/scanner.c | 6 +- gcc/fortran/trans-array.c | 28 +- gcc/fortran/trans-array.h | 8 +- gcc/fortran/trans-common.c | 8 +- gcc/fortran/trans-const.h | 2 +- gcc/fortran/trans-decl.c | 4 +- gcc/fortran/trans-expr.c | 8 +- gcc/fortran/trans-intrinsic.c | 7 +- gcc/fortran/trans-io.c | 124 +- gcc/fortran/trans-stmt.c | 36 +- gcc/fortran/trans-types.c | 8 +- gcc/fortran/trans.c | 4 +- gcc/fortran/trans.h | 10 +- gcc/function.c | 11 +- gcc/gcc.c | 23 + gcc/gcse.c | 3 +- gcc/gen-protos.c | 2 +- gcc/genrecog.c | 2 +- gcc/ggc-common.c | 2 +- gcc/ggc-none.c | 11 +- gcc/gimplify.c | 76 +- gcc/ifcvt.c | 20 + gcc/java/ChangeLog | 38 +- gcc/java/Make-lang.in | 11 +- gcc/java/class.c | 2 +- gcc/java/java-gimplify.c | 3 +- gcc/java/java-tree.def | 44 +- gcc/java/jcf-write.c | 3 +- gcc/java/lang.c | 10 +- gcc/java/parse.y | 10 +- gcc/java/win32-host.c | 2 + gcc/lambda-code.c | 667 +- gcc/lambda-mat.c | 27 +- gcc/lambda-trans.c | 13 +- gcc/lambda.h | 16 +- gcc/langhooks-def.h | 3 + gcc/langhooks.c | 22 +- gcc/langhooks.h | 24 +- gcc/loop-invariant.c | 11 - gcc/loop-iv.c | 18 + gcc/loop-unroll.c | 474 +- gcc/loop.c | 1518 ++- gcc/loop.h | 430 - gcc/mips-tdump.c | 2 +- gcc/mips-tfile.c | 2 +- gcc/objc/Make-lang.in | 3 +- gcc/objc/objc-lang.c | 6 +- gcc/objc/objc-tree.def | 24 +- gcc/optabs.c | 2 +- gcc/output.h | 22 +- gcc/params.c | 2 +- gcc/passes.c | 18 +- gcc/po/ChangeLog | 10 + gcc/po/be.po | 3674 +++--- gcc/po/ca.po | 3935 ++++--- gcc/po/da.po | 3975 ++++--- gcc/po/de.po | 3685 +++--- gcc/po/el.po | 3689 +++--- gcc/po/es.po | 4037 ++++--- gcc/po/fr.po | 4284 +++---- gcc/po/gcc.pot | 11702 ++++++++++--------- gcc/po/ja.po | 3954 ++++--- gcc/po/nl.po | 3683 +++--- gcc/po/sv.po | 3681 +++--- gcc/po/tr.po | 4398 +++---- gcc/postreload.c | 13 + gcc/predict.c | 208 +- gcc/pretty-print.h | 12 +- gcc/print-rtl.c | 29 +- gcc/print-tree.c | 36 +- gcc/profile.c | 206 +- gcc/regclass.c | 28 +- gcc/reload.c | 13 +- gcc/reload1.c | 14 +- gcc/rtl.def | 3 +- gcc/rtl.h | 1 - gcc/stmt.c | 43 +- gcc/stor-layout.c | 17 +- gcc/target.h | 7 +- gcc/testsuite/ChangeLog | 301 +- gcc/testsuite/g++.dg/bprob/bprob.exp | 24 +- gcc/testsuite/g++.dg/ext/member-attr.C | 4 +- gcc/testsuite/g++.dg/warn/Wswitch-1.C | 8 +- gcc/testsuite/g++.dg/warn/Wswitch-2.C | 4 +- gcc/testsuite/g++.dg/warn/deprecated.C | 56 +- gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C | 10 +- gcc/testsuite/g++.old-deja/g++.other/sizeof3.C | 2 +- gcc/testsuite/gcc.c-torture/execute/991118-1.x | 14 - gcc/testsuite/gcc.c-torture/execute/bf64-1.x | 29 +- .../gcc.c-torture/execute/builtins/memmove.c | 14 +- gcc/testsuite/gcc.dg/991209-1.c | 3 +- gcc/testsuite/gcc.dg/Wswitch-2.c | 4 +- gcc/testsuite/gcc.dg/Wswitch-enum.c | 16 +- gcc/testsuite/gcc.dg/Wswitch.c | 8 +- gcc/testsuite/gcc.dg/asmreg-1.c | 2 +- gcc/testsuite/gcc.dg/darwin-longlong.c | 1 + gcc/testsuite/gcc.dg/declspec-4.c | 26 +- gcc/testsuite/gcc.dg/declspec-5.c | 28 +- gcc/testsuite/gcc.dg/declspec-6.c | 28 +- gcc/testsuite/gcc.dg/deprecated.c | 56 +- gcc/testsuite/gcc.dg/m-un-2.c | 2 +- gcc/testsuite/gcc.dg/noreturn-1.c | 8 +- gcc/testsuite/gcc.dg/noreturn-4.c | 2 +- gcc/testsuite/gcc.dg/pr14289-2.c | 12 - gcc/testsuite/gcc.dg/pr14289-3.c | 12 - gcc/testsuite/gcc.dg/tls/diag-2.c | 10 +- gcc/testsuite/gcc.dg/tree-ssa/copy-headers.c | 4 +- gcc/testsuite/gcc.dg/wtr-conversion-1.c | 4 +- gcc/testsuite/gcc.misc-tests/bprob.exp | 24 +- .../execute/intrinsic_fraction_exponent.x | 2 +- .../execute/intrinsic_nearest.x | 2 +- .../execute/intrinsic_set_exponent.x | 2 +- .../gfortran.fortran-torture/execute/nan_inf_fmt.x | 2 +- gcc/testsuite/lib/fortran-torture.exp | 16 +- gcc/testsuite/lib/g++.exp | 13 +- gcc/testsuite/lib/g77-dg.exp | 46 - gcc/testsuite/lib/g77.exp | 225 - gcc/testsuite/lib/gcc-defs.exp | 4 +- gcc/testsuite/lib/gcc.exp | 16 +- gcc/testsuite/lib/gfortran.exp | 11 +- gcc/testsuite/lib/mike-g77.exp | 262 - gcc/testsuite/lib/objc.exp | 21 +- gcc/testsuite/lib/profopt.exp | 15 +- gcc/testsuite/lib/treelang.exp | 12 +- gcc/toplev.c | 66 +- gcc/tree-browser.c | 46 +- gcc/tree-cfg.c | 458 +- gcc/tree-chrec.c | 20 +- gcc/tree-complex.c | 8 +- gcc/tree-data-ref.c | 16 +- gcc/tree-data-ref.h | 2 +- gcc/tree-dfa.c | 85 +- gcc/tree-dump.c | 44 +- gcc/tree-eh.c | 8 +- gcc/tree-flow-inline.h | 14 +- gcc/tree-flow.h | 16 +- gcc/tree-gimple.c | 23 +- gcc/tree-inline.c | 21 +- gcc/tree-into-ssa.c | 164 +- gcc/tree-loop-linear.c | 171 +- gcc/tree-mudflap.c | 4 +- gcc/tree-nested.c | 6 +- gcc/tree-optimize.c | 26 +- gcc/tree-outof-ssa.c | 2 +- gcc/tree-pretty-print.c | 35 +- gcc/tree-scalar-evolution.c | 8 +- gcc/tree-sra.c | 10 +- gcc/tree-ssa-alias.c | 235 +- gcc/tree-ssa-ccp.c | 11 +- gcc/tree-ssa-copy.c | 4 +- gcc/tree-ssa-copyrename.c | 21 +- gcc/tree-ssa-dce.c | 4 +- gcc/tree-ssa-dom.c | 492 +- gcc/tree-ssa-dse.c | 37 +- gcc/tree-ssa-forwprop.c | 10 +- gcc/tree-ssa-live.c | 6 +- gcc/tree-ssa-live.h | 2 +- gcc/tree-ssa-loop-ch.c | 142 +- gcc/tree-ssa-loop-im.c | 60 +- gcc/tree-ssa-loop-ivopts.c | 293 +- gcc/tree-ssa-loop-manip.c | 15 +- gcc/tree-ssa-loop-niter.c | 16 - gcc/tree-ssa-operands.c | 89 +- gcc/tree-ssa-phiopt.c | 2 +- gcc/tree-ssa-pre.c | 113 +- gcc/tree-ssa-propagate.c | 4 +- gcc/tree-ssa-threadupdate.c | 2 +- gcc/tree-ssa.c | 90 +- gcc/tree-ssanames.c | 6 +- gcc/tree-tailcall.c | 20 +- gcc/tree-vectorizer.c | 2 +- gcc/tree-vectorizer.h | 2 +- gcc/tree.c | 451 +- gcc/tree.def | 332 +- gcc/tree.h | 167 +- gcc/treelang/ChangeLog | 13 +- gcc/treelang/Make-lang.in | 5 +- gcc/treelang/treetree.c | 4 +- gcc/unroll.c | 3840 ------ gcc/value-prof.c | 2 +- gcc/varasm.c | 98 +- gcc/vec.h | 10 +- gcc/version.c | 2 +- include/ChangeLog | 4 + include/libiberty.h | 2 +- libcpp/ChangeLog | 16 + libcpp/charset.c | 28 +- libcpp/directives.c | 9 +- libcpp/include/line-map.h | 5 +- libffi/ChangeLog | 8 + libffi/testsuite/lib/libffi-dg.exp | 25 +- libgfortran/ChangeLog | 19 + libgfortran/Makefile.am | 1 + libgfortran/Makefile.in | 14 +- libgfortran/intrinsics/env.c | 37 +- libgfortran/io/list_read.c | 7 +- libjava/ChangeLog | 84 + libjava/Makefile.am | 12 +- libjava/Makefile.in | 361 +- libjava/configure | 308 +- libjava/gnu/java/net/protocol/file/Connection.java | 102 +- libjava/gnu/java/net/protocol/file/Handler.java | 11 +- libjava/include/win32-threads.h | 2 + libjava/java/lang/natPosixProcess.cc | 19 +- libjava/java/lang/natThread.cc | 6 + libjava/javax/naming/CompoundName.java | 4 +- libjava/libltdl/Makefile.in | 110 +- libjava/libltdl/aclocal.m4 | 202 +- libjava/libltdl/configure | 425 +- libjava/libltdl/configure.ac | 4 +- libjava/win32-threads.cc | 5 +- libmudflap/ChangeLog | 4 + libmudflap/testsuite/libmudflap.c/pass35-frag.c | 2 +- libobjc/ChangeLog | 4 + libobjc/encoding.c | 5 + libstdc++-v3/ChangeLog | 93 + libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h | 4 + libstdc++-v3/config/cpu/generic/cxxabi_tweaks.h | 2 + libstdc++-v3/config/io/basic_file_stdio.cc | 26 +- libstdc++-v3/include/bits/c++config | 2 +- libstdc++-v3/include/bits/cpp_type_traits.h | 4 +- libstdc++-v3/include/bits/fstream.tcc | 76 +- libstdc++-v3/include/bits/stl_algo.h | 2 - libstdc++-v3/include/bits/stl_algobase.h | 12 +- libstdc++-v3/include/std/std_fstream.h | 19 +- libstdc++-v3/libsupc++/cxxabi.h | 33 +- libstdc++-v3/libsupc++/vec.cc | 182 +- libstdc++-v3/testsuite/ext/mt_allocator/tune-1.cc | 21 +- libstdc++-v3/testsuite/ext/mt_allocator/tune-2.cc | 22 +- libstdc++-v3/testsuite/ext/mt_allocator/tune-3.cc | 24 +- libstdc++-v3/testsuite/ext/mt_allocator/tune-4.cc | 27 +- libstdc++-v3/testsuite/lib/libstdc++.exp | 13 +- maintainer-scripts/ChangeLog | 4 + maintainer-scripts/crontab | 2 +- 484 files changed, 49958 insertions(+), 38889 deletions(-) delete mode 100644 fixincludes/tests/base/fcntl.h delete mode 100644 gcc/ada/g-perhas.ads delete mode 100644 gcc/loop.h delete mode 100644 gcc/testsuite/gcc.c-torture/execute/991118-1.x rewrite gcc/testsuite/gcc.c-torture/execute/bf64-1.x (61%) delete mode 100644 gcc/testsuite/gcc.dg/pr14289-2.c delete mode 100644 gcc/testsuite/gcc.dg/pr14289-3.c delete mode 100644 gcc/testsuite/lib/g77-dg.exp delete mode 100644 gcc/testsuite/lib/g77.exp delete mode 100644 gcc/testsuite/lib/mike-g77.exp delete mode 100644 gcc/unroll.c diff --git a/ChangeLog b/ChangeLog index 654023ab4d8..f9755ac9d07 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2004-09-15 Andrew Pinski + + PR target/11572 + * configure.in (*-*-darwin*): Renable libobjc. + * configure: Regenerate. + +2004-09-10 Nathan Sidwell + + * MAINTAINERS: Add self as c++ and type-safe vector maintainer. + 2004-09-09 Daniel Berlin * Makefile.def: Remove libbanshee. @@ -576,7 +586,7 @@ of libf2c. * configure, Makefile.in: Regenerate. -2004-05-13 Tobias Schlüter +2004-05-13 Tobias Schlüter * MAINTAINERS (Write After Approval): Add myself. diff --git a/MAINTAINERS b/MAINTAINERS index 9414ff3e7e0..9b409138efb 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -112,6 +112,7 @@ fortran 95 Steven Bosscher stevenb@suse.de fortran 95 Toon Moene toon@moene.indiv.nluug.nl c++ Jason Merrill jason@redhat.com c++ Mark Mitchell mark@codesourcery.com +c++ Nathan Sidwell nathan@codesourcery.com cpplib Dave Brolley brolley@redhat.com cpplib Per Bothner per@bothner.com cpplib Zack Weinberg zack@codesourcery.com @@ -180,6 +181,7 @@ PRE, points-to Daniel Berlin dberlin@dberlin.org mudflap Frank Ch. Eigler fche@redhat.com tree browser/unparser Sebastian Pop s.pop@laposte.net profile feedback Jan Hubicka jh@suse.cz +type-safe vectors Nathan Sidwell nathan@codesourcery.com Note individuals who maintain parts of the compiler need approval to check in changes outside of the parts of the compiler they maintain. diff --git a/config/ChangeLog b/config/ChangeLog index 7de43818f2f..e935a928b5e 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -1,4 +1,5 @@ 2004-08-31 Robert Bowdidge + * mh-ppc-darwin: Add file, and override BOOT_CFLAGS. 2004-08-13 Nathanael Nerode diff --git a/configure b/configure index 35c07a2104e..592bf912795 100755 --- a/configure +++ b/configure @@ -545,7 +545,7 @@ fi ac_aux_dir= -for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do +for ac_dir in ${GNUSYSTEM_AUX_DIR} $srcdir $srcdir/.. $srcdir/../..; do if test -f $ac_dir/install-sh; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" @@ -1141,11 +1141,10 @@ case "${target}" in ;; powerpc-*-darwin*) noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof" - noconfigdirs="$noconfigdirs target-libobjc" ;; *-*-darwin*) noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof" - noconfigdirs="$noconfigdirs target-libobjc ${libgcj}" + noconfigdirs="$noconfigdirs ${libgcj}" ;; *-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*) noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" @@ -1771,7 +1770,7 @@ else # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1775: checking for $ac_word" >&5 +echo "configure:1774: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1801,7 +1800,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1805: checking for $ac_word" >&5 +echo "configure:1804: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1852,7 +1851,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1856: checking for $ac_word" >&5 +echo "configure:1855: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1884,7 +1883,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1888: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:1887: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -1895,12 +1894,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 1899 "configure" +#line 1898 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:1904: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1903: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -1926,12 +1925,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1930: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1929: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:1935: checking whether we are using GNU C" >&5 +echo "configure:1934: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1940,7 +1939,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1944: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1943: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -1959,7 +1958,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1963: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:1962: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2026,7 +2025,7 @@ fi # Extract the first word of "${ac_tool_prefix}gnatbind", so it can be a program name with args. set dummy ${ac_tool_prefix}gnatbind; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2030: checking for $ac_word" >&5 +echo "configure:2029: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_GNATBIND'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2058,7 +2057,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "gnatbind", so it can be a program name with args. set dummy gnatbind; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2062: checking for $ac_word" >&5 +echo "configure:2061: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_GNATBIND'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2091,7 +2090,7 @@ fi fi echo $ac_n "checking whether compiler driver understands Ada""... $ac_c" 1>&6 -echo "configure:2095: checking whether compiler driver understands Ada" >&5 +echo "configure:2094: checking whether compiler driver understands Ada" >&5 if eval "test \"`echo '$''{'acx_cv_cc_gcc_supports_ada'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2124,7 +2123,7 @@ else fi echo $ac_n "checking how to compare bootstrapped objects""... $ac_c" 1>&6 -echo "configure:2128: checking how to compare bootstrapped objects" >&5 +echo "configure:2127: checking how to compare bootstrapped objects" >&5 if eval "test \"`echo '$''{'gcc_cv_prog_cmp_skip'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2222,9 +2221,9 @@ saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $gmpinc" # Check GMP actually works echo $ac_n "checking for correct version of gmp.h""... $ac_c" 1>&6 -echo "configure:2226: checking for correct version of gmp.h" >&5 +echo "configure:2225: checking for correct version of gmp.h" >&5 cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2238: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* echo "$ac_t""yes" 1>&6 else @@ -2248,12 +2247,12 @@ rm -f conftest* if test x"$have_gmp" = xyes; then echo $ac_n "checking for MPFR""... $ac_c" 1>&6 -echo "configure:2252: checking for MPFR" >&5 +echo "configure:2251: checking for MPFR" >&5 saved_LIBS="$LIBS" LIBS="$LIBS $gmplibs" cat > conftest.$ac_ext < #include @@ -2261,7 +2260,7 @@ int main() { mpfr_t n; mpfr_init(n); ; return 0; } EOF -if { (eval echo configure:2265: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2264: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* echo "$ac_t""yes" 1>&6 else @@ -2738,7 +2737,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2742: checking for $ac_word" >&5 +echo "configure:2741: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_BISON'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2773,7 +2772,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2777: checking for $ac_word" >&5 +echo "configure:2776: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_YACC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2808,7 +2807,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2812: checking for $ac_word" >&5 +echo "configure:2811: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_M4'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2843,7 +2842,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2847: checking for $ac_word" >&5 +echo "configure:2846: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_FLEX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2878,7 +2877,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2882: checking for $ac_word" >&5 +echo "configure:2881: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_LEX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2913,7 +2912,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2917: checking for $ac_word" >&5 +echo "configure:2916: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_MAKEINFO'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3547,7 +3546,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:3551: checking for $ac_word" >&5 +echo "configure:3550: 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 @@ -3580,7 +3579,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:3584: checking for $ac_word" >&5 +echo "configure:3583: 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 @@ -3619,7 +3618,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:3623: checking for $ac_word" >&5 +echo "configure:3622: 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 @@ -3652,7 +3651,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:3656: checking for $ac_word" >&5 +echo "configure:3655: 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 @@ -3691,7 +3690,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:3695: checking for $ac_word" >&5 +echo "configure:3694: 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 @@ -3724,7 +3723,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:3728: checking for $ac_word" >&5 +echo "configure:3727: 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 @@ -3763,7 +3762,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:3767: checking for $ac_word" >&5 +echo "configure:3766: 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 @@ -3796,7 +3795,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:3800: checking for $ac_word" >&5 +echo "configure:3799: 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 @@ -3835,7 +3834,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:3839: checking for $ac_word" >&5 +echo "configure:3838: 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 @@ -3868,7 +3867,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:3872: checking for $ac_word" >&5 +echo "configure:3871: 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 @@ -3907,7 +3906,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:3911: checking for $ac_word" >&5 +echo "configure:3910: 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 @@ -3940,7 +3939,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:3944: checking for $ac_word" >&5 +echo "configure:3943: 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 @@ -3979,7 +3978,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:3983: checking for $ac_word" >&5 +echo "configure:3982: 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 @@ -4012,7 +4011,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:4016: checking for $ac_word" >&5 +echo "configure:4015: 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 @@ -4051,7 +4050,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:4055: checking for $ac_word" >&5 +echo "configure:4054: 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 @@ -4084,7 +4083,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:4088: checking for $ac_word" >&5 +echo "configure:4087: 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 @@ -4123,7 +4122,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:4127: checking for $ac_word" >&5 +echo "configure:4126: 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 @@ -4156,7 +4155,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:4160: checking for $ac_word" >&5 +echo "configure:4159: 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 @@ -4202,7 +4201,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:4206: checking for $ac_word" >&5 +echo "configure:4205: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_AR_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4235,7 +4234,7 @@ if test -z "$ac_cv_prog_CONFIGURED_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:4239: checking for $ac_word" >&5 +echo "configure:4238: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_AR_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4274,7 +4273,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:4278: checking for $ac_word" >&5 +echo "configure:4277: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_AS_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4307,7 +4306,7 @@ if test -z "$ac_cv_prog_CONFIGURED_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:4311: checking for $ac_word" >&5 +echo "configure:4310: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_AS_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4346,7 +4345,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:4350: checking for $ac_word" >&5 +echo "configure:4349: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4379,7 +4378,7 @@ if test -z "$ac_cv_prog_CONFIGURED_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:4383: checking for $ac_word" >&5 +echo "configure:4382: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4418,7 +4417,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:4422: checking for $ac_word" >&5 +echo "configure:4421: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_LD_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4451,7 +4450,7 @@ if test -z "$ac_cv_prog_CONFIGURED_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:4455: checking for $ac_word" >&5 +echo "configure:4454: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_LD_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4490,7 +4489,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:4494: checking for $ac_word" >&5 +echo "configure:4493: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_NM_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4523,7 +4522,7 @@ if test -z "$ac_cv_prog_CONFIGURED_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:4527: checking for $ac_word" >&5 +echo "configure:4526: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_NM_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4562,7 +4561,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:4566: checking for $ac_word" >&5 +echo "configure:4565: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_RANLIB_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4595,7 +4594,7 @@ if test -z "$ac_cv_prog_CONFIGURED_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:4599: checking for $ac_word" >&5 +echo "configure:4598: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_RANLIB_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4634,7 +4633,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:4638: checking for $ac_word" >&5 +echo "configure:4637: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_WINDRES_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4667,7 +4666,7 @@ if test -z "$ac_cv_prog_CONFIGURED_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:4671: checking for $ac_word" >&5 +echo "configure:4670: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_WINDRES_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4752,7 +4751,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:4756: checking whether to enable maintainer-specific portions of Makefiles" >&5 +echo "configure:4755: 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" @@ -4799,7 +4798,7 @@ esac # gcc for stageN-gcc and stagePREV-gcc for stage(N-1). In case this is not # possible, however, we can resort to mv. echo $ac_n "checking if symbolic links between directories work""... $ac_c" 1>&6 -echo "configure:4803: checking if symbolic links between directories work" >&5 +echo "configure:4802: checking if symbolic links between directories work" >&5 if eval "test \"`echo '$''{'gcc_cv_prog_ln_s_dir'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4913,34 +4912,15 @@ trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 # Transform confdefs.h into DEFS. # Protect against shell expansion while executing Makefile rules. # Protect against Makefile macro expansion. -# -# If the first sed substitution is executed (which looks for macros that -# take arguments), then we branch to the quote section. Otherwise, -# look for a macro that doesn't take arguments. -cat >confdef2opt.sed <<\_ACEOF -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g -t quote -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g -t quote -d -: quote -s,[ `~#$^&*(){}\\|;'"<>?],\\&,g -s,\[,\\&,g -s,\],\\&,g -s,\$,$$,g -p -_ACEOF -# We use echo to avoid assuming a particular line-breaking character. -# The extra dot is to prevent the shell from consuming trailing -# line-breaks from the sub-command output. A line-break within -# single-quotes doesn't work because, if this script is created in a -# platform that uses two characters for line-breaks (e.g., DOS), tr -# would break. -ac_LF_and_DOT=`echo; echo .` -DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` -rm -f confdef2opt.sed +cat > conftest.defs <<\EOF +s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g +s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g +s%\[%\\&%g +s%\]%\\&%g +s%\$%$$%g +EOF +DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` +rm -f conftest.defs # Without the "./", some shells look in PATH for config.status. diff --git a/configure.in b/configure.in index 9c32e120916..609a23fad12 100644 --- a/configure.in +++ b/configure.in @@ -363,11 +363,10 @@ case "${target}" in ;; powerpc-*-darwin*) noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof" - noconfigdirs="$noconfigdirs target-libobjc" ;; *-*-darwin*) noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof" - noconfigdirs="$noconfigdirs target-libobjc ${libgcj}" + noconfigdirs="$noconfigdirs ${libgcj}" ;; *-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*) noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog index f22c4e10be3..e710647bfe4 100644 --- a/fixincludes/ChangeLog +++ b/fixincludes/ChangeLog @@ -1,3 +1,32 @@ +2004-09-17 Roger Sayle + + * inclhack.def (linux_ia64_ucontext): New fix. + * fixincl.x: Regenerate. + * tests/base/sys/ucontext.h: New file. + +2004-09-15 Roger Sayle + + * tests/base/sys/time.h: Correct mismatch in 2004-09-10 check-in. + * tests/base/stdlib.h: Likewise. + +2004-09-13 Loren J. Rittle + + * inclhack.def (freebsd_gcc4_breakage): Add. + * fixincl.x: Regenerate. + * tests/base/sys/cdefs.h: Update for new test. + +2004-09-10 Adam Nemet + + * inclhack.def (lynx_void_int): Remove. + (lynxos_fcntl_proto): Remove. + (lynxos_no_warning_in_sys_time_h): New fix. + (lynxos_missing_putenv): New fix. + * fixincl.x: Regenerate. + * tests/base/fcntl.h: Remove. + * tests/base/sys/time.h: Update from test area. + * tests/base/curses.h: Likewise. + * tests/base/stdlib.h: Likewise. + 2004-09-03 Jan Beulich * inclhack.def: Suppress exception_structure and math_exception diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x index 86032abda2c..f6d1300aa58 100644 --- a/fixincludes/fixincl.x +++ b/fixincludes/fixincl.x @@ -2,11 +2,11 @@ * * DO NOT EDIT THIS FILE (fixincl.x) * - * It has been AutoGen-ed Saturday August 14, 2004 at 05:48:43 PM EDT + * It has been AutoGen-ed Saturday September 18, 2004 at 10:59:03 AM MDT * From the definitions inclhack.def * and the template file fixincl */ -/* DO NOT CVS-MERGE THIS FILE, EITHER Sat Aug 14 17:48:43 EDT 2004 +/* DO NOT CVS-MERGE THIS FILE, EITHER Sat Sep 18 10:59:03 MDT 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 177 fixup descriptions. + * This file contains 179 fixup descriptions. * * See README for more information. * @@ -1873,6 +1873,43 @@ static const char* apzFreebsd_Gcc3_BreakagePatch[] = { /* * * * * * * * * * * * * * * * * * * * * * * * * * * + * Description of Freebsd_Gcc4_Breakage fix + */ +tSCC zFreebsd_Gcc4_BreakageName[] = + "freebsd_gcc4_breakage"; + +/* + * File name selection pattern + */ +tSCC zFreebsd_Gcc4_BreakageList[] = + "|sys/cdefs.h|"; +/* + * Machine/OS name selection pattern + */ +tSCC* apzFreebsd_Gcc4_BreakageMachs[] = { + "*-*-freebsd*", + (const char*)NULL }; + +/* + * content selection pattern - do fix if pattern found + */ +tSCC zFreebsd_Gcc4_BreakageSelect0[] = + "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 \\|\\| __GNUC__ == 3$"; + +#define FREEBSD_GCC4_BREAKAGE_TEST_CT 1 +static tTestDesc aFreebsd_Gcc4_BreakageTests[] = { + { TT_EGREP, zFreebsd_Gcc4_BreakageSelect0, (regex_t*)NULL }, }; + +/* + * Fix Command Arguments for Freebsd_Gcc4_Breakage + */ +static const char* apzFreebsd_Gcc4_BreakagePatch[] = { + "format", + "#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 || __GNUC__ >= 3", + (char*)NULL }; + +/* * * * * * * * * * * * * * * * * * * * * * * * * * + * * Description of Gnu_Types fix */ tSCC zGnu_TypesName[] = @@ -3333,73 +3370,120 @@ static const char* apzLimits_IfndefsPatch[] = { /* * * * * * * * * * * * * * * * * * * * * * * * * * * - * Description of Lynx_Void_Int fix + * Description of Linux_Ia64_Ucontext fix */ -tSCC zLynx_Void_IntName[] = - "lynx_void_int"; +tSCC zLinux_Ia64_UcontextName[] = + "linux_ia64_ucontext"; /* * File name selection pattern */ -tSCC zLynx_Void_IntList[] = - "|curses.h|"; +tSCC zLinux_Ia64_UcontextList[] = + "|sys/ucontext.h|"; /* * Machine/OS name selection pattern */ -#define apzLynx_Void_IntMachs (const char**)NULL +tSCC* apzLinux_Ia64_UcontextMachs[] = { + "ia64-*-linux*", + (const char*)NULL }; /* * content selection pattern - do fix if pattern found */ -tSCC zLynx_Void_IntSelect0[] = - "#[ \t]*define[ \t]+void[ \t]+int[ \t]*"; +tSCC zLinux_Ia64_UcontextSelect0[] = + "\\(\\(\\(char \\*\\) &\\(\\(struct sigcontext \\*\\) 0\\)->sc_gr\\[0\\]\\) - \\(char \\*\\) 0\\)"; -#define LYNX_VOID_INT_TEST_CT 1 -static tTestDesc aLynx_Void_IntTests[] = { - { TT_EGREP, zLynx_Void_IntSelect0, (regex_t*)NULL }, }; +#define LINUX_IA64_UCONTEXT_TEST_CT 1 +static tTestDesc aLinux_Ia64_UcontextTests[] = { + { TT_EGREP, zLinux_Ia64_UcontextSelect0, (regex_t*)NULL }, }; /* - * Fix Command Arguments for Lynx_Void_Int + * Fix Command Arguments for Linux_Ia64_Ucontext */ -static const char* apzLynx_Void_IntPatch[] = { +static const char* apzLinux_Ia64_UcontextPatch[] = { + "format", + "__builtin_offsetof (struct sigcontext, sc_gr[0])", + (char*)NULL }; + +/* * * * * * * * * * * * * * * * * * * * * * * * * * + * + * Description of Lynxos_No_Warning_In_Sys_Time_H fix + */ +tSCC zLynxos_No_Warning_In_Sys_Time_HName[] = + "lynxos_no_warning_in_sys_time_h"; + +/* + * File name selection pattern + */ +tSCC zLynxos_No_Warning_In_Sys_Time_HList[] = + "|sys/time.h|"; +/* + * Machine/OS name selection pattern + */ +#define apzLynxos_No_Warning_In_Sys_Time_HMachs (const char**)NULL + +/* + * content selection pattern - do fix if pattern found + */ +tSCC zLynxos_No_Warning_In_Sys_Time_HSelect0[] = + "#warning[ \t]+Using instead of "; + +#define LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT 1 +static tTestDesc aLynxos_No_Warning_In_Sys_Time_HTests[] = { + { TT_EGREP, zLynxos_No_Warning_In_Sys_Time_HSelect0, (regex_t*)NULL }, }; + +/* + * Fix Command Arguments for Lynxos_No_Warning_In_Sys_Time_H + */ +static const char* apzLynxos_No_Warning_In_Sys_Time_HPatch[] = { "format", "", (char*)NULL }; /* * * * * * * * * * * * * * * * * * * * * * * * * * * - * Description of Lynxos_Fcntl_Proto fix + * Description of Lynxos_Missing_Putenv fix */ -tSCC zLynxos_Fcntl_ProtoName[] = - "lynxos_fcntl_proto"; +tSCC zLynxos_Missing_PutenvName[] = + "lynxos_missing_putenv"; /* * File name selection pattern */ -tSCC zLynxos_Fcntl_ProtoList[] = - "|fcntl.h|"; +tSCC zLynxos_Missing_PutenvList[] = + "|stdlib.h|"; /* * Machine/OS name selection pattern */ -#define apzLynxos_Fcntl_ProtoMachs (const char**)NULL +tSCC* apzLynxos_Missing_PutenvMachs[] = { + "*-*-lynxos*", + (const char*)NULL }; /* * content selection pattern - do fix if pattern found */ -tSCC zLynxos_Fcntl_ProtoSelect0[] = - "fcntl[ \t]*\\(int, int, int\\)"; +tSCC zLynxos_Missing_PutenvSelect0[] = + "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);"; -#define LYNXOS_FCNTL_PROTO_TEST_CT 1 -static tTestDesc aLynxos_Fcntl_ProtoTests[] = { - { TT_EGREP, zLynxos_Fcntl_ProtoSelect0, (regex_t*)NULL }, }; +/* + * content bypass pattern - skip fix if pattern found + */ +tSCC zLynxos_Missing_PutenvBypass0[] = + "putenv[ \\t]*\\("; + +#define LYNXOS_MISSING_PUTENV_TEST_CT 2 +static tTestDesc aLynxos_Missing_PutenvTests[] = { + { TT_NEGREP, zLynxos_Missing_PutenvBypass0, (regex_t*)NULL }, + { TT_EGREP, zLynxos_Missing_PutenvSelect0, (regex_t*)NULL }, }; /* - * Fix Command Arguments for Lynxos_Fcntl_Proto + * Fix Command Arguments for Lynxos_Missing_Putenv */ -static const char* apzLynxos_Fcntl_ProtoPatch[] = { +static const char* apzLynxos_Missing_PutenvPatch[] = { "format", - "%1...)", - "(fcntl[ \t]*\\(int, int, )int\\)", + "%0\n\ +extern int putenv\t\t\t\t_AP((char *));", + "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);", (char*)NULL }; /* * * * * * * * * * * * * * * * * * * * * * * * * * @@ -7018,9 +7102,9 @@ static const char* apzX11_SprintfPatch[] = { * * List of all fixes */ -#define REGEX_COUNT 199 +#define REGEX_COUNT 202 #define MACH_LIST_SIZE_LIMIT 261 -#define FIX_COUNT 177 +#define FIX_COUNT 179 /* * Enumerate the fixes @@ -7070,6 +7154,7 @@ typedef enum { ECD_CURSOR_FIXIDX, EXCEPTION_STRUCTURE_FIXIDX, FREEBSD_GCC3_BREAKAGE_FIXIDX, + FREEBSD_GCC4_BREAKAGE_FIXIDX, GNU_TYPES_FIXIDX, HP_INLINE_FIXIDX, HP_SYSFILE_FIXIDX, @@ -7107,8 +7192,9 @@ typedef enum { LIBC1_G_VA_LIST_FIXIDX, LIBC1_IFDEFD_MEMX_FIXIDX, LIMITS_IFNDEFS_FIXIDX, - LYNX_VOID_INT_FIXIDX, - LYNXOS_FCNTL_PROTO_FIXIDX, + LINUX_IA64_UCONTEXT_FIXIDX, + LYNXOS_NO_WARNING_IN_SYS_TIME_H_FIXIDX, + LYNXOS_MISSING_PUTENV_FIXIDX, MACHINE_ANSI_H_VA_LIST_FIXIDX, MACHINE_NAME_FIXIDX, MATH_EXCEPTION_FIXIDX, @@ -7426,6 +7512,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = { FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aFreebsd_Gcc3_BreakageTests, apzFreebsd_Gcc3_BreakagePatch, 0 }, + { zFreebsd_Gcc4_BreakageName, zFreebsd_Gcc4_BreakageList, + apzFreebsd_Gcc4_BreakageMachs, + FREEBSD_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, + aFreebsd_Gcc4_BreakageTests, apzFreebsd_Gcc4_BreakagePatch, 0 }, + { zGnu_TypesName, zGnu_TypesList, apzGnu_TypesMachs, GNU_TYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, @@ -7611,15 +7702,20 @@ tFixDesc fixDescList[ FIX_COUNT ] = { LIMITS_IFNDEFS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aLimits_IfndefsTests, apzLimits_IfndefsPatch, 0 }, - { zLynx_Void_IntName, zLynx_Void_IntList, - apzLynx_Void_IntMachs, - LYNX_VOID_INT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, - aLynx_Void_IntTests, apzLynx_Void_IntPatch, 0 }, + { zLinux_Ia64_UcontextName, zLinux_Ia64_UcontextList, + apzLinux_Ia64_UcontextMachs, + LINUX_IA64_UCONTEXT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, + aLinux_Ia64_UcontextTests, apzLinux_Ia64_UcontextPatch, 0 }, + + { zLynxos_No_Warning_In_Sys_Time_HName, zLynxos_No_Warning_In_Sys_Time_HList, + apzLynxos_No_Warning_In_Sys_Time_HMachs, + LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, + aLynxos_No_Warning_In_Sys_Time_HTests, apzLynxos_No_Warning_In_Sys_Time_HPatch, 0 }, - { zLynxos_Fcntl_ProtoName, zLynxos_Fcntl_ProtoList, - apzLynxos_Fcntl_ProtoMachs, - LYNXOS_FCNTL_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, - aLynxos_Fcntl_ProtoTests, apzLynxos_Fcntl_ProtoPatch, 0 }, + { zLynxos_Missing_PutenvName, zLynxos_Missing_PutenvList, + apzLynxos_Missing_PutenvMachs, + LYNXOS_MISSING_PUTENV_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, + aLynxos_Missing_PutenvTests, apzLynxos_Missing_PutenvPatch, 0 }, { zMachine_Ansi_H_Va_ListName, zMachine_Ansi_H_Va_ListList, apzMachine_Ansi_H_Va_ListMachs, diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def index 537155c03f7..38021c33957 100644 --- a/fixincludes/inclhack.def +++ b/fixincludes/inclhack.def @@ -1082,6 +1082,22 @@ fix = { /* + * Some releases of FreeBSD 4 and FreeBSD 5.0 and 5.1 system headers presume + * neither the existence of GCC 4 nor its exact feature set yet break + * (by design?) when __GNUC__ is set beyond 3. + */ +fix = { + hackname = freebsd_gcc4_breakage; + mach = *-*-freebsd*; + files = sys/cdefs.h; + select = '^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 \|\| __GNUC__ == 3$'; + c_fix = format; + c_fix_arg = '#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 || __GNUC__ >= 3'; + test_text = '#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 || __GNUC__ == 3'; +}; + + +/* * Fix these files to use the types we think they should for * ptrdiff_t, size_t, and wchar_t. * @@ -1856,6 +1872,23 @@ fix = { }; +/* The /usr/include/sys/ucontext.h on ia64-*linux-gnu systems defines + * an _SC_GR0_OFFSET macro using an idiom that isn't a compile time + * constant on recent versions of g++. + */ +fix = { + hackname = linux_ia64_ucontext; + files = "sys/ucontext.h"; + mach = "ia64-*-linux*"; + select = '\(\(\(char \*\) &\(\(struct sigcontext \*\) 0\)' + '->sc_gr\[0\]\) - \(char \*\) 0\)'; + c_fix = format; + c_fix_arg = "__builtin_offsetof \(struct sigcontext, sc_gr[0]\)"; + test_text = "# define _SC_GR0_OFFSET\t\\\\\n" + "\t(((char *) &((struct sigcontext *) 0)->sc_gr[0]) - (char *) 0)\n"; +}; + + /* * Apparently some SVR4 systems typedef longlong_t to long ? */ @@ -1870,31 +1903,35 @@ fix = { }; #endif - -/* - * Delete the '#define void int' line from curses.h on Lynx +/* + * Remove header file warning from sys/time.h. Autoconf's + * AC_HEADER_TIME recommends to include both sys/time.h and time.h + * which causes warning on LynxOS. Remove the warning. */ fix = { - hackname = lynx_void_int; - files = curses.h; - select = "#[ \t]*define[ \t]+void[ \t]+int[ \t]*"; + hackname = lynxos_no_warning_in_sys_time_h; + files = sys/time.h; + select = "#warning[ \t]+Using instead of "; c_fix = format; c_fix_arg = ""; - test_text = "# define\tvoid\tint \t/* curses foiled again */"; + test_text = "#warning Using instead of "; }; -/* - * Fix fcntl prototype in fcntl.h on LynxOS. +/* + * Add missing declaration for putenv. */ fix = { - hackname = lynxos_fcntl_proto; - files = fcntl.h; - select = "fcntl[ \t]*" '\(int, int, int\)'; + hackname = lynxos_missing_putenv; + mach = '*-*-lynxos*'; + files = stdlib.h; + bypass = 'putenv[ \t]*\\('; + select = "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);"; c_fix = format; - c_fix_arg = '%1...)'; - c_fix_arg = "(fcntl[ \t]*" '\(int, int, )int\)'; - test_text = "extern int fcntl(int, int, int);"; + c_fix_arg = "%0\n" + "extern int putenv _AP((char *));"; + c_fix_arg = "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);"; + test_text = "extern char *getenv _AP((const char *));"; }; diff --git a/fixincludes/tests/base/curses.h b/fixincludes/tests/base/curses.h index ba2db2448a0..eb2067e97af 100644 --- a/fixincludes/tests/base/curses.h +++ b/fixincludes/tests/base/curses.h @@ -30,11 +30,6 @@ struct term; #endif /* BAD_STRUCT_TERM_CHECK */ -#if defined( LYNX_VOID_INT_CHECK ) -/* curses foiled again */ -#endif /* LYNX_VOID_INT_CHECK */ - - #if defined( VOID_NULL_CHECK ) #ifndef NULL #define NULL 0 /* typed NULL */ diff --git a/fixincludes/tests/base/fcntl.h b/fixincludes/tests/base/fcntl.h deleted file mode 100644 index ad6c8c99f95..00000000000 --- a/fixincludes/tests/base/fcntl.h +++ /dev/null @@ -1,14 +0,0 @@ -/* DO NOT EDIT THIS FILE. - - It has been auto-edited by fixincludes from: - - "fixinc/tests/inc/fcntl.h" - - This had to be done to correct non-standard usages in the - original, manufacturer supplied header file. */ - - - -#if defined( LYNXOS_FCNTL_PROTO_CHECK ) -extern int fcntl(int, int, ...); -#endif /* LYNXOS_FCNTL_PROTO_CHECK */ diff --git a/fixincludes/tests/base/stdlib.h b/fixincludes/tests/base/stdlib.h index 0e1e59cb4f0..9f69414e212 100644 --- a/fixincludes/tests/base/stdlib.h +++ b/fixincludes/tests/base/stdlib.h @@ -27,6 +27,12 @@ extern void exit(void*); #endif /* INT_ABORT_FREE_AND_EXIT_CHECK */ +#if defined( LYNXOS_MISSING_PUTENV_CHECK ) +extern char *getenv _AP((const char *)); +extern int putenv _AP((char *)); +#endif /* LYNXOS_MISSING_PUTENV_CHECK */ + + #if defined( SVR4_GETCWD_CHECK ) extern char* getcwd(char *, size_t); #endif /* SVR4_GETCWD_CHECK */ diff --git a/fixincludes/tests/base/sys/cdefs.h b/fixincludes/tests/base/sys/cdefs.h index 8d95282d272..0de5e4ec2e0 100644 --- a/fixincludes/tests/base/sys/cdefs.h +++ b/fixincludes/tests/base/sys/cdefs.h @@ -14,6 +14,11 @@ #endif /* FREEBSD_GCC3_BREAKAGE_CHECK */ +#if defined( FREEBSD_GCC4_BREAKAGE_CHECK ) +#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 || __GNUC__ >= 3 +#endif /* FREEBSD_GCC4_BREAKAGE_CHECK */ + + #if defined( NETBSD_EXTRA_SEMICOLON_CHECK ) #define __END_DECLS } #endif /* NETBSD_EXTRA_SEMICOLON_CHECK */ diff --git a/fixincludes/tests/base/sys/time.h b/fixincludes/tests/base/sys/time.h index f009f7e11aa..442118b0ace 100644 --- a/fixincludes/tests/base/sys/time.h +++ b/fixincludes/tests/base/sys/time.h @@ -14,6 +14,11 @@ struct sigevent; #endif /* HPUX_SYSTIME_CHECK */ +#if defined( LYNXOS_NO_WARNING_IN_SYS_TIME_H_CHECK ) + +#endif /* LYNXOS_NO_WARNING_IN_SYS_TIME_H_CHECK */ + + #if defined( ULTRIX_SYS_TIME_CHECK ) @(#)time.h 6.1 (ULTRIX) extern time_t time( time_t *__tloc ); diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 10300aa5379..65cc2e1a05a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,1341 @@ +2004-09-17 Zack Weinberg + + * Makefile.in (c-parse.o): Depend on $(C_PRAGMA_H). + * objc/Make-lang.in (objc/objc-parse.o): Likewise. + +2004-09-17 Jones Desougi + + * configure.ac: Replace AC_COMPILE_CHECK_SIZEOF with AC_CHECK_SIZEOF. + * configure, config.in: Regenerate. + +2004-09-17 Zack Weinberg + + * tree.c, tree.h (tree_class_strings): Make array const. + Reindent per coding convention. Move asterisk to proper place + per coding convention. + +2004-09-18 Andreas Schwab + + * Makefile.in (gimple-low.o): Depend on $(EXPR_H). + (tree-vectorizer.o): Likewise. + (targhooks.o): Likewise. + +2004-09-17 Jeffrey D. Oldham + Zack Weinberg + + * alias.c (find_base_decl): Remove unreachable case '3' block. + * expr.c (safe_from_p): Abort if passed a type. + * tree-gimple.c (recalculate_side_effects): Abort if passed + anything other than an expression. + * tree-ssa-pre.c (phi_translate): Return expr immediately if + is_gimple_min_invariant is true for it. Reorder cases for clarity. + Abort on un-handled tree classes. + (valid_in_set): Likewise. + * tree.c (tree_code_class_strings): New static data. + + * tree.h (enum tree_code_class): New. + (tree_code_class_strings): Declare. + (TREE_CODE_CLASS_STRING, EXCEPTIONAL_CLASS_P, CONSTANT_CLASS_P) + (REFERENCE_CLASS_P, COMPARISON_CLASS_P, UNARY_CLASS_P, BINARY_CLASS_P) + (STATEMENT_CLASS_P, EXPRESSION_CLASS_P, IS_TYPE_OR_DECL_P): New macros. + (TYPE_P, DECL_P, IS_NON_TYPE_CODE_CLASS, IS_EXPR_CODE_CLASS) + (checking macros, EXPR_LOCATION, SET_EXPR_LOCATION, EXPR_LOCUS): Update. + + * tree.def, c-common.def, objc/objc-tree.def: Use + tree_code_class enumeration constants instead of code letters. + + * alias.c, builtins.c, c-common.c, c-format.c, c-lang.c, c-pragma.c + * c-typeck.c, cgraphunit.c, convert.c, dbxout.c, dwarf2out.c + * emit-rtl.c expr.c, fold-const.c, gimplify.c, lambda-code.c + * langhooks.c, langhooks.h, predict.c, print-tree.c, reload1.c, stmt.c + * tree-browser.c, tree-cfg.c, tree-chrec.c, tree-complex.c, tree-dfa.c + * tree-dump.c, tree-eh.c, tree-gimple.c, tree-inline.c, tree-nested.c + * tree-outof-ssa.c, tree-pretty-print.c, tree-sra.c, tree-ssa-ccp.c + * tree-ssa-dce.c, tree-ssa-dom.c, tree-ssa-forwprop.c, tree-ssa-live.c + * tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c, tree-ssa-operands.c + * tree-ssa-phiopt.c, tree-ssa-pre.c, tree-ssa-propagate.c + * tree-ssa.c, tree-ssanames.c, tree-tailcall.c, tree.c, varasm.c + * config/sol2-c.c, config/arm/arm.c, config/i386/winnt.c + * config/pa/pa.c, config/pa/pa.h, config/sh/sh.c, objc/objc-lang.c + Update to match. + + * LANGUAGES: Add note about change. + +2004-09-17 Diego Novillo + + PR tree-optimization/17319 + * tree-ssa-alias.c (compute_points_to_and_addr_escape): Also + examine pointers on the LHS of an assignment. + (collect_points_to_info_r): Handle RETURN_EXPR. + +2004-09-17 Jeff Law + + * tree-ssa-dom.c (const_and_copies_stack): New. + (dom_walk_block_data): Remove const_and_copies field. + (record_const_or_copy): No longer need to pass in varray_type *. + Use CONST_AND_COPIES_STACK rather than passed in block local stack. + Callers updated. + (record_equality): Similarly. + (restore_vars_to_original_value): Similarly. Revamp to use new + single global stack rather than per-block stacks. + (tree_ssa_dominator_optimize): Initialize the CONST_AND_COPIES_STACK. + (thread_across_edge): Remove now unused parameters. + (dom_opt_initialize_block_local_data): No longer test the block + local CONST_AND_COPIES. + (dom_opt_initialize_block): Push a marker on CONST_AND_COPIES_STACK. + +2004-09-17 Jan Hubicka + + PR tree-optimization/17509 + * tree-optimize.c (update_inlined_to_pointers): New function. + (tree_rest_of_compilation): Use it. + +2004-09-17 Devang Patel + + * dbxout.c (get_lang_number): New. + (dbxout_init): Include lang number in N_SO stab. + * dbxout.h (N_SO_AS, N_SO_C, N_SO_ANSI_C, N_SO_CC, N_SO_FORTRAN, + N_SO_PASCAL, N_SO_FORTRAN90, N_SO_OBJC, N_SO_OBJCPLUS): New #define. + +2004-09-17 Diego Novillo + + PR tree-optimization/17273 + * tree-ssa.c (replace_immediate_uses): Call fold_stmt if the + replacement is a constant. + +2004-09-17 Joseph S. Myers + + * c-tree.h (enum c_typespec_keyword): New. + (struct c_declspecs): Adjust description of "type". Remove + specbits, explicit_int_p and explicit_char_p. Rename + typedef_signed_p to explicit_signed_p. Add default_int_p, long_p, + short_p, signed_p, unsigned_p and complex_p. + (finish_declspecs): New. + * c-parse.in (datadef, datadecl, setspecs, decl, component_decl, + typename): Call finish_declspecs. + * c-decl.c (finish_declspecs): New. + (declspecs_add_type): Check for combinations which cannot occur in + valid specifier lists. Update comments. + (shadow_tag_warned): Remove checks done in finish_declspecs. + Don't report useless type name if type defaulted to int. + (grokdeclarator): Remove checks and actions done in + finish_declspecs. Don't allow for type being NULL. Update for + datastructures changes. Initialize decl_attr. + (build_null_declspecs, quals_from_declspecs): Update for + datastructures changes. + +2004-09-17 Sylvain Pion + + * doc/extend.texi: Fix duplicated word. + +2004-09-17 Toon Moene + + * doc/invoke.texi: Remove stray explanation on + -freduce-all-givs and -fmove-all-movables. + +2004-09-17 James Morrison + + * doc/cfg.texi: Use @smallexample. + * doc/md.texi: Likewise. + * doc/tree-ssa.texi: Likewise. + * doc/extend.texi: Likewise. Use @r{} in comments. + * doc/trouble.texi: Use @r{} in comments. + +2004-09-17 Hans-Peter Nilsson + + * configure.ac (gcc_cv_gld_version): Handle whitespace before + "VERSION=". + * aclocal.m4 (_gcc_COMPUTE_GAS_VERSION): Ditto. + * configure: Regenerate. + +2004-09-17 J"orn Rennecke + + * sh.c (sh_gimplify_va_arg_expr): Don't call pass_by_reference. + (sh_pass_by_reference): Work around std_gimplify_va_arg_expr bug. + * t-sh (MULTILIB_CPUS): s/ML_m/ML_sh/g . + * t-sh64 (MULTILIB_CPU_DIRS): Likewise. Match dashes and trailing + slashes in substitutions. + (MULTILIB_DIRNAMES): Remove defunct removal of /media32. + +2004-09-17 Kazu Hirata + + * basic-block.h, c-decl.c, c-parse.in, cgraphunit.c, ddg.c, + gimplify.c, lambda-code.c, optabs.c, predict.c, + tree-scalar-evolution.c, tree-sra.c, tree-ssa-loop-ch.c, + tree-ssa.c, vec.h: Fix comment typos. Follow spelling + conventions. + +2004-09-17 Kazu Hirata + + * doc/compat.texi, doc/cpp.texi, doc/cppopts.texi, + doc/extend.texi, doc/install.texi, doc/invoke.texi, + doc/sourcebuild.texi, doc/tm.texi, doc/tree-ssa.texi, + doc/trouble.texi: Use @option around options. + +2004-09-17 Richard Sandiford + + * Makefile.in (gen-protos.o): Depend on errors.h. + +2004-09-17 Steven Bosscher + + PR tree-optimization/17513 + * cfgexpand.c (construct_init_block): Clear EDGE_EXECUTABLE + for successors of the entry block. + +2004-09-17 Uros Bizjak + + PR rtl-optimization/15187 + * ifcvt.c (noce_try_cmove_arith): Exit early if total + insn_rtx_cost of both branches > BRANCH_COST + +2004-09-16 Diego Novillo + + PR tree-optimization/17528 + * tree-ssa-alias.c (compute_flow_insensitive_aliasing): Do not + erase the may-alias set for a tag when merging it with + another. + +2004-09-16 Kaz Kojima + + * config/sh/sh.md (call): Extend 32-bit addresses to DImode + for 32-bit TARGET_SHMEDIA. + (call_value): Likewise. + +2004-09-16 Diego Novillo + + * tree-ssa-operands.c (add_call_clobber_ops): Make read-only + test apply only to TREE_STATIC and DECL_EXTERNAL. + +2004-09-16 Zdenek Dvorak + + * Makefile.in (tree-cfg.o): Add CFGLAYOUT_H dependency. + * basic-block.h (get_dominated_by_region): Declare. + * dominance.c (get_dominated_by_region): New function. + * tree-cfg.c: Include cfglayout.h. + (tree_duplicate_bb): Duplicate also phi nodes. + (struct ssa_name_map_entry): New type. + (add_phi_args_after_copy_bb, add_phi_args_after_copy, + ssa_name_map_entry_hash, ssa_name_map_entry_eq, + allocate_ssa_names, rewrite_to_new_ssa_names_def, + rewrite_to_new_ssa_names_use, rewrite_to_new_ssa_names_bb, + rewrite_to_new_ssa_names, tree_duplicate_sese_region): New functions. + * tree-flow.h (tree_duplicate_sese_region, add_phi_args_after_copy_bb, + add_phi_args_after_copy, rewrite_to_new_ssa_names_bb, + rewrite_to_new_ssa_names, allocate_ssa_names, + rewrite_into_loop_closed_ssa, verify_loop_closed_ssa): Declare. + * tree-ssa-loop-ch.c (duplicate_blocks): Removed. + (copy_loop_headers): Use tree_duplicate_sese_region. + +2004-09-16 Frank Ch. Eigler + + * profile.c (branch_prob): Restore support for USE_MAPPED_LOCATION. + +2004-09-16 Jeff Law + + * tree-into-ssa.c (block_defs_stack): New toplevel varray. + (rewrite_block_data): Remove, no longer used. + (rewrite_initialize_block_local_data): Remove, no longer used. + (rewrite_initialize_block): Mark parameters as unused as needed. + Change references to the block local block_defs to be block_defs_stack. + Push a marker onto the block_defs_stack. + (ssa_rewrite_initialize_block): Similarly. + (rewrite_stmt, ssa_rewrite_stmt): Similarly. + (ssa_register_new_def): No longer needs varray argument. Use + block_defs_stack instead. No longer handle possibly null block_defs + varray. Reverse order of items we push on the stack to make it + easier to identify our marker. + (register_new_def): No longer handle possibly null block_defs + varray. + (rewrite_finalize_block): Revamp to look for markers in the global + block_defs_stack varray rather than wiping a block local varray. + Mark arguments as unused as needed. + (ssa_rewrite_finalize_block): Similarly. + (rewrite_into_ssa): Update initialization of dom walker structure + to reflect that we don't need block local data anymore. Initialize + the block_defs_stack varray. + (rewrite_ssa_into_ssa): Similarly. + * tree-ssa-dom.c (block_defs_stack): New toplevel varray. + (struct dom_walk_data): Kill block_defs field. + (tree_ssa_dominator_optimize): Initialize block_defs_stack. + (thread_across_edge): Use the global block_defs_stack instead of + the old block_defs varray. + (dom_opt_initialize_block_local_data): Update now that we don't have + block_defs field to check anymore. + (dom_opt_initialize_block): Push a marker onto block_defs_stack. + (restore_currdefs_to_original_value): Use the new block_defs_stack + instead of a block local varray. + (dom_opt_finalize_block): Similarly. + (record_equivalencs_from_phis): Similarly. + (optimize_stmt, register_definitions_for_stmt): Similarly. + +2004-09-16 Andrew MacLeod + + PR tree-optimization/17517 + * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't + coalesce same-root variables without checking for abnormal PHI usage. + +2004-09-16 Daniel Berlin + + * cfgloop.h (duplicate_loop): Add prototype. + * cfgloopmanip.c (duplicate_loop): Make non-static. + * lambda-code.c (perfect_nestify): Factor out test whether + we can handle this loop into separate function. + Call it. + (can_convert_to_perfect_nest): New function. + (replace_uses_of_x_with_y): Add modify_stmt call. + * tree-loop-linear.c (linear_transform_loops): Call + rewrite_into_loop_closed_ssa and free_df. + +2004-09-16 Daniel Berlin + + * lambda-code.c (invariant_in_loop): is_gimple_min_invariant is + loop invariant as well. + (perfect_nestify): new function. + (gcc_loop_to_lambda_loop): New parameters to track lower bounds, + upper bounds, and steps. + Set outerinductionvar properly. + (gcc_loopnest_to_lambda_loopnest): Add loops and need_perfect + parameters. + Return NULL if we need a perfect loop and can't make one. + (lambda_loopnest_to_gcc_loopnest): Correct algorithm. + (not_interesting_stmt): New function. + (phi_loop_edge_uses_def): Ditto. + (stmt_uses_phi_result): Ditto. + (stmt_is_bumper_for_loop): Ditto. + (perfect_nest_p): Ditto. + (nestify_update_pending_stmts): Ditto. + (replace_uses_of_x_with_y): Ditto. + (stmt_uses_op): Ditto. + (perfect_nestify): Ditto. + * lambda-mat.c (lambda_matrix_id_p): New function. + * lambda-trans.c (lambda_trans_matrix_id_p): Ditto. + * lambda.h: Update prototypes. + * tree-loop-linear (linear_transform_loop): Use new + perfect_nest_p. Detect and ignore identity transform. + * tree-ssa-loop.c (pass_linear_transform): Use TODO_write_loop_closed. + +2004-09-16 Sebastian Pop + + * tree-loop-linear.c (gather_interchange_stats): Add more comments. + Gather also strides of accessed data. Pass in the data references + array. + (try_interchange_loops): Add a new heuristic for handling the temporal + locality. Pass in the data references array. + (linear_transform_loops): Pass the data references array to + try_interchange_loops. + +2004-09-16 Kazu Hirata + + * doc/invoke.texi: Fix typos. Follow spelling conventions. + +2004-09-16 Nathan Sidwell + + * doc/c-tree.texi (Classes): Remove index entries for + TREE_VIA_{PUBLIC,PROTECTED,PRIVATE}. + +2004-09-16 Zdenek Dvorak + + * fold-const.c (fold): Fold difference of addresses. + (ptr_difference_const): Moved from tree-ssa-loop-ivopts, based on + get_inner_reference. + * tree-ssa-loop-ivopts.c (peel_address): Removed. + (ptr_difference_const): Moved to fold-const.c. + (split_address_cost): Use get_inner_reference instead of peel_address. + (ptr_difference_cost): Change type of diff to HOST_WIDE_INT. + * tree.h (ptr_difference_const): Export. + + * tree-ssa-loop-ivopts.c (dump_iv, dump_use, dump_cand): Add induction + variable type to the dump. Fix indentation. + (idx_find_step): Handle nonconstant array_ref_element_size and + array_ref_low_bound. + (idx_record_use): Handle array_ref_element_size and + array_ref_low_bound. + (find_interesting_uses_stmt): Handle memory = nontrivial_expression + statements correctly. + (get_computation_at, iv_value): Do not unshare expressions here. + (rewrite_use_outer): Unshare the expression before it is emitted + to code. + * tree-ssa-loop-niter.c (unsigned_type_for, signed_type_for): + Moved to tree.c. + * tree.c (unsigned_type_for, signed_type_for): Moved from + tree-ssa-loop-niter.c. Use langhooks. + * tree.h (signed_type_for): Export. + +2004-09-16 David Edelsohn + + * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Update + prototype. + +2004-09-15 Andrew Pinski + + PR target/11572 + * c-incpath.h (target_c_incpath_s): Add extra_pre_includes. + Add two parameters to extra_includes. + (C_INCPATH_INIT): Remove. + * c-incpath.c (register_include_chains): Call extra_pre_includes + before adding the standard include directory. + Update call to extra_includes. + (!defined TARGET_EXTRA_INCLUDES): Update + hook_void_charptr_charptr_int and add !define + TARGET_EXTRA_PRE_INCLUDES. + (!define TARGET_EXTRA_INCLUDES): Define as + hook_void_charptr_charptr_int. + (!define TARGET_EXTRA_PRE_INCLUDES): Likewise. + (target_c_incpath): Always declare. + * fixinclude.c (defined TARGET_EXTRA_INCLUDES): Declare a + empty function. + (define TARGET_EXTRA_PRE_INCLUDES): Likewise. + * config/darwin.h: (darwin_register_frameworks): Update for + the two new parameters. + (darwin_register_objc_includes): Add prototype. + (TARGET_EXTRA_PRE_INCLUDES): Define. + * config/darwin-c.c (darwin_register_objc_includes): New function. + (darwin_register_frameworks): Update for the two new parameters. + (target_c_incpath): Remove. + * config/t-darwin (darwin-c.o): Add $(PREPROCESSOR_DEFINES) to + the compile line. + * doc/tm.texi (TARGET_EXTRA_INCLUDES): Document the two new + parameters. + (TARGET_EXTRA_PRE_INCLUDES): Document. + + * gcc.c (spec_function): Add replace-outfile. + (replace_outfile_spec_function): New function. + * config/darwin.h (LINK_SPEC): Add replace + -lobjc with -lobjc-gnu if -fgnu-runtime is + supplied. + * invoke.texi (replace-outfile): Document. + +2004-09-13 Jan Hubicka + + * predict.c (expr_expected_value, strip_builtin_expect): New function. + (tree_predict_by_opcode): Use it. + (tree_estimate_probability): Add, for now disabled, + strip_builtin_expect call. + +2004-09-15 James E Wilson + + PR target/17455 + * config/ia64/ia64.c (ia64_function_ok_for_sibcall): Return false + if current_function_decl is a sibcall. + +2004-09-15 Mark Mitchell + + * varasm.c (default_function_rdodata_section): Make sure to pass + along a decl for a link-once section. + +2004-09-15 Richard Henderson + + * tree-ssa-operands.c (add_call_clobber_ops): Fix unused variable + warning with code disable. Fix formatting. + +2004-09-15 Steven Bosscher + + * Makefile.in (tree-ssa-dom.o): Depend on tree-ssa-propagate.h. + * tree-ssa-dom.c (cprop_into_stmt): Recompute TREE_INVARIANT + after propagating into an ADDR_EXPR. + +2004-09-15 Andrew Pinski + + PR rtl-opt/17427 + * gcse.c (process_insert_insn): insn_invalid_p has side effects. + Move it out of gcc_assert. + +2004-09-15 Joseph S. Myers + + * attribs.c, builtins.c, c-format.c, c-pch.c, coverage.c, + except.c, fold-const.c, function.c, langhooks.c, params.c, + reload.c, reload1.c, stmt.c, stor-layout.c, toplev.c, tree-cfg.c, + tree-dump.c, tree-mudflap.c, tree.c, varasm.c: Use %<, %> and %q + for quoting in diagnostics going through pretty-print.c. Use '' + for quoting in other diagnostic text. + * langhooks.c: Include intl.h. Mark text locating diagnostics for + translation. + * Makefile.in (langhooks.o): Update dependencies. + * pretty-print.h (pp_printf): Mark as accepting GCC diagnostic + formats. + +2004-09-15 Mark Mitchell + + * configure.ac: Check for COMDAT support. Robustify check for + SHF_MERGE support. + * configure: Regenerated. + * config.in: Likewise. + * langhooks-def.h (lhd_comdat_group): New function. + (LANG_HOOKS_COMDAT_GROUP): New macro. + (LANG_HOOKS_DECLS): Use it. + * langhooks.c (lhd_comdat_group): Define. + * langhooks.h (lang_hooks_for_decls): Add comdat_group. + * output.h (named_section_flags): Make it a macro. + (named_section_real): New function. + (default_no_named_section): Add decl parameter. + (default_elf_asm_named_section): Likewise. + (default_coff_asm_named_section): Likewise. + (default_pe_asm_named_section): Likewise. + * target.h (gcc_target): Adjust type of named_section. + * varasm.c (named_section_flags): Rename to named_section_real. + Add decl parameter. + (default_no_named_section): Add decl parameter. + (default_elf_asm_named_section): Use COMDAT, if available. Deal + with the case that ASM_COMMENT_START is "@". + (default_coff_asm_named_section): Add decl parameter. + (default_pe_asm_named_section): Likewise. + * config/alpha/alpha.c (vms_asm_named_section): Add decl + parameter. + (unicosmk_asm_named_section): Likewise. + * config/arm/arm.c (arm_elf_asm_named_section): Remove. + * config/arm/elf.h (TARGET_ASM_NAMED_SECTION): Likewise. + * config/c4x/c4x.c (c4x_asm_named_section): Add decl parameter. + * config/cris/cris-protos.h (cris_target_asm_named_section): + Likewise. + * config/cris/cris.c (cris_target_asm_named_section): + Likewise. + * config/darwin/darwin-protos.h (darwin_asm_named_section): + Likewise. + * config/darwin/darwin.c (darwin_asm_named_section): Likewise. + * config/h8300/h8300.c (h8300_asm_named_section): Likewise. + * config/i386/i386-protos.h (i386_pe_asm_named_section): + Likewise. + * config/i386/winnt.c (i386_pe_asm_named_section): Likewise. + * config/m68k/m68k.c (m68k_coff_asm_named_section): Likewise. + * config/mcore/mcore.c (mcore_asm_named_section): Likewise. + * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): + Likewise. + * config/sparc/sparc.c (sparce_elf_asm_named_section): Likewise. + * cp/cp-lang.h (LANG_HOOKS_COMDAT_GROUP): Define. + * cp/cp-tree.h (cxx_comdat_group): Declare. + * cp/decl.c (cxx_comdat_group): New function. + +2004-09-15 Jan Hubicka + + * tree-ssa.c (verify_flow_sensitive_alias_info): Do not walk dead nodes. + * tree-tailcall.c (eliminate_tail_call): Release SSA name. + + * tree-cfg.c (remove_bb): Release SSA defs. + +2004-09-15 Kazu Hirata + + * doc/tm.texi: Follow spelling conventions. + +2004-09-15 Kazu Hirata + + * tree-ssa-dom.c: Fix comment typos. + +2004-09-15 Alan Modra + + * config/rs6000/linux-unwind.h (struct gcc_pt_regs): Extend to + include ccr. + (ppc_fallback_frame_state): Save location of CR. + +2004-09-15 Jakub Jelinek + + * expr.c (string_constant): Handle also read-only variables + initialized to string literals. + + * builtins.c (expand_builtin_memmove): Optimize memmove (x, y, 1) + into memcpy (x, y, 1) if memcpy can be expanded inline. + +2004-09-15 Zdenek Dvorak + + PR tree-optimization/17468 + * tree-ssa.c (verify_use, verify_phi_args, verify_ssa): Verify that + definition inside a block precede uses. + * tree-tailcall.c (adjust_return_value): Emit statements in the + correct order. + +2004-09-15 Richard Sandiford + + * config/mips/mips.h (POINTERS_EXTEND_UNSIGNED): Delete. + +2004-09-15 Eric Botcazou + + * doc/install.texi (sparc-sun-solaris2*): Properly format warning. + +2004-09-14 Jeff Law + + * tree-ssa-dom.c (avail_exprs_stack): New global varray. + (struct dom_walk_block_data): Remove avail_exprs member. + (tree_ssa_dominator_optimize): Initialize avail_exprs_stack. + (lookup_avail_expr): No longer need to pass in address of + the block local available exprs stack. All callers changed. + (simplify_cond_and_lookup_avail_expr): Similarly. + (simplify_switch_and_lookup_avail_expr): Similarly. + (get_eq_expr_value, record_cond): Likewise. + (record_dominating_conditions): Likewise. + (update_rhs_and_lookup_avail_expr): Likewise. + (record_equivalences_from_stmt): Likewise. + (dom_opt_initialize_block_local_data): No longer test state of + block local avail_exprs. + (dom_opt_initialize_block): Mark unwind point in the global + avail_expr stack. + (remove_expressions_from_table): Update to unwind to the + most recent unwind marker in the global avail_expr stack. + All callers changed. + (dom_opt_finalize_block): Mark unwind point in the global + avail_expr stack as needed. + (record_cond): Push elements into the global avail_exprs stack. + + * tree-dfa.c (free_df_for_stmt): No longer static. + (free_df): Update comments. + * tree-flow.h (free_df_for_stmt): Prototype. + * tree-ssa-dse.c (dse_optimize_stmt): Call free_df_for_stmt. Also + call release_defs. + +2004-09-14 Diego Novillo + + PR tree-optimization/17252 + * tree-ssa-alias.c (may_alias_p): Don't assume that a + pointer may not point to itself when using relaxed + aliasing rules. + +2004-09-14 Richard Henderson + + PR middle-end/17397 + * gimplify.c (gimplify_addr_expr): Don't inadvertently change types + while folding >. + +2004-09-14 Andrew Pinski + + * tree-ssa-copy.c (may_propagate_copy): Don't check the aliasing + sets of the pointers but the aliasing sets of what they point to. + +2004-09-14 Roger Sayle + + PR rtl-optimization/9771 + * regclass.c (CALL_REALLY_USED_REGNO_P): New macro to eliminate + conditional compilation in init_reg_sets_1. + (init_reg_sets_1): Let global_regs[i] take priority over the frame + (but not stack) pointer exceptions to regs_invalidated_by_call. + (globalize_reg): Globalizing a fixed register may need to update + regs_invalidated_by_call. + +2004-09-14 Diego Novillo + + PR tree-optimization/15262 + * tree-dfa.c (dump_variable): Also print the type of the + variable. + * tree-ssa-alias.c (compute_flow_insensitive_aliasing): If two + memory tags are of conflicting alias sets but have no aliased + symbols in common, add one tag to the alias set of the other. + (setup_pointers_and_addressables): Remove hack to deal with + programs with no aliased symbols. + (may_alias_p): Don't special case aggregate types. + +2004-09-14 Joseph S. Myers + + PR c/15498 + * doc/invoke.texi (Environment Variables): Correct example locale. + +2004-09-14 Jan Hubicka + + * cfg.c (expunge_block): Revert previous change adding ggc_free call. + +2004-09-14 Mark Mitchell + + * config.gcc: Do not build a shared libgcc for arm-none-eabi. + +2004-09-14 Joseph S. Myers + + * c-tree.h (struct c_declspecs): Add const_p, volatile_p and + restrict_p. + (struct c_declarator): Change u.array.quals and pointer_quals to + int. Add u.array.attrs. + (quals_from_declspecs): New. + * c-decl.c (quals_from_declspecs): New. + (shadow_tag_warned): Give more specific message for useless type + qualifiers. + (build_array_declarator, set_array_declarator_inner, + grokdeclarator, make_pointer_declarator, build_null_declspecs, + declspecs_add_qual): Update for changed structures. + +2004-09-14 Jeff Law + + * tree-ssa-dom.c (stmts_to_rescan): Move from a block-local + to a global varray. + (tree_ssa_dominator_optimize): Allocate stmts_to_rescan. + (dom_opt_initialize_block_local_data): No longer test state + of stmts_to_rescan. + (dom_opt_finalize_block): Update due to change in scope of + stmts_to_rescan. + (optimize_stmt): Similarly. + +2004-09-14 Kazu Hirata + + * cgraph.h, cgraphunit.c, fold-const.c, lambda-mat.c, + lambda.h, profile.c, tree-optimize.c, tree-sra.c, vec.h: Fix + comment typos. Follow spelling conventions. + +2004-09-14 Kazu Hirata + + * config/darwin-c.c, config/alpha/alpha.c, config/i386/i386.c, + config/i386/predicates.md, config/sparc/sparc.c: Follow + spelling conventions. + +2004-09-14 Zdenek Dvorak + Steven Bosscher + + * Makefile.in (loop-unroll.o): Add HASHTAB_H and RECOG_H dependency. + * basic-block.h (struct reorder_block_def): Add copy_number field. + * cfgloop.h (biv_p): Declare. + * cfgloopmanip.c (duplicate_loop_to_header_edge): Set copy_number. + * common.opt (fsplit-ivs-in-unroller): New flag. + * loop-iv.c (biv_p): New function. + * loop-unroll.c: Include hashtab.h and recog.h. + (struct iv_to_split, struct split_ivs_info): New types. + (analyze_ivs_to_split, si_info_start_duplication, split_ivs_in_copies, + free_si_info, si_info_hash, si_info_eq, analyze_iv_to_split_insn, + determine_split_iv_delta, get_ivts_expr, allocate_basic_variable, + insert_base_initialization, split_iv): New functions. + (peel_loop_completely, unroll_loop_constant_iterations, + unroll_loop_runtime_iterations, peel_loop_simple, unroll_loop_stupid): + Use them. + * doc/invoke.texi (-fsplit-ivs-in-unroller): Document. + +2004-09-14 Zdenek Dvorak + + * tree-cfg.c (thread_jumps): Update dominators correctly in + case destination of threaded edge dominates its source. + +2004-09-14 Zdenek Dvorak + + * unroll.c: Removed. + * loop.h: Removed. + * Makefile.in (LOOP_H, unroll.o): Removed. + (toplev.o, passes.o, stmt.o, integrate.o, loop.o): Remove LOOP_H + dependency. + * alias.c (init_alias_analysis): Remove flag_old_unroll_loops + reference. + * cfgloop.h (LOOP_PREFETCH, loop_optimize): Moved from loop.h. + * common.opt (fold-unroll-loops, fold-unroll-all-loops): Removed. + * loop.c: Do not include loop.h. + (LOOP_INFO, LOOP_MOVABLES, LOOP_REGS, LOOP_IVS, INSN_LUID, + REGNO_FIRST_LUID, REGNO_LAST_LUID, enum g_types, struct induction, + struct iv_class, enum iv_mode, struct iv, REG_IV_TYPE, REG_IV_INFO, + REG_IV_CLASS, struct loop_ivs, struct loop_mem_info, struct loop_reg, + struct loop_regs, struct loop_movables, struct loop_info): Moved + from loop.h. + (back_branch_in_range_p, fold_rtx_mult_add, biv_total_increment, + reg_dead_after_loop, final_biv_value, loop_find_equiv_value, + find_common_reg_term, loop_iterations, final_giv_value): Moved + from unroll.c. + (uid_luid, uid_loop, max_uid_for_loop, max_reg_before_loop, + loop_dump_stream, for_each_insn_in_loop, express_from, + extend_value_for_giv, loop_iv_add_mult_emit_before, + loop_iv_add_mult_sink, loop_iv_add_mult_hoist, + loop_insn_first_p, get_condition_for_loop, + loop_insn_emit_before, loop_insn_hoist, + loop_insn_sink): Made static. + (loop_invariant_p): Made static. Removed flag_old_unroll_loops + reference. + (strength_reduce): Do not call unroller. + (record_giv): Do not initialize unrolled field. + (prescan_loop): Do not set loop_info->preconditioned. + * passes.c: Do not include loop.h. + (rest_of_handle_loop_optimize): Do not call unroller. + * predict.c: Do not include loop.h. + * rtl.h (NOTE_PRECONDITIONED): Removed. + * stmt.c: Do not include loop.h. + * toplev.c: Do not include loop.h. + (process_options): Do not handle flag_old_unroll_loops. + + * doc/invoke.texi (fold-unroll-loops, fold-unroll-all-loops): + Documentation removed. + * doc/passes.texi (unroll.c, loop.h): Documentation removed. + +2004-09-14 Nathan Sidwell + + * Makefile.in (STAGE1_CHECKING): New variable. + (stage1_build): Use it. + * tree-ssa.c (verify_ssa): Preserve state of dominance + information. + +2004-09-14 Uros Bizjak + + * config/i386/i386.c (output_fp_compare): Add generation + of ftst instruction. + * config/i386/i386.md (*cmpfp_0_sf, cmpfp_0_df, cmpfp_0_xf): + Use output_fp_compare () function. + (cmpfp_i, *cmpfp_i_sse, *cmpfp_i_sse_only): Fix insn constraint. + (fix_truncdi_memory): Remove operands[5] copy. + +2004-09-14 Kazu Hirata + + * config/m32r/m32r.md, config/m68k/m68kelf.h, + config/mcore/mcore.md, config/rs6000/linux64.h, + config/rs6000/rs6000.c, config/sparc/sparc.c: Fix comment + typos. + +2004-09-13 James E Wilson + + * Makefile.in (GEN_PROTOS_OBJS): Add $(BUILD_ERRORS). + * gen-protos.c: Include errors.h. + (progname): Delete. + +2004-09-14 Jan Hubicka + + * Makefile.in (predict.o): Depend on tree-scalar-evolution.h + * predict.c: Include tree-scalar-evolution.h and cfgloop.h + (predict_loops): Use number_of_iterations_exit to predict + number of iterations on trees. + +2004-09-13 Dale Johannesen + + PR 17408 + PR 17409 + * c-decl.c (start_decl): Repair TREE_STATIC for initialized + objects declared extern. + +2004-09-14 Paul Brook + + * config/arm/arm.c (arm_expand_prologue): Make args_to_push a + HOST_WIDE_INT. + +2004-09-13 Daniel Jacobowitz + + * fold-const.c (fold_checksum_tree): Ignore TYPE_CACHED_VALUES. + Only use TYPE_BINFO for aggregates. + +2004-09-13 Daniel Jacobowitz + + * expmed.c (synth_mult): Initialize latency. Check cost before + checking ops count. + +2004-09-13 Kenneth Zadeck + + * tree-ssa-operands.c (get_call_expr_operands): Added parm to + add_call_clobber_ops and add_call_read_ops. + (add_call_clobber_ops, add_call_read_ops): Added code to reduce + the number of vdefs and vuses inserted based on analysis of global + variables across calls. * tree-dfa.c (find_referenced_vars): + Needed to reset static var maps before each function is compiled. + * cgraphunit.c: + (static_vars_to_consider_by_tree,static_vars_to_consider_by_uid, + static_vars_info,functions_to_static_vars_info,module_statics_escape, + all_module_statics,searchc_env,dfs_info): New fields to support + analysis of static global variables. + (print_order, convert_UIDs_in_bitmap, new_static_vars_info, + cgraph_reset_static_var_maps, get_global_static_vars_info, + get_global_statics_not_read, get_global_statics_not_written, + searchc, cgraph_reduced_inorder, has_proper_scope_for_analysis, + check_rhs_var, check_lhs_var, get_asm_expr_operands, + process_call_for_static_vars, scan_for_static_refs, + cgraph_characterize_statics_local, cgraph_get_static_name_by_uid, + clear_static_vars_maps, cgraph_propagate_bits, + cgraph_characterize_statics): New. Functions to support analysis + of static global variables. + (cgraph_mark_local_and_external_functions): Renamed from: + (cgraph_mark_local_functions) + (cgraph_expand_all_functions): Remove call to + cgraph_mark_local_and_external_functions. + (cgraph_optimize): Added driver to analyze static variables whose + scope is within the compilation unit. * cgraph.h (struct + cgraph_local_info, GTY): Added statics_read, statics_written, + local, calls_read_all, calls_write_all, for_functions_valid. + (struct cgraph_node): Added next_cycle. * cgraph.c + (dump_cgraph_node): Added print routines for new fields. * + makefile.in: macroized cgraph.h, added cgraphunit.c to the ggc + list. + +2004-09-13 Joseph S. Myers + + * c-decl.c (grokdeclarator): Correct comments about where storage + class specifiers are rejected by grammar and add corresponding + asserts. Diagnose typedefs and parameters declared inline. + Change warning for inline main to a pedwarn. Only diagnose inline + main if hosted. + (declspecs_add_scspec): Allow duplicate "inline". + +2004-09-13 Steve Ellcey + + * config/ia64/ia64.c (ia64_scalar_mode_supported_p): New. + (TARGET_SCALAR_MODE_SUPPORTED_P): New. + +2004-09-13 Richard Henderson + + PR 17436 + * tree.h (TYPE_CONTAINS_PLACEHOLDER_INTERNAL): New. + (tree_type): Replace spare with contains_placeholder_bits. + (type_contains_placeholder_1): Rename from type_contains_placeholder_p, + make static. Remove seen_types list. + (type_contains_placeholder_p): New. + +2004-09-13 James E Wilson + + * config/mips/mips.c (CODE_FOR_mips_sqrt_ps): New. + (sb1_bdesc, bdesc_map, bdesc_arrays): New. + (mips_expand_builtin): Add SB-1 support. Use bdesc_map and + bdesc_arrays instead of mips_bdesc. + (mips_init_builtins): Likewise. + * config/mips/mips.h (TARGET_SB1): New. + (HAVE_SQRT_P): Delete. + * config/mips/mips.md (divide_condition): Support V2SF. + (sqrt_condition, recip_condition): New. + (div3): Use ANYF instead of SCALARF. + (*div3): Use ANYF instead of SCALARF. Use UNITMODE instead of + MODE. + (*recip3, *rsqrta, *rsqrtb): Use recip_condition + instead of ISA_HAS_FP4. Use ANYF instead of SCALARF. Use UNITMODE + instead of MODE. + (sqrt2): Use sqrt_condition instead of HAVE_SQRT_P. Use ANYF + instead of SCALARF. Use UNITMODE instead of MODE. + +2004-09-13 Zack Weinberg + + * config.in: Regenerate after removal of libbanshee. + +2004-09-13 Andrew MacLeod + + PR tree-optimization/17400 + * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't + coalesce partitions when one occurs in an abnormal PHI. + +2004-09-13 Andrew Pinski + + * config/rs6000/darwin.h (ASM_OUTPUT_COMMON): Change variable size's + name to _new_size. + +2004-09-13 Richard Henderson + + PR inline-asm/6806 + * cselib.c (cselib_invalidate_rtx): Export. Remove unused args. + (cselib_invalidate_rtx_note_stores): New. + (cselib_record_sets, cselib_process_insn): Update to match. + * cselib.h (cselib_invalidate_rtx): Declare. + * postreload.c (reload_cse_simplify): Invalidate asm clobbers. + +2004-09-13 Richard Henderson + + PR tree-opt/10528 + * tree-inline.c (copy_body_r): Recompute bits for ADDR_EXPR, + after copying its argument. + +2004-09-13 Joseph S. Myers + + * c-common.c, c-decl.c, c-lex.c, c-objc-common.c, c-opts.c, + c-parse.in, c-pragma.c, c-typeck.c: Use %q, %< and %> for quoting + in diagnostics. Use %' for English apostrophes. + * c-tree.h (ATTRIBUTE_GCC_CDIAG): Define. + (pedwarn_c90, pedwarn_c99): Use it. + * c-decl.c (lookup_label): Quote label name in diagnostic. + * c-parse.in (yyprint): Use ' instead of ` for left quote. + * c-typeck.c (warn_for_assignment): Likewise. + +2004-09-13 Jan Hubicka + + * i386.c (x86_schedule): New global variable. + (override_options): Disable scheduling when not supported. + * i386.h (x86_schedule): Declare. + (TARGET_SCHEDULE): New macro. + +2004-09-12 Richard Henderson + + PR c++/16254 + * fold-const.c (fold) : Remove. + * tree.c, tree.h (has_cleanups): Remove. + +2004-09-12 Zdenek Dvorak + + * tree-ssa-loop-manip.c (split_loop_exit_edge): Handle non-ssaname + arguments of the phi nodes correctly. + +2004-09-12 Jan Hubicka + + * ggc-common.c (cmp_statistics): Fix sorting. + +2004-09-12 David Edelsohn + + PR target/16795 + * expmed.c (expand_divmod): If cheap power of 2 divide is + available, use it for negative constant as well. + +2004-09-12 Andrew Pinski + + * darwin.h (ASM_OUTPUT_COMMON): Make sure we do not have a + size of 0. + + * tree-chrec.c (initialize_scalar_evolutions_analyzer): Remove. + +2004-09-12 Richard Henderson + + * config/i386/i386.c (ix86_split_ashldi): Special case op1 as one + or minus one. + (ix86_split_ashrdi, ix86_split_lshrdi): Clean up conditions for + post-reload, and scratch NULL. + * config/i386/i386.md (testqi_1): Use FLAGS_REG name. + (x86_shift_adj_2): Use ix86_expand_clear. + (ashldi3): Remove CMOVE expansion difference. + (ashldi3_1): Remove. + (*ashldi3_1): Rename from *ashldi3_2. Use reg_or_pm1_operand and + add constraints for immediates. New peephole for split-with-temp. + Run splitter after peep2 pass. + (ashrdi3, ashrdi3_1, ashrdi3_2): Similarly. + (lshrdi3, lshrdi3_1, lshrdi3_2): Similarly. + (setcc_2): Rename with *. + * config/i386/predicates.md (reg_or_pm1_operand): New. + (ashldi_input_operand): New. + +2004-09-12 Richard Henderson + + * common.opt: Remove flags -fmove-all-movables and + -freduce-all-givs. + * loop-invariant.c (find_invariants_to_move): + Remove all uses of flag_move_all_movables. + * loop.c (move_movables): Remove all uses of + flag_move_all_movables. + (strength_reduce): Remove all uses of + flag_reduce_all_givs. + * doc/invoke.texi: Remove documentation of flags + -fremove-all-movables and -freduce-all-givs. + +2004-09-11 Roger Sayle + + PR middle-end/17411 + * tree-sra.c (generate_element_zero): Revert recent build_int_cst + change. elt->type may be a floating point type, so use fold_convert. + +2004-09-11 Geoffrey Keating + + * config/darwin.c (machopic_validate_stub_or_non_lazy_ptr): Mark + the thing referenced as used, not the stub itself. + +2004-09-11 Joseph S. Myers + + * c-tree.h (enum c_storage_class): New. + (struct c_declspecs): Add storage_class, inline_p and thread_p. + * c-decl.c (shadow_tag_warned): Give errors for "inline" in empty + declarations and "auto" or "register" in file scope empty + declarations. Give more specific warnings for other cases of + storage class specifiers in empty declarations. + (grokdeclarator): Update for new structures. Don't check for + multiple storage classes. Diagnose file-scope "register" if + pedantic. + (build_null_declspecs): Update. + (declspecs_add_scspec): Update. Diagnose multiple storage class + specifiers and invalid uses of "__thread". + +2004-09-11 Zack Weinberg + + * tree.c (tree_code_size): New function, bulk of code from tree_size. + (tree_size, make_node): Use it. + * tree-ssa-pre.c (init_pre): Use it. + * tree.h: Prototype it. + +2004-09-11 Zdenek Dvorak + + * tree-cfg.c (set_bb_for_stmt): Use PHI_BB. + * tree-dfa.c (compute_immediate_uses, add_immediate_use, + redirect_immediate_use): Use PHI_DF. + * tree-flow-inline.h (stmt_ann): Abort on phi nodes. + (bb_for_stmt): Use PHI_BB. + (get_immediate_uses): Use PHI_DF. + * tree-ssa-dse.c (max_stmt_uid): New variable. + (get_stmt_uid): New function. + (dse_optimize_stmt, dse_record_phis, tree_ssa_dse): Do not use phi + node annotations. + * tree-ssa-loop-im.c (LIM_DATA): Do not use phi statement annotations. + (max_uid): Renamed to max_stmt_uid. + (get_stmt_uid): New function. + (maybe_queue_var, single_reachable_address, determine_lsm): Do not use + phi node annotations. + * tree-ssa.c (replace_immediate_uses): Do not use phi node annotations. + * tree.h (PHI_BB, PHI_DF): New accessor functions. + (struct tree_phi_node): Add bb and df fields. + +2004-09-11 Richard Henderson + + PR middle-end/17416 + * cfgexpand.c (expand_used_vars_for_block): Fix off-by-one bug + in conflict loop. + +2004-09-11 Jan Hubicka + + * i386.h (MODE_NEEDED): Calls need UNINITIALIZED mode; add comment. + (EMIT_MODE_SET): UNINITIALIZED mode needs no set. + * i386.md (i387_cw): Add 'uninitialized' mode. + + * profile.c (BB_TO_GCOV_INDEX): move more to the front. + (output_location): Break out from .... + (branch_prob): ... here; handle gcov output on trees. + * toplev.c (process_options): No longer be sorry about coverage for + trees. + +2004-09-11 Steven Bosscher + + PR c++/17412 + * fold-const.c (fold): Do not try to fold the operand of a + CLEANUP_POINT_EXPR if that operand does itself not have any + operands. + + PR middle-end/17417 + * langhooks.c (lhd_decl_printable_name): Make sure that this + function is called with is a decl node that has an identifier. + * tree-pretty-print.c (dump_function_name): New function to + wrap PRINT_FUNCTION_NAME and dump_decl_name. + (print_call_name): Use it. + +2004-09-11 Mohan Embar + + * ggc-none.c: Include "bconfig.h" if -DGENERATOR_FILE, + "config.h" if not. + +2004-09-11 Jakub Jelinek + + * tree-ssa-alias.c (collect_points_to_info_r): Handle + pointing to PTR + OFFSET as PTR, not as pointing to PTR or pointing + to OFFSET. + +2004-09-11 Richard Henderson + + * expr.c (expand_expr_addr_expr_1) Rename from expand_expr_addr_expr. + (expand_expr_addr_expr): New function. Take ADDR_EXPR instead of the + operand of the ADDR_EXPR. + (expand_expr_real_1): Update to match. + +2004-09-11 David Edelsohn + + PR target/17277 + * config/rs6000/aix.h (MD_FROB_UPDATE_CONTEXT): Use __64BIT__ to + choose 64-bit version. + +2004-09-11 Richard Henderson + + PR c/17396 + * c-typeck.c (build_unary_op): Add legacy offsetof hack. + +2004-09-11 Kazu Hirata + + * doc/cfg.texi, doc/hostconfig.texi, doc/install.texi, + doc/invoke.texi, doc/md.texi, doc/tm.texi, doc/tree-ssa.texi: + Insert @: after i.e. or e.g. + +2004-09-10 Geoffrey Keating + + * tree-pretty-print.c (dump_decl_name): Print unnamed decls as + D.xxx rather than . + +2004-09-10 Adam Nemet + + * configure.ac (AC_MSG_CHECKING(what linker to use)): + in_tree_ld_is_elf should be true for LynxOS. + * configure: Regenerate. + +2004-09-10 Adam Nemet + + * Makefile.in (all.cross): Add srcextra. + +2004-09-10 Roger Sayle + + PR middle-end/17024 + * fold-const.c (fold_cond_expr_with_comparison): Handle unordered + floating point comparison operators. Change aborts to gcc_asserts. + +2004-09-10 Geoffrey Keating + + * final.c (output_asm_insn): Correct problem with -fverbose-asm. + +2004-09-10 James E Wilson + + * Makefile.in (LIBGCC_DEPS): Delete duplicate stmp-int-hdrs reference. + (stmp-fixproto): Change stmp-int-headers to stmp-int-hdrs in comment. + + * convert.c (convert_to_vector): Replace recursive call with + error_mark_node. + + * emit-rtl.c (gen_const_vector): Renamed from gen_const_vector_0. + Add integer argument named constant. Use const_tiny_rtx instead of + CONST0_RTX. + (gen_rtx_CONST_VECTOR): Rewrite to handle checks for both CONST0_RTX + and CONST1_RTX. + (init_emit_once): Fix users of gen_const_vector. Set CONST1_RTX for + vector types. + * expr.c (const_vector_from_tree): Call gen_rtx_CONST_VECTOR instead + of gen_rtx_raw_CONST_VECTOR. + +2004-09-10 Eric Christopher + + PR c/16046 + * c-parse.in (attribute): Add NULL_TREE for error case + for error recovery. + +2004-09-10 Zack Weinberg + + * c-common.h (struct c_fileinfo): Comment moved here from cp-tree.h. + (extract_interface_info): Delete prototype. + * c-decl.c (extract_interface_info): Delete stub. + * c-lex.c (get_fileinfo): Initialize file_info_tree here, if + it's not already been done ... + (init_c_lex): ... not here. + (fe_file_change): Don't call extract_interface_info. + +2004-09-11 Joseph S. Myers + + * c-tree.h (struct c_declspecs): Remove typedef_decl. Add + typedef_p and typedef_signed_p. + * c-decl.c (shadow_tag_warned): Check typedef_p, not typedef_decl. + (grokdeclarator): Don't use typedef_decl for warn_deprecated_use. + Check typedef_p and typedef_signed_p, not typedef_decl. + (grokfield): Check typedef_p, not typedef_decl. + (build_null_declspecs): Initialize typedef_p and typedef_signed_p, + not typedef_decl. + (declspecs_add_type): Set typedef_p and typedef_signed_p, not + typedef_decl. + +2004-09-10 Kazu Hirata + + * doc/tm.texi, doc/tree-ssa.texi: Fix typos. + +2004-09-10 Geoffrey Keating + + * gimplify.c (create_tmp_var_raw): Don't name otherwise-nameless + temporary variables. + + * dbxout.c (dbxout_block): Update for + current_function_func_begin_label a string. + * dwarf2out.c (dwarf2out_begin_prologue): Likewise. + * except.c (dw2_output_call_site_table): Likewise. + * toplev.c (current_function_func_begin_label): Likewise. + * tree.h (current_function_func_begin_label): Likewise. + * config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Likewise. + + * final.c (output_asm_insn): Use strtoul instead of atoi, save a + loop. + + * config/darwin.c: Include target.h. + (struct machopic_indirection): Make ptr_name a string. + (machopic_indirection_hash): Update for ptr_name a string. + (machopic_indirection_eq): Likewise. + (machopic_indirection_name): Likewise. + (machopic_output_indirection): Likewise. + (machopic_validate_stub_or_non_lazy_ptr): Update for ptr_name a + string. Don't expect stub names to be in the identifier hash table. + Do call strip_name_encoding before looking up entry in ID hash table. + * config/t-darwin (darwin.o): Add target.h to dependencies. + + * gcc/config/rs6000/rs6000.c (print_operand): Use fputs instead + of fprintf for register names. + + * output.h (unlikely_section_label): Delete declaration. + (unlikely_text_section_name): Likewise. + * varasm.c (unlikely_section_label_printed): Make static. + (unlikely_section_label): Likewise. + (unlikely_text_section_name): Likewise. + (assemble_start_function): Use reconcat. + + * rtl.def (REG): Add comment to describe third field. + +2004-09-10 Andrew Pinski + + * config/darwin.c (machopic_mcount_stub_name): Call + machopic_indirection_name instead of making the string + ourselves. + +2004-09-10 Diego Novillo + + Revert + + 2004-09-08 Jie Zhang + + * tree-ssa-alias.c (compute_flow_insensitive_aliasing): If type + memory tag is call clobbered, so are its aliases. + (group_aliases): When two memory tags being grouped, if one is + call clobbered, so are the other and its aliases. + (add_may_alias): Remove call-clobbering stuff. + (replace_may_alias): Likewise. + (merge_pointed_to_info): Merge pt_global_mem + +2004-09-10 Kazu Hirata + + * bb-reorder.c, c-common.c, c-incpath.c, c-typeck.c, + genrecog.c, lambda-code.c, mips-tdump.c, mips-tfile.c, + passes.c, tree-data-ref.c, tree-data-ref.h, tree-mudflap.c, + tree-scalar-evolution.c, tree-ssa-copyrename.c, + tree-ssa-live.c, tree-ssa-live.h: Fix comment typos. + +2004-09-10 Richard Sandiford + + * config/frv/frv.md (UNSPEC_MASACCS, UNSPEC_MDASACCS): New constants. + (maddaccs, msubaccs, *maddacc): Turn operand 0 into a single ACC/ACCG + pair. Remove match_dup from inputs. Remove masaccs handling. + (mdaddaccs, mdsubaccs, *mdaddacc): Likewise a dual ACC/ACCG pair. + (masaccs, mdasaccs): Turn into define_insns. + +2004-09-10 Richard Sandiford + + * tree-tailcall.c (process_assignment): Only do accumulator transforms + for floating-point types if flag_unsafe_math_optimizations. + +2004-09-10 Kazu Hirata + + * config/darwin.c, config/alpha/alpha.h, config/arm/arm.c, + config/arm/arm.h, config/arm/arm.md, config/arm/bpabi.h, + config/arm/predicates.md, config/frv/frv.c, config/frv/frv.md, + config/h8300/h8300.md, config/i386/gmm_malloc.h, + config/ia64/ia64.md, config/ip2k/libgcc.S, + config/mips/mips-ps-3d.md, config/mips/mips.c, + config/rs6000/rs6000.c, config/s390/s390.c, + config/sh/symbian.c: Fix comment typos. + +2004-09-10 Andreas Krebbel + + * config/s390/s390.c (s390_emit_prologue): Added missing + "{}" brackets. + +2004-09-10 Kazu Hirata + + * doc/extend.texi, doc/invoke.texi, doc/passes.texi: Fix + typos. Follow spelling conventions. + +2004-09-10 Joseph S. Myers + + * toplev.c (warn_deprecated_use): Correct logic for saying "type" + in diagnostic. Don't dereference NULL TYPE_NAME. + +2004-09-10 Kazu Hirata + + * c-common.c, c-pch.c, defaults.h, lambda-code.c, passes.c, + tree-data-ref.c, tree-flow.h, tree-ssa-operands.c, + tree-ssa-threadupdate.c, tree-vectorizer.c, tree-vectorizer.h, + value-prof.c: Fix comment typos. Follow spelling conventions. + +2004-09-10 Jan Hubicka + + * tree-ssa-dce.c (remove_dead_stmt): Update profile. + * tree-split_edge.c (tree_split_edge): Likewise. + (thread_jumps): Likewise. + +2004-09-10 Kazu Hirata + + * cgraphunit.c, predict.c, tree-ssa-loop-ivopts.c: Fix comment + typos. + +2004-09-10 Paolo Bonzini + + * cgraph.h (cgraph_dump_file): Do not declare. + * cgraphunit.c (cgraph_dump_file): Declare as static. + (init_cgraph): New. + * toplev.c (cgraph_dump_file): Do not declare. + (compile_file): Call init_cgraph. + * tree-dump.c (dump_files): Add IPA dump file, remove + XML dump of call graph. + (get_dump_file_name): Support IPA dump file naming scheme. + * tree.h (enum tree_dump_index): Add IPA dump file, remove + XML dump of call graph. + * doc/invoke.texi (Debugging Options): Document the new options. + +2004-09-10 Richard Sandiford + + * doc/extend.texi: Document the FR-V built-in functions. + 2004-09-09 James E Wilson * doc/sourcebuild.texi: Delete libbanshee reference. @@ -7192,7 +8530,7 @@ * doc/install.texi (powerpc-*-darwin*): Mention cctools version required. -2004-08-02 Gabriel Dos Reis +2004-08-02 Gabriel Dos Reis * gdbinit.in: Reflect previous changes to rtunion_def. diff --git a/gcc/ChangeLog.vec b/gcc/ChangeLog.vec index e05d23bc3d5..f83c0fa1648 100644 --- a/gcc/ChangeLog.vec +++ b/gcc/ChangeLog.vec @@ -1,5 +1,9 @@ 2004-09-18 Ben Elliston + * Merge with edge-vector-mergepoint-20040918. + +2004-09-18 Ben Elliston + * basic-block.h (ei_safe_edge): New function. (FOR_EACH_EDGE): Rewrite; include iterator argument. (END_FOR_EACH_EDGE): Remove. diff --git a/gcc/LANGUAGES b/gcc/LANGUAGES index ed1e0b4ab2b..5f20d9c24e9 100644 --- a/gcc/LANGUAGES +++ b/gcc/LANGUAGES @@ -6,6 +6,18 @@ time as we can formally start documenting the interface this file will serve as a repository for information on these interface and any incompatable changes we've made. +2004-09-09: + In an effort to decrease execution time, single char tree code + classes were changed to enumerated values. + + Old way: + + DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", 'd', 0) + + New way: + + DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", tcc_declaration, 0) + 2001-02-26: A DECL_INITIAL of NULL_TREE or error_mark_node in a VAR_DECL is no longer taken to signify a tentative definition which should not be emitted until diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 3421dba5143..cf13e2870ca 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -134,6 +134,7 @@ BOOT_LANGUAGES = c @all_boot_languages@ # or BOOT_CFLAGS # STAGE1_CFLAGS is set by configure on some targets or passed from toplevel # and sets the CFLAGS passed to stage1 of a bootstrap compilation. +# STAGE1_CHECKING enables checking for the stage1 compiler # BOOT_CFLAGS is the value of CFLAGS to pass to the stage2, stage3 and stage4 # bootstrap compilations. # XCFLAGS is used for most compilations but not when using the GCC just built. @@ -142,6 +143,7 @@ XCFLAGS = TCFLAGS = CFLAGS = -g STAGE1_CFLAGS = -g @stage1_cflags@ +STAGE1_CHECKING = -DENABLE_CHECKING -DENABLE_ASSERT_CHECKING BOOT_CFLAGS = -g -O2 # Flags to determine code coverage. When coverage is disabled, this will @@ -699,9 +701,9 @@ RA_H = ra.h bitmap.h sbitmap.h hard-reg-set.h insn-modes.h RESOURCE_H = resource.h hard-reg-set.h SCHED_INT_H = sched-int.h $(INSN_ATTR_H) $(BASIC_BLOCK_H) $(RTL_H) INTEGRATE_H = integrate.h varray.h -LOOP_H = loop.h varray.h bitmap.h CFGLAYOUT_H = cfglayout.h $(BASIC_BLOCK_H) CFGLOOP_H = cfgloop.h $(BASIC_BLOCK_H) $(RTL_H) +CGRAPH_H = cgraph.h bitmap.h tree.h $(HASHTAB_H) DF_H = df.h bitmap.h sbitmap.h $(BASIC_BLOCK_H) DDG_H = ddg.h sbitmap.h $(DF_H) GCC_H = gcc.h version.h @@ -722,7 +724,7 @@ TREE_DUMP_H = tree-dump.h $(SPLAY_TREE_H) TREE_GIMPLE_H = tree-gimple.h tree-iterator.h TREE_FLOW_H = tree-flow.h tree-flow-inline.h tree-ssa-operands.h \ bitmap.h $(BASIC_BLOCK_H) hard-reg-set.h $(TREE_GIMPLE_H) \ - $(HASHTAB_H) + $(HASHTAB_H) $(CGRAPH_H) TREE_SSA_LIVE_H = tree-ssa-live.h $(PARTITION_H) PRETTY_PRINT_H = pretty-print.h input.h $(OBSTACK_H) DIAGNOSTIC_H = diagnostic.h diagnostic.def $(PRETTY_PRINT_H) @@ -918,7 +920,7 @@ OBJS-common = \ reload.o reload1.o reorg.o resource.o rtl.o rtlanal.o rtl-error.o \ sbitmap.o sched-deps.o sched-ebb.o sched-rgn.o sched-vis.o sdbout.o \ simplify-rtx.o sreal.o stmt.o stor-layout.o stringpool.o \ - targhooks.o timevar.o toplev.o tracer.o tree.o tree-dump.o unroll.o \ + targhooks.o timevar.o toplev.o tracer.o tree.o tree-dump.o \ varasm.o varray.o vec.o version.o vmsdbgout.o xcoffout.o alloc-pool.o \ et-forest.o cfghooks.o bt-load.o pretty-print.o $(GGC) web.o passes.o \ rtl-profile.o tree-profile.o rtlhooks.o cfgexpand.o lambda-mat.o \ @@ -1123,7 +1125,7 @@ config.status: $(srcdir)/configure $(srcdir)/config.gcc version.c all.internal: start.encap rest.encap doc # This is what to compile if making a cross-compiler. all.cross: native gcc-cross cpp$(exeext) specs \ - $(LIBGCC) $(EXTRA_PARTS) lang.all.cross doc + $(LIBGCC) $(EXTRA_PARTS) lang.all.cross doc @GENINSRC@ srcextra # 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 @@ -1240,7 +1242,7 @@ libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) $(LIB2ADD_ST) xgcc$(exeext # All the things that might cause us to want to recompile bits of libgcc. LIBGCC_DEPS = $(GCC_PASSES) $(LANGUAGES) stmp-int-hdrs $(STMP_FIXPROTO) \ libgcc.mk $(srcdir)/libgcc2.c $(srcdir)/libgcov.c $(TCONFIG_H) \ - $(MACHMODE_H) longlong.h gbl-ctors.h config.status stmp-int-hdrs \ + $(MACHMODE_H) longlong.h gbl-ctors.h config.status \ tsystem.h $(FPBIT) $(DPBIT) $(TPBIT) $(LIB2ADD) \ $(LIB2ADD_ST) $(LIB2ADDEH) $(LIB2ADDEHDEP) $(EXTRA_PARTS) \ $(srcdir)/config/$(LIB1ASMSRC) \ @@ -1346,8 +1348,8 @@ s-crt0: $(CRT0_S) $(MCRT0_S) $(GCC_PASSES) $(CONFIG_H) c-errors.o: c-errors.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(C_TREE_H) $(FLAGS_H) $(DIAGNOSTIC_H) $(TM_P_H) 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 langhooks.h $(C_COMMON_H) + $(GGC_H) intl.h $(C_TREE_H) input.h $(FLAGS_H) toplev.h output.h \ + $(CPPLIB_H) varray.h gt-c-parse.h langhooks.h $(C_COMMON_H) $(C_PRAGMA_H) srcextra: gcc.srcextra lang.srcextra @@ -1370,7 +1372,7 @@ c-incpath.o: c-incpath.c c-incpath.h $(CONFIG_H) $(SYSTEM_H) $(CPPLIB_H) \ c-decl.o : c-decl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(RTL_H) $(C_TREE_H) $(GGC_H) $(TARGET_H) $(FLAGS_H) function.h output.h \ $(EXPR_H) debug.h toplev.h intl.h $(TM_P_H) tree-inline.h $(TIMEVAR_H) \ - opts.h $(C_PRAGMA_H) gt-c-decl.h cgraph.h $(HASHTAB_H) libfuncs.h except.h \ + opts.h $(C_PRAGMA_H) gt-c-decl.h $(CGRAPH_H) $(HASHTAB_H) libfuncs.h except.h \ $(LANGHOOKS_DEF_H) $(TREE_DUMP_H) c-typeck.o : c-typeck.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(C_TREE_H) \ $(TARGET_H) $(FLAGS_H) intl.h output.h $(EXPR_H) $(RTL_H) toplev.h $(TM_P_H) \ @@ -1390,7 +1392,7 @@ c-ppoutput.o : c-ppoutput.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ c-objc-common.o : c-objc-common.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(C_TREE_H) $(RTL_H) insn-config.h $(INTEGRATE_H) $(EXPR_H) \ $(FLAGS_H) toplev.h tree-inline.h $(DIAGNOSTIC_H) $(VARRAY_H) \ - langhooks.h $(GGC_H) $(TARGET_H) cgraph.h $(C_PRETTY_PRINT_H) c-objc-common.h + langhooks.h $(GGC_H) $(TARGET_H) $(CGRAPH_H) $(C_PRETTY_PRINT_H) c-objc-common.h c-aux-info.o : c-aux-info.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(C_TREE_H) $(FLAGS_H) toplev.h c-convert.o : c-convert.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ @@ -1551,7 +1553,7 @@ gtype-desc.o: gtype-desc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ varray.h $(HASHTAB_H) $(SPLAY_TREE_H) bitmap.h $(TREE_H) $(RTL_H) \ function.h insn-config.h $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) \ cselib.h insn-addr.h $(OPTABS_H) libfuncs.h debug.h $(GGC_H) \ - cgraph.h $(TREE_FLOW_H) reload.h $(CPP_ID_DATA_H) + $(CGRAPH_H) $(TREE_FLOW_H) reload.h $(CPP_ID_DATA_H) ggc-common.o: ggc-common.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(GGC_H) \ $(HASHTAB_H) toplev.h $(PARAMS_H) hosthooks.h @@ -1575,7 +1577,7 @@ convert.o: convert.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(FLA langhooks.o : langhooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) toplev.h \ tree-inline.h $(RTL_H) insn-config.h $(INTEGRATE_H) langhooks.h \ - $(LANGHOOKS_DEF_H) $(FLAGS_H) $(GGC_H) diagnostic.h + $(LANGHOOKS_DEF_H) $(FLAGS_H) $(GGC_H) diagnostic.h intl.h tree.o : tree.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(FLAGS_H) function.h $(PARAMS_H) \ toplev.h $(GGC_H) $(HASHTAB_H) $(TARGET_H) output.h $(TM_P_H) langhooks.h \ @@ -1586,7 +1588,7 @@ tree-dump.o: tree-dump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ tree-inline.o : tree-inline.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(TREE_H) $(RTL_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) input.h insn-config.h \ $(INTEGRATE_H) $(VARRAY_H) $(HASHTAB_H) $(SPLAY_TREE_H) toplev.h \ - langhooks.h $(C_COMMON_H) tree-inline.h cgraph.h intl.h function.h \ + langhooks.h $(C_COMMON_H) tree-inline.h $(CGRAPH_H) intl.h function.h \ $(TREE_GIMPLE_H) print-tree.o : print-tree.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(GGC_H) langhooks.h real.h @@ -1634,7 +1636,8 @@ tree-ssa-propagate.o : tree-ssa-propagate.c $(TREE_FLOW_H) $(CONFIG_H) \ tree-ssa-dom.o : tree-ssa-dom.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \ $(RTL_H) $(TREE_H) $(TM_P_H) $(EXPR_H) $(GGC_H) output.h diagnostic.h \ errors.h function.h $(TIMEVAR_H) $(TM_H) coretypes.h $(TREE_DUMP_H) \ - $(BASIC_BLOCK_H) domwalk.h real.h tree-pass.h $(FLAGS_H) langhooks.h + $(BASIC_BLOCK_H) domwalk.h real.h tree-pass.h $(FLAGS_H) langhooks.h \ + tree-ssa-propagate.h tree-ssa-threadupdate.o : tree-ssa-threadupdate.c $(TREE_FLOW_H) $(CONFIG_H) \ $(SYSTEM_H) $(RTL_H) $(TREE_H) $(TM_P_H) $(EXPR_H) $(GGC_H) output.h \ diagnostic.h errors.h function.h $(TM_H) coretypes.h $(TREE_DUMP_H) \ @@ -1664,13 +1667,14 @@ tree-vn.o : tree-vn.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) \ tree-cfg.o : tree-cfg.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \ $(RTL_H) $(TREE_H) $(TM_P_H) $(EXPR_H) $(GGC_H) $(FLAGS_H) output.h \ diagnostic.h errors.h function.h $(TIMEVAR_H) $(TM_H) coretypes.h \ - $(TREE_DUMP_H) except.h langhooks.h $(CFGLOOP_H) gt-tree-cfg.h tree-pass.h + $(TREE_DUMP_H) except.h langhooks.h $(CFGLOOP_H) gt-tree-cfg.h tree-pass.h \ + $(CFGLAYOUT_H) tree-tailcall.o : tree-tailcall.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \ $(RTL_H) $(TREE_H) $(TM_P_H) function.h $(TM_H) coretypes.h \ $(TREE_DUMP_H) diagnostic.h except.h tree-pass.h $(FLAGS_H) langhooks.h tree-nested.o: tree-nested.c $(CONFIG_H) $(SYSTEM_H) $(TM_H) $(TREE_H) \ $(RTL_H) $(TM_P_H) function.h tree-dump.h tree-inline.h tree-iterator.h \ - tree-gimple.h cgraph.h $(EXPR_H) langhooks.h $(GGC_H) gt-tree-nested.h + tree-gimple.h $(CGRAPH_H) $(EXPR_H) langhooks.h $(GGC_H) gt-tree-nested.h tree-if-conv.o: tree-if-conv.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(TREE_H) flags.h $(TIMEVAR_H) varray.h $(BASIC_BLOCK_H) $(TREE_FLOW_H) \ cfgloop.h $(RTL_H) c-common.h tree-chrec.h tree-data-ref.h \ @@ -1681,9 +1685,9 @@ tree-dfa.o : tree-dfa.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \ $(RTL_H) $(TREE_H) $(TM_P_H) $(EXPR_H) $(GGC_H) output.h diagnostic.h \ errors.h tree-inline.h $(HASHTAB_H) $(FLAGS_H) function.h $(TIMEVAR_H) \ convert.h $(TM_H) coretypes.h langhooks.h \ - $(TREE_DUMP_H) tree-pass.h params.h + $(TREE_DUMP_H) tree-pass.h params.h $(CGRAPH_H) tree-ssa-operands.o : tree-ssa-operands.c $(TREE_FLOW_H) $(CONFIG_H) \ - $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(GGC_H) diagnostic.h errors.h \ + $(SYSTEM_H) $(TREE_H) $(TM_P_H) $(GGC_H) $(CGRAPH_H) diagnostic.h errors.h \ tree-inline.h $(FLAGS_H) function.h $(TM_H) $(TIMEVAR_H) tree-pass.h tree-eh.o : tree-eh.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \ $(RTL_H) $(TREE_H) $(TM_H) $(FLAGS_H) function.h except.h langhooks.h \ @@ -1716,7 +1720,7 @@ tree-ssa-loop-manip.o : tree-ssa-loop-manip.c $(TREE_FLOW_H) $(CONFIG_H) \ tree-ssa-loop-im.o : tree-ssa-loop-im.c $(TREE_FLOW_H) $(CONFIG_H) \ $(SYSTEM_H) $(RTL_H) $(TREE_H) $(TM_P_H) $(CFGLOOP_H) domwalk.h $(PARAMS_H)\ output.h diagnostic.h $(TIMEVAR_H) $(TM_H) coretypes.h $(TREE_DUMP_H) \ - tree-pass.h flags.h + tree-pass.h flags.h $(HASHTAB_H) tree-ssa-alias.o : tree-ssa-alias.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \ $(RTL_H) $(TREE_H) $(TM_P_H) $(EXPR_H) $(GGC_H) tree-inline.h $(FLAGS_H) \ function.h $(TIMEVAR_H) convert.h $(TM_H) coretypes.h \ @@ -1725,21 +1729,21 @@ tree-optimize.o : tree-optimize.c $(TREE_FLOW_H) $(CONFIG_H) \ $(SYSTEM_H) $(RTL_H) $(TREE_H) $(TM_P_H) $(EXPR_H) \ $(GGC_H) output.h diagnostic.h errors.h $(FLAGS_H) \ $(TIMEVAR_H) $(TM_H) coretypes.h $(TREE_DUMP_H) toplev.h function.h \ - langhooks.h $(FLAGS_H) cgraph.h tree-inline.h tree-mudflap.h $(GGC_H) \ - cgraph.h tree-pass.h + langhooks.h $(FLAGS_H) $(CGRAPH_H) tree-inline.h tree-mudflap.h $(GGC_H) \ + $(CGRAPH_H) tree-pass.h c-gimplify.o : c-gimplify.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) errors.h \ $(C_TREE_H) $(C_COMMON_H) diagnostic.h $(TREE_GIMPLE_H) varray.h $(FLAGS_H) \ langhooks.h toplev.h rtl.h $(TREE_FLOW_H) langhooks-def.h \ - $(TM_H) coretypes.h $(C_PRETTY_PRINT_H) cgraph.h + $(TM_H) coretypes.h $(C_PRETTY_PRINT_H) $(CGRAPH_H) gimplify.o : gimplify.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) errors.h \ diagnostic.h $(TREE_GIMPLE_H) tree-inline.h varray.h langhooks.h \ - langhooks-def.h $(TREE_FLOW_H) cgraph.h $(TIMEVAR_H) $(TM_H) coretypes.h \ + langhooks-def.h $(TREE_FLOW_H) $(CGRAPH_H) $(TIMEVAR_H) $(TM_H) coretypes.h \ except.h $(FLAGS_H) $(RTL_H) function.h $(EXPR_H) output.h $(GGC_H) \ gt-gimplify.h gimple-low.o : gimple-low.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) errors.h \ diagnostic.h $(TREE_GIMPLE_H) tree-inline.h varray.h langhooks.h \ langhooks-def.h $(TREE_FLOW_H) $(TIMEVAR_H) $(TM_H) coretypes.h except.h \ - $(FLAGS_H) $(RTL_H) function.h tree-pass.h + $(FLAGS_H) $(RTL_H) function.h $(EXPR_H) tree-pass.h tree-browser.o : tree-browser.c tree-browser.def $(CONFIG_H) $(SYSTEM_H) \ $(TREE_H) errors.h tree-inline.h diagnostic.h $(HASHTAB_H) \ $(TM_H) coretypes.h @@ -1755,7 +1759,7 @@ tree-data-ref.o: tree-data-ref.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ tree-data-ref.h $(SCEV_H) tree-pass.h $(LAMBDA_H) tree-vectorizer.o: tree-vectorizer.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ errors.h $(GGC_H) $(OPTABS_H) $(TREE_H) $(RTL_H) $(BASIC_BLOCK_H) diagnostic.h \ - $(TREE_FLOW_H) $(TREE_DUMP_H) $(TIMEVAR_H) cfgloop.h tree-pass.h \ + $(TREE_FLOW_H) $(TREE_DUMP_H) $(TIMEVAR_H) cfgloop.h tree-pass.h $(EXPR_H) \ tree-vectorizer.h tree-data-ref.h $(SCEV_H) tree-loop-linear.o: tree-loop-linear.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ errors.h $(GGC_H) $(OPTABS_H) $(TREE_H) $(RTL_H) $(BASIC_BLOCK_H) diagnostic.h \ @@ -1766,7 +1770,7 @@ tree-gimple.o : tree-gimple.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(EXPR_H) \ tree-mudflap.o : $(CONFIG_H) errors.h $(SYSTEM_H) $(TREE_H) tree-inline.h \ $(C_TREE_H) $(C_COMMON_H) $(TREE_GIMPLE_H) diagnostic.h $(HASHTAB_H) \ output.h varray.h langhooks.h tree-mudflap.h $(TM_H) coretypes.h \ - $(TREE_DUMP_H) tree-pass.h cgraph.h + $(TREE_DUMP_H) tree-pass.h $(CGRAPH_H) tree-nomudflap.o : $(CONFIG_H) errors.h $(SYSTEM_H) $(TREE_H) tree-inline.h \ $(C_TREE_H) $(C_COMMON_H) $(TREE_GIMPLE_H) diagnostic.h $(HASHTAB_H) \ output.h varray.h langhooks.h tree-mudflap.h $(TM_H) coretypes.h @@ -1783,17 +1787,17 @@ opts.o : opts.c opts.h options.h toplev.h $(CONFIG_H) $(SYSTEM_H) \ coretypes.h $(TREE_H) $(TM_H) langhooks.h $(GGC_H) $(RTL_H) \ output.h $(DIAGNOSTIC_H) $(TM_P_H) $(INSN_ATTR_H) intl.h target.h targhooks.o : targhooks.c targhooks.h $(CONFIG_H) $(SYSTEM_H) \ - coretypes.h $(TREE_H) $(TM_H) $(RTL_H) $(TM_P_H) function.h \ + coretypes.h $(TREE_H) $(EXPR_H) $(TM_H) $(RTL_H) $(TM_P_H) function.h \ output.h toplev.h toplev.o : toplev.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) version.h $(RTL_H) \ function.h $(FLAGS_H) xcoffout.h input.h $(INSN_ATTR_H) output.h $(DIAGNOSTIC_H) \ debug.h insn-config.h intl.h $(RECOG_H) Makefile toplev.h \ dwarf2out.h sdbout.h dbxout.h $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) \ - graph.h $(LOOP_H) except.h $(REGS_H) $(TIMEVAR_H) value-prof.h \ + graph.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) alloc-pool.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) @@ -1802,10 +1806,10 @@ passes.o : passes.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ $(RTL_H) function.h $(FLAGS_H) xcoffout.h input.h $(INSN_ATTR_H) output.h \ $(DIAGNOSTIC_H) debug.h insn-config.h intl.h $(RECOG_H) toplev.h \ dwarf2out.h sdbout.h dbxout.h $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) \ - graph.h $(LOOP_H) except.h $(REGS_H) $(TIMEVAR_H) value-prof.h \ + graph.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) alloc-pool.h \ + hosthooks.h $(LANGHOOKS_DEF_H) $(CGRAPH_H) $(COVERAGE_H) alloc-pool.h \ tree-pass.h tree-dump.h main.o : main.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) toplev.h @@ -1836,13 +1840,13 @@ function.o : function.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \ $(TM_P_H) langhooks.h gt-function.h $(TARGET_H) basic-block.h stmt.o : stmt.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) $(FLAGS_H) \ function.h insn-config.h hard-reg-set.h $(EXPR_H) libfuncs.h except.h \ - $(LOOP_H) $(RECOG_H) toplev.h output.h varray.h $(GGC_H) $(TM_P_H) \ + $(RECOG_H) toplev.h output.h varray.h $(GGC_H) $(TM_P_H) \ langhooks.h $(PREDICT_H) $(OPTABS_H) $(TARGET_H) except.o : except.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \ $(TREE_H) $(FLAGS_H) except.h function.h $(EXPR_H) libfuncs.h $(INTEGRATE_H) \ langhooks.h insn-config.h hard-reg-set.h $(BASIC_BLOCK_H) output.h \ dwarf2asm.h dwarf2out.h toplev.h $(HASHTAB_H) intl.h $(GGC_H) \ - gt-except.h cgraph.h + gt-except.h $(CGRAPH_H) expr.o : expr.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) $(FLAGS_H) \ function.h $(REGS_H) $(EXPR_H) $(OPTABS_H) libfuncs.h $(INSN_ATTR_H) insn-config.h \ $(RECOG_H) output.h typeclass.h hard-reg-set.h toplev.h hard-reg-set.h \ @@ -1858,7 +1862,7 @@ builtins.o : builtins.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(T tree-mudflap.h calls.o : calls.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) $(FLAGS_H) \ $(EXPR_H) $(OPTABS_H) langhooks.h $(TARGET_H) \ - libfuncs.h $(REGS_H) toplev.h output.h function.h $(TIMEVAR_H) $(TM_P_H) cgraph.h except.h + libfuncs.h $(REGS_H) toplev.h output.h function.h $(TIMEVAR_H) $(TM_P_H) $(CGRAPH_H) except.h expmed.o : expmed.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) \ $(FLAGS_H) insn-config.h $(EXPR_H) $(OPTABS_H) $(RECOG_H) real.h \ toplev.h $(TM_P_H) langhooks.h @@ -1882,7 +1886,7 @@ dwarf2out.o : dwarf2out.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(TREE_H) version.h $(RTL_H) dwarf2.h debug.h $(FLAGS_H) insn-config.h reload.h \ output.h $(DIAGNOSTIC_H) real.h hard-reg-set.h $(REGS_H) $(EXPR_H) \ libfuncs.h toplev.h dwarf2out.h varray.h $(GGC_H) except.h dwarf2asm.h \ - $(TM_P_H) langhooks.h $(HASHTAB_H) gt-dwarf2out.h $(TARGET_H) cgraph.h \ + $(TM_P_H) langhooks.h $(HASHTAB_H) gt-dwarf2out.h $(TARGET_H) $(CGRAPH_H) \ $(MD5_H) input.h dwarf2asm.o : dwarf2asm.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(FLAGS_H) $(RTL_H) \ $(TREE_H) output.h dwarf2asm.h $(TM_P_H) $(GGC_H) gt-dwarf2asm.h @@ -1897,7 +1901,7 @@ emit-rtl.o : emit-rtl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(T real.o : real.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) toplev.h $(TM_P_H) integrate.o : integrate.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) \ $(FLAGS_H) debug.h $(INTEGRATE_H) insn-config.h $(EXPR_H) real.h $(REGS_H) \ - intl.h function.h output.h $(RECOG_H) except.h toplev.h $(LOOP_H) \ + intl.h function.h output.h $(RECOG_H) except.h toplev.h \ $(PARAMS_H) $(TM_P_H) $(TARGET_H) langhooks.h gt-integrate.h jump.o : jump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(FLAGS_H) \ hard-reg-set.h $(REGS_H) insn-config.h $(RECOG_H) $(EXPR_H) real.h except.h function.h \ @@ -1908,11 +1912,11 @@ simplify-rtx.o : simplify-rtx.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RT $(REGS_H) hard-reg-set.h $(FLAGS_H) real.h insn-config.h $(RECOG_H) $(EXPR_H) toplev.h \ output.h function.h $(GGC_H) $(OBSTACK_H) $(TM_P_H) $(TREE_H) $(TARGET_H) cgraph.o : cgraph.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ - langhooks.h toplev.h $(FLAGS_H) $(GGC_H) $(TARGET_H) cgraph.h gt-cgraph.h \ + langhooks.h toplev.h $(FLAGS_H) $(GGC_H) $(TARGET_H) $(CGRAPH_H) gt-cgraph.h \ output.h intl.h cgraphunit.o : cgraphunit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \ - langhooks.h tree-inline.h toplev.h $(FLAGS_H) $(GGC_H) $(TARGET_H) cgraph.h intl.h \ - function.h + langhooks.h tree-inline.h toplev.h $(FLAGS_H) $(GGC_H) $(TARGET_H) $(CGRAPH_H) intl.h \ + function.h $(TREE_GIMPLE_H) $(TREE_FLOW_H) coverage.o : coverage.c gcov-io.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ $(TM_H) $(RTL_H) $(TREE_H) $(FLAGS_H) output.h $(REGS_H) $(EXPR_H) function.h \ toplev.h $(GGC_H) $(TARGET_H) langhooks.h $(COVERAGE_H) libfuncs.h \ @@ -1974,17 +1978,13 @@ rtl-profile.o : tree-profile.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ value-prof.o : value-prof.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \ $(BASIC_BLOCK_H) hard-reg-set.h value-prof.h $(EXPR_H) output.h $(FLAGS_H) \ $(RECOG_H) insn-config.h $(OPTABS_H) $(REGS_H) $(GGC_H) -loop.o : loop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(FLAGS_H) $(LOOP_H) \ +loop.o : loop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(FLAGS_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) $(GGC_H) loop-doloop.o : loop-doloop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(RTL_H) $(FLAGS_H) $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H) \ toplev.h $(CFGLOOP_H) output.h $(PARAMS_H) -unroll.o : unroll.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) insn-config.h \ - 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 $(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 \ @@ -2030,7 +2030,7 @@ loop-unswitch.o : loop-unswitch.c $(CONFIG_H) $(SYSTEM_H) $(RTL_H) $(TM_H) \ output.h $(EXPR_H) coretypes.h $(TM_H) loop-unroll.o: loop-unroll.c $(CONFIG_H) $(SYSTEM_H) $(RTL_H) $(TM_H) \ $(BASIC_BLOCK_H) hard-reg-set.h $(CFGLOOP_H) $(CFGLAYOUT_H) $(PARAMS_H) \ - output.h $(EXPR_H) coretypes.h $(TM_H) + output.h $(EXPR_H) coretypes.h $(TM_H) $(HASHTAB_H) $(RECOG_H) dominance.o : dominance.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \ hard-reg-set.h $(BASIC_BLOCK_H) et-forest.h et-forest.o : et-forest.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) et-forest.h alloc-pool.h @@ -2095,7 +2095,7 @@ reorg.o : reorg.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) condition alias.o : alias.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(FLAGS_H) \ hard-reg-set.h $(BASIC_BLOCK_H) $(REGS_H) toplev.h output.h $(ALIAS_H) $(EMIT_RTL_H) \ $(GGC_H) function.h cselib.h $(TREE_H) $(TM_P_H) langhooks.h $(TARGET_H) \ - gt-alias.h $(TIMEVAR_H) cgraph.h + gt-alias.h $(TIMEVAR_H) $(CGRAPH_H) regmove.o : regmove.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) insn-config.h \ $(RECOG_H) output.h $(REGS_H) hard-reg-set.h $(FLAGS_H) function.h \ $(EXPR_H) $(BASIC_BLOCK_H) toplev.h $(TM_P_H) except.h reload.h @@ -2138,7 +2138,7 @@ sreal.o: sreal.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) sreal.h predict.o: predict.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) $(TM_P_H) $(PREDICT_H) sreal.h \ - $(PARAMS_H) $(TARGET_H) $(CFGLOOP_H) $(COVERAGE_H) + $(PARAMS_H) $(TARGET_H) $(CFGLOOP_H) $(COVERAGE_H) tree-scalar-evolution.h lists.o: lists.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) toplev.h $(RTL_H) $(GGC_H) bb-reorder.o : bb-reorder.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(RTL_H) $(BASIC_BLOCK_H) $(FLAGS_H) $(TIMEVAR_H) output.h $(CFGLAYOUT_H) $(FIBHEAP_H) \ @@ -2398,6 +2398,7 @@ GTFILES = $(srcdir)/input.h $(srcdir)/coretypes.h \ $(srcdir)/cselib.h $(srcdir)/basic-block.h $(srcdir)/cgraph.h \ $(srcdir)/c-common.h $(srcdir)/c-tree.h $(srcdir)/reload.h \ $(srcdir)/alias.c $(srcdir)/bitmap.c $(srcdir)/cselib.c $(srcdir)/cgraph.c \ + $(srcdir)/cgraphunit.c \ $(srcdir)/dbxout.c $(srcdir)/dwarf2out.c $(srcdir)/dwarf2asm.c \ $(srcdir)/dojump.c \ $(srcdir)/emit-rtl.c $(srcdir)/except.c $(srcdir)/explow.c $(srcdir)/expr.c \ @@ -2837,12 +2838,13 @@ deduced.h: $(GCC_PASSES) $(srcdir)/scan-types.sh stmp-int-hdrs $(STAMP) deduced.h; \ fi -GEN_PROTOS_OBJS = gen-protos.o scan.o +GEN_PROTOS_OBJS = gen-protos.o scan.o $(BUILD_ERRORS) gen-protos$(build_exeext): $(GEN_PROTOS_OBJS) ${CC_FOR_BUILD} $(BUILD_CFLAGS) $(BUILD_LDFLAGS) -o $@ \ $(GEN_PROTOS_OBJS) $(BUILD_LIBS) -gen-protos.o: gen-protos.c scan.h $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) +gen-protos.o: gen-protos.c scan.h $(BCONFIG_H) $(SYSTEM_H) coretypes.h \ + $(GTM_H) errors.h scan.o: scan.c scan.h $(BCONFIG_H) $(SYSTEM_H) coretypes.h $(GTM_H) @@ -2880,7 +2882,7 @@ fixhdr.ready: fix-header$(build_exeext) $(STAMP) fixhdr.ready; \ fi -# stmp-int-headers is to make sure fixincludes has already finished. +# stmp-int-hdrs is to make sure fixincludes has already finished. # The if statement is so that we don't run fixproto a second time # if it has already been run on the files in `include'. stmp-fixproto: fixhdr.ready fixproto stmp-int-hdrs @@ -3631,11 +3633,12 @@ STAGEFEEDBACK_FLAGS_TO_PASS = \ # only thing useful for building stage2. STAGE1_CFLAGS (via CFLAGS), # MAKEINFO and MAKEINFOFLAGS are explicitly passed here to make them # overrideable (for a bootstrap build stage1 also builds gcc.info). +# The stage1 compiler is always built with checking enabled. stage1_build: $(MAKE) CC="$(CC)" libdir=$(libdir) LANGUAGES="$(BOOT_LANGUAGES)" \ - CFLAGS="$(STAGE1_CFLAGS)" MAKEINFO="$(MAKEINFO)" \ - MAKEINFOFLAGS="$(MAKEINFOFLAGS)" COVERAGE_FLAGS= \ - OBJS-onestep="$(OBJS)" + CFLAGS="$(STAGE1_CFLAGS) $(STAGE1_CHECKING)" \ + MAKEINFO="$(MAKEINFO)" MAKEINFOFLAGS="$(MAKEINFOFLAGS)" \ + COVERAGE_FLAGS= OBJS-onestep="$(OBJS)" $(STAMP) stage1_build echo stage1_build > stage_last diff --git a/gcc/aclocal.m4 b/gcc/aclocal.m4 index 6f1679e009a..ba49bf42dd3 100644 --- a/gcc/aclocal.m4 +++ b/gcc/aclocal.m4 @@ -570,7 +570,7 @@ for f in $gcc_cv_as_bfd_srcdir/configure \ $gcc_cv_as_gas_srcdir/configure \ $gcc_cv_as_gas_srcdir/configure.in \ $gcc_cv_as_gas_srcdir/Makefile.in ; do - gcc_cv_gas_version=`grep '^VERSION=[[0-9]]*\.[[0-9]]*' $f` + gcc_cv_gas_version=`sed -n -e 's/^[[ ]]*\(VERSION=[[0-9]]*\.[[0-9]]*.*\)/\1/p' < $f` if test x$gcc_cv_gas_version != x; then break fi diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index d170497a59e..92560a9641c 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,335 @@ +2004-09-17 Jeffrey D. Oldham + Zack Weinberg + + * ada-tree.def: Use tree_code_class enumeration constants + instead of code letters. + * ada-tree.h, decl.c, misc.c, trans.c, utils.c, utils2.c: + Update for new tree-class enumeration constants. + +2004-09-17 Vincent Celier + + * prj-attr-pm.ads, prj-attr-pm.adb: New files, to split some private + capabilities of the general project manager. + +2004-09-09 Vincent Celier + + * a-direct.ads: Add pragma Ada_05 + (Directory_Entry_Type): Give default value to component Kind to avoid + not initialized warnings. + + * a-direct.adb (Current_Directory): Remove directory separator at the + end. + (Delete_Directory, Delete_Tree): Raise Name_Error if Directory is not + an existing directory. + (Fetch_Next_Entry): Give default value to variable Kind to avoid warning + (Size (String)): Function C_Size returns Long_Integer, not File_Size. + Convert the result to File_Size. + + * prj.ads: (Project_Error): New exception + + * prj-attr.adb: Except in procedure Initialize, Fail comes from + Prj.Com, not from Osint. + (Attrs, Package_Attributes): Tables moved to private part of spec + (Add_Attribute, Add_Unknown_Package): Moved to new child package + Prj.Attr.PM. + (Register_New_Package (Name, Attributes), Register_New_Attribute): Raise + Prj.Project_Error after call to Fail. + (Register_New_Package (Name, Id)): Set Id to Empty_Package after calling + Fail. Check that package name is not already in use. + + * prj-attr.ads: Comment updates to indicate that all subprograms may be + used by tools, not only by the project manager, and to indicate that + exception Prj.Prj_Error may be raised in case of problem. + (Add_Unknown_Package, Add_Attribute): Moved to new child package + Prj.Attr.PM. + (Attrs, Package_Attributes): Table instantiations moved from the body to + the private part to be accessible from Prj.Attr.PM body. + + * prj-dect.adb (Parse_Package_Declaration): Call Add_Unknown_Package + from new package Prj.Attr.PM. + (Parse_Attribute_Declaration): Call Add_Attribute from new package + Prj.Attr.PM. + + * Makefile.in: Add prj-attr-pm.o to gnatmake object list + + * gnatbind.adb (Gnatbind): Correct warning message (Elaboration_Check + instead of Elaboration_Checks). + + * a-calend.adb: Minor reformatting + +2004-09-09 Richard Kenner + + * gigi.h (maybe_pad_type): New declaration. + (create_subprog_type): New arg RETURNS_BY_TARGET_PTR. + + * ada-tree.h: (TYPE_RETURNS_BY_TARGET_PTR_P): New macro. + + * cuintp.c: Convert to use buildN. + + * decl.c (maybe_pad_type): No longer static. + (gnat_to_gnu_entity, case E_Function): Handle case of returning by + target pointer. + Convert to use buildN. + + * trans.c (call_to_gnu): Add arg GNU_TARGET; support + TYPE_RETURNS_BY_TARGET_PTR_P. All callers changed. + (gnat_to_gnu, case N_Assignment_Statement): Call call_to_gnu if call on + RHS. + (gnat_to_gnu, case N_Return): Handle TYPE_RETURN_BY_TARGET_PTR_P. + (gnat_gimplify_expr, case ADDR_EXPR): New case. + Convert to use buildN. + + * utils2.c (gnat_build_constructor): Also set TREE_INVARIANT and + TREE_READONLY for const. + Convert to use buildN. + + * utils.c (create_subprog_type): New operand RETURNS_BY_TARGET_PTR. + (create_var_decl): Refine when TREE_STATIC is set. + Convert to use buildN. + +2004-09-09 Gary Dismukes + + * gnat_ugn.texi: Delete text relating to checking of ali and object + consistency. + + * a-except.adb (Rcheck_*): Add pragmas No_Return for each of these + routines. + +2004-09-09 Jose Ruiz + + * gnat_ugn.texi: Add Detect_Blocking to the list of configuration + pragmas recognized by GNAT. + + * gnat_rm.texi: Document pragma Detect_Blocking. + + * s-solita.adb (Timed_Delay_T): When pragma Detect_Blocking is active, + raise Program_Error if called from a protected operation. + + * s-taprob.adb (Lock): When pragma Detect_Blocking is active increase + the protected action nesting level. + (Lock_Read_Only): When pragma Detect_Blocking is active increase the + protected action nesting level. + (Unlock): When pragma Detect_Blocking is active decrease the protected + action nesting level. + + * s-taskin.adb (Initialize_ATCB): Initialize to 0 the + Protected_Action_Nesting. + + * s-taskin.ads: Adding the field Protected_Action_Nesting to the + Common_ATCB record. It contains the dynamic level of protected action + nesting for each task. It is needed for checking whether potentially + blocking operations are called from protected operations. + (Detect_Blocking): Adding a Boolean constant reflecting whether pragma + Detect_Blocking is active or not in the partition. + + * s-tasren.adb (Call_Simple): When pragma Detect_Blocking is active, + raise Program_Error if called from a protected operation. + (Task_Entry_Call): When pragma Detect_Blocking is active, raise + Program_Error if called from a protected operation. + (Timed_Task_Entry_Call): When pragma Detect_Blocking is active, raise + Program_Error if called from a protected operation. + + * s-tassta.adb (Abort_Tasks): When pragma Detect_Blocking is active, + raise Program_Error if called from a protected operation. + + * s-tpoben.adb (Lock_Entries): When pragma Detect_Blocking is active, + raise Program_Error if called from a protected operation, and increase + the protected action nesting level. + (Lock_Read_Only_Entries): When pragma Detect_Blocking is active, raise + Program_Error if called from a protected operation, and increase the + protected action nesting level. + (Unlock_Entries): When pragma Detect_Blocking is active decrease the + protected action nesting level. + + * s-tposen.adb (Lock_Entry): When pragma Detect_Blocking is active, + raise Program_Error if called from a protected operation, and increase + the protected action nesting level. + (Lock_Read_Only_Entry): When pragma Detect_Blocking is active, raise + Program_Error if called from a protected operation, and increase the + protected action nesting level. + (Protected_Single_Entry_Call): When pragma Detect_Blocking is active, + raise Program_Error if called from a protected operation. + (Timed_Protected_Single_Entry_Call): When pragma Detect_Blocking is + active, raise Program_Error if called from a protected operation. + (Unlock_Entry): When pragma Detect_Blocking is active decrease the + protected action nesting level. + + * sem_util.adb (Check_Potentially_Blocking_Operation): Remove the + insertion of the statement raising Program_Error. The run time + contains the required machinery for handling that. + + * sem_util.ads: Change comment associated to procedure + Check_Potentially_Blocking_Operation. + This procedure does not insert a call for raising the exception because + that is currently done by the run time. + + * raise.h (__gnat_set_globals): Pass the detect_blocking parameter. + + * init.c: Add the global variable __gl_detect_blocking that indicates + whether pragma Detect_Blocking is active (1) or not (0). Needed for + making the pragma available at run time. + (__gnat_set_globals): Pass and update the detect_blocking parameter. + + * lib-writ.adb (Write_ALI): Set the DB flag in the ali file if + pragma Detect_Blocking is active. + + * lib-writ.ads: Document the Detect_Blocking flag (DB) in ali files. + + * ali.adb (Scan_ALI): Set the Detect_Blocking value to true if the flag + DB is found in the ali file. Any unit compiled with pragma + Detect_Blocking active forces its effect in the whole partition. + + * a-retide.adb (Delay_Until): Raise Program_Error if pragma + Detect_Blocking is active and delay is called from a protected + operation. + + * bindgen.adb (Gen_Adainit_Ada): When generating the call to + __gnat_set_globals, pass 1 as Detect_Blocking parameter if pragma + Detect_Blocking is active (0 otherwise). + (Gen_Adainit_C): When generating the call to __gnat_set_globals, pass 1 + as Detect_Blocking parameter if pragma Detect_Blocking is active (0 + otherwise). + +2004-09-09 Thomas Quinot + + * gnat_rm.texi: Rename GNAT.Perfect_Hash.Generators to + GNAT.Perfect_Hash_Generators, and remove the empty GNAT.Perfect_Hash + package. + + * s-parint.ads, s-parint.adb (Get_RAS_Info): New subprogram. + (Register_Receiving_Stub): Add Subp_Info formal parameter. + Update API in placeholder implemetation of s-parint to reflect changes + in distribution runtime library. + + * sem_ch3.adb (Expand_Derived_Record): Rename to + Expand_Record_Extension. + + * sem_disp.adb (Check_Controlling_Formals): Improve error message for + primitive operations of potentially distributed object types that have + non-controlling anonymous access formals. + + * sem_dist.ads, sem_dist.adb (Build_RAS_Primitive_Specification): New + subprogram. + New implementation of expansion for remote access-to-subprogram types, + based on the RACW infrastructure. + This version of sem_dist is compatible with PolyORB/DSA as well as + GLADE. + + * sem_prag.adb (Analyze_Pragma, case Pragma_Asynchronous): For a pragma + Asynchrronous that applies to a remote access-to-subprogram type, mark + the underlying RACW type as asynchronous. + + * link.c: FreeBSD uses GNU ld: set __gnat_objlist_file_supported and + __gnat_using_gnu_linker to 1. + + * Makefile.rtl, impunit.adb, g-perhas.ads, g-pehage.ads, + g-pehage.adb: Rename GNAT.Perfect_Hash.Generators to + GNAT.Perfect_Hash_Generators, and remove the empty + GNAT.Perfect_Hash package. + + * atree.adb: Minor reformatting + + * exp_ch3.adb (Expand_Derived_Record): Rename to + Expand_Record_Extension. + (Build_Record_Init_Proc.Build_Assignment): The default expression in + a component declaration must remain attached at that point in the + tree so New_Copy_Tree copies it if the enclosing record type is derived. + It is therefore necessary to take a copy of the expression when building + the corresponding assignment statement in the init proc. + As a side effect, in the case of a derived record type, we now see the + original expression, without any rewriting that could have occurred + during expansion of the ancestor type's init proc, and we do not need + to go back to Original_Node. + + * exp_ch3.ads (Expand_Derived_Record): Rename to + Expand_Record_Extension. + + * exp_dist.ads, exp_dist.adb (Underlying_RACW_Type): New subprogram. + Returns the RACW type used to implement a remote access-to-subprogram + type. + (Add_RAS_Proxy_And_Analyze, Build_Remote_Subprogram_Proxy_Type): + New subprograms. Used to create a proxy tagged object for a remote + subprogram. The proxy object is used as the designated object + for RAS values on the same partition (unless All_Calls_Remote applies). + (Build_Get_Unique_RP_Call): New subprogram. Build a call to + System.Partition_Interface.Get_Unique_Remote_Pointer. + (Add_RAS_Access_TSS, Add_RAS_Dereference_TSS): + Renamed from Add_RAS_*_Attribute. + (Add_Receiving_Stubs_To_Declarations): Generate a table of local + subprograms. + New implementation of expansion for remote access-to-subprogram types, + based on the RACW infrastructure. + + * exp_dist.ads (Copy_Specification): Update comment to note that this + function can copy the specification from either a subprogram + specification or an access-to-subprogram type definition. + +2004-09-09 Ed Schonberg + + * sem_type.adb (Disambiguate): Handle properly an accidental ambiguity + in an instance, between an explicit subprogram an one inherited from a + type derived from an actual. + + * exp_ch6.adb (Expand_N_Subprogram_Body): If polling is enabled, do not + add a polling call if the subprogram is to be inlined by the back-end, + to avoid repeated calls with multiple inlinings. + + * checks.adb (Apply_Alignment_Check): If the expression in the address + clause is a call whose name is not a static entity (e.g. a dispatching + call), treat as dynamic. + +2004-09-09 Robert Dewar + + * g-trasym.ads: Minor reformatting + + * exp_ch3.adb (Component_Needs_Simple_Initialization): Don't except + packed arrays, since unused bits are expected to be zero for a + comparison. + +2004-09-09 Eric Botcazou + + * exp_pakd.ads: Fix an inacurracy and a couple of typos in the head + comment. + +2004-09-09 Pascal Obry + + * mdll.ads, mdll.adb (Build_Dynamic_Library): New parameter Map_File to + enable map file generation. Add the right option to generate the map + file if Map_File is set to True. + + * gnatdll.adb (Gen_Map_File): New variable. + (Syntax): Add info about new -m (Map_File) option. + (Parse_Command_Line): Add support for -m option. + (gnatdll): Pass Gen_Map_File to Build_Dynamic_Library calls. + Minor reformatting. + +2004-09-09 Laurent Pautet + + * gnatls.adb: Add a very verbose mode -V. Such mode is required by the + new gnatdist implementation. + Define a subpackage isolating the output routines specific to this + verbose mode. + +2004-09-09 Joel Brobecker + + * Makefile.rtl: (GNATRTL_NONTASKING_OBJS): Add g-dynhta. + + * gnat_ugn.texi (Main Subprograms): Fix typo. Deduced, not deducted. + +2004-09-09 Cyrille Comar + + * opt.adb (Set_Opt_Config_Switches): Use Ada_Version_Runtime to compile + internal unit. + + * opt.ads: Add Ada_Version_Runtime constant used to decide which + version of the language is used to compile the run time. + +2004-09-09 Arnaud Charlet + + * sem_util.adb (Requires_Transient_Scope): Re-enable handling + of variable length temporaries for function return now that the + back-end and gigi support it. + 2004-09-01 Richard Kenner * misc.c (gnat_print_type): Use TYPE_RM_SIZE_NUM. @@ -132,7 +464,7 @@ 2004-08-25 Nathan Sidwell Richard Kenner - + * ada-tree.h (TYPE_RM_SIZE_INT): Use TYPE_LANG_SLOT_1. 2004-08-25 Nathan Sidwell @@ -141,7 +473,7 @@ * trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise. * utils.c (init_gigi_decls): Likewise. * utils2.c (build_call_raise, build_allocator): Likewise. - + 2004-08-24 Nathan Sidwell * utils.c (gnat_init_decl_processing): Adjust @@ -265,7 +597,7 @@ GNAT.Sockets.Thin.Is_Socket_In_Set to account for new specification and test explicitly for non-zero return value. - * g-socthi-vms.ads, g-socthi-mingw.ads, g-socthi-vxworks.ads: + * g-socthi-vms.ads, g-socthi-mingw.ads, g-socthi-vxworks.ads: (Is_Socket_In_Set): Declare imported function as returning C.int, to avoid using a derived boolean type. @@ -940,7 +1272,7 @@ (gnat_to_gnu, case N_Compilation_Unit): Just handle nested case here. (add_stmt): Force walking of sizes and DECL_INITIAL for DECL_EXPR. (mark_visited): Don't mark dummy type. - (tree_transform ): Unless this is an In + (tree_transform ): Unless this is an In parameter, we must remove any LJM building from GNU_NAME. (gnat_to_gnu, case N_String_Literal): Fill in indices in CONSTRUCTOR. (pos_to_constructor): Use int_const_binop. @@ -1147,7 +1479,7 @@ (gnat_to_gnu): If statement and not in procedure, go into elab proc. Delete calls to add_decl_expr; add arg to create_*_decl. (gnat_to_gnu, case N_Loop): Recalculate side effects on COND_EXPR. - (gnat_to_gnu, case N_Subprogram_Body): Move some code to + (gnat_to_gnu, case N_Subprogram_Body): Move some code to begin_subprog_body and call it. Don't push and pop ggc context. (gnat_to_gnu, case N_Compilation_Unit): Rework to support elab proc. @@ -1173,7 +1505,7 @@ (function_nesting_depth): Deleted. (begin_subprog_body): Delete obsolete code. * utils2.c (build_call_alloc_dealloc): Add new arg to create_var_decl. - + 2004-06-28 Robert Dewar * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, @@ -1305,8 +1637,8 @@ Lib_Address and Relocatable. (Default_DLL_Address): Removed. - * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, - mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, + * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, + mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb: (Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable. (Default_DLL_Address): Removed. @@ -1503,7 +1835,7 @@ (Compile_Sources.Compile): Add switch -gnatez as the last option (Display): Never display -gnatez - * Makefile.generic: + * Makefile.generic: When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT) * gnatcmd.adb (Check_Project): New function @@ -2078,7 +2410,7 @@ opt.adb, par.adb, opt.ads, par-ch11.adb, par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par-ch8.adb, par-ch9.adb, par-prag.adb, par-util.adb, scng.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb, - sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb, + sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_eval.adb, sem_prag.adb, sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, snames.adb, @@ -2703,7 +3035,7 @@ Renaming of target specific files for clarity - * Makefile.in: Rename GNAT target specific files. + * Makefile.in: Rename GNAT target specific files. * 31soccon.ads, 31soliop.ads 35soccon.ads, 3asoccon.ads, 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3psoccon.ads, diff --git a/gcc/ada/Makefile.in b/gcc/ada/Makefile.in index e3b9507c1f6..1dba67473a3 100644 --- a/gcc/ada/Makefile.in +++ b/gcc/ada/Makefile.in @@ -308,7 +308,7 @@ GNATMAKE_OBJS = a-except.o ctrl_c.o ali.o ali-util.o s-casuti.o \ gnatmake.o gnatvsn.o hostparm.o interfac.o i-c.o i-cstrin.o krunch.o lib.o \ make.o makeusg.o makeutl.o mlib.o mlib-fil.o mlib-prj.o mlib-tgt.o mlib-utl.o \ namet.o nlists.o opt.o osint.o osint-m.o output.o \ - prj.o prj-attr.o prj-com.o prj-dect.o prj-env.o prj-err.o prj-ext.o prj-nmsc.o \ + prj.o prj-attr.o prj-attr-pm.o prj-com.o prj-dect.o prj-env.o prj-err.o prj-ext.o prj-nmsc.o \ prj-pars.o prj-part.o prj-proc.o prj-strt.o prj-tree.o prj-util.o \ rident.o s-exctab.o s-secsta.o s-stalib.o s-stoele.o \ scans.o scng.o sdefault.o sfn_scan.o s-purexc.o s-htable.o \ diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl index 10031f8e07d..4c01553fe50 100644 --- a/gcc/ada/Makefile.rtl +++ b/gcc/ada/Makefile.rtl @@ -219,6 +219,7 @@ GNATRTL_NONTASKING_OBJS= \ g-diopit$(objext) \ g-dirope$(objext) \ g-dyntab$(objext) \ + g-dynhta$(objext) \ g-except$(objext) \ g-excact$(objext) \ g-exctra$(objext) \ @@ -235,7 +236,6 @@ GNATRTL_NONTASKING_OBJS= \ g-memdum$(objext) \ g-moreex$(objext) \ g-os_lib$(objext) \ - g-perhas$(objext) \ g-pehage$(objext) \ g-regexp$(objext) \ g-regpat$(objext) \ diff --git a/gcc/ada/a-calend.adb b/gcc/ada/a-calend.adb index fdab0cb5572..e5788a473e2 100644 --- a/gcc/ada/a-calend.adb +++ b/gcc/ada/a-calend.adb @@ -417,7 +417,7 @@ package body Ada.Calendar is end if; -- Check for Day value too large (one might expect mktime to do this - -- check, as well as the basi checks we did with 'Valid, but it seems + -- check, as well as the basic checks we did with 'Valid, but it seems -- that at least on some systems, this built-in check is too weak). if Day > Days_In_Month (Month) diff --git a/gcc/ada/a-direct.adb b/gcc/ada/a-direct.adb index 74757fe8077..db0a9317c75 100644 --- a/gcc/ada/a-direct.adb +++ b/gcc/ada/a-direct.adb @@ -38,22 +38,25 @@ with Ada.Unchecked_Deallocation; with GNAT.Directory_Operations; use GNAT.Directory_Operations; with GNAT.OS_Lib; use GNAT.OS_Lib; with GNAT.Regexp; use GNAT.Regexp; +-- ??? Ada units cannot depend on GNAT units with System; package body Ada.Directories is type Search_Data is record - Is_Valid : Boolean := False; - Name : Ada.Strings.Unbounded.Unbounded_String; - Pattern : Regexp; - Filter : Filter_Type; - Dir : Dir_Type; + Is_Valid : Boolean := False; + Name : Ada.Strings.Unbounded.Unbounded_String; + Pattern : Regexp; + Filter : Filter_Type; + Dir : Dir_Type; Entry_Fetched : Boolean := False; Dir_Entry : Directory_Entry_Type; end record; + -- Comment required ??? Empty_String : constant String := (1 .. 0 => ASCII.NUL); + -- Comment required ??? procedure Free is new Ada.Unchecked_Deallocation (Search_Data, Search_Ptr); @@ -97,9 +100,8 @@ package body Ada.Directories is Name : String; Extension : String := "") return String is - Result : String (1 .. - Containing_Directory'Length + - Name'Length + Extension'Length + 2); + Result : String (1 .. Containing_Directory'Length + + Name'Length + Extension'Length + 2); Last : Natural; begin @@ -205,9 +207,9 @@ package body Ada.Directories is begin -- First, the invalid cases - if (not Is_Valid_Path_Name (Source_Name)) or else - (not Is_Valid_Path_Name (Target_Name)) or else - (not Is_Regular_File (Source_Name)) + if not Is_Valid_Path_Name (Source_Name) + or else not Is_Valid_Path_Name (Target_Name) + or else not Is_Regular_File (Source_Name) then raise Name_Error; @@ -328,10 +330,17 @@ package body Ada.Directories is ----------------------- function Current_Directory return String is - begin + -- The implementation uses GNAT.Directory_Operations.Get_Current_Dir - return Get_Current_Dir; + Cur : constant String := Get_Current_Dir; + + begin + if Cur'Length > 1 and then Cur (Cur'Last) = Dir_Separator then + return Cur (1 .. Cur'Last - 1); + else + return Cur; + end if; end Current_Directory; ---------------------- @@ -340,11 +349,14 @@ package body Ada.Directories is procedure Delete_Directory (Directory : String) is begin - -- First, the invalid case + -- First, the invalid cases if not Is_Valid_Path_Name (Directory) then raise Name_Error; + elsif not Is_Directory (Directory) then + raise Name_Error; + else -- The implementation uses GNAT.Directory_Operations.Remove_Dir @@ -391,11 +403,14 @@ package body Ada.Directories is procedure Delete_Tree (Directory : String) is begin - -- First, the invalid case + -- First, the invalid cases if not Is_Valid_Path_Name (Directory) then raise Name_Error; + elsif not Is_Directory (Directory) then + raise Name_Error; + else -- The implementation uses GNAT.Directory_Operations.Remove_Dir @@ -439,13 +454,12 @@ package body Ada.Directories is raise Name_Error; else - -- Look fir the first dot that is not followed by a directory - -- separator. + -- Look for first dot that is not followed by a directory separator for Pos in reverse Name'Range loop - -- If a directory separator is found before a dot, there is no - -- extension. + -- If a directory separator is found before a dot, there + -- is no extension. if Name (Pos) = Dir_Separator then return Empty_String; @@ -459,6 +473,8 @@ package body Ada.Directories is begin Result := Name (Pos + 1 .. Name'Last); return Result; + -- This should be done with a subtype conversion, avoiding + -- the unnecessary junk copy ??? end; end if; end loop; @@ -476,7 +492,9 @@ package body Ada.Directories is procedure Fetch_Next_Entry (Search : Search_Type) is Name : String (1 .. 255); Last : Natural; - Kind : File_Kind; + + Kind : File_Kind := Ordinary_File; + -- Initialized to avoid a compilation warning begin -- Search.Value.Is_Valid is always True when Fetch_Next_Entry is called @@ -499,7 +517,7 @@ package body Ada.Directories is Compose (To_String (Search.Value.Name), Name (1 .. Last)); - Found : Boolean := False; + Found : Boolean := False; begin if File_Exists (Full_Name) then @@ -553,7 +571,6 @@ package body Ada.Directories is begin C_Name (1 .. Name'Length) := Name; C_Name (C_Name'Last) := ASCII.NUL; - return C_File_Exists (C_Name (1)'Address) = 1; end File_Exists; @@ -587,8 +604,9 @@ package body Ada.Directories is raise Name_Error; else - -- Build the return value with lower bound 1. - -- Use GNAT.OS_Lib.Normalize_Pathname. + -- Build the return value with lower bound 1 + + -- Use GNAT.OS_Lib.Normalize_Pathname declare Value : constant String := Normalize_Pathname (Name); @@ -596,6 +614,7 @@ package body Ada.Directories is begin Result := Value; return Result; + -- Should use subtype conversion, not junk copy ??? end; end if; end Full_Name; @@ -775,7 +794,7 @@ package body Ada.Directories is raise Use_Error; else - -- The implemewntation uses GNAT.OS_Lib.Rename_File + -- The implementation uses GNAT.OS_Lib.Rename_File Rename_File (Old_Name, New_Name, Success); @@ -812,16 +831,18 @@ package body Ada.Directories is raise Name_Error; else - -- Build the value to return with lower bound 1. - -- The implementation uses GNAT.Directory_Operations.Base_Name. + -- Build the value to return with lower bound 1 + + -- The implementation uses GNAT.Directory_Operations.Base_Name declare - Value : constant String := + Value : constant String := GNAT.Directory_Operations.Base_Name (Name); Result : String (1 .. Value'Length); begin Result := Value; return Result; + -- Should use subtype conversion instead of junk copy ??? end; end if; end Simple_Name; @@ -849,7 +870,7 @@ package body Ada.Directories is function Size (Name : String) return File_Size is C_Name : String (1 .. Name'Length + 1); - function C_Size (Name : System.Address) return File_Size; + function C_Size (Name : System.Address) return Long_Integer; pragma Import (C, C_Size, "__gnat_named_file_length"); begin @@ -861,7 +882,7 @@ package body Ada.Directories is else C_Name (1 .. Name'Length) := Name; C_Name (C_Name'Last) := ASCII.NUL; - return C_Size (C_Name'Address); + return File_Size (C_Size (C_Name'Address)); end if; end Size; diff --git a/gcc/ada/a-direct.ads b/gcc/ada/a-direct.ads index d71e49357ed..4cd2340a79c 100644 --- a/gcc/ada/a-direct.ads +++ b/gcc/ada/a-direct.ads @@ -77,6 +77,9 @@ with Ada.Strings.Unbounded; package Ada.Directories is + pragma Ada_05; + -- To be removed later ??? + ----------------------------------- -- Directory and File Operations -- ----------------------------------- @@ -386,7 +389,7 @@ private Is_Valid : Boolean := False; Simple : Ada.Strings.Unbounded.Unbounded_String; Full : Ada.Strings.Unbounded.Unbounded_String; - Kind : File_Kind; + Kind : File_Kind := Ordinary_File; end record; -- The type Search_Data is defined in the body, so that the spec does not diff --git a/gcc/ada/a-except.adb b/gcc/ada/a-except.adb index 3f574085a48..22331f318dd 100644 --- a/gcc/ada/a-except.adb +++ b/gcc/ada/a-except.adb @@ -516,6 +516,37 @@ package body Ada.Exceptions is pragma Export (C, Rcheck_28, "__gnat_rcheck_28"); pragma Export (C, Rcheck_29, "__gnat_rcheck_29"); + pragma No_Return (Rcheck_00); + pragma No_Return (Rcheck_01); + pragma No_Return (Rcheck_02); + pragma No_Return (Rcheck_03); + pragma No_Return (Rcheck_04); + pragma No_Return (Rcheck_05); + pragma No_Return (Rcheck_06); + pragma No_Return (Rcheck_07); + pragma No_Return (Rcheck_08); + pragma No_Return (Rcheck_09); + pragma No_Return (Rcheck_10); + pragma No_Return (Rcheck_11); + pragma No_Return (Rcheck_12); + pragma No_Return (Rcheck_13); + pragma No_Return (Rcheck_14); + pragma No_Return (Rcheck_15); + pragma No_Return (Rcheck_16); + pragma No_Return (Rcheck_17); + pragma No_Return (Rcheck_18); + pragma No_Return (Rcheck_19); + pragma No_Return (Rcheck_20); + pragma No_Return (Rcheck_21); + pragma No_Return (Rcheck_22); + pragma No_Return (Rcheck_23); + pragma No_Return (Rcheck_24); + pragma No_Return (Rcheck_25); + pragma No_Return (Rcheck_26); + pragma No_Return (Rcheck_27); + pragma No_Return (Rcheck_28); + pragma No_Return (Rcheck_29); + --------------------------------------------- -- Reason Strings for Run-Time Check Calls -- --------------------------------------------- diff --git a/gcc/ada/a-retide.adb b/gcc/ada/a-retide.adb index ca747a16609..325a6b3717a 100644 --- a/gcc/ada/a-retide.adb +++ b/gcc/ada/a-retide.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. -- -- -- -- 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- -- @@ -31,13 +31,24 @@ -- -- ------------------------------------------------------------------------------ +with Ada.Exceptions; +-- Used for Raise_Exception + +with System.Tasking; +-- Used for Task_Id + with System.Task_Primitives.Operations; -- Used for Timed_Delay +-- Self package body Ada.Real_Time.Delays is package STPO renames System.Task_Primitives.Operations; + ---------------- + -- Local Data -- + ---------------- + Absolute_RT : constant := 2; ----------------- @@ -45,8 +56,21 @@ package body Ada.Real_Time.Delays is ----------------- procedure Delay_Until (T : Time) is + Self_Id : constant System.Tasking.Task_Id := STPO.Self; + begin - STPO.Timed_Delay (STPO.Self, To_Duration (T), Absolute_RT); + -- If pragma Detect_Blocking is active, Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action. + + if System.Tasking.Detect_Blocking + and then Self_Id.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + else + STPO.Timed_Delay (Self_Id, To_Duration (T), Absolute_RT); + end if; end Delay_Until; ----------------- diff --git a/gcc/ada/ada-tree.def b/gcc/ada/ada-tree.def index fe68c633f2c..25ea95ef6ce 100644 --- a/gcc/ada/ada-tree.def +++ b/gcc/ada/ada-tree.def @@ -6,7 +6,7 @@ * * * Specification * * * - * Copyright (C) 1992-2003 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- * @@ -28,23 +28,24 @@ to GCC. TREE_TYPE is the type of the fat pointer and TYPE_OBJECT_RECORD_TYPE is the type of a record containing the template and data. */ -DEFTREECODE (UNCONSTRAINED_ARRAY_TYPE, "unconstrained_array_type", 't', 0) +DEFTREECODE (UNCONSTRAINED_ARRAY_TYPE, "unconstrained_array_type", tcc_type, 0) /* A reference to an unconstrained array. This node only exists as an intermediate node during the translation of a GNAT tree to a GCC tree; it is never passed to GCC. The only field used is operand 0, which is the fat pointer object. */ -DEFTREECODE (UNCONSTRAINED_ARRAY_REF, "unconstrained_array_ref", 'r', 1) +DEFTREECODE (UNCONSTRAINED_ARRAY_REF, "unconstrained_array_ref", + tcc_reference, 1) /* An expression that returns an RTL suitable for its type. Operand 0 is an expression to be evaluated for side effects only. */ -DEFTREECODE (NULL_EXPR, "null_expr", 'e', 1) +DEFTREECODE (NULL_EXPR, "null_expr", tcc_expression, 1) /* Same as ADDR_EXPR, except that if the operand represents a bit field, return the address of the byte containing the bit. This is used for the 'Address attribute and never shows up in the tree. */ -DEFTREECODE (ATTR_ADDR_EXPR, "attr_addr_expr", 'r', 1) +DEFTREECODE (ATTR_ADDR_EXPR, "attr_addr_expr", tcc_reference, 1) /* Here are the tree codes for the statement types known to Ada. These must be at the end of this file to allow IS_ADA_STMT to work. */ @@ -53,32 +54,32 @@ DEFTREECODE (ATTR_ADDR_EXPR, "attr_addr_expr", 'r', 1) makes this tree node, whose operand is a statement. The latter inserts the actual statements into this node. Gimplification consists of just returning the inner statement. */ -DEFTREECODE (STMT_STMT, "stmt_stmt", 's', 1) +DEFTREECODE (STMT_STMT, "stmt_stmt", tcc_statement, 1) /* A loop. LOOP_STMT_TOP_COND and LOOP_STMT_BOT_COND are the tests to exit a loop at the top and bottom, respectively. LOOP_STMT_UPDATE is the statement to update the loop iterator at the continue point. LOOP_STMT_BODY are the statements in the body of the loop. LOOP_STMT_LABEL points to the LABEL_DECL of the end label of the loop. */ -DEFTREECODE (LOOP_STMT, "loop_stmt", 's', 5) +DEFTREECODE (LOOP_STMT, "loop_stmt", tcc_statement, 5) /* Conditionally exit a loop. EXIT_STMT_COND is the condition, which, if true, will cause the loop to be exited. If no condition is specified, the loop is unconditionally exited. EXIT_STMT_LABEL is the end label corresponding to the loop to exit. */ -DEFTREECODE (EXIT_STMT, "exit_stmt", 's', 2) +DEFTREECODE (EXIT_STMT, "exit_stmt", tcc_statement, 2) /* A exception region. REGION_STMT_BODY is the statement to be executed inside the region. REGION_STMT_HANDLE is a statement that represents the exception handlers (usually a BLOCK_STMT of HANDLE_STMTs). REGION_STMT_BLOCK is the BLOCK node for the declarative region, if any. */ -DEFTREECODE (REGION_STMT, "region_stmt", 's', 3) +DEFTREECODE (REGION_STMT, "region_stmt", tcc_statement, 3) /* An exception handler. HANDLER_STMT_ARG is the value to pass to expand_start_catch, HANDLER_STMT_LIST is the list of statements for the handler itself, and HANDLER_STMT_BLOCK is the BLOCK node for this binding. */ -DEFTREECODE (HANDLER_STMT, "handler_stmt", 's', 3) +DEFTREECODE (HANDLER_STMT, "handler_stmt", tcc_statement, 3) /* A statement that emits a USE for its single operand. */ -DEFTREECODE (USE_STMT, "use_expr", 's', 1) +DEFTREECODE (USE_STMT, "use_expr", tcc_statement, 1) diff --git a/gcc/ada/ada-tree.h b/gcc/ada/ada-tree.h index 7cbbac1d3f5..7d4a756a725 100644 --- a/gcc/ada/ada-tree.h +++ b/gcc/ada/ada-tree.h @@ -131,6 +131,11 @@ struct lang_type GTY(()) {tree t; }; #define TYPE_RETURNS_BY_REF_P(NODE) \ TYPE_LANG_FLAG_4 (FUNCTION_TYPE_CHECK (NODE)) +/* For FUNCTION_TYPEs, nonzero if function returns by being passed a pointer + to a place to store its result. */ +#define TYPE_RETURNS_BY_TARGET_PTR_P(NODE) \ + TYPE_LANG_FLAG_5 (FUNCTION_TYPE_CHECK (NODE)) + /* For VOID_TYPE, ENUMERAL_TYPE, UNION_TYPE, and RECORD_TYPE, nonzero if this is a dummy type, made to correspond to a private or incomplete type. */ #define TYPE_DUMMY_P(NODE) TYPE_LANG_FLAG_4 (NODE) @@ -268,7 +273,7 @@ struct lang_type GTY(()) {tree t; }; /* Define fields and macros for statements. Start by defining which tree codes are used for statements. */ -#define IS_STMT(NODE) (TREE_CODE_CLASS (TREE_CODE (NODE)) == 's') +#define IS_STMT(NODE) (STATEMENT_CLASS_P (NODE)) #define IS_ADA_STMT(NODE) (IS_STMT (NODE) \ && TREE_CODE (NODE) >= STMT_STMT) diff --git a/gcc/ada/ali.adb b/gcc/ada/ali.adb index 3326ecaafad..c1e51b4d472 100644 --- a/gcc/ada/ali.adb +++ b/gcc/ada/ali.adb @@ -815,6 +815,12 @@ package body ALI is Checkc ('E'); ALIs.Table (Id).Compile_Errors := True; + -- Processing for DB + + elsif C = 'D' then + Checkc ('B'); + Detect_Blocking := True; + -- Processing for FD/FG/FI elsif C = 'F' then diff --git a/gcc/ada/atree.adb b/gcc/ada/atree.adb index c03a1836194..daf0641cfe6 100644 --- a/gcc/ada/atree.adb +++ b/gcc/ada/atree.adb @@ -1429,7 +1429,6 @@ package body Atree is Set_Field5 (New_Node, Copy_Field_With_Replacement (Field5 (New_Node))); - -- Adjust Sloc of new node if necessary if New_Sloc /= No_Location then diff --git a/gcc/ada/bindgen.adb b/gcc/ada/bindgen.adb index fe9192a251e..dca5bbe67f4 100644 --- a/gcc/ada/bindgen.adb +++ b/gcc/ada/bindgen.adb @@ -100,7 +100,8 @@ package body Bindgen is -- Num_Interrupt_States : Integer; -- Unreserve_All_Interrupts : Integer; -- Exception_Tracebacks : Integer; - -- Zero_Cost_Exceptions : Integer); + -- Zero_Cost_Exceptions : Integer; + -- Detect_Blocking : Integer); -- Main_Priority is the priority value set by pragma Priority in the -- main program. If no such pragma is present, the value is -1. @@ -162,6 +163,11 @@ package body Bindgen is -- this partition, and to zero if longjmp/setjmp exceptions are used. -- the use of zero + -- Detect_Blocking indicates whether pragma Detect_Blocking is + -- active or not. A value of zero indicates that the pragma is not + -- present, while a value of 1 signals its presence in the + -- partition. + ----------------------- -- Local Subprograms -- ----------------------- @@ -524,12 +530,14 @@ package body Bindgen is WBI (" Locking_Policy : Character;"); WBI (" Queuing_Policy : Character;"); WBI (" Task_Dispatching_Policy : Character;"); + WBI (" Restrictions : System.Address;"); WBI (" Interrupt_States : System.Address;"); WBI (" Num_Interrupt_States : Integer;"); WBI (" Unreserve_All_Interrupts : Integer;"); WBI (" Exception_Tracebacks : Integer;"); - WBI (" Zero_Cost_Exceptions : Integer);"); + WBI (" Zero_Cost_Exceptions : Integer;"); + WBI (" Detect_Blocking : Integer);"); WBI (" pragma Import (C, Set_Globals, ""__gnat_set_globals"");"); -- Import entry point for elaboration time signal handler @@ -630,6 +638,17 @@ package body Bindgen is Set_String ("0"); end if; + Set_String (","); + Write_Statement_Buffer; + + Set_String (" Detect_Blocking => "); + + if Detect_Blocking then + Set_Int (1); + else + Set_Int (0); + end if; + Set_String (");"); Write_Statement_Buffer; @@ -863,10 +882,23 @@ package body Bindgen is Set_String (" "); Set_Int (Boolean'Pos (Zero_Cost_Exceptions_Specified)); - Set_String (");"); + Set_String (","); Tab_To (24); Set_String ("/* Zero_Cost_Exceptions */"); Write_Statement_Buffer; + + Set_String (" "); + + if Detect_Blocking then + Set_Int (1); + else + Set_Int (0); + end if; + + Set_String (");"); + Tab_To (24); + Set_String ("/* Detect_Blocking */"); + Write_Statement_Buffer; WBI (""); -- Install elaboration time signal handler @@ -2427,7 +2459,7 @@ package body Bindgen is WBI ("extern void __gnat_set_globals"); WBI (" (int, int, char, char, char, char,"); WBI (" const char *, const char *,"); - WBI (" int, int, int, int);"); + WBI (" int, int, int, int, int);"); WBI ("extern void " & Ada_Final_Name.all & " (void);"); WBI ("extern void " & Ada_Init_Name.all & " (void);"); WBI ("extern void system__standard_library__adafinal (void);"); diff --git a/gcc/ada/checks.adb b/gcc/ada/checks.adb index 3c7839754e4..6f741011377 100644 --- a/gcc/ada/checks.adb +++ b/gcc/ada/checks.adb @@ -492,6 +492,7 @@ package body Checks is Expr := Expression (Expr); elsif Nkind (Expr) = N_Function_Call + and then Is_Entity_Name (Name (Expr)) and then Is_RTE (Entity (Name (Expr)), RE_To_Address) then Expr := First (Parameter_Associations (Expr)); diff --git a/gcc/ada/cuintp.c b/gcc/ada/cuintp.c index a6ce488f374..ecd21ca65d3 100644 --- a/gcc/ada/cuintp.c +++ b/gcc/ada/cuintp.c @@ -95,18 +95,18 @@ UI_To_gnu (Uint Input, tree type) gnu_ret = build_cst_from_int (comp_type, First); if (First < 0) for (Idx++, Length--; Length; Idx++, Length--) - gnu_ret = fold (build (MINUS_EXPR, comp_type, - fold (build (MULT_EXPR, comp_type, - gnu_ret, gnu_base)), - build_cst_from_int (comp_type, - Udigits_Ptr[Idx]))); + gnu_ret = fold (build2 (MINUS_EXPR, comp_type, + fold (build2 (MULT_EXPR, comp_type, + gnu_ret, gnu_base)), + build_cst_from_int (comp_type, + Udigits_Ptr[Idx]))); else for (Idx++, Length--; Length; Idx++, Length--) - gnu_ret = fold (build (PLUS_EXPR, comp_type, - fold (build (MULT_EXPR, comp_type, - gnu_ret, gnu_base)), - build_cst_from_int (comp_type, - Udigits_Ptr[Idx]))); + gnu_ret = fold (build2 (PLUS_EXPR, comp_type, + fold (build2 (MULT_EXPR, comp_type, + gnu_ret, gnu_base)), + build_cst_from_int (comp_type, + Udigits_Ptr[Idx]))); } gnu_ret = convert (type, gnu_ret); diff --git a/gcc/ada/decl.c b/gcc/ada/decl.c index 33bbbb1dd61..08b5176afde 100644 --- a/gcc/ada/decl.c +++ b/gcc/ada/decl.c @@ -89,8 +89,6 @@ static bool is_variable_size (tree); static tree elaborate_expression_1 (Node_Id, Entity_Id, tree, tree, bool, bool); static tree make_packable_type (tree); -static tree maybe_pad_type (tree, tree, unsigned int, Entity_Id, const char *, - bool, bool, bool); static tree gnat_to_gnu_field (Entity_Id, tree, int, bool); static void components_to_record (tree, Node_Id, tree, int, bool, tree *, bool, bool); @@ -763,7 +761,7 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) just use that declaration or reference as this entity unless the latter has to be materialized. */ else if ((DECL_P (gnu_expr) - || TREE_CODE_CLASS (TREE_CODE (gnu_expr)) == 'r') + || (REFERENCE_CLASS_P (gnu_expr) == tcc_reference)) && !Materialize_Entity (gnat_entity) && (!global_bindings_p () || (staticp (gnu_expr) @@ -877,13 +875,13 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) gnu_expr = gnu_address; else gnu_expr - = build (COMPOUND_EXPR, gnu_type, - build_binary_op - (MODIFY_EXPR, NULL_TREE, - build_unary_op (INDIRECT_REF, NULL_TREE, - gnu_address), - gnu_expr), - gnu_address); + = build2 (COMPOUND_EXPR, gnu_type, + build_binary_op + (MODIFY_EXPR, NULL_TREE, + build_unary_op (INDIRECT_REF, NULL_TREE, + gnu_address), + gnu_expr), + gnu_address); } /* If it has an address clause and we are not defining it, mark it @@ -1234,8 +1232,8 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) { TYPE_MODULAR_P (gnu_type) = 1; SET_TYPE_MODULUS (gnu_type, gnu_modulus); - gnu_high = fold (build (MINUS_EXPR, gnu_type, gnu_modulus, - convert (gnu_type, integer_one_node))); + gnu_high = fold (build2 (MINUS_EXPR, gnu_type, gnu_modulus, + convert (gnu_type, integer_one_node))); } /* If we have to set TYPE_PRECISION different from its natural value, @@ -1511,9 +1509,9 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) /* Build a reference to the template from a PLACEHOLDER_EXPR that is the fat pointer. This will be used to access the individual fields once we build them. */ - tem = build (COMPONENT_REF, gnu_ptr_template, - build (PLACEHOLDER_EXPR, gnu_fat_type), - TREE_CHAIN (TYPE_FIELDS (gnu_fat_type)), NULL_TREE); + tem = build3 (COMPONENT_REF, gnu_ptr_template, + build0 (PLACEHOLDER_EXPR, gnu_fat_type), + TREE_CHAIN (TYPE_FIELDS (gnu_fat_type)), NULL_TREE); gnu_template_reference = build_unary_op (INDIRECT_REF, gnu_template_type, tem); TREE_READONLY (gnu_template_reference) = 1; @@ -1559,10 +1557,12 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) /* We can't use build_component_ref here since the template type isn't complete yet. */ - gnu_min = build (COMPONENT_REF, gnu_ind_subtype, - gnu_template_reference, gnu_min_field, NULL_TREE); - gnu_max = build (COMPONENT_REF, gnu_ind_subtype, - gnu_template_reference, gnu_max_field, NULL_TREE); + gnu_min = build3 (COMPONENT_REF, gnu_ind_subtype, + gnu_template_reference, gnu_min_field, + NULL_TREE); + gnu_max = build3 (COMPONENT_REF, gnu_ind_subtype, + gnu_template_reference, gnu_max_field, + NULL_TREE); TREE_READONLY (gnu_min) = TREE_READONLY (gnu_max) = 1; /* Make a range type with the new ranges, but using @@ -1802,9 +1802,9 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) && TREE_CODE (gnu_max) == INTEGER_CST && TREE_OVERFLOW (gnu_min) && TREE_OVERFLOW (gnu_max) && (!TREE_OVERFLOW - (fold (build (MINUS_EXPR, gnu_index_subtype, - TYPE_MAX_VALUE (gnu_index_subtype), - TYPE_MIN_VALUE (gnu_index_subtype)))))) + (fold (build2 (MINUS_EXPR, gnu_index_subtype, + TYPE_MAX_VALUE (gnu_index_subtype), + TYPE_MIN_VALUE (gnu_index_subtype)))))) TREE_OVERFLOW (gnu_min) = TREE_OVERFLOW (gnu_max) = TREE_CONSTANT_OVERFLOW (gnu_min) = TREE_CONSTANT_OVERFLOW (gnu_max) = 0; @@ -2360,11 +2360,11 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) COMPONENT_REF which will be filled in below, once the parent type can be safely built. */ - gnu_get_parent = build (COMPONENT_REF, void_type_node, - build (PLACEHOLDER_EXPR, gnu_type), - build_decl (FIELD_DECL, NULL_TREE, - NULL_TREE), - NULL_TREE); + gnu_get_parent = build3 (COMPONENT_REF, void_type_node, + build0 (PLACEHOLDER_EXPR, gnu_type), + build_decl (FIELD_DECL, NULL_TREE, + NULL_TREE), + NULL_TREE); if (Has_Discriminants (gnat_entity)) for (gnat_field = First_Stored_Discriminant (gnat_entity); @@ -2373,13 +2373,13 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) if (Present (Corresponding_Discriminant (gnat_field))) save_gnu_tree (gnat_field, - build (COMPONENT_REF, - get_unpadded_type (Etype (gnat_field)), - gnu_get_parent, - gnat_to_gnu_entity (Corresponding_Discriminant - (gnat_field), + build3 (COMPONENT_REF, + get_unpadded_type (Etype (gnat_field)), + gnu_get_parent, + gnat_to_gnu_entity (Corresponding_Discriminant + (gnat_field), NULL_TREE, 0), - NULL_TREE), + NULL_TREE), true); gnu_parent = gnat_to_gnu_type (Parent_Subtype (gnat_entity)); @@ -2418,10 +2418,10 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) corresponding GNAT defining identifier. Then add to the list of fields. */ save_gnu_tree (gnat_field, - build (COMPONENT_REF, TREE_TYPE (gnu_field), - build (PLACEHOLDER_EXPR, - DECL_CONTEXT (gnu_field)), - gnu_field, NULL_TREE), + build3 (COMPONENT_REF, TREE_TYPE (gnu_field), + build0 (PLACEHOLDER_EXPR, + DECL_CONTEXT (gnu_field)), + gnu_field, NULL_TREE), true); TREE_CHAIN (gnu_field) = gnu_field_list; @@ -3243,6 +3243,7 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) bool volatile_flag = No_Return (gnat_entity); bool returns_by_ref = false; bool returns_unconstrained = false; + bool returns_by_target_ptr = false; tree gnu_ext_name = create_concat_name (gnat_entity, 0); bool has_copy_in_out = false; int parmnum; @@ -3323,9 +3324,19 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) || Has_Foreign_Convention (gnat_entity))) gnu_return_type = TREE_TYPE (TYPE_FIELDS (gnu_return_type)); - /* Look at all our parameters and get the type of - each. While doing this, build a copy-out structure if - we need one. */ + /* If the return type is unconstrained, that means it must have a + maximum size. We convert the function into a procedure and its + caller will pass a pointer to an object of that maximum size as the + first parameter when we call the function. */ + if (CONTAINS_PLACEHOLDER_P (TYPE_SIZE (gnu_return_type))) + { + returns_by_target_ptr = true; + gnu_param_list + = create_param_decl (get_identifier ("TARGET"), + build_reference_type (gnu_return_type), + true); + gnu_return_type = void_type_node; + } /* If the return type has a size that overflows, we cannot have a function that returns that type. This usage doesn't make @@ -3339,9 +3350,13 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) TYPE_SIZE (gnu_return_type) = bitsize_zero_node; TYPE_SIZE_UNIT (gnu_return_type) = size_zero_node; TYPE_MAIN_VARIANT (gnu_return_type) = gnu_return_type; - TYPE_NEXT_VARIANT (gnu_return_type) = 0; + TYPE_NEXT_VARIANT (gnu_return_type) = NULL_TREE; } + /* Look at all our parameters and get the type of + each. While doing this, build a copy-out structure if + we need one. */ + for (gnat_param = First_Formal (gnat_entity), parmnum = 0; Present (gnat_param); gnat_param = Next_Formal_With_Extras (gnat_param), parmnum++) @@ -3599,7 +3614,8 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) = create_subprog_type (gnu_return_type, gnu_param_list, gnu_return_list, returns_unconstrained, returns_by_ref, - Function_Returns_With_DSP (gnat_entity)); + Function_Returns_With_DSP (gnat_entity), + returns_by_target_ptr); /* A subprogram (something that doesn't return anything) shouldn't be considered Pure since there would be no reason for such a @@ -4524,9 +4540,9 @@ elaborate_expression_1 (Node_Id gnat_expr, Entity_Id gnat_entity, here. We have to hope it will be at the highest level of the expression in these cases. */ if (TREE_CODE (gnu_expr) == FIELD_DECL) - gnu_expr = build (COMPONENT_REF, TREE_TYPE (gnu_expr), - build (PLACEHOLDER_EXPR, DECL_CONTEXT (gnu_expr)), - gnu_expr, NULL_TREE); + gnu_expr = build3 (COMPONENT_REF, TREE_TYPE (gnu_expr), + build0 (PLACEHOLDER_EXPR, DECL_CONTEXT (gnu_expr)), + gnu_expr, NULL_TREE); /* If GNU_EXPR is neither a placeholder nor a constant, nor a variable that is a constant, make a variable that is initialized to contain the @@ -4537,7 +4553,7 @@ elaborate_expression_1 (Node_Id gnat_expr, Entity_Id gnat_entity, rely here on the fact that an expression cannot contain both the discriminant and some other variable. */ - expr_variable = (TREE_CODE_CLASS (TREE_CODE (gnu_expr)) != 'c' + expr_variable = (!CONSTANT_CLASS_P (gnu_expr) && !(TREE_CODE (gnu_inner_expr) == VAR_DECL && TREE_READONLY (gnu_inner_expr)) && !CONTAINS_PLACEHOLDER_P (gnu_expr)); @@ -4576,7 +4592,7 @@ tree make_aligning_type (tree type, int align, tree size) { tree record_type = make_node (RECORD_TYPE); - tree place = build (PLACEHOLDER_EXPR, record_type); + tree place = build0 (PLACEHOLDER_EXPR, record_type); tree size_addr_place = convert (sizetype, build_unary_op (ADDR_EXPR, NULL_TREE, place)); @@ -4701,7 +4717,7 @@ make_packable_type (tree type) set to its TYPE_SIZE; otherwise, it's set to the RM_Size of the original type. */ -static tree +tree maybe_pad_type (tree type, tree size, unsigned int align, Entity_Id gnat_entity, const char *name_trailer, bool is_user_type, bool definition, bool same_rm_size) @@ -5549,8 +5565,7 @@ annotate_value (tree gnu_size) return No_Uint; /* See if we've already saved the value for this node. */ - if (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (gnu_size))) - && TREE_COMPLEXITY (gnu_size)) + if (EXPR_P (gnu_size) && TREE_COMPLEXITY (gnu_size)) return (Node_Ref_Or_Val) TREE_COMPLEXITY (gnu_size); /* If we do not return inside this switch, TCODE will be set to the @@ -5587,7 +5602,7 @@ annotate_value (tree gnu_size) temp = build1 (NEGATE_EXPR, bitsizetype, negative_size); if (adjust) - temp = build (MINUS_EXPR, bitsizetype, temp, bitsize_one_node); + temp = build2 (MINUS_EXPR, bitsizetype, temp, bitsize_one_node); return annotate_value (temp); } diff --git a/gcc/ada/exp_ch3.adb b/gcc/ada/exp_ch3.adb index 39d704efab5..631900a7c93 100644 --- a/gcc/ada/exp_ch3.adb +++ b/gcc/ada/exp_ch3.adb @@ -1400,17 +1400,10 @@ package body Exp_Ch3 is (T : Entity_Id) return Boolean; -- Determines if a component needs simple initialization, given its -- type T. This is the same as Needs_Simple_Initialization except - -- for the following differences. The types Tag and Vtable_Ptr, - -- which are access types which would normally require simple - -- initialization to null, do not require initialization as - -- components, since they are explicitly initialized by other - -- means. The other relaxation is for packed bit arrays that are - -- associated with a modular type, which in some cases require - -- zero initialization to properly support comparisons, except - -- that comparison of such components always involves an explicit - -- selection of only the component's specific bits (whether or not - -- there are adjacent components or gaps), so zero initialization - -- is never needed for components. + -- for the following difference: the types Tag and Vtable_Ptr, which + -- are access types which would normally require simple initialization + -- to null, do not require initialization as components, since they + -- are explicitly initialized by other means. procedure Constrain_Array (SI : Node_Id; @@ -1457,16 +1450,14 @@ package body Exp_Ch3 is Selector_Name => New_Occurrence_Of (Id, Loc)); Set_Assignment_OK (Lhs); - -- Case of an access attribute applied to the current - -- instance. Replace the reference to the type by a - -- reference to the actual object. (Note that this - -- handles the case of the top level of the expression - -- being given by such an attribute, but doesn't cover - -- uses nested within an initial value expression. - -- Nested uses are unlikely to occur in practice, - -- but theoretically possible. It's not clear how - -- to handle them without fully traversing the - -- expression. ???) + -- Case of an access attribute applied to the current instance. + -- Replace the reference to the type by a reference to the actual + -- object. (Note that this handles the case of the top level of + -- the expression being given by such an attribute, but does not + -- cover uses nested within an initial value expression. Nested + -- uses are unlikely to occur in practice, but are theoretically + -- possible. It is not clear how to handle them without fully + -- traversing the expression. ??? if Kind = N_Attribute_Reference and then (Attribute_Name (N) = Name_Unchecked_Access @@ -1482,23 +1473,8 @@ package body Exp_Ch3 is Attribute_Name => Name_Unrestricted_Access); end if; - -- For a derived type the default value is copied from the component - -- declaration of the parent. In the analysis of the init_proc for - -- the parent the default value may have been expanded into a local - -- variable, which is of course not usable here. We must copy the - -- original expression and reanalyze. - - if Nkind (Exp) = N_Identifier - and then not Comes_From_Source (Exp) - and then Analyzed (Exp) - and then not In_Open_Scopes (Scope (Entity (Exp))) - and then Nkind (Original_Node (Exp)) = N_Aggregate - then - Exp := New_Copy_Tree (Original_Node (Exp)); - end if; - -- Ada 2005 (AI-231): Generate conversion to the null-excluding - -- type to force the corresponding run-time check + -- type to force the corresponding run-time check. if Ada_Version >= Ada_05 and then Can_Never_Be_Null (Etype (Id)) -- Lhs @@ -1509,6 +1485,12 @@ package body Exp_Ch3 is Analyze_And_Resolve (Exp, Etype (Id)); end if; + -- Take a copy of Exp to ensure that later copies of this + -- component_declaration in derived types see the original tree, + -- not a node rewritten during expansion of the init_proc. + + Exp := New_Copy_Tree (Exp); + Res := New_List ( Make_Assignment_Statement (Loc, Name => Lhs, @@ -2243,8 +2225,7 @@ package body Exp_Ch3 is return Needs_Simple_Initialization (T) and then not Is_RTE (T, RE_Tag) - and then not Is_RTE (T, RE_Vtable_Ptr) - and then not Is_Bit_Packed_Array (T); + and then not Is_RTE (T, RE_Vtable_Ptr); end Component_Needs_Simple_Initialization; --------------------- @@ -3049,9 +3030,9 @@ package body Exp_Ch3 is end if; end Check_Stream_Attributes; - --------------------------- - -- Expand_Derived_Record -- - --------------------------- + ----------------------------- + -- Expand_Record_Extension -- + ----------------------------- -- Add a field _parent at the beginning of the record extension. This is -- used to implement inheritance. Here are some examples of expansion: @@ -3075,7 +3056,7 @@ package body Exp_Ch3 is -- D : Int; -- end; - procedure Expand_Derived_Record (T : Entity_Id; Def : Node_Id) is + procedure Expand_Record_Extension (T : Entity_Id; Def : Node_Id) is Indic : constant Node_Id := Subtype_Indication (Def); Loc : constant Source_Ptr := Sloc (Def); Rec_Ext_Part : Node_Id := Record_Extension_Part (Def); @@ -3087,7 +3068,7 @@ package body Exp_Ch3 is List_Constr : constant List_Id := New_List; begin - -- Expand_Tagged_Extension is called directly from the semantics, so + -- Expand_Record_Extension is called directly from the semantics, so -- we must check to see whether expansion is active before proceeding if not Expander_Active then @@ -3170,7 +3151,7 @@ package body Exp_Ch3 is end if; Analyze (Comp_Decl); - end Expand_Derived_Record; + end Expand_Record_Extension; ------------------------------------ -- Expand_N_Full_Type_Declaration -- @@ -5605,7 +5586,6 @@ package body Exp_Ch3 is elsif Is_Access_Type (T) or else (Init_Or_Norm_Scalars and then (Is_Scalar_Type (T))) - or else (Is_Bit_Packed_Array (T) and then Is_Modular_Integer_Type (Packed_Array_Type (T))) then diff --git a/gcc/ada/exp_ch3.ads b/gcc/ada/exp_ch3.ads index 7fc124aeb9a..27cd7d8c1a3 100644 --- a/gcc/ada/exp_ch3.ads +++ b/gcc/ada/exp_ch3.ads @@ -43,7 +43,7 @@ package Exp_Ch3 is -- the master for that access type, now that it is known to denote an -- object with tasks. - procedure Expand_Derived_Record (T : Entity_Id; Def : Node_Id); + procedure Expand_Record_Extension (T : Entity_Id; Def : Node_Id); -- Add a field _parent in the extension part of the record. procedure Build_Discr_Checking_Funcs (N : Node_Id); diff --git a/gcc/ada/exp_ch6.adb b/gcc/ada/exp_ch6.adb index 0dd84eaf22c..df976adec6f 100644 --- a/gcc/ada/exp_ch6.adb +++ b/gcc/ada/exp_ch6.adb @@ -3043,7 +3043,8 @@ package body Exp_Ch6 is -- Expand_N_Subprogram_Body -- ------------------------------ - -- Add poll call if ATC polling is enabled + -- Add poll call if ATC polling is enabled, unless the body will be + -- inlined by the back-end. -- Add return statement if last statement in body is not a return -- statement (this makes things easier on Gigi which does not want @@ -3272,14 +3273,6 @@ package body Exp_Ch6 is L := Statements (Handled_Statement_Sequence (N)); end if; - -- Need poll on entry to subprogram if polling enabled. We only - -- do this for non-empty subprograms, since it does not seem - -- necessary to poll for a dummy null subprogram. - - if Is_Non_Empty_List (L) then - Generate_Poll_Call (First (L)); - end if; - -- Find entity for subprogram Body_Id := Defining_Entity (N); @@ -3290,6 +3283,23 @@ package body Exp_Ch6 is Spec_Id := Body_Id; end if; + -- Need poll on entry to subprogram if polling enabled. We only + -- do this for non-empty subprograms, since it does not seem + -- necessary to poll for a dummy null subprogram. Do not add polling + -- point if calls to this subprogram will be inlined by the back-end, + -- to avoid repeated polling points in nested inlinings. + + if Is_Non_Empty_List (L) then + if Is_Inlined (Spec_Id) + and then Front_End_Inlining + and then Optimization_Level > 1 + then + null; + else + Generate_Poll_Call (First (L)); + end if; + end if; + -- If this is a Pure function which has any parameters whose root -- type is System.Address, reset the Pure indication, since it will -- likely cause incorrect code to be generated as the parameter is diff --git a/gcc/ada/exp_dist.adb b/gcc/ada/exp_dist.adb index e3c176ad178..70150793269 100644 --- a/gcc/ada/exp_dist.adb +++ b/gcc/ada/exp_dist.adb @@ -76,27 +76,63 @@ package body Exp_Dist is -- to fake half a derivation to ensure that the subprograms do have -- the same dispatching table. + First_RCI_Subprogram_Id : constant := 2; + -- RCI subprograms are numbered starting at 2. The RCI receiver for + -- an RCI package can thus identify calls received through remote + -- access-to-subprogram dereferences by the fact that they have a + -- (primitive) subprogram id of 0, and 1 is used for the internal + -- RAS information lookup operation. + ----------------------- -- Local subprograms -- ----------------------- + procedure Add_RAS_Proxy_And_Analyze + (Decls : List_Id; + Vis_Decl : Node_Id; + All_Calls_Remote_E : Entity_Id; + Proxy_Object_Addr : out Entity_Id); + -- Add the proxy type necessary to call the subprogram declared + -- by Vis_Decl through a remote access to subprogram type. + -- All_Calls_Remote_E must be Standard_True if a pragma All_Calls_Remote + -- applies, Standard_False otherwise. The new proxy type is appended + -- to Decls. Proxy_Object_Addr is a constant of type System.Address that + -- designates an instance of the proxy object. + + function Build_Remote_Subprogram_Proxy_Type + (Loc : Source_Ptr; + ACR_Expression : Node_Id) return Node_Id; + -- Build and return a tagged record type definition for an RCI + -- subprogram proxy type. + -- ACR_Expression is use as the initialization value for + -- the All_Calls_Remote component. + function Get_Subprogram_Id (E : Entity_Id) return Int; -- Given a subprogram defined in a RCI package, get its subprogram id -- which will be used for remote calls. + function Build_Get_Unique_RP_Call + (Loc : Source_Ptr; + Pointer : Entity_Id; + Stub_Type : Entity_Id) return List_Id; + -- Build a call to Get_Unique_Remote_Pointer (Pointer), + -- followed by a tag fixup (Get_Unique_Remote_Pointer may have + -- changed Pointer'Tag to RACW_Stub_Type'Tag, while the desired + -- tag is that of Stub_Type). + procedure Build_General_Calling_Stubs - (Decls : in List_Id; - Statements : in List_Id; - Target_Partition : in Entity_Id; - RPC_Receiver : in Node_Id; - Subprogram_Id : in Node_Id; - Asynchronous : in Node_Id := Empty; - Is_Known_Asynchronous : in Boolean := False; - Is_Known_Non_Asynchronous : in Boolean := False; - Is_Function : in Boolean; - Spec : in Node_Id; - Object_Type : in Entity_Id := Empty; - Nod : in Node_Id); + (Decls : List_Id; + Statements : List_Id; + Target_Partition : Entity_Id; + RPC_Receiver : Node_Id; + Subprogram_Id : Node_Id; + Asynchronous : Node_Id := Empty; + Is_Known_Asynchronous : Boolean := False; + Is_Known_Non_Asynchronous : Boolean := False; + Is_Function : Boolean; + Spec : Node_Id; + Object_Type : Entity_Id := Empty; + Nod : Node_Id); -- Build calling stubs for general purpose. The parameters are: -- Decls : a place to put declarations -- Statements : a place to put statements @@ -124,8 +160,7 @@ package body Exp_Dist is Dynamically_Asynchronous : Boolean := False; Stub_Type : Entity_Id := Empty; Locator : Entity_Id := Empty; - New_Name : Name_Id := No_Name) - return Node_Id; + New_Name : Name_Id := No_Name) return Node_Id; -- Build the calling stub for a given subprogram with the subprogram ID -- being Subp_Id. If Stub_Type is given, then the "addr" field of -- parameters of this type will be marshalled instead of the object @@ -142,8 +177,7 @@ package body Exp_Dist is Dynamically_Asynchronous : Boolean := False; Stub_Type : Entity_Id := Empty; RACW_Type : Entity_Id := Empty; - Parent_Primitive : Entity_Id := Empty) - return Node_Id; + Parent_Primitive : Entity_Id := Empty) return Node_Id; -- Build the receiving stub for a given subprogram. The subprogram -- declaration is also built by this procedure, and the value returned -- is a N_Subprogram_Body. If a parameter of type access to Stub_Type is @@ -155,31 +189,32 @@ package body Exp_Dist is function Build_RPC_Receiver_Specification (RPC_Receiver : Entity_Id; Stream_Parameter : Entity_Id; - Result_Parameter : Entity_Id) - return Node_Id; + Result_Parameter : Entity_Id) return Node_Id; -- Make a subprogram specification for an RPC receiver, -- with the given defining unit name and formal parameters. function Build_Ordered_Parameters_List (Spec : Node_Id) return List_Id; -- Return an ordered parameter list: unconstrained parameters are put -- at the beginning of the list and constrained ones are put after. If - -- there are no parameters, an empty list is returned. + -- there are no parameters, an empty list is returned. Special case: + -- the controlling formal of the equivalent RACW operation for a RAS + -- type is always left in first position. procedure Add_Calling_Stubs_To_Declarations - (Pkg_Spec : in Node_Id; - Decls : in List_Id); + (Pkg_Spec : Node_Id; + Decls : List_Id); -- Add calling stubs to the declarative part procedure Add_Receiving_Stubs_To_Declarations - (Pkg_Spec : in Node_Id; - Decls : in List_Id); + (Pkg_Spec : Node_Id; + Decls : List_Id); -- Add receiving stubs to the declarative part - procedure Add_RAS_Dereference_Attribute (N : in Node_Id); - -- Add a subprogram body for RAS dereference + procedure Add_RAS_Dereference_TSS (N : Node_Id); + -- Add a subprogram body for RAS Dereference TSS - procedure Add_RAS_Access_Attribute (N : in Node_Id); - -- Add a subprogram body for RAS Access attribute + procedure Add_RAS_Access_TSS (N : Node_Id); + -- Add a subprogram body for RAS Access TSS function Could_Be_Asynchronous (Spec : Node_Id) return Boolean; -- Return True if nothing prevents the program whose specification is @@ -194,8 +229,7 @@ package body Exp_Dist is (Loc : Source_Ptr; Stream : Node_Id; Object : Entity_Id; - Etyp : Entity_Id := Empty) - return Node_Id; + Etyp : Entity_Id := Empty) return Node_Id; -- Pack Object (of type Etyp) into Stream. If Etyp is not given, -- then Etype (Object) will be used if present. If the type is -- constrained, then 'Write will be used to output the object, @@ -205,30 +239,16 @@ package body Exp_Dist is (Loc : Source_Ptr; Stream : Entity_Id; Object : Node_Id; - Etyp : Entity_Id) - return Node_Id; + Etyp : Entity_Id) return Node_Id; -- Similar to above, with an arbitrary node instead of an entity function Pack_Node_Into_Stream_Access (Loc : Source_Ptr; Stream : Node_Id; Object : Node_Id; - Etyp : Entity_Id) - return Node_Id; + Etyp : Entity_Id) return Node_Id; -- Similar to above, with Stream instead of Stream'Access - function Copy_Specification - (Loc : Source_Ptr; - Spec : Node_Id; - Object_Type : Entity_Id := Empty; - Stub_Type : Entity_Id := Empty; - New_Name : Name_Id := No_Name) - return Node_Id; - -- Build a specification from another one. If Object_Type is not Empty - -- and any access to Object_Type is found, then it is replaced by an - -- access to Stub_Type. If New_Name is given, then it will be used as - -- the name for the newly created spec. - function Scope_Of_Spec (Spec : Node_Id) return Entity_Id; -- Return the scope represented by a given spec @@ -237,8 +257,7 @@ package body Exp_Dist is -- its constrained status. function Is_RACW_Controlling_Formal - (Parameter : Node_Id; Stub_Type : Entity_Id) - return Boolean; + (Parameter : Node_Id; Stub_Type : Entity_Id) return Boolean; -- Return True if the current parameter is a controlling formal argument -- of type Stub_Type or access to Stub_Type. @@ -301,9 +320,9 @@ package body Exp_Dist is -- Mapping between a RCI subprogram and the corresponding calling stubs procedure Add_Stub_Type - (Designated_Type : in Entity_Id; - RACW_Type : in Entity_Id; - Decls : in List_Id; + (Designated_Type : Entity_Id; + RACW_Type : Entity_Id; + Decls : List_Id; Stub_Type : out Entity_Id; Stub_Type_Access : out Entity_Id; Object_RPC_Receiver : out Entity_Id; @@ -314,28 +333,28 @@ package body Exp_Dist is -- anyhow and Existing is set to True. procedure Add_RACW_Read_Attribute - (RACW_Type : in Entity_Id; - Stub_Type : in Entity_Id; - Stub_Type_Access : in Entity_Id; - Declarations : in List_Id); + (RACW_Type : Entity_Id; + Stub_Type : Entity_Id; + Stub_Type_Access : Entity_Id; + Declarations : List_Id); -- Add Read attribute in Decls for the RACW type. The Read attribute -- is added right after the RACW_Type declaration while the body is -- inserted after Declarations. procedure Add_RACW_Write_Attribute - (RACW_Type : in Entity_Id; - Stub_Type : in Entity_Id; - Stub_Type_Access : in Entity_Id; - Object_RPC_Receiver : in Entity_Id; - Declarations : in List_Id); + (RACW_Type : Entity_Id; + Stub_Type : Entity_Id; + Stub_Type_Access : Entity_Id; + Object_RPC_Receiver : Entity_Id; + Declarations : List_Id); -- Same thing for the Write attribute procedure Add_RACW_Read_Write_Attributes - (RACW_Type : in Entity_Id; - Stub_Type : in Entity_Id; - Stub_Type_Access : in Entity_Id; - Object_RPC_Receiver : in Entity_Id; - Declarations : in List_Id); + (RACW_Type : Entity_Id; + Stub_Type : Entity_Id; + Stub_Type_Access : Entity_Id; + Object_RPC_Receiver : Entity_Id; + Declarations : List_Id); -- Add Read and Write attributes declarations and bodies for a given -- RACW type. The declarations are added just after the declaration -- of the RACW type itself, while the bodies are inserted at the end @@ -343,8 +362,7 @@ package body Exp_Dist is function RCI_Package_Locator (Loc : Source_Ptr; - Package_Spec : Node_Id) - return Node_Id; + Package_Spec : Node_Id) return Node_Id; -- Instantiate the generic package RCI_Info in order to locate the -- RCI package whose spec is given as argument. @@ -361,8 +379,7 @@ package body Exp_Dist is function Input_With_Tag_Check (Loc : Source_Ptr; Var_Type : Entity_Id; - Stream : Entity_Id) - return Node_Id; + Stream : Entity_Id) return Node_Id; -- Return a function with the following form: -- function R return Var_Type is -- begin @@ -392,16 +409,16 @@ package body Exp_Dist is --------------------------------------- procedure Add_Calling_Stubs_To_Declarations - (Pkg_Spec : in Node_Id; - Decls : in List_Id) + (Pkg_Spec : Node_Id; + Decls : List_Id) is - Current_Subprogram_Number : Int := 0; - Current_Declaration : Node_Id; + Current_Subprogram_Number : Int := First_RCI_Subprogram_Id; + -- Subprogram id 0 is reserved for calls received from + -- remote access-to-subprogram dereferences. + Current_Declaration : Node_Id; Loc : constant Source_Ptr := Sloc (Pkg_Spec); - RCI_Instantiation : Node_Id; - Subp_Stubs : Node_Id; begin @@ -424,9 +441,7 @@ package body Exp_Dist is -- do the correct dispatching. Current_Declaration := First (Visible_Declarations (Pkg_Spec)); - while Current_Declaration /= Empty loop - if Nkind (Current_Declaration) = N_Subprogram_Declaration and then Comes_From_Source (Current_Declaration) then @@ -453,14 +468,13 @@ package body Exp_Dist is Next (Current_Declaration); end loop; - end Add_Calling_Stubs_To_Declarations; ----------------------- -- Add_RACW_Features -- ----------------------- - procedure Add_RACW_Features (RACW_Type : in Entity_Id) + procedure Add_RACW_Features (RACW_Type : Entity_Id) is Desig : constant Entity_Id := Etype (Designated_Type (RACW_Type)); @@ -554,7 +568,7 @@ package body Exp_Dist is Loc : constant Source_Ptr := Sloc (Insertion_Node); Stub_Elements : constant Stub_Structure := - Stubs_Table.Get (Designated_Type); + Stubs_Table.Get (Designated_Type); pragma Assert (Stub_Elements /= Empty_Stub_Structure); @@ -593,9 +607,7 @@ package body Exp_Dist is Current_Primitive_Elmt := First_Elmt (Primitive_Operations (Designated_Type)); - while Current_Primitive_Elmt /= No_Elmt loop - Current_Primitive := Node (Current_Primitive_Elmt); -- Copy the primitive of all the parents, except predefined @@ -748,10 +760,10 @@ package body Exp_Dist is ----------------------------- procedure Add_RACW_Read_Attribute - (RACW_Type : in Entity_Id; - Stub_Type : in Entity_Id; - Stub_Type_Access : in Entity_Id; - Declarations : in List_Id) + (RACW_Type : Entity_Id; + Stub_Type : Entity_Id; + Stub_Type_Access : Entity_Id; + Declarations : List_Id) is Loc : constant Source_Ptr := Sloc (RACW_Type); @@ -777,6 +789,9 @@ package body Exp_Dist is Source_Address : constant Entity_Id := Make_Defining_Identifier (Loc, New_Internal_Name ('P')); + Local_Stub : constant Entity_Id := + Make_Defining_Identifier + (Loc, New_Internal_Name ('L')); Stubbed_Result : constant Entity_Id := Make_Defining_Identifier (Loc, New_Internal_Name ('S')); @@ -836,9 +851,20 @@ package body Exp_Dist is New_Occurrence_Of (RTE (RE_Unsigned_64), Loc)), Make_Object_Declaration (Loc, + Defining_Identifier => Local_Stub, + Aliased_Present => True, + Object_Definition => New_Occurrence_Of (Stub_Type, Loc)), + + Make_Object_Declaration (Loc, Defining_Identifier => Stubbed_Result, Object_Definition => - New_Occurrence_Of (Stub_Type_Access, Loc))); + New_Occurrence_Of (Stub_Type_Access, Loc), + Expression => + Make_Attribute_Reference (Loc, + Prefix => + New_Occurrence_Of (Local_Stub, Loc), + Attribute_Name => + Name_Unchecked_Access))); -- Read the source Partition_ID and RPC_Receiver from incoming stream @@ -869,6 +895,10 @@ package body Exp_Dist is Stream_Parameter, New_Occurrence_Of (Source_Address, Loc)))); + -- Build_Get_Unique_RP_Call needs the type of Stubbed_Result + + Set_Etype (Stubbed_Result, Stub_Type_Access); + -- If the Address is Null_Address, then return a null object Append_To (Statements, @@ -901,12 +931,6 @@ package body Exp_Dist is Remote_Statements := New_List ( Make_Assignment_Statement (Loc, - Name => New_Occurrence_Of (Stubbed_Result, Loc), - Expression => - Make_Allocator (Loc, - New_Occurrence_Of (Stub_Type, Loc))), - - Make_Assignment_Statement (Loc, Name => Make_Selected_Component (Loc, Prefix => New_Occurrence_Of (Stubbed_Result, Loc), Selector_Name => Make_Identifier (Loc, Name_Origin)), @@ -935,13 +959,18 @@ package body Exp_Dist is Expression => New_Occurrence_Of (Asynchronous_Flag, Loc))); - Append_To (Remote_Statements, - Make_Procedure_Call_Statement (Loc, - Name => - New_Occurrence_Of (RTE (RE_Get_Unique_Remote_Pointer), Loc), - Parameter_Associations => New_List ( - Unchecked_Convert_To (RTE (RE_RACW_Stub_Type_Access), - New_Occurrence_Of (Stubbed_Result, Loc))))); + Append_List_To (Remote_Statements, + Build_Get_Unique_RP_Call (Loc, Stubbed_Result, Stub_Type)); + -- ??? Issue with asynchronous calls here: the Asynchronous + -- flag is set on the stub type if, and only if, the RACW type + -- has a pragma Asynchronous. This is incorrect for RACWs that + -- implement RAS types, because in that case the /designated + -- subprogram/ (not the type) might be asynchronous, and + -- that causes the stub to need to be asynchronous too. + -- A solution is to transport a RAS as a struct containing + -- a RACW and an asynchronous flag, and to properly alter + -- the Asynchronous component in the stub type in the RAS's + -- Input TSS. Append_To (Remote_Statements, Make_Assignment_Statement (Loc, @@ -991,11 +1020,11 @@ package body Exp_Dist is ------------------------------------ procedure Add_RACW_Read_Write_Attributes - (RACW_Type : in Entity_Id; - Stub_Type : in Entity_Id; - Stub_Type_Access : in Entity_Id; - Object_RPC_Receiver : in Entity_Id; - Declarations : in List_Id) + (RACW_Type : Entity_Id; + Stub_Type : Entity_Id; + Stub_Type_Access : Entity_Id; + Object_RPC_Receiver : Entity_Id; + Declarations : List_Id) is begin Add_RACW_Write_Attribute @@ -1017,18 +1046,22 @@ package body Exp_Dist is ------------------------------ procedure Add_RACW_Write_Attribute - (RACW_Type : in Entity_Id; - Stub_Type : in Entity_Id; - Stub_Type_Access : in Entity_Id; - Object_RPC_Receiver : in Entity_Id; - Declarations : in List_Id) + (RACW_Type : Entity_Id; + Stub_Type : Entity_Id; + Stub_Type_Access : Entity_Id; + Object_RPC_Receiver : Entity_Id; + Declarations : List_Id) is Loc : constant Source_Ptr := Sloc (RACW_Type); + Is_RAS : constant Boolean := not Comes_From_Source (RACW_Type); + Body_Node : Node_Id; Proc_Decl : Node_Id; Attr_Decl : Node_Id; + RPC_Receiver : Node_Id; + Statements : List_Id; Local_Statements : List_Id; Remote_Statements : List_Id; @@ -1056,6 +1089,26 @@ package body Exp_Dist is -- Build the code fragment corresponding to the marshalling of a -- local object. + if Is_RAS then + + -- For a RAS, the RPC receiver is that of the RCI unit, + -- not that of the corresponding distributed object type. + -- We retrieve its address from the local proxy object. + + RPC_Receiver := Make_Selected_Component (Loc, + Prefix => + Unchecked_Convert_To (RTE (RE_RAS_Proxy_Type_Access), Object), + Selector_Name => + Make_Identifier (Loc, Name_Receiver)); + + else + RPC_Receiver := Make_Attribute_Reference (Loc, + Prefix => + New_Occurrence_Of (Object_RPC_Receiver, Loc), + Attribute_Name => + Name_Address); + end if; + Local_Statements := New_List ( Pack_Entity_Into_Stream_Access (Loc, @@ -1064,21 +1117,18 @@ package body Exp_Dist is Pack_Node_Into_Stream_Access (Loc, Stream => Stream_Parameter, - Object => OK_Convert_To (RTE (RE_Unsigned_64), - Make_Attribute_Reference (Loc, - Prefix => New_Occurrence_Of (Object_RPC_Receiver, Loc), - Attribute_Name => Name_Address)), + Object => OK_Convert_To (RTE (RE_Unsigned_64), RPC_Receiver), Etyp => RTE (RE_Unsigned_64)), - Pack_Node_Into_Stream_Access (Loc, - Stream => Stream_Parameter, - Object => OK_Convert_To (RTE (RE_Unsigned_64), - Make_Attribute_Reference (Loc, - Prefix => - Make_Explicit_Dereference (Loc, - Prefix => Object), - Attribute_Name => Name_Address)), - Etyp => RTE (RE_Unsigned_64))); + Pack_Node_Into_Stream_Access (Loc, + Stream => Stream_Parameter, + Object => OK_Convert_To (RTE (RE_Unsigned_64), + Make_Attribute_Reference (Loc, + Prefix => + Make_Explicit_Dereference (Loc, + Prefix => Object), + Attribute_Name => Name_Address)), + Etyp => RTE (RE_Unsigned_64))); -- Build the code fragment corresponding to the marshalling of -- a remote object. @@ -1180,34 +1230,79 @@ package body Exp_Dist is Append_To (Declarations, Body_Node); end Add_RACW_Write_Attribute; - ------------------------------ - -- Add_RAS_Access_Attribute -- - ------------------------------ + ------------------------ + -- Add_RAS_Access_TSS -- + ------------------------ + + procedure Add_RAS_Access_TSS (N : Node_Id) is + Loc : constant Source_Ptr := Sloc (N); - procedure Add_RAS_Access_Attribute (N : in Node_Id) is Ras_Type : constant Entity_Id := Defining_Identifier (N); Fat_Type : constant Entity_Id := Equivalent_Type (Ras_Type); -- Ras_Type is the access to subprogram type while Fat_Type points to -- the record type corresponding to a remote access to subprogram type. - Proc_Decls : constant List_Id := New_List; - Proc_Statements : constant List_Id := New_List; + RACW_Type : constant Entity_Id := + Underlying_RACW_Type (Ras_Type); + Desig : constant Entity_Id := + Etype (Designated_Type (RACW_Type)); - Proc_Spec : Node_Id; - Proc : Node_Id; - Local_Addr : Entity_Id; - Package_Name : Entity_Id; - Subp_Id : Entity_Id; - Asynch_P : Entity_Id; - Origin : Entity_Id; - Return_Value : Entity_Id; + Stub_Elements : constant Stub_Structure := + Stubs_Table.Get (Desig); + pragma Assert (Stub_Elements /= Empty_Stub_Structure); - All_Calls_Remote : Entity_Id; + Proc : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => Make_TSS_Name (Ras_Type, TSS_RAS_Access)); + Proc_Spec : Node_Id; + + -- Formal parameters + + Package_Name : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => Name_P); + -- Target package + + Subp_Id : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => Name_S); + -- Target subprogram + + Asynch_P : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => Name_Asynchronous); + -- Is the procedure to which the 'Access applies asynchronous? + + All_Calls_Remote : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => Name_All_Calls_Remote); -- True if an All_Calls_Remote pragma applies to the RCI unit - -- that contains the subprogram (currently unused, all RAS - -- dereferences are handled through the PCS). + -- that contains the subprogram. - Loc : constant Source_Ptr := Sloc (N); + -- Common local variables + + Proc_Decls : List_Id; + Proc_Statements : List_Id; + + Origin : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => New_Internal_Name ('P')); + + -- Additional local variables for the local case + + Proxy_Addr : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => New_Internal_Name ('P')); + + -- Additional local variables for the remote case + + Local_Stub : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => New_Internal_Name ('L')); + + Stub_Ptr : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => New_Internal_Name ('S')); function Set_Field (Field_Name : Name_Id; @@ -1228,26 +1323,17 @@ package body Exp_Dist is Make_Assignment_Statement (Loc, Name => Make_Selected_Component (Loc, - Prefix => New_Occurrence_Of (Return_Value, Loc), + Prefix => New_Occurrence_Of (Stub_Ptr, Loc), Selector_Name => Make_Identifier (Loc, Field_Name)), Expression => Value); end Set_Field; - -- Start of processing for Add_RAS_Access_Attribute + -- Start of processing for Add_RAS_Access_TSS begin - Local_Addr := Make_Defining_Identifier (Loc, New_Internal_Name ('L')); - Package_Name := Make_Defining_Identifier (Loc, New_Internal_Name ('P')); - Subp_Id := Make_Defining_Identifier (Loc, New_Internal_Name ('N')); - Asynch_P := Make_Defining_Identifier (Loc, New_Internal_Name ('B')); - Origin := Make_Defining_Identifier (Loc, New_Internal_Name ('P')); - Return_Value := Make_Defining_Identifier (Loc, New_Internal_Name ('R')); - All_Calls_Remote := - Make_Defining_Identifier (Loc, New_Internal_Name ('A')); - - -- Create the object which will be returned of type Fat_Type + Proc_Decls := New_List ( - Append_List_To (Proc_Decls, New_List ( + -- Common declarations Make_Object_Declaration (Loc, Defining_Identifier => Origin, @@ -1261,41 +1347,75 @@ package body Exp_Dist is Parameter_Associations => New_List ( New_Occurrence_Of (Package_Name, Loc)))), + -- Declaration use only in the local case: proxy address + + Make_Object_Declaration (Loc, + Defining_Identifier => Proxy_Addr, + Object_Definition => + New_Occurrence_Of (RTE (RE_Unsigned_64), Loc)), + + -- Declarations used only in the remote case: stub object and + -- stub pointer. + Make_Object_Declaration (Loc, - Defining_Identifier => Return_Value, + Defining_Identifier => Local_Stub, + Aliased_Present => True, Object_Definition => - New_Occurrence_Of (Fat_Type, Loc)))); + New_Occurrence_Of (Stub_Elements.Stub_Type, Loc)), + + Make_Object_Declaration (Loc, + Defining_Identifier => + Stub_Ptr, + Object_Definition => + New_Occurrence_Of (Stub_Elements.Stub_Type_Access, Loc), + Expression => + Make_Attribute_Reference (Loc, + Prefix => New_Occurrence_Of (Local_Stub, Loc), + Attribute_Name => Name_Unchecked_Access))); - -- Initialize the fields of the record type with the appropriate data + Set_Etype (Stub_Ptr, Stub_Elements.Stub_Type_Access); + -- Build_Get_Unique_RP_Call needs this information. + + -- Note: Here we assume that the Fat_Type is a record + -- containing just a pointer to a proxy or stub object. + + Proc_Statements := New_List ( + + -- Get_RAS_Info (Pkg, Subp, PA); + -- if Origin = Local_Partition_Id and then not All_Calls_Remote then + -- return Fat_Type!(PA); + -- end if; + + Make_Procedure_Call_Statement (Loc, + Name => + New_Occurrence_Of (RTE (RE_Get_RAS_Info), Loc), + Parameter_Associations => New_List ( + New_Occurrence_Of (Package_Name, Loc), + New_Occurrence_Of (Subp_Id, Loc), + New_Occurrence_Of (Proxy_Addr, Loc))), - Append_List_To (Proc_Statements, New_List ( Make_Implicit_If_Statement (N, Condition => Make_And_Then (Loc, - Left_Opnd => - Make_Op_Not (Loc, - New_Occurrence_Of (All_Calls_Remote, Loc)), - Right_Opnd => + Left_Opnd => Make_Op_Eq (Loc, Left_Opnd => New_Occurrence_Of (Origin, Loc), Right_Opnd => Make_Function_Call (Loc, New_Occurrence_Of ( - RTE (RE_Get_Local_Partition_Id), Loc)))), - + RTE (RE_Get_Local_Partition_Id), Loc))), + Right_Opnd => + Make_Op_Not (Loc, + New_Occurrence_Of (All_Calls_Remote, Loc))), Then_Statements => New_List ( - Set_Field (Name_Ras, - OK_Convert_To (RTE (RE_Unsigned_64), - New_Occurrence_Of (Local_Addr, Loc)))), - - Else_Statements => New_List ( - Set_Field (Name_Ras, - Make_Integer_Literal (Loc, Uint_0)))), + Make_Return_Statement (Loc, + Unchecked_Convert_To (Fat_Type, + OK_Convert_To (RTE (RE_Address), + New_Occurrence_Of (Proxy_Addr, Loc)))))), Set_Field (Name_Origin, - Unchecked_Convert_To (Standard_Integer, - New_Occurrence_Of (Origin, Loc))), + New_Occurrence_Of (Origin, Loc)), Set_Field (Name_Receiver, Make_Function_Call (Loc, @@ -1304,33 +1424,36 @@ package body Exp_Dist is Parameter_Associations => New_List ( New_Occurrence_Of (Package_Name, Loc)))), - Set_Field (Name_Subp_Id, - New_Occurrence_Of (Subp_Id, Loc)), + Set_Field (Name_Addr, New_Occurrence_Of (Proxy_Addr, Loc)), + + Set_Field (Name_Asynchronous, + Make_Or_Else (Loc, + New_Occurrence_Of (Asynch_P, Loc), + New_Occurrence_Of (Boolean_Literals ( + Is_Asynchronous (Ras_Type)), Loc)))); + -- E.4.1(9) A remote call is asynchronous if it is a call to + -- a procedure, or a call through a value of an access-to-procedure + -- type, to which a pragma Asynchronous applies. + -- Parameter Asynch_P is true when the procedure is asynchronous; + -- Expression Asynch_T is true when the type is asynchronous. - Set_Field (Name_Async, - New_Occurrence_Of (Asynch_P, Loc)))); + Append_List_To (Proc_Statements, + Build_Get_Unique_RP_Call + (Loc, Stub_Ptr, Stub_Elements.Stub_Type)); -- Return the newly created value Append_To (Proc_Statements, Make_Return_Statement (Loc, Expression => - New_Occurrence_Of (Return_Value, Loc))); - - Proc := - Make_Defining_Identifier (Loc, - Chars => Make_TSS_Name (Ras_Type, TSS_RAS_Access)); + Unchecked_Convert_To (Fat_Type, + New_Occurrence_Of (Stub_Ptr, Loc)))); Proc_Spec := Make_Function_Specification (Loc, Defining_Unit_Name => Proc, Parameter_Specifications => New_List ( Make_Parameter_Specification (Loc, - Defining_Identifier => Local_Addr, - Parameter_Type => - New_Occurrence_Of (RTE (RE_Address), Loc)), - - Make_Parameter_Specification (Loc, Defining_Identifier => Package_Name, Parameter_Type => New_Occurrence_Of (Standard_String, Loc)), @@ -1338,7 +1461,7 @@ package body Exp_Dist is Make_Parameter_Specification (Loc, Defining_Identifier => Subp_Id, Parameter_Type => - New_Occurrence_Of (Standard_Natural, Loc)), + New_Occurrence_Of (RTE (RE_Subprogram_Id), Loc)), Make_Parameter_Specification (Loc, Defining_Identifier => Asynch_P, @@ -1368,139 +1491,127 @@ package body Exp_Dist is Statements => Proc_Statements))); Set_TSS (Fat_Type, Proc); + end Add_RAS_Access_TSS; - end Add_RAS_Access_Attribute; - - ----------------------------------- - -- Add_RAS_Dereference_Attribute -- - ----------------------------------- + ----------------------------- + -- Add_RAS_Dereference_TSS -- + ----------------------------- - procedure Add_RAS_Dereference_Attribute (N : in Node_Id) is + procedure Add_RAS_Dereference_TSS (N : Node_Id) is Loc : constant Source_Ptr := Sloc (N); Type_Def : constant Node_Id := Type_Definition (N); - Ras_Type : constant Entity_Id := Defining_Identifier (N); - - Fat_Type : constant Entity_Id := Equivalent_Type (Ras_Type); + RAS_Type : constant Entity_Id := Defining_Identifier (N); + Fat_Type : constant Entity_Id := Equivalent_Type (RAS_Type); + RACW_Type : constant Entity_Id := Underlying_RACW_Type (RAS_Type); + Desig : constant Entity_Id := Etype (Designated_Type (RACW_Type)); - Proc_Decls : constant List_Id := New_List; - Proc_Statements : constant List_Id := New_List; + Stub_Elements : constant Stub_Structure := Stubs_Table.Get (Desig); + pragma Assert (Stub_Elements /= Empty_Stub_Structure); - Inner_Decls : constant List_Id := New_List; - Inner_Statements : constant List_Id := New_List; + RACW_Primitive_Name : Node_Id; - Direct_Statements : constant List_Id := New_List; + Proc : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => Make_TSS_Name (RAS_Type, TSS_RAS_Dereference)); - Proc : Node_Id; Proc_Spec : Node_Id; - Param_Specs : constant List_Id := New_List; + Param_Specs : List_Id; Param_Assoc : constant List_Id := New_List; + Stmts : constant List_Id := New_List; - Pointer : Node_Id; - - Converted_Ras : Node_Id; - Target_Partition : Node_Id; - RPC_Receiver : Node_Id; - Subprogram_Id : Node_Id; - Asynchronous : Node_Id; + RAS_Parameter : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => New_Internal_Name ('P')); Is_Function : constant Boolean := Nkind (Type_Def) = N_Access_Function_Definition; + Is_Degenerate : Boolean; + -- Set to True if the subprogram_specification for this RAS has + -- an anonymous access parameter (see Process_Remote_AST_Declaration). + Spec : constant Node_Id := Type_Def; Current_Parameter : Node_Id; begin - -- The way to do it is test if the Ras field is non-null and then if - -- the Origin field is equal to the current partition ID (which is in - -- fact Current_Package'Partition_ID). If this is the case, then it - -- is safe to dereference the Ras field directly rather than - -- performing a remote call. + Param_Specs := New_List ( + Make_Parameter_Specification (Loc, + Defining_Identifier => RAS_Parameter, + In_Present => True, + Parameter_Type => + New_Occurrence_Of (Fat_Type, Loc))); - Pointer := - Make_Defining_Identifier (Loc, New_Internal_Name ('P')); + Is_Degenerate := False; + Current_Parameter := First (Parameter_Specifications (Type_Def)); + Parameters : while Current_Parameter /= Empty loop + if Nkind (Parameter_Type (Current_Parameter)) + = N_Access_Definition + then + Is_Degenerate := True; + end if; + Append_To (Param_Specs, + Make_Parameter_Specification (Loc, + Defining_Identifier => + Make_Defining_Identifier (Loc, + Chars => Chars (Defining_Identifier (Current_Parameter))), + In_Present => In_Present (Current_Parameter), + Out_Present => Out_Present (Current_Parameter), + Parameter_Type => + New_Copy_Tree (Parameter_Type (Current_Parameter)), + Expression => + New_Copy_Tree (Expression (Current_Parameter)))); + + Append_To (Param_Assoc, + Make_Identifier (Loc, + Chars => Chars (Defining_Identifier (Current_Parameter)))); - Target_Partition := - Make_Defining_Identifier (Loc, New_Internal_Name ('P')); + Next (Current_Parameter); + end loop Parameters; - Append_To (Proc_Decls, - Make_Object_Declaration (Loc, - Defining_Identifier => Target_Partition, - Constant_Present => True, - Object_Definition => - New_Occurrence_Of (RTE (RE_Partition_ID), Loc), - Expression => - Unchecked_Convert_To (RTE (RE_Partition_ID), - Make_Selected_Component (Loc, - Prefix => - New_Occurrence_Of (Pointer, Loc), - Selector_Name => - Make_Identifier (Loc, Name_Origin))))); - - RPC_Receiver := - Make_Selected_Component (Loc, - Prefix => - New_Occurrence_Of (Pointer, Loc), - Selector_Name => - Make_Identifier (Loc, Name_Receiver)); - - Subprogram_Id := - Unchecked_Convert_To (RTE (RE_Subprogram_Id), - Make_Selected_Component (Loc, - Prefix => - New_Occurrence_Of (Pointer, Loc), - Selector_Name => - Make_Identifier (Loc, Name_Subp_Id))); - - -- A function is never asynchronous. A procedure may or may not be - -- asynchronous depending on whether a pragma Asynchronous applies - -- on it. Since a RAST may point onto various subprograms, this is - -- only known at runtime so both versions (synchronous and asynchronous) - -- must be built every times it is not a function. + if Is_Degenerate then + Prepend_To (Param_Assoc, New_Occurrence_Of (RAS_Parameter, Loc)); - if Is_Function then - Asynchronous := Empty; + -- Generate a dummy body recursing on the Dereference TSS, since + -- actually it will never be executed. + + Append_To (Stmts, + Make_Raise_Program_Error (Loc, Reason => PE_Explicit_Raise)); + RACW_Primitive_Name := New_Occurrence_Of (Proc, Loc); else - Asynchronous := + Prepend_To (Param_Assoc, + Unchecked_Convert_To (RACW_Type, + New_Occurrence_Of (RAS_Parameter, Loc))); + + RACW_Primitive_Name := Make_Selected_Component (Loc, - Prefix => - New_Occurrence_Of (Pointer, Loc), + Prefix => + New_Occurrence_Of (Scope (RACW_Type), Loc), Selector_Name => - Make_Identifier (Loc, Name_Async)); - + Make_Identifier (Loc, Name_Call)); end if; - if Present (Parameter_Specifications (Type_Def)) then - Current_Parameter := First (Parameter_Specifications (Type_Def)); - - while Current_Parameter /= Empty loop - Append_To (Param_Specs, - Make_Parameter_Specification (Loc, - Defining_Identifier => - Make_Defining_Identifier (Loc, - Chars => - Chars (Defining_Identifier (Current_Parameter))), - In_Present => In_Present (Current_Parameter), - Out_Present => Out_Present (Current_Parameter), - Parameter_Type => - New_Copy_Tree (Parameter_Type (Current_Parameter)), - Expression => - New_Copy_Tree (Expression (Current_Parameter)))); - - Append_To (Param_Assoc, - Make_Identifier (Loc, - Chars => Chars (Defining_Identifier (Current_Parameter)))); + if Is_Function then + Append_To (Stmts, + Make_Return_Statement (Loc, + Expression => + Make_Function_Call (Loc, + Name => + RACW_Primitive_Name, + Parameter_Associations => Param_Assoc))); - Next (Current_Parameter); - end loop; + else + Append_To (Stmts, + Make_Procedure_Call_Statement (Loc, + Name => + RACW_Primitive_Name, + Parameter_Associations => Param_Assoc)); end if; - Proc := - Make_Defining_Identifier (Loc, - Chars => Make_TSS_Name (Ras_Type, TSS_RAS_Dereference)); + -- Build the complete subprogram. if Is_Function then Proc_Spec := @@ -1512,7 +1623,6 @@ package body Exp_Dist is Entity (Subtype_Mark (Spec)), Loc)); Set_Ekind (Proc, E_Function); - Set_Etype (Proc, New_Occurrence_Of (Entity (Subtype_Mark (Spec)), Loc)); @@ -1526,96 +1636,213 @@ package body Exp_Dist is Set_Etype (Proc, Standard_Void_Type); end if; - -- Build the calling stubs for the dereference of the RAS + Discard_Node ( + Make_Subprogram_Body (Loc, + Specification => Proc_Spec, + Declarations => New_List, + Handled_Statement_Sequence => + Make_Handled_Sequence_Of_Statements (Loc, + Statements => Stmts))); + + Set_TSS (Fat_Type, Proc); + end Add_RAS_Dereference_TSS; - Build_General_Calling_Stubs - (Decls => Inner_Decls, - Statements => Inner_Statements, - Target_Partition => Target_Partition, - RPC_Receiver => RPC_Receiver, - Subprogram_Id => Subprogram_Id, - Asynchronous => Asynchronous, - Is_Known_Non_Asynchronous => Is_Function, - Is_Function => Is_Function, - Spec => Proc_Spec, - Nod => N); - - Converted_Ras := - Unchecked_Convert_To (Ras_Type, - OK_Convert_To (RTE (RE_Address), - Make_Selected_Component (Loc, - Prefix => New_Occurrence_Of (Pointer, Loc), - Selector_Name => Make_Identifier (Loc, Name_Ras)))); + ------------------------------- + -- Add_RAS_Proxy_And_Analyze -- + ------------------------------- - if Is_Function then - Append_To (Direct_Statements, - Make_Return_Statement (Loc, - Expression => - Make_Function_Call (Loc, - Name => - Make_Explicit_Dereference (Loc, - Prefix => Converted_Ras), - Parameter_Associations => Param_Assoc))); + procedure Add_RAS_Proxy_And_Analyze + (Decls : List_Id; + Vis_Decl : Node_Id; + All_Calls_Remote_E : Entity_Id; + Proxy_Object_Addr : out Entity_Id) + is + Loc : constant Source_Ptr := Sloc (Vis_Decl); - else - Append_To (Direct_Statements, + Subp_Name : constant Entity_Id := + Defining_Unit_Name (Specification (Vis_Decl)); + + Pkg_Name : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => + New_External_Name (Chars (Subp_Name), 'P', -1)); + + Proxy_Type : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars => + New_External_Name ( + Related_Id => Chars (Subp_Name), + Suffix => 'P')); + + Proxy_Type_Full_View : constant Entity_Id := + Make_Defining_Identifier (Loc, + Chars (Proxy_Type)); + + Subp_Decl_Spec : constant Node_Id := + Build_RAS_Primitive_Specification + (Subp_Spec => Specification (Vis_Decl), + Remote_Object_Type => Proxy_Type); + + Subp_Body_Spec : constant Node_Id := + Build_RAS_Primitive_Specification + (Subp_Spec => Specification (Vis_Decl), + Remote_Object_Type => Proxy_Type); + + Vis_Decls : constant List_Id := New_List; + Pvt_Decls : constant List_Id := New_List; + Actuals : constant List_Id := New_List; + Formal : Node_Id; + Perform_Call : Node_Id; + + begin + -- type subpP is tagged limited private; + + Append_To (Vis_Decls, + Make_Private_Type_Declaration (Loc, + Defining_Identifier => Proxy_Type, + Tagged_Present => True, + Limited_Present => True)); + + -- [subprogram] Call + -- (Self : access subpP; + -- ...other-formals...) + -- [return T]; + + Append_To (Vis_Decls, + Make_Subprogram_Declaration (Loc, + Specification => Subp_Decl_Spec)); + + -- A : constant System.Address; + + Proxy_Object_Addr := Make_Defining_Identifier (Loc, Name_uA); + + Append_To (Vis_Decls, + Make_Object_Declaration (Loc, + Defining_Identifier => + Proxy_Object_Addr, + Constant_Present => + True, + Object_Definition => + New_Occurrence_Of (RTE (RE_Address), Loc))); + + -- private + + -- type subpP is tagged limited record + -- All_Calls_Remote : Boolean := [All_Calls_Remote?]; + -- ... + -- end record; + + Append_To (Pvt_Decls, + Make_Full_Type_Declaration (Loc, + Defining_Identifier => + Proxy_Type_Full_View, + Type_Definition => + Build_Remote_Subprogram_Proxy_Type (Loc, + New_Occurrence_Of (All_Calls_Remote_E, Loc)))); + + -- Trick semantic analysis into swapping the public and + -- full view when freezing the public view. + + Set_Comes_From_Source (Proxy_Type_Full_View, True); + + + -- procedure Call + -- (Self : access O; + -- ...other-formals...) is + -- begin + -- P (...other-formals...); + -- end Call; + + -- function Call + -- (Self : access O; + -- ...other-formals...) + -- return T is + -- begin + -- return F (...other-formals...); + -- end Call; + + if Nkind (Subp_Decl_Spec) = N_Procedure_Specification then + Perform_Call := Make_Procedure_Call_Statement (Loc, - Name => - Make_Explicit_Dereference (Loc, - Prefix => Converted_Ras), - Parameter_Associations => Param_Assoc)); + Name => + New_Occurrence_Of (Subp_Name, Loc), + Parameter_Associations => + Actuals); + else + Perform_Call := + Make_Return_Statement (Loc, + Expression => + Make_Function_Call (Loc, + Name => + New_Occurrence_Of (Subp_Name, Loc), + Parameter_Associations => + Actuals)); end if; - Prepend_To (Param_Specs, - Make_Parameter_Specification (Loc, - Defining_Identifier => Pointer, - In_Present => True, - Parameter_Type => - New_Occurrence_Of (Fat_Type, Loc))); + Formal := First (Parameter_Specifications (Subp_Decl_Spec)); + pragma Assert (Present (Formal)); + Next (Formal); - Append_To (Proc_Statements, - Make_Implicit_If_Statement (N, - Condition => - Make_And_Then (Loc, - Left_Opnd => - Make_Op_Ne (Loc, - Left_Opnd => - Make_Selected_Component (Loc, - Prefix => New_Occurrence_Of (Pointer, Loc), - Selector_Name => Make_Identifier (Loc, Name_Ras)), - Right_Opnd => - Make_Integer_Literal (Loc, Uint_0)), + while Present (Formal) loop + Append_To (Actuals, New_Occurrence_Of ( + Defining_Identifier (Formal), Loc)); + Next (Formal); + end loop; - Right_Opnd => - Make_Op_Eq (Loc, - Left_Opnd => - New_Occurrence_Of (Target_Partition, Loc), - Right_Opnd => - Make_Function_Call (Loc, - New_Occurrence_Of ( - RTE (RE_Get_Local_Partition_Id), Loc)))), + -- O : aliased subpP; - Then_Statements => - Direct_Statements, + Append_To (Pvt_Decls, + Make_Object_Declaration (Loc, + Defining_Identifier => + Make_Defining_Identifier (Loc, + Name_uO), + Aliased_Present => + True, + Object_Definition => + New_Occurrence_Of (Proxy_Type, Loc))); - Else_Statements => New_List ( - Make_Block_Statement (Loc, - Declarations => Inner_Decls, - Handled_Statement_Sequence => - Make_Handled_Sequence_Of_Statements (Loc, - Statements => Inner_Statements))))); + -- A : constant System.Address := O'Address; - Discard_Node ( - Make_Subprogram_Body (Loc, - Specification => Proc_Spec, - Declarations => Proc_Decls, - Handled_Statement_Sequence => - Make_Handled_Sequence_Of_Statements (Loc, - Statements => Proc_Statements))); + Append_To (Pvt_Decls, + Make_Object_Declaration (Loc, + Defining_Identifier => + Make_Defining_Identifier (Loc, + Chars (Proxy_Object_Addr)), + Constant_Present => + True, + Object_Definition => + New_Occurrence_Of (RTE (RE_Address), Loc), + Expression => + Make_Attribute_Reference (Loc, + Prefix => New_Occurrence_Of ( + Defining_Identifier (Last (Pvt_Decls)), Loc), + Attribute_Name => + Name_Address))); - Set_TSS (Fat_Type, Defining_Unit_Name (Proc_Spec)); + Append_To (Decls, + Make_Package_Declaration (Loc, + Specification => Make_Package_Specification (Loc, + Defining_Unit_Name => Pkg_Name, + Visible_Declarations => Vis_Decls, + Private_Declarations => Pvt_Decls, + End_Label => Empty))); + Analyze (Last (Decls)); - end Add_RAS_Dereference_Attribute; + Append_To (Decls, + Make_Package_Body (Loc, + Defining_Unit_Name => + Make_Defining_Identifier (Loc, + Chars (Pkg_Name)), + Declarations => New_List ( + Make_Subprogram_Body (Loc, + Specification => + Subp_Body_Spec, + Declarations => New_List, + Handled_Statement_Sequence => + Make_Handled_Sequence_Of_Statements (Loc, + Statements => New_List (Perform_Call)))))); + Analyze (Last (Decls)); + end Add_RAS_Proxy_And_Analyze; ----------------------- -- Add_RAST_Features -- @@ -1633,8 +1860,8 @@ package body Exp_Dist is return; end if; - Add_RAS_Dereference_Attribute (Vis_Decl); - Add_RAS_Access_Attribute (Vis_Decl); + Add_RAS_Dereference_TSS (Vis_Decl); + Add_RAS_Access_TSS (Vis_Decl); end Add_RAST_Features; ----------------------------------------- @@ -1642,8 +1869,8 @@ package body Exp_Dist is ----------------------------------------- procedure Add_Receiving_Stubs_To_Declarations - (Pkg_Spec : in Node_Id; - Decls : in List_Id) + (Pkg_Spec : Node_Id; + Decls : List_Id) is Loc : constant Source_Ptr := Sloc (Pkg_Spec); @@ -1658,20 +1885,78 @@ package body Exp_Dist is Pkg_RPC_Receiver_Body : Node_Id; -- A Pkg_RPC_Receiver is built to decode the request - Subp_Id : Node_Id; + Lookup_RAS_Info : constant Entity_Id := + Make_Defining_Identifier (Loc, New_Internal_Name ('R')); + -- A remote subprogram is created to allow peers to look up + -- RAS information using subprogram ids. + + Subp_Id : Node_Id; -- Subprogram_Id as read from the incoming stream Current_Declaration : Node_Id; - Current_Subprogram_Number : Int := 0; + Current_Subprogram_Number : Int := First_RCI_Subprogram_Id; Current_Stubs : Node_Id; - Actuals : List_Id; + Subp_Info_Array : constant Entity_Id := + Make_Defining_Identifier (Loc, New_Internal_Name ('I')); + + Subp_Info_List : constant List_Id := New_List; Dummy_Register_Name : Name_Id; Dummy_Register_Spec : Node_Id; Dummy_Register_Decl : Node_Id; Dummy_Register_Body : Node_Id; + All_Calls_Remote_E : Entity_Id; + Proxy_Object_Addr : Entity_Id; + + procedure Append_Stubs_To + (RPC_Receiver_Cases : List_Id; + Declaration : Node_Id; + Stubs : Node_Id; + Subprogram_Number : Int); + -- Add one case to the specified RPC receiver case list + -- associating Subprogram_Number with the subprogram declared + -- by Declaration, for which we have receiving stubs in Stubs. + + procedure Append_Stubs_To + (RPC_Receiver_Cases : List_Id; + Declaration : Node_Id; + Stubs : Node_Id; + Subprogram_Number : Int) + is + Actuals : constant List_Id := + New_List (New_Occurrence_Of (Stream_Parameter, Loc)); + begin + if Nkind (Specification (Declaration)) = N_Function_Specification + or else not + Is_Asynchronous (Defining_Entity (Specification (Declaration))) + then + -- An asynchronous procedure does not want an output parameter + -- since no result and no exception will ever be returned. + + Append_To (Actuals, + New_Occurrence_Of (Result_Parameter, Loc)); + end if; + + Append_To (RPC_Receiver_Cases, + Make_Case_Statement_Alternative (Loc, + Discrete_Choices => + New_List ( + Make_Integer_Literal (Loc, Subprogram_Number)), + + Statements => + New_List ( + Make_Procedure_Call_Statement (Loc, + Name => + New_Occurrence_Of ( + Defining_Entity (Stubs), Loc), + Parameter_Associations => + Actuals)))); + end Append_Stubs_To; + + -- Start of processing for Add_Receiving_Stubs_To_Declarations + begin -- Building receiving stubs consist in several operations: @@ -1724,14 +2009,78 @@ package body Exp_Dist is New_Occurrence_Of (Stream_Parameter, Loc), New_Occurrence_Of (Subp_Id, Loc)))); + -- A null subp_id denotes a call through a RAS, in which case the + -- next Uint_64 element in the stream is the address of the local + -- proxy object, from which we can retrieve the actual subprogram id. + + Append_To (Pkg_RPC_Receiver_Statements, + Make_Implicit_If_Statement (Pkg_Spec, + Condition => + Make_Op_Eq (Loc, + New_Occurrence_Of (Subp_Id, Loc), + Make_Integer_Literal (Loc, 0)), + Then_Statements => New_List ( + Make_Assignment_Statement (Loc, + Name => + New_Occurrence_Of (Subp_Id, Loc), + Expression => + Make_Selected_Component (Loc, + Prefix => + Unchecked_Convert_To (RTE (RE_RAS_Proxy_Type_Access), + OK_Convert_To (RTE (RE_Address), + Make_Attribute_Reference (Loc, + Prefix => + New_Occurrence_Of (RTE (RE_Unsigned_64), Loc), + Attribute_Name => + Name_Input, + Expressions => New_List ( + New_Occurrence_Of (Stream_Parameter, Loc))))), + Selector_Name => + Make_Identifier (Loc, Name_Subp_Id)))))); + + All_Calls_Remote_E := Boolean_Literals ( + Has_All_Calls_Remote (Defining_Entity (Pkg_Spec))); + + -- Build a subprogram for RAS information lookups + + Current_Declaration := + Make_Subprogram_Declaration (Loc, + Specification => + Make_Function_Specification (Loc, + Defining_Unit_Name => + Lookup_RAS_Info, + Parameter_Specifications => New_List ( + Make_Parameter_Specification (Loc, + Defining_Identifier => + Make_Defining_Identifier (Loc, Name_Subp_Id), + In_Present => + True, + Parameter_Type => + New_Occurrence_Of (RTE (RE_Subprogram_Id), Loc))), + Subtype_Mark => + New_Occurrence_Of (RTE (RE_Unsigned_64), Loc))); + Append_To (Decls, Current_Declaration); + Analyze (Current_Declaration); + + Current_Stubs := Build_Subprogram_Receiving_Stubs + (Vis_Decl => Current_Declaration, + Asynchronous => False); + Append_To (Decls, Current_Stubs); + Analyze (Current_Stubs); + + Append_Stubs_To (Pkg_RPC_Receiver_Cases, + Declaration => + Current_Declaration, + Stubs => + Current_Stubs, + Subprogram_Number => 1); + -- For each subprogram, the receiving stub will be built and a -- case statement will be made on the Subprogram_Id to dispatch -- to the right subprogram. Current_Declaration := First (Visible_Declarations (Pkg_Spec)); - while Current_Declaration /= Empty loop - if Nkind (Current_Declaration) = N_Subprogram_Declaration and then Comes_From_Source (Current_Declaration) then @@ -1739,6 +2088,8 @@ package body Exp_Dist is Get_Subprogram_Id (Defining_Unit_Name (Specification ( Current_Declaration)))); + -- Build receiving stub + Current_Stubs := Build_Subprogram_Receiving_Stubs (Vis_Decl => Current_Declaration, @@ -1750,40 +2101,44 @@ package body Exp_Dist is (Current_Declaration)))); Append_To (Decls, Current_Stubs); - Analyze (Current_Stubs); - Actuals := New_List (New_Occurrence_Of (Stream_Parameter, Loc)); - - if Nkind (Specification (Current_Declaration)) - = N_Function_Specification - or else - not Is_Asynchronous ( - Defining_Entity (Specification (Current_Declaration))) - then - -- An asynchronous procedure does not want an output parameter - -- since no result and no exception will ever be returned. - - Append_To (Actuals, - New_Occurrence_Of (Result_Parameter, Loc)); - - end if; - - Append_To (Pkg_RPC_Receiver_Cases, - Make_Case_Statement_Alternative (Loc, - Discrete_Choices => - New_List ( - Make_Integer_Literal (Loc, Current_Subprogram_Number)), - - Statements => - New_List ( - Make_Procedure_Call_Statement (Loc, - Name => - New_Occurrence_Of ( - Defining_Entity (Current_Stubs), Loc), - Parameter_Associations => - Actuals)))); - + -- Build RAS proxy + + Add_RAS_Proxy_And_Analyze (Decls, + Vis_Decl => + Current_Declaration, + All_Calls_Remote_E => + All_Calls_Remote_E, + Proxy_Object_Addr => + Proxy_Object_Addr); + + -- Add subprogram descriptor (RCI_Subp_Info) to the + -- subprograms table for this receiver. The aggregate + -- below must be kept consistent with the declaration + -- of type RCI_Subp_Info in System.Partition_Interface. + + Append_To (Subp_Info_List, + Make_Component_Association (Loc, + Choices => New_List ( + Make_Integer_Literal (Loc, + Current_Subprogram_Number)), + Expression => + Make_Aggregate (Loc, + Component_Associations => New_List ( + Make_Component_Association (Loc, + Choices => New_List ( + Make_Identifier (Loc, Name_Addr)), + Expression => + New_Occurrence_Of (Proxy_Object_Addr, Loc)))))); + + Append_Stubs_To (Pkg_RPC_Receiver_Cases, + Declaration => + Current_Declaration, + Stubs => + Current_Stubs, + Subprogram_Number => + Current_Subprogram_Number); Current_Subprogram_Number := Current_Subprogram_Number + 1; end if; @@ -1811,6 +2166,53 @@ package body Exp_Dist is New_Occurrence_Of (Subp_Id, Loc), Alternatives => Pkg_RPC_Receiver_Cases)); + Append_To (Decls, + Make_Object_Declaration (Loc, + Defining_Identifier => Subp_Info_Array, + Constant_Present => True, + Aliased_Present => True, + Object_Definition => + Make_Subtype_Indication (Loc, + Subtype_Mark => + New_Occurrence_Of (RTE (RE_RCI_Subp_Info_Array), Loc), + Constraint => + Make_Index_Or_Discriminant_Constraint (Loc, + New_List ( + Make_Range (Loc, + Low_Bound => Make_Integer_Literal (Loc, + First_RCI_Subprogram_Id), + High_Bound => + Make_Integer_Literal (Loc, + First_RCI_Subprogram_Id + + List_Length (Subp_Info_List) - 1))))), + Expression => + Make_Aggregate (Loc, + Component_Associations => Subp_Info_List))); + Analyze (Last (Decls)); + + Append_To (Decls, + Make_Subprogram_Body (Loc, + Specification => + Copy_Specification (Loc, Parent (Lookup_RAS_Info)), + Declarations => + No_List, + Handled_Statement_Sequence => + Make_Handled_Sequence_Of_Statements (Loc, + Statements => New_List ( + Make_Return_Statement (Loc, + Expression => OK_Convert_To (RTE (RE_Unsigned_64), + Make_Selected_Component (Loc, + Prefix => + Make_Indexed_Component (Loc, + Prefix => + New_Occurrence_Of (Subp_Info_Array, Loc), + Expressions => New_List ( + Convert_To (Standard_Integer, + Make_Identifier (Loc, Name_Subp_Id)))), + Selector_Name => + Make_Identifier (Loc, Name_Addr)))))))); + Analyze (Last (Decls)); + Pkg_RPC_Receiver_Body := Make_Subprogram_Body (Loc, Specification => Pkg_RPC_Receiver_Spec, @@ -1867,7 +2269,17 @@ package body Exp_Dist is Prefix => New_Occurrence_Of (Defining_Entity (Pkg_Spec), Loc), Attribute_Name => - Name_Version)))))); + Name_Version), + Make_Attribute_Reference (Loc, + Prefix => + New_Occurrence_Of (Subp_Info_Array, Loc), + Attribute_Name => + Name_Address), + Make_Attribute_Reference (Loc, + Prefix => + New_Occurrence_Of (Subp_Info_Array, Loc), + Attribute_Name => + Name_Length)))))); Append_To (Decls, Dummy_Register_Body); Analyze (Dummy_Register_Body); @@ -1878,9 +2290,9 @@ package body Exp_Dist is ------------------- procedure Add_Stub_Type - (Designated_Type : in Entity_Id; - RACW_Type : in Entity_Id; - Decls : in List_Id; + (Designated_Type : Entity_Id; + RACW_Type : Entity_Id; + Decls : List_Id; Stub_Type : out Entity_Id; Stub_Type_Access : out Entity_Id; Object_RPC_Receiver : out Entity_Id; @@ -1992,6 +2404,7 @@ package body Exp_Dist is Defining_Identifier => Stub_Type_Access, Type_Definition => Make_Access_To_Object_Definition (Loc, + All_Present => True, Subtype_Indication => New_Occurrence_Of (Stub_Type, Loc))); Append_To (Decls, Stub_Type_Access_Declaration); @@ -2152,19 +2565,16 @@ package body Exp_Dist is Subprogram_Id))); Current_Parameter := First (Ordered_Parameters_List); - while Current_Parameter /= Empty loop - declare Typ : constant Node_Id := - Parameter_Type (Current_Parameter); + Parameter_Type (Current_Parameter); Etyp : Entity_Id; Constrained : Boolean; Value : Node_Id; Extra_Parameter : Entity_Id; begin - if Is_RACW_Controlling_Formal (Current_Parameter, Object_Type) then -- In the case of a controlling formal argument, we marshall @@ -2370,19 +2780,18 @@ package body Exp_Dist is -- have changed since they are remote, so we do not read them -- from the stream. - Current_Parameter := - First (Ordered_Parameters_List); - + Current_Parameter := First (Ordered_Parameters_List); while Current_Parameter /= Empty loop - declare Typ : constant Node_Id := - Parameter_Type (Current_Parameter); + Parameter_Type (Current_Parameter); Etyp : Entity_Id; Value : Node_Id; + begin - Value := New_Occurrence_Of - (Defining_Identifier (Current_Parameter), Loc); + Value := + New_Occurrence_Of + (Defining_Identifier (Current_Parameter), Loc); if Nkind (Typ) = N_Access_Definition then Value := Make_Explicit_Dereference (Loc, Value); @@ -2392,7 +2801,7 @@ package body Exp_Dist is end if; if (Out_Present (Current_Parameter) - or else Nkind (Typ) = N_Access_Definition) + or else Nkind (Typ) = N_Access_Definition) and then Etyp /= Object_Type then Append_To (Non_Asynchronous_Statements, @@ -2434,6 +2843,7 @@ package body Exp_Dist is Prefix => New_Occurrence_Of (Stream_Parameter, Loc), Attribute_Name => Name_Access), New_Occurrence_Of (Standard_True, Loc)))); + Prepend_To (Non_Asynchronous_Statements, Make_Attribute_Reference (Loc, Prefix => New_Occurrence_Of (Standard_Boolean, Loc), @@ -2443,6 +2853,7 @@ package body Exp_Dist is Prefix => New_Occurrence_Of (Stream_Parameter, Loc), Attribute_Name => Name_Access), New_Occurrence_Of (Standard_False, Loc)))); + Append_To (Statements, Make_Implicit_If_Statement (Nod, Condition => Asynchronous, @@ -2451,6 +2862,86 @@ package body Exp_Dist is end if; end Build_General_Calling_Stubs; + ------------------------------ + -- Build_Get_Unique_RP_Call -- + ------------------------------ + + function Build_Get_Unique_RP_Call + (Loc : Source_Ptr; + Pointer : Entity_Id; + Stub_Type : Entity_Id) return List_Id + is + begin + return New_List ( + Make_Procedure_Call_Statement (Loc, + Name => + New_Occurrence_Of (RTE (RE_Get_Unique_Remote_Pointer), Loc), + Parameter_Associations => New_List ( + Unchecked_Convert_To (RTE (RE_RACW_Stub_Type_Access), + New_Occurrence_Of (Pointer, Loc)))), + + Make_Assignment_Statement (Loc, + Name => + Make_Selected_Component (Loc, + Prefix => + New_Occurrence_Of (Pointer, Loc), + Selector_Name => + New_Occurrence_Of (Tag_Component + (Designated_Type (Etype (Pointer))), Loc)), + Expression => + Make_Attribute_Reference (Loc, + Prefix => + New_Occurrence_Of (Stub_Type, Loc), + Attribute_Name => + Name_Tag))); + + -- Note: The assignment to Pointer._Tag is safe here because + -- we carefully ensured that Stub_Type has exactly the same layout + -- as System.Partition_Interface.RACW_Stub_Type. + + end Build_Get_Unique_RP_Call; + + ---------------------------------------- + -- Build_Remote_Subprogram_Proxy_Type -- + ---------------------------------------- + + function Build_Remote_Subprogram_Proxy_Type + (Loc : Source_Ptr; + ACR_Expression : Node_Id) return Node_Id + is + begin + return + Make_Record_Definition (Loc, + Tagged_Present => True, + Limited_Present => True, + Component_List => + Make_Component_List (Loc, + + Component_Items => New_List ( + Make_Component_Declaration (Loc, + Make_Defining_Identifier (Loc, + Name_All_Calls_Remote), + Make_Component_Definition (Loc, + Subtype_Indication => + New_Occurrence_Of (Standard_Boolean, Loc)), + ACR_Expression), + + Make_Component_Declaration (Loc, + Make_Defining_Identifier (Loc, + Name_Receiver), + Make_Component_Definition (Loc, + Subtype_Indication => + New_Occurrence_Of (RTE (RE_Address), Loc)), + New_Occurrence_Of (RTE (RE_Null_Address), Loc)), + + Make_Component_Declaration (Loc, + Make_Defining_Identifier (Loc, + Name_Subp_Id), + Make_Component_Definition (Loc, + Subtype_Indication => + New_Occurrence_Of (RTE (RE_Subprogram_Id), Loc)))))); + end Build_Remote_Subprogram_Proxy_Type; + ----------------------------------- -- Build_Ordered_Parameters_List -- ----------------------------------- @@ -2460,6 +2951,9 @@ package body Exp_Dist is Unconstrained_List : List_Id; Current_Parameter : Node_Id; + First_Parameter : Node_Id; + For_RAS : Boolean := False; + begin if not Present (Parameter_Specifications (Spec)) then return New_List; @@ -2467,17 +2961,24 @@ package body Exp_Dist is Constrained_List := New_List; Unconstrained_List := New_List; + First_Parameter := First (Parameter_Specifications (Spec)); + + if Nkind (Parameter_Type (First_Parameter)) = N_Access_Definition + and then Chars (Defining_Identifier (First_Parameter)) = Name_uS + then + For_RAS := True; + end if; -- Loop through the parameters and add them to the right list - Current_Parameter := First (Parameter_Specifications (Spec)); + Current_Parameter := First_Parameter; while Current_Parameter /= Empty loop - - if Nkind (Parameter_Type (Current_Parameter)) = N_Access_Definition + if (Nkind (Parameter_Type (Current_Parameter)) = N_Access_Definition or else - Is_Constrained (Etype (Parameter_Type (Current_Parameter))) + Is_Constrained (Etype (Parameter_Type (Current_Parameter))) or else - Is_Elementary_Type (Etype (Parameter_Type (Current_Parameter))) + Is_Elementary_Type (Etype (Parameter_Type (Current_Parameter)))) + and then not (For_RAS and then Current_Parameter = First_Parameter) then Append_To (Constrained_List, New_Copy (Current_Parameter)); else @@ -2492,7 +2993,6 @@ package body Exp_Dist is Append_List_To (Unconstrained_List, Constrained_List); return Unconstrained_List; - end Build_Ordered_Parameters_List; ---------------------------------- @@ -2512,7 +3012,6 @@ package body Exp_Dist is declare Dist_OK : Entity_Id; pragma Warnings (Off, Dist_OK); - begin Dist_OK := RTE (RE_Params_Stream_Type); end; @@ -2549,8 +3048,7 @@ package body Exp_Dist is function Build_RPC_Receiver_Specification (RPC_Receiver : Entity_Id; Stream_Parameter : Entity_Id; - Result_Parameter : Entity_Id) - return Node_Id + Result_Parameter : Entity_Id) return Node_Id is Loc : constant Source_Ptr := Sloc (RPC_Receiver); @@ -2586,8 +3084,7 @@ package body Exp_Dist is Dynamically_Asynchronous : Boolean := False; Stub_Type : Entity_Id := Empty; Locator : Entity_Id := Empty; - New_Name : Name_Id := No_Name) - return Node_Id + New_Name : Name_Id := No_Name) return Node_Id is Loc : constant Source_Ptr := Sloc (Vis_Decl); @@ -2609,7 +3106,7 @@ package body Exp_Dist is Spec_To_Use : Node_Id; - procedure Insert_Partition_Check (Parameter : in Node_Id); + procedure Insert_Partition_Check (Parameter : Node_Id); -- Check that the parameter has been elaborated on the same partition -- than the controlling parameter (E.4(19)). @@ -2617,7 +3114,7 @@ package body Exp_Dist is -- Insert_Partition_Check -- ---------------------------- - procedure Insert_Partition_Check (Parameter : in Node_Id) is + procedure Insert_Partition_Check (Parameter : Node_Id) is Parameter_Entity : constant Entity_Id := Defining_Identifier (Parameter); Condition : Node_Id; @@ -2633,7 +3130,7 @@ package body Exp_Dist is -- then -- raise Constraint_Error; -- end if; - -- + -- Condition contains the reversed condition. Also, Parameter is -- dereferenced if it is an access type. We do not check that -- Parameter is in Stub_Type since such a check has been inserted @@ -2827,8 +3324,7 @@ package body Exp_Dist is Dynamically_Asynchronous : Boolean := False; Stub_Type : Entity_Id := Empty; RACW_Type : Entity_Id := Empty; - Parent_Primitive : Entity_Id := Empty) - return Node_Id + Parent_Primitive : Entity_Id := Empty) return Node_Id is Loc : constant Source_Ptr := Sloc (Vis_Decl); @@ -2935,6 +3431,7 @@ package body Exp_Dist is declare Etyp : Entity_Id; + RACW_Controlling : Boolean; Constrained : Boolean; Object : Entity_Id; Expr : Node_Id := Empty; @@ -2943,9 +3440,11 @@ package body Exp_Dist is Object := Make_Defining_Identifier (Loc, New_Internal_Name ('P')); Set_Ekind (Object, E_Variable); - if - Is_RACW_Controlling_Formal (Current_Parameter, Stub_Type) - then + RACW_Controlling := + Is_RACW_Controlling_Formal (Current_Parameter, Stub_Type); + + if RACW_Controlling then + -- We have a controlling formal parameter. Read its address -- rather than a real object. The address is in Unsigned_64 -- form. @@ -2959,8 +3458,9 @@ package body Exp_Dist is Is_Constrained (Etyp) or else Is_Elementary_Type (Etyp); if In_Present (Current_Parameter) - or else not Out_Present (Current_Parameter) - or else not Constrained + or else not Out_Present (Current_Parameter) + or else not Constrained + or else RACW_Controlling then -- If an input parameter is contrained, then its reading is -- deferred until the beginning of the subprogram body. If @@ -2968,7 +3468,7 @@ package body Exp_Dist is -- the object declaration and the variable is set using -- 'Input instead of 'Read. - if Constrained then + if Constrained and then not RACW_Controlling then Append_To (Statements, Make_Attribute_Reference (Loc, Prefix => New_Occurrence_Of (Etyp, Loc), @@ -3024,7 +3524,6 @@ package body Exp_Dist is if Is_RACW_Controlling_Formal (Current_Parameter, Stub_Type) then - if Nkind (Parameter_Type (Current_Parameter)) /= N_Access_Definition then @@ -3038,6 +3537,7 @@ package body Exp_Dist is Unchecked_Convert_To (RACW_Type, OK_Convert_To (RTE (RE_Address), New_Occurrence_Of (Object, Loc)))))); + else Append_To (Parameter_List, Make_Parameter_Association (Loc, @@ -3049,6 +3549,7 @@ package body Exp_Dist is OK_Convert_To (RTE (RE_Address), New_Occurrence_Of (Object, Loc))))); end if; + else Append_To (Parameter_List, Make_Parameter_Association (Loc, @@ -3178,7 +3679,6 @@ package body Exp_Dist is Parameter_Associations => Parameter_List)); Append_List_To (Statements, After_Statements); - end if; if Asynchronous and then not Dynamically_Asynchronous then @@ -3266,7 +3766,6 @@ package body Exp_Dist is Make_Handled_Sequence_Of_Statements (Loc, Statements => Statements, Exception_Handlers => New_List (Excep_Handler))); - end Build_Subprogram_Receiving_Stubs; ------------------------ @@ -3278,14 +3777,14 @@ package body Exp_Dist is Spec : Node_Id; Object_Type : Entity_Id := Empty; Stub_Type : Entity_Id := Empty; - New_Name : Name_Id := No_Name) - return Node_Id + New_Name : Name_Id := No_Name) return Node_Id is Parameters : List_Id := No_List; - Current_Parameter : Node_Id; - Current_Type : Node_Id; - Current_Etype : Entity_Id; + Current_Parameter : Node_Id; + Current_Identifier : Entity_Id; + Current_Type : Node_Id; + Current_Etype : Entity_Id; Name_For_New_Spec : Name_Id; @@ -3293,34 +3792,35 @@ package body Exp_Dist is begin if New_Name = No_Name then + pragma Assert (Nkind (Spec) = N_Function_Specification + or else Nkind (Spec) = N_Procedure_Specification); + Name_For_New_Spec := Chars (Defining_Unit_Name (Spec)); else Name_For_New_Spec := New_Name; end if; if Present (Parameter_Specifications (Spec)) then - Parameters := New_List; Current_Parameter := First (Parameter_Specifications (Spec)); - while Current_Parameter /= Empty loop - - Current_Type := Parameter_Type (Current_Parameter); + Current_Identifier := Defining_Identifier (Current_Parameter); + Current_Type := Parameter_Type (Current_Parameter); if Nkind (Current_Type) = N_Access_Definition then Current_Etype := Entity (Subtype_Mark (Current_Type)); - if Object_Type = Empty then + if Present (Object_Type) then + pragma Assert ( + Root_Type (Current_Etype) = Root_Type (Object_Type)); Current_Type := Make_Access_Definition (Loc, - Subtype_Mark => - New_Occurrence_Of (Current_Etype, Loc)); + Subtype_Mark => New_Occurrence_Of (Stub_Type, Loc)); else - pragma Assert - (Root_Type (Current_Etype) = Root_Type (Object_Type)); Current_Type := Make_Access_Definition (Loc, - Subtype_Mark => New_Occurrence_Of (Stub_Type, Loc)); + Subtype_Mark => + New_Occurrence_Of (Current_Etype, Loc)); end if; else @@ -3336,7 +3836,7 @@ package body Exp_Dist is end if; New_Identifier := Make_Defining_Identifier (Loc, - Chars (Defining_Identifier (Current_Parameter))); + Chars (Current_Identifier)); Append_To (Parameters, Make_Parameter_Specification (Loc, @@ -3351,25 +3851,29 @@ package body Exp_Dist is end loop; end if; - if Nkind (Spec) = N_Function_Specification then - return - Make_Function_Specification (Loc, - Defining_Unit_Name => - Make_Defining_Identifier (Loc, - Chars => Name_For_New_Spec), - Parameter_Specifications => Parameters, - Subtype_Mark => - New_Occurrence_Of (Entity (Subtype_Mark (Spec)), Loc)); + case Nkind (Spec) is - else - return - Make_Procedure_Specification (Loc, - Defining_Unit_Name => - Make_Defining_Identifier (Loc, - Chars => Name_For_New_Spec), - Parameter_Specifications => Parameters); - end if; + when N_Function_Specification | N_Access_Function_Definition => + return + Make_Function_Specification (Loc, + Defining_Unit_Name => + Make_Defining_Identifier (Loc, + Chars => Name_For_New_Spec), + Parameter_Specifications => Parameters, + Subtype_Mark => + New_Occurrence_Of (Entity (Subtype_Mark (Spec)), Loc)); + + when N_Procedure_Specification | N_Access_Procedure_Definition => + return + Make_Procedure_Specification (Loc, + Defining_Unit_Name => + Make_Defining_Identifier (Loc, + Chars => Name_For_New_Spec), + Parameter_Specifications => Parameters); + when others => + raise Program_Error; + end case; end Copy_Specification; --------------------------- @@ -3398,7 +3902,7 @@ package body Exp_Dist is -- Expand_All_Calls_Remote_Subprogram_Call -- --------------------------------------------- - procedure Expand_All_Calls_Remote_Subprogram_Call (N : in Node_Id) is + procedure Expand_All_Calls_Remote_Subprogram_Call (N : Node_Id) is Called_Subprogram : constant Entity_Id := Entity (Name (N)); RCI_Package : constant Entity_Id := Scope (Called_Subprogram); Loc : constant Source_Ptr := Sloc (N); @@ -3468,7 +3972,7 @@ package body Exp_Dist is -- Expand_Calling_Stubs_Bodies -- --------------------------------- - procedure Expand_Calling_Stubs_Bodies (Unit_Node : in Node_Id) is + procedure Expand_Calling_Stubs_Bodies (Unit_Node : Node_Id) is Spec : constant Node_Id := Specification (Unit_Node); Decls : constant List_Id := Visible_Declarations (Spec); @@ -3483,7 +3987,7 @@ package body Exp_Dist is -- Expand_Receiving_Stubs_Bodies -- ----------------------------------- - procedure Expand_Receiving_Stubs_Bodies (Unit_Node : in Node_Id) is + procedure Expand_Receiving_Stubs_Bodies (Unit_Node : Node_Id) is Spec : Node_Id; Decls : List_Id; Temp : List_Id; @@ -3543,7 +4047,7 @@ package body Exp_Dist is function Get_Subprogram_Id (E : Entity_Id) return Int is Current_Declaration : Node_Id; - Result : Int := 0; + Result : Int := First_RCI_Subprogram_Id; begin pragma Assert @@ -3698,8 +4202,7 @@ package body Exp_Dist is (Loc : Source_Ptr; Stream : Node_Id; Object : Entity_Id; - Etyp : Entity_Id := Empty) - return Node_Id + Etyp : Entity_Id := Empty) return Node_Id is Typ : Entity_Id; @@ -3725,8 +4228,7 @@ package body Exp_Dist is (Loc : Source_Ptr; Stream : Entity_Id; Object : Node_Id; - Etyp : Entity_Id) - return Node_Id + Etyp : Entity_Id) return Node_Id is Write_Attribute : Name_Id := Name_Write; @@ -3754,8 +4256,7 @@ package body Exp_Dist is (Loc : Source_Ptr; Stream : Node_Id; Object : Node_Id; - Etyp : Entity_Id) - return Node_Id + Etyp : Entity_Id) return Node_Id is Write_Attribute : Name_Id := Name_Write; @@ -3777,10 +4278,9 @@ package body Exp_Dist is -- RACW_Type_Is_Asynchronous -- ------------------------------- - procedure RACW_Type_Is_Asynchronous (RACW_Type : in Entity_Id) is + procedure RACW_Type_Is_Asynchronous (RACW_Type : Entity_Id) is N : constant Node_Id := Asynchronous_Flags_Table.Get (RACW_Type); pragma Assert (N /= Empty); - begin Replace (N, New_Occurrence_Of (Standard_True, Sloc (N))); end RACW_Type_Is_Asynchronous; @@ -3791,8 +4291,7 @@ package body Exp_Dist is function RCI_Package_Locator (Loc : Source_Ptr; - Package_Spec : Node_Id) - return Node_Id + Package_Spec : Node_Id) return Node_Id is Inst : constant Node_Id := Make_Package_Instantiation (Loc, @@ -3819,7 +4318,7 @@ package body Exp_Dist is ----------------------------------------------- procedure Remote_Types_Tagged_Full_View_Encountered - (Full_View : in Entity_Id) + (Full_View : Entity_Id) is Stub_Elements : constant Stub_Structure := Stubs_Table.Get (Full_View); @@ -3848,4 +4347,26 @@ package body Exp_Dist is return Unit_Name; end Scope_Of_Spec; + -------------------------- + -- Underlying_RACW_Type -- + -------------------------- + + function Underlying_RACW_Type (RAS_Typ : Entity_Id) return Entity_Id is + Record_Type : Entity_Id; + + begin + if Ekind (RAS_Typ) = E_Record_Type then + Record_Type := RAS_Typ; + else + pragma Assert (Present (Equivalent_Type (RAS_Typ))); + Record_Type := Equivalent_Type (RAS_Typ); + end if; + + return + Etype (Subtype_Indication ( + Component_Definition ( + First (Component_Items (Component_List ( + Type_Definition (Declaration_Node (Record_Type)))))))); + end Underlying_RACW_Type; + end Exp_Dist; diff --git a/gcc/ada/exp_dist.ads b/gcc/ada/exp_dist.ads index 10cbc60bdb4..7d11ce34c0f 100644 --- a/gcc/ada/exp_dist.ads +++ b/gcc/ada/exp_dist.ads @@ -83,4 +83,21 @@ package Exp_Dist is E : Entity_Id) return Node_Id; -- Build a literal representing the remote subprogram identifier of E + function Copy_Specification + (Loc : Source_Ptr; + Spec : Node_Id; + Object_Type : Entity_Id := Empty; + Stub_Type : Entity_Id := Empty; + New_Name : Name_Id := No_Name) return Node_Id; + -- Build a subprogram specification from another one, or from + -- an access-to-subprogram definition. If Object_Type is not Empty + -- and any access to Object_Type is found, then it is replaced by an + -- access to Stub_Type. If New_Name is given, then it will be used as + -- the name for the newly created spec. + + function Underlying_RACW_Type + (RAS_Typ : Entity_Id) return Entity_Id; + -- Given a remote access-to-subprogram type or its equivalent + -- record type, return the RACW type generated to implement it. + end Exp_Dist; diff --git a/gcc/ada/exp_pakd.ads b/gcc/ada/exp_pakd.ads index 9c3044bddff..ac52ecb962b 100644 --- a/gcc/ada/exp_pakd.ads +++ b/gcc/ada/exp_pakd.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- 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- -- @@ -119,9 +119,9 @@ package Exp_Pakd is -- a packed array. There are two reasonable rules for deciding this: -- Store the first bit at right end (low order) word. This means - -- that the scaled subscript can be used directly as a right shift + -- that the scaled subscript can be used directly as a left shift -- count (if we put bit 0 at the left end, then we need an extra - -- subtract to compute the shift count. + -- subtract to compute the shift count). -- Layout the bits so that if the packed boolean array is overlaid on -- a record, using unchecked conversion, then bit 0 of the array is @@ -156,7 +156,7 @@ package Exp_Pakd is -- that a worthwhile price to pay for the consistency. -- One more important point arises in the case where we have a constrained - -- subtype of an unconstrained array. Take the case of 20-bits. For the + -- subtype of an unconstrained array. Take the case of 20 bits. For the -- unconstrained representation, we would use an array of bytes: -- Little-endian case diff --git a/gcc/ada/g-pehage.adb b/gcc/ada/g-pehage.adb index 91ec4182d7d..32eaf0d33a1 100644 --- a/gcc/ada/g-pehage.adb +++ b/gcc/ada/g-pehage.adb @@ -2,11 +2,11 @@ -- -- -- GNAT COMPILER COMPONENTS -- -- -- --- G N A T . P E R F E C T _ H A S H . G E N E R A T O R S -- +-- G N A T . P E R F E C T _ H A S H _ G E N E R A T O R S -- -- -- -- B o d y -- -- -- --- Copyright (C) 2002-2003 Ada Core Technologies, Inc. -- +-- Copyright (C) 2002-2004 Ada Core Technologies, 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- -- @@ -38,7 +38,7 @@ with GNAT.Heap_Sort_A; use GNAT.Heap_Sort_A; with GNAT.OS_Lib; use GNAT.OS_Lib; with GNAT.Table; -package body GNAT.Perfect_Hash.Generators is +package body GNAT.Perfect_Hash_Generators is -- We are using the algorithm of J. Czech as described in Zbigniew -- J. Czech, George Havas, and Bohdan S. Majewski ``An Optimal @@ -2397,4 +2397,4 @@ package body GNAT.Perfect_Hash.Generators is end case; end Value; -end GNAT.Perfect_Hash.Generators; +end GNAT.Perfect_Hash_Generators; diff --git a/gcc/ada/g-pehage.ads b/gcc/ada/g-pehage.ads index 3db2e70b71b..c5c36666cf9 100644 --- a/gcc/ada/g-pehage.ads +++ b/gcc/ada/g-pehage.ads @@ -2,11 +2,11 @@ -- -- -- GNAT COMPILER COMPONENTS -- -- -- --- G N A T . P E R F E C T _ H A S H . G E N E R A T O R S -- +-- G N A T . P E R F E C T _ H A S H _ G E N E R A T O R S -- -- -- -- S p e c -- -- -- --- Copyright (C) 2002 Ada Core Technologies, Inc. -- +-- Copyright (C) 2002-2004 Ada Core Technologies, 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- -- @@ -31,16 +31,45 @@ -- -- ------------------------------------------------------------------------------ --- This package provides a single generator of static minimal perfect --- hash functions. No collisions occur and each item can be retrieved --- from the table in one probe (perfect property). The hash table --- size corresponds to the exact size of W and *no larger* (minimal --- property). The key set has to be know in advance (static --- property). The hash functions are also order preservering. If w2 --- is inserted after w1 in the generator, then f (w1) < f (w2). These --- hashing functions are convenient for use with realtime applications. - -package GNAT.Perfect_Hash.Generators is +-- This package provides a generator of static minimal perfect hash +-- functions. To understand what a perfect hash function is, we +-- define several notions. These definitions are inspired from the +-- following paper: + +-- Zbigniew J. Czech, George Havas, and Bohdan S. Majewski ``An +-- Optimal Algorithm for Generating Minimal Perfect Hash Functions'', +-- Information Processing Letters, 43(1992) pp.257-264, Oct.1992 + +-- Let W be a set of m words. A hash function h is a function that +-- maps the set of words W into some given interval of integers +-- [0, k-1], where k is an integer, usually k >= m. h (w) where w +-- is a word computes an address or an integer from I for the +-- storage or the retrieval of that item. The storage area used to +-- store items is known as a hash table. Words for which the same +-- address is computed are called synonyms. Due to the existence +-- of synonyms a situation called collision may arise in which two +-- items w1 and w2 have the same address. Several schemes for +-- resolving known. A perfect hash function is an injection from +-- the word set W to the integer interval I with k >= m. If k = m, +-- then h is a minimal perfect hash function. A hash function is +-- order preserving if it puts entries into the hash table in a +-- prespecified order. + +-- A minimal perfect hash function is defined by two properties: + +-- Since no collisions occur each item can be retrieved from the +-- table in *one* probe. This represents the "perfect" property. + +-- The hash table size corresponds to the exact size of W and +-- *no larger*. This represents the "minimal" property. + +-- The functions generated by this package require the key set to +-- be known in advance (they are "static" hash functions). +-- The hash functions are also order preservering. If w2 is inserted +-- after w1 in the generator, then f (w1) < f (w2). These hashing +-- functions are convenient for use with realtime applications. + +package GNAT.Perfect_Hash_Generators is Default_K_To_V : constant Float := 2.05; -- Default ratio for the algorithm. When K is the number of keys, @@ -57,7 +86,8 @@ package GNAT.Perfect_Hash.Generators is Default_Optimization : constant Optimization := CPU_Time; -- Optimize either the memory space or the execution time. - Verbose : Boolean := False; + Verbose : Boolean := False; + -- Comment required ??? procedure Initialize (Seed : Natural; @@ -183,4 +213,4 @@ package GNAT.Perfect_Hash.Generators is -- Return the value of the component (I, J) of the table -- Name. When the table has only one dimension, J is ignored. -end GNAT.Perfect_Hash.Generators; +end GNAT.Perfect_Hash_Generators; diff --git a/gcc/ada/g-perhas.ads b/gcc/ada/g-perhas.ads deleted file mode 100644 index 92a899cf600..00000000000 --- a/gcc/ada/g-perhas.ads +++ /dev/null @@ -1,67 +0,0 @@ ------------------------------------------------------------------------------- --- -- --- GNAT COMPILER COMPONENTS -- --- -- --- G N A T . P E R F E C T _ H A S H -- --- -- --- S p e c -- --- -- --- Copyright (C) 2002-2003 Ada Core Technologies, 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- -- --- ware Foundation; either version 2, or (at your option) any later ver- -- --- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- --- OUT 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 distributed with GNAT; see file COPYING. If not, write -- --- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, -- --- MA 02111-1307, USA. -- --- -- --- As a special exception, if other files instantiate generics from this -- --- unit, or you link this unit with other files to produce an executable, -- --- this unit 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 Public License. -- --- -- --- GNAT was originally developed by the GNAT team at New York University. -- --- Extensive contributions were provided by Ada Core Technologies Inc. -- --- -- ------------------------------------------------------------------------------- - -package GNAT.Perfect_Hash is -pragma Pure (Perfect_Hash); - - -- The packages in this hierarchy implement perfect hash - -- functions. To understand what a perfect hash function is, we - -- define several notions. These definitions are inspired from the - -- following paper: - -- - -- Zbigniew J. Czech, George Havas, and Bohdan S. Majewski ``An - -- Optimal Algorithm for Generating Minimal Perfect Hash Functions'', - -- Information Processing Letters, 43(1992) pp.257-264, Oct.1992 - -- - -- Let W be a set of m words. A hash function h is a function that - -- maps the set of words W into some given interval of integers - -- [0, k-1], where k is an integer, usually k >= m. h (w) where w - -- is a word computes an address or an integer from I for the - -- storage or the retrieval of that item. The storage area used to - -- store items is known as a hash table. Words for which the same - -- address is computed are called synonyms. Due to the existence - -- of synonyms a situation called collision may arise in which two - -- items w1 and w2 have the same address. Several schemes for - -- resolving known. A perfect hash function is an injection from - -- the word set W to the integer interval I with k >= m. If k = m, - -- then h is a minimal perfect hash function. A hash function is - -- order preserving if it puts entries into the hash table in a - -- prespecified order. - -- - -- A minimal perfect hash function is defined by two properties: - -- * Since no collisions occur each item can be retrieved from the - -- table in *one* probe. This represents the "perfect" property. - -- * The hash table size corresponds to the exact size of W and - -- *no larger*. This represents the "minimal" property. - -end GNAT.Perfect_Hash; diff --git a/gcc/ada/g-trasym.ads b/gcc/ada/g-trasym.ads index aa899d93179..dc7b6dbe7c3 100644 --- a/gcc/ada/g-trasym.ads +++ b/gcc/ada/g-trasym.ads @@ -52,8 +52,8 @@ -- On all platforms except VMS, this package is not intended to be used -- within a shared library, symbolic tracebacks are only supported for the --- main executable and not for shared libraries. --- You should consider using gdb to obtain symbolic traceback in such cases. +-- main executable and not for shared libraries. You should consider using +-- gdb to obtain symbolic traceback in such cases. -- On VMS, there is no restriction on using this facility with shared -- libraries. However, the OS should be at least v7.3-1 and OS patch diff --git a/gcc/ada/gigi.h b/gcc/ada/gigi.h index 8d0917435d6..233c22be5ed 100644 --- a/gcc/ada/gigi.h +++ b/gcc/ada/gigi.h @@ -114,6 +114,22 @@ extern tree maybe_variable (tree); position so that it is aligned to ALIGN bits and is SIZE bytes long. */ extern tree make_aligning_type (tree, int, tree); +/* Ensure that TYPE has SIZE and ALIGN. Make and return a new padded type + if needed. We have already verified that SIZE and TYPE are large enough. + + GNAT_ENTITY and NAME_TRAILER are used to name the resulting record and + to issue a warning. + + IS_USER_TYPE is true if we must be sure we complete the original type. + + DEFINITION is true if this type is being defined. + + SAME_RM_SIZE is true if the RM_Size of the resulting type is to be + set to its TYPE_SIZE; otherwise, it's set to the RM_Size of the original + type. */ +extern tree maybe_pad_type (tree, tree, unsigned int, Entity_Id, + const char *, bool, bool, bool); + /* Given a GNU tree and a GNAT list of choices, generate an expression to test the value passed against the list of choices. */ extern tree choices_to_gnu (tree, Node_Id); @@ -446,8 +462,10 @@ extern void finish_record_type (tree, tree, bool, bool); RETURNS_UNCONSTRAINED is true if the function returns an unconstrained object. RETURNS_BY_REF is true if the function returns by reference. RETURNS_WITH_DSP is true if the function is to return with a - depressed stack pointer. */ -extern tree create_subprog_type (tree, tree, tree, bool, bool, bool); + depressed stack pointer. RETURNS_BY_TARGET_PTR is true if the function + is to be passed (as its first parameter) the address of the place to copy + its result. */ +extern tree create_subprog_type (tree, tree, tree, bool, bool, bool, bool); /* Return a copy of TYPE, but safe to modify in any way. */ extern tree copy_type (tree); diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi index 82c390ab34f..08a668317b2 100644 --- a/gcc/ada/gnat_rm.texi +++ b/gcc/ada/gnat_rm.texi @@ -117,6 +117,7 @@ Implementation Defined Pragmas * Pragma CPP_Virtual:: * Pragma CPP_Vtable:: * Pragma Debug:: +* Pragma Detect_Blocking:: * Pragma Elaboration_Checks:: * Pragma Eliminate:: * Pragma Export_Exception:: @@ -308,7 +309,7 @@ The GNAT Library * GNAT.Memory_Dump (g-memdum.ads):: * GNAT.Most_Recent_Exception (g-moreex.ads):: * GNAT.OS_Lib (g-os_lib.ads):: -* GNAT.Perfect_Hash.Generators (g-pehage.ads):: +* GNAT.Perfect_Hash_Generators (g-pehage.ads):: * GNAT.Regexp (g-regexp.ads):: * GNAT.Registry (g-regist.ads):: * GNAT.Regpat (g-regpat.ads):: @@ -632,6 +633,7 @@ consideration, the use of these pragmas should be minimized. * Pragma CPP_Virtual:: * Pragma CPP_Vtable:: * Pragma Debug:: +* Pragma Detect_Blocking:: * Pragma Elaboration_Checks:: * Pragma Eliminate:: * Pragma Export_Exception:: @@ -1330,6 +1332,21 @@ with a terminating semicolon. Pragmas are permitted in sequences of declarations, so you can use pragma @code{Debug} to intersperse calls to debug procedures in the middle of declarations. +@node Pragma Detect_Blocking +@unnumberedsec Pragma Detect_Blocking +@findex Detect_Blocking +@noindent +Syntax: + +@smallexample @c ada +pragma Detect_Blocking; +@end smallexample + +@noindent +This is a configuration pragma that forces the detection of potentially +blocking operations within a protected operation, and to raise Program_Error +if that happens. + @node Pragma Elaboration_Checks @unnumberedsec Pragma Elaboration_Checks @cindex Elaboration control @@ -11495,7 +11512,7 @@ of GNAT, and will generate a warning message. * GNAT.Memory_Dump (g-memdum.ads):: * GNAT.Most_Recent_Exception (g-moreex.ads):: * GNAT.OS_Lib (g-os_lib.ads):: -* GNAT.Perfect_Hash.Generators (g-pehage.ads):: +* GNAT.Perfect_Hash_Generators (g-pehage.ads):: * GNAT.Regexp (g-regexp.ads):: * GNAT.Registry (g-regist.ads):: * GNAT.Regpat (g-regpat.ads):: @@ -12137,9 +12154,9 @@ including time/date management, file operations, subprocess management, including a portable spawn procedure, and access to environment variables and error return codes. -@node GNAT.Perfect_Hash.Generators (g-pehage.ads) -@section @code{GNAT.Perfect_Hash.Generators} (@file{g-pehage.ads}) -@cindex @code{GNAT.Perfect_Hash.Generators} (@file{g-pehage.ads}) +@node GNAT.Perfect_Hash_Generators (g-pehage.ads) +@section @code{GNAT.Perfect_Hash_Generators} (@file{g-pehage.ads}) +@cindex @code{GNAT.Perfect_Hash_Generators} (@file{g-pehage.ads}) @cindex Hash functions @noindent diff --git a/gcc/ada/gnat_ugn.texi b/gcc/ada/gnat_ugn.texi index b9617b4a1f6..c8da0d86467 100644 --- a/gcc/ada/gnat_ugn.texi +++ b/gcc/ada/gnat_ugn.texi @@ -98,8 +98,6 @@ @set FILE gnat_ugn_vms @end ifset - - @settitle @value{EDITION} User's Guide for Native Platforms / @value{PLATFORM} @dircategory GNU Ada tools @direntry @@ -149,7 +147,6 @@ A copy of the license is included in the section entitled @end titlepage - @ifnottex @node Top, About This Guide, (dir), (dir) @top @value{EDITION} User's Guide @@ -321,7 +318,6 @@ The GNAT Make Program gnatmake * How gnatmake Works:: * Examples of gnatmake Usage:: - Improving Performance * Performance Considerations:: * Reducing the Size of Ada Executables with gnatelim:: @@ -384,7 +380,6 @@ GNAT Project Manager * An Extended Example:: * Project File Complete Syntax:: - The Cross-Referencing Tools gnatxref and gnatfind * gnatxref Switches:: @@ -394,13 +389,11 @@ The Cross-Referencing Tools gnatxref and gnatfind * Examples of gnatxref Usage:: * Examples of gnatfind Usage:: - The GNAT Pretty-Printer gnatpp * Switches for gnatpp:: * Formatting Rules:: - File Name Krunching Using gnatkr * About gnatkr:: @@ -622,7 +615,6 @@ Microsoft Windows Topics * GNAT and COM/DCOM Objects:: @end ifset - * Index:: @end menu @end ifnottex @@ -649,8 +641,6 @@ For ease of exposition, ``GNAT Pro'' will be referred to simply as ``GNAT'' in the remainder of this document. @end ifset - - @menu * What This Guide Contains:: * What You Should Know before Reading This Guide:: @@ -729,7 +719,6 @@ way to navigate through sources. version of an Ada source file with control over casing, indentation, comment placement, and other elements of program presentation style. - @item @ref{File Name Krunching Using gnatkr}, describes the @code{gnatkr} file name krunching utility, used to handle shortened @@ -826,7 +815,6 @@ Microsoft Windows platform. @end ifset @end itemize - @c ************************************************* @node What You Should Know before Reading This Guide @c ************************************************* @@ -933,8 +921,6 @@ If you are using GNAT on a Windows platform, please note that the ``@code{\}'' character should be used instead. @end ifset - - @c **************************** @node Getting Started with GNAT @chapter Getting Started with GNAT @@ -991,7 +977,6 @@ All three steps are most commonly handled by using the @code{gnatmake} utility program that, given the name of the main program, automatically performs the necessary compilation, binding and linking steps. - @node Running a Simple Ada Program @section Running a Simple Ada Program @@ -1114,7 +1099,6 @@ Hello WORLD! @noindent appear in response to this command. - @c **************************************** @node Running a Program with Multiple Units @section Running a Program with Multiple Units @@ -1322,7 +1306,6 @@ startup menu). * Simple Debugging with GPS:: @end menu - @node Building a New Program with GPS @subsection Building a New Program with GPS @noindent @@ -1429,7 +1412,6 @@ Select @code{File}, then @code{Save As}, and enter the source file name The file will be saved in the same directory you specified as the location of the default project file. - @item @emph{Updating the project file} You need to add the new source file to the project. @@ -1463,8 +1445,6 @@ Close the GPS window (or select @code{File}, then @code{Exit}) to terminate this GPS session. @end enumerate - - @node Simple Debugging with GPS @subsection Simple Debugging with GPS @noindent @@ -1572,7 +1552,6 @@ Right click on @code{N}, select @code{Debug}, then select @code{Display N}. You will see information about @code{N} appear in the @code{Debugger Data} pane, showing the value as 5. - @item @emph{Assigning a new value to a variable} Right click on the @code{N} in the @code{Debugger Data} pane, and @@ -1608,7 +1587,6 @@ The console window will disappear. @end enumerate @end enumerate - @node Introduction to Glide and GVD @section Introduction to Glide and GVD @cindex Glide @@ -3483,7 +3461,6 @@ directory designated by the logical name @code{SYS$SCRATCH:} GNAT uses the current directory for temporary files. @end ifset - @c ************************* @node Compiling Using gcc @chapter Compiling Using @code{gcc} @@ -4122,7 +4099,6 @@ is equivalent to specifying the following sequence of switches: @end smallexample @end ifclear - @c NEED TO CHECK THIS FOR VMS @noindent @@ -4166,7 +4142,6 @@ as validity checking options (see description of @option{-gnatV}). @end ifclear @end itemize - @node Output and Error Message Control @subsection Output and Error Message Control @findex stderr @@ -4330,7 +4305,6 @@ List possible interpretations for ambiguous calls Additional details on incorrect parameters @end itemize - @item -gnatq @cindex @option{-gnatq} (@code{gcc}) @ifclear vms @@ -4374,7 +4348,6 @@ since ALI files are never generated if @option{-gnats} is set. @end table - @node Warning Message Control @subsection Warning Message Control @cindex Warning messages @@ -4467,7 +4440,6 @@ Mismatching bounds in an aggregate @item Attempt to return local value by reference - @item Premature instantiation of a generic body @@ -4528,7 +4500,6 @@ Useless exception handlers @item Accidental hiding of name by child unit - @item Access before elaboration detected at compile time @@ -4969,7 +4940,6 @@ When no switch @option{^-gnatw^/WARNINGS^} is used, this is equivalent to: @end table - @node Debugging and Assertion Control @subsection Debugging and Assertion Control @@ -5063,7 +5033,6 @@ indicate validity checks that are performed or not performed in addition to the default checks described above. @end ifset - @table @option @c !sort! @item -gnatVa @@ -5227,7 +5196,6 @@ See also the pragma @code{Validity_Checks} which allows modification of the validity checking mode at the program source level, and also allows for temporary disabling of validity checks. - @node Style Checking @subsection Style Checking @findex Style checking @@ -5781,7 +5749,6 @@ increase the amount of stack for the environment task, then this is an operating systems issue, and must be addressed with the appropriate operating systems commands. - @node Using gcc for Syntax Checking @subsection Using @code{gcc} for Syntax Checking @table @option @@ -5837,7 +5804,6 @@ together. This is primarily used by the @code{gnatchop} utility (@pxref{Renaming Files Using gnatchop}). @end table - @node Using gcc for Semantic Checking @subsection Using @code{gcc} for Semantic Checking @table @option @@ -6025,7 +5991,6 @@ to enable file name krunching. For the source file naming rules, @xref{File Naming Rules}. @end table - @node Subprogram Inlining Control @subsection Subprogram Inlining Control @@ -6415,7 +6380,6 @@ and communicates it to the compiler using this switch. @end table - @node Integrated Preprocessing @subsection Integrated Preprocessing @@ -6603,7 +6567,6 @@ are suitable for spawning with appropriate GNAT RTL routines. @end ifset - @node Search Paths and the Run-Time Library (RTL) @section Search Paths and the Run-Time Library (RTL) @@ -6717,7 +6680,6 @@ Besides simplifying access to the RTL, a major use of search paths is in compiling sources from multiple directories. This can make development environments much more flexible. - @node Order of Compilation Issues @section Order of Compilation Issues @@ -6827,7 +6789,6 @@ This information is output in the forms of comments in the generated program, to be read by the @code{gnatlink} utility used to link the Ada application. @end enumerate - @node Running gnatbind @section Running @code{gnatbind} @@ -6919,7 +6880,6 @@ The use of the @option{^-C^/BIND_FILE=C^} switch for both @code{gnatbind} and @code{gnatlink} will cause the program to be generated in C (and compiled using the gnu C compiler). - @node Switches for gnatbind @section Switches for @command{gnatbind} @@ -7173,7 +7133,6 @@ You may obtain this listing of switches by running @code{gnatbind} with no arguments. @end ifclear - @node Consistency-Checking Modes @subsection Consistency-Checking Modes @@ -7496,7 +7455,6 @@ a list of ALI files can be given, and the execution of the program consists of elaboration of these units in an appropriate order. @end table - @node Command-Line Access @section Command-Line Access @@ -7527,7 +7485,6 @@ required, your main program must set @code{gnat_argc} and @code{gnat_argv} from the @code{argc} and @code{argv} values passed to it. - @node Search Paths for gnatbind @section Search Paths for @code{gnatbind} @@ -7696,7 +7653,6 @@ the @code{adainit} and @code{adafinal} routines to be called before and after accessing the Ada units. @end table - @c ------------------------------------ @node Linking Using gnatlink @chapter Linking Using @code{gnatlink} @@ -8583,13 +8539,6 @@ if you want to specify library paths only. @item -@code{gnatmake} examines both an ALI file and its corresponding object file -for consistency. If an ALI is more recent than its corresponding object, -or if the object file is missing, the corresponding source will be recompiled. -Note that @code{gnatmake} expects an ALI and the corresponding object file -to be in the same directory. - -@item @code{gnatmake} will ignore any files whose ALI file is write-protected. This may conveniently be used to exclude standard libraries from consideration and in particular it means that the use of the @@ -8642,8 +8591,7 @@ approach and in particular to understand how it uses the results of previous compilations without incorrectly depending on them. First a definition: an object file is considered @dfn{up to date} if the -corresponding ALI file exists and its time stamp predates that of the -object file and if all the source files listed in the +corresponding ALI file exists and if all the source files listed in the dependency section of this ALI file have time stamps matching those in the ALI file. This means that neither the source file itself nor any files that it depends on have been modified, and hence there is no need @@ -8710,7 +8658,6 @@ listed by the binder. @code{gnatmake} will operate in quiet mode, not displaying commands it is executing. @end table - @c ************************* @node Improving Performance @chapter Improving Performance @@ -8730,7 +8677,6 @@ the size of program executables. @end menu @end ifnottex - @c ***************************** @node Performance Considerations @section Performance Considerations @@ -8935,7 +8881,6 @@ is generally discouraged with GNAT, since it often results in larger executables which run more slowly. See further discussion of this point in @pxref{Inlining of Subprograms}. - @node Debugging Optimized Code @subsection Debugging Optimized Code @cindex Debugging optimized code @@ -9064,7 +9009,6 @@ on the resulting executable, which removes both debugging information and global symbols. @end ifclear - @node Inlining of Subprograms @subsection Inlining of Subprograms @@ -9574,7 +9518,6 @@ the @file{gnat.adc} file. You should recompile your program from scratch after that, because you need a consistent @file{gnat.adc} file during the entire compilation. - @node Making Your Executables Smaller @subsection Making Your Executables Smaller @@ -9635,9 +9578,6 @@ $ gnatmake ^-f main_prog^/FORCE_COMPILE MAIN_PROG^ @end enumerate - - - @c ******************************** @node Renaming Files Using gnatchop @chapter Renaming Files Using @code{gnatchop} @@ -9682,7 +9622,6 @@ system, you can set up a procedure where you use @command{gnatchop} each time you compile, regarding the source files that it writes as temporary files that you throw away. - @node Operating gnatchop in Compilation Mode @section Operating gnatchop in Compilation Mode @@ -9997,6 +9936,7 @@ recognized by @code{GNAT}: Ada_95 C_Pass_By_Copy Component_Alignment + Detect_Blocking Discard_Names Elaboration_Checks Eliminate @@ -10333,7 +10273,6 @@ even in conjunction with one or several switches @option{^-D^/DIRS_FILE^}. Several Naming Patterns and one excluded pattern are used in this example. - @c ***************************************** @c * G N A T P r o j e c t M a n a g e r * @c ***************************************** @@ -10744,7 +10683,7 @@ invoking @command{gnatmake} (see @ref{gnatmake and Project Files}). @noindent By default, the executable file name corresponding to a main source is -deducted from the main source file name. Through the attributes +deduced from the main source file name. Through the attributes @code{Executable} and @code{Executable_Suffix} of package @code{Builder}, it is possible to change this default. In project @code{Debug} above, the executable file name @@ -12542,7 +12481,6 @@ All @file{ALI} files will also be copied from the object directory to the library directory. To build executables, @command{gnatmake} will use the library rather than the individual object files. - @c ********************************************** @c * Using Third-Party Libraries through Projects @c ********************************************** @@ -13730,7 +13668,6 @@ simple_name ::= @end smallexample - @node The Cross-Referencing Tools gnatxref and gnatfind @chapter The Cross-Referencing Tools @code{gnatxref} and @code{gnatfind} @findex gnatxref @@ -14426,7 +14363,6 @@ point to any character in the middle of the identifier. @end table - @c ********************************* @node The GNAT Pretty-Printer gnatpp @chapter The GNAT Pretty-Printer @command{gnatpp} @@ -14478,7 +14414,6 @@ allowed. The file name may contain path information; it does not have to follow the GNAT file naming rules @end itemize - @menu * Switches for gnatpp:: * Formatting Rules:: @@ -14540,7 +14475,6 @@ indicate the effect. * Other gnatpp Switches:: @end menu - @node Alignment Control @subsection Alignment Control @cindex Alignment control in @command{gnatpp} @@ -14581,7 +14515,6 @@ Align @code{=>} in associations The @option{^-A^/ALIGN^} switches are mutually compatible; any combination is allowed. - @node Casing Control @subsection Casing Control @cindex Casing control in @command{gnatpp} @@ -14676,7 +14609,6 @@ The @option{^-D-^/SPECIFIC_CASING^} and @option{^-D@var{file}^/DICTIONARY=@var{file}^} switches are mutually compatible. - @node Construct Layout Control @subsection Construct Layout Control @cindex Layout control in @command{gnatpp} @@ -14771,7 +14703,6 @@ indentation is set to 1 (in which case the default value for continuation line indentation is also 1) @end table - @node Other Formatting Options @subsection Other Formatting Options @@ -14831,7 +14762,6 @@ The same as the corresponding gcc switch @end table - @node Output File Control @subsection Output File Control @@ -14913,7 +14843,6 @@ Warning mode; a required layout in the result source. @end table - @node Formatting Rules @section Formatting Rules @@ -14929,7 +14858,6 @@ They provide the detailed descriptions of the switches shown above. * Name Casing:: @end menu - @node White Space and Empty Lines @subsection White Space and Empty Lines @@ -14963,7 +14891,6 @@ In order to preserve a visual separation between comment blocks, use an Likewise, if for some reason you wish to have a sequence of empty lines, use a sequence of empty comments instead. - @node Formatting Comments @subsection Formatting Comments @@ -15107,7 +15034,6 @@ comments may be reformatted in typical word processor style (that is, moving words between lines and putting as many words in a line as possible). - @node Construct Layout @subsection Construct Layout @@ -15185,7 +15111,6 @@ type q is record type q is end record; b : integer; end record; - Block : declare Block : A : Integer := 3; declare begin A : Integer := 3; @@ -15206,7 +15131,6 @@ A further difference between GNAT style layout and compact layout is that GNAT style layout inserts empty lines as separation for compound statements, return statements and bodies. - @node Name Casing @subsection Name Casing @@ -15399,8 +15323,6 @@ end Test; @end cartouche @end smallexample - - @c *********************************** @node File Name Krunching Using gnatkr @chapter File Name Krunching Using @code{gnatkr} @@ -16578,7 +16500,6 @@ library, by reordering the lines in the configuration files. In general, a library must be installed before the GNAT library if it redefines any part of it. - @node Using the library @subsection Using the library @@ -16646,7 +16567,6 @@ pragma Linker_Options ("-lmy_lib"); @end smallexample @end itemize - @node Stand-alone Ada Libraries @section Stand-alone Ada Libraries @cindex Stand-alone library, building, using @@ -16926,7 +16846,6 @@ gnat library. This Makefile contains its own documentation and in particular the set of instructions needed to rebuild a new library and to use it. - @node Using the GNU make Utility @chapter Using the GNU @code{make} Utility @findex make @@ -17218,7 +17137,6 @@ all: @end smallexample @end ifclear - @node Finding Memory Problems @chapter Finding Memory Problems @@ -17238,7 +17156,6 @@ access values (including ``dangling references''). * The GNAT Debug Pool Facility:: @end menu - @ifclear vms @node The gnatmem Tool @section The @command{gnatmem} Tool @@ -17581,7 +17498,6 @@ and #3 thanks to the more precise associated backtrace. @end ifclear - @node The GNAT Debug Pool Facility @section The GNAT Debug Pool Facility @findex Debug Pool @@ -17726,7 +17642,6 @@ Debug Pool info: High Water Mark: 8 @end smallexample - @node Creating Sample Bodies Using gnatstub @chapter Creating Sample Bodies Using @command{gnatstub} @findex gnatstub @@ -17903,7 +17818,6 @@ Verbose mode: generate version information. @end table - @node Other Utility Programs @chapter Other Utility Programs @@ -18098,7 +18012,6 @@ For more information, please refer to the online documentation available in the @code{Glide} @result{} @code{Help} menu. @end ifclear - @node Converting Ada Files to html with gnathtml @section Converting Ada Files to HTML with @code{gnathtml} @@ -18389,7 +18302,6 @@ The simplest command is simply @code{run}, which causes the program to run exactly as if the debugger were not present. The following section describes some of the additional commands that can be given to @code{GDB}. - @c ******************************* @node Introduction to GDB Commands @section Introduction to GDB Commands @@ -19189,7 +19101,6 @@ You can then get further information by invoking the @code{addr2line} tool as described earlier (note that the hexadecimal addresses need to be specified in C format, with a leading ``0x''). - @node Symbolic Traceback @subsection Symbolic Traceback @cindex traceback, symbolic @@ -20893,7 +20804,6 @@ and GNAT systems. @end ifset - @c ************************************** @node Platform-Specific Information for the Run-Time Libraries @appendix Platform-Specific Information for the Run-Time Libraries @@ -20957,11 +20867,9 @@ information about several specific platforms. * AIX-Specific Considerations:: @end menu - @node Summary of Run-Time Configurations @section Summary of Run-Time Configurations - @multitable @columnfractions .30 .70 @item @b{alpha-openvms} @item @code{@ @ }@i{rts-native (default)} @@ -21021,8 +20929,6 @@ information about several specific platforms. @* @end multitable - - @node Specifying a Run-Time Library @section Specifying a Run-Time Library @@ -21196,7 +21102,6 @@ you find that the improved efficiency of FSU threads is significant to you. Note also that to take full advantage of Florist and Glade, it is highly recommended that you use native threads. - @node Choosing the Scheduling Policy @section Choosing the Scheduling Policy @@ -21235,8 +21140,6 @@ you should use @code{pragma Time_Slice} with a value greater than @code{0.0}, or else use the corresponding @option{-T} binder option. - - @node Solaris-Specific Considerations @section Solaris-Specific Considerations @cindex Solaris Sparc threads libraries @@ -21251,7 +21154,6 @@ debugging 64-bit applications. * Building and Debugging 64-bit Applications:: @end menu - @node Solaris Threads Issues @subsection Solaris Threads Issues @@ -21305,7 +21207,6 @@ Run the program on the specified processor. (where @code{_SC_NPROCESSORS_CONF} is a system variable). @end table - @node Building and Debugging 64-bit Applications @subsection Building and Debugging 64-bit Applications @@ -21329,8 +21230,6 @@ amounts to: $ gdb64 hello @end smallexample - - @node IRIX-Specific Considerations @section IRIX-Specific Considerations @cindex IRIX thread library @@ -21351,7 +21250,6 @@ See the @cite{GNAT Reference Manual} for further information. The @emph{n32 ABI} compiler comes with a run-time library based on the kernel POSIX threads and thus does not have the limitations mentioned above. - @node Linux-Specific Considerations @section Linux-Specific Considerations @cindex Linux threads libraries @@ -21395,7 +21293,6 @@ This Appendix displays the source code for @command{gnatbind}'s output file generated for a simple ``Hello World'' program. Comments have been added for clarification purposes. - @smallexample @c adanocomment @iftex @leftskip=0cm @@ -22111,7 +22008,6 @@ and trace the elaboration routine for this package to find out where the problem might be (more usually of course you would be debugging elaboration code in your own application). - @node Elaboration Order Handling in GNAT @appendix Elaboration Order Handling in GNAT @cindex Order of elaboration @@ -23967,7 +23863,6 @@ difference, by looking at the two elaboration orders that are chosen, and figuring out which is correct, and then adding the necessary @code{Elaborate_All} pragmas to ensure the desired order. - @node Inline Assembler @appendix Inline Assembler @@ -25578,8 +25473,6 @@ end Intel_CPU; @c END OF INLINE ASSEMBLER CHAPTER @c =============================== - - @c *********************************** @c * Compatibility and Porting Guide * @c *********************************** @@ -25784,7 +25677,6 @@ include @code{pragma Interface} and the floating point type attributes (@code{Emax}, @code{Mantissa}, etc.), among other items. @end table - @node Implementation-dependent characteristics @section Implementation-dependent characteristics @noindent @@ -25805,7 +25697,6 @@ transition from certain Ada 83 compilers. * Target-specific aspects:: @end menu - @node Implementation-defined pragmas @subsection Implementation-defined pragmas @@ -25903,7 +25794,6 @@ incompatible with typical Ada 83 compiler practices regarding implicit packing, the meaning of the Size attribute, and the size of access values. GNAT's approach to these issues is described in @ref{Representation Clauses}. - @node Compatibility with Other Ada 95 Systems @section Compatibility with Other Ada 95 Systems @@ -26104,8 +25994,6 @@ attributes are recognized, although only a subset of them can sensibly be implemented. The description of pragmas in this reference manual indicates whether or not they are applicable to non-VMS systems. - - @ifset unw @node Microsoft Windows Topics @appendix Microsoft Windows Topics @@ -27878,7 +27766,6 @@ This section is temporarily left blank. @end ifset - @c ********************************** @c * GNU Free Documentation License * @c ********************************** diff --git a/gcc/ada/gnatbind.adb b/gcc/ada/gnatbind.adb index 6d5595e7264..48c23f07eb8 100644 --- a/gcc/ada/gnatbind.adb +++ b/gcc/ada/gnatbind.adb @@ -605,7 +605,7 @@ begin Error_Msg ("?may result in missing run-time elaboration checks"); Error_Msg - ("?use -gnatE, pragma Suppress (Elaboration_Checks) instead"); + ("?use -gnatE, pragma Suppress (Elaboration_Check) instead"); end if; -- Quit if some file needs compiling diff --git a/gcc/ada/gnatdll.adb b/gcc/ada/gnatdll.adb index 74c004b5958..10249b313dd 100644 --- a/gcc/ada/gnatdll.adb +++ b/gcc/ada/gnatdll.adb @@ -2,11 +2,11 @@ -- -- -- GNAT COMPILER COMPONENTS -- -- -- --- G N A T D L L -- +-- G N A T D L L -- -- -- -- B o d y -- -- -- --- Copyright (C) 1997-2002, Free Software Foundation, Inc. -- +-- Copyright (C) 1997-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- -- @@ -27,25 +27,20 @@ -- GNATDLL is a Windows specific tool for building a DLL. -- Both relocatable and non-relocatable DLL's are supported -with Ada.Text_IO; -with Ada.Strings.Unbounded; -with Ada.Exceptions; -with Ada.Command_Line; -with GNAT.OS_Lib; -with GNAT.Command_Line; +with Ada.Text_IO; use Ada.Text_IO; +with Ada.Strings.Unbounded; use Ada.Strings.Unbounded; +with Ada.Exceptions; use Ada.Exceptions; +with Ada.Command_Line; use Ada.Command_Line; +with GNAT.OS_Lib; use GNAT.OS_Lib; +with GNAT.Command_Line; use GNAT.Command_Line; with Gnatvsn; -with MDLL.Fil; -with MDLL.Utl; +with MDLL.Fil; use MDLL.Fil; +with MDLL.Utl; use MDLL.Utl; procedure Gnatdll is - use GNAT; - use Ada; - use MDLL; - use Ada.Strings.Unbounded; - - use type OS_Lib.Argument_List; + use type GNAT.OS_Lib.Argument_List; procedure Syntax; -- Print out usage @@ -59,7 +54,7 @@ procedure Gnatdll is procedure Check_Context; -- Check the context before runing any commands to build the library - Syntax_Error : exception; + Syntax_Error : exception; -- Raised when a syntax error is detected, in this case a usage info will -- be displayed. @@ -76,31 +71,33 @@ procedure Gnatdll is Default_DLL_Address : constant String := "0x11000000"; -- Default address for non relocatable DLL (Win32) - Lib_Filename : Unbounded_String := Null_Unbounded_String; + Lib_Filename : Unbounded_String := Null_Unbounded_String; -- The DLL filename that will be created (.dll) - Def_Filename : Unbounded_String := Null_Unbounded_String; + Def_Filename : Unbounded_String := Null_Unbounded_String; -- The definition filename (.def) - List_Filename : Unbounded_String := Null_Unbounded_String; + List_Filename : Unbounded_String := Null_Unbounded_String; -- The name of the file containing the objects file to put into the DLL - DLL_Address : Unbounded_String := - To_Unbounded_String (Default_DLL_Address); + DLL_Address : Unbounded_String := To_Unbounded_String (Default_DLL_Address); -- The DLL's base address - Objects_Files : Argument_List_Access := Null_Argument_List_Access; + Gen_Map_File : Boolean := False; + -- Set to True if a map file is to be generated + + Objects_Files : Argument_List_Access := MDLL.Null_Argument_List_Access; -- List of objects to put inside the library - Ali_Files : Argument_List_Access := Null_Argument_List_Access; + Ali_Files : Argument_List_Access := MDLL.Null_Argument_List_Access; -- For each Ada file specified, we keep arecord of the corresponding -- ALI file. This list of SLI files is used to build the binder program. - Options : Argument_List_Access := Null_Argument_List_Access; - -- A list of options set in the command line. + Options : Argument_List_Access := MDLL.Null_Argument_List_Access; + -- A list of options set in the command line - Largs_Options : Argument_List_Access := Null_Argument_List_Access; - Bargs_Options : Argument_List_Access := Null_Argument_List_Access; + Largs_Options : Argument_List_Access := MDLL.Null_Argument_List_Access; + Bargs_Options : Argument_List_Access := MDLL.Null_Argument_List_Access; -- GNAT linker and binder args options type Build_Mode_State is (Import_Lib, Dynamic_Lib, Dynamic_Lib_Only, Nil); @@ -109,8 +106,8 @@ procedure Gnatdll is -- Dynamic_Lib_Only means that only the DLL will be created (no import -- library). - Build_Mode : Build_Mode_State := Nil; - -- Will be set when parsing the command line. + Build_Mode : Build_Mode_State := Nil; + -- Will be set when parsing the command line Must_Build_Relocatable : Boolean := True; -- True means build a relocatable DLL, will be set to False if a @@ -121,10 +118,7 @@ procedure Gnatdll is ------------ procedure Syntax is - use Text_IO; - - procedure P (Str : in String) renames Text_IO.Put_Line; - + procedure P (Str : String) renames Put_Line; begin P ("Usage : gnatdll [options] [list-of-files]"); New_Line; @@ -148,6 +142,7 @@ procedure Gnatdll is P (" -a[addr] Build non-relocatable DLL at address "); P (" if is not specified use " & Default_DLL_Address); + P (" -m Generate map file"); P (" -n No-import - do not create the import library"); P (" -bargs opts opts are passed to the binder"); P (" -largs opts opts are passed to the linker"); @@ -159,9 +154,9 @@ procedure Gnatdll is procedure Check (Filename : in String) is begin - if not OS_Lib.Is_Regular_File (Filename) then - Exceptions.Raise_Exception (Context_Error'Identity, - "Error: " & Filename & " not found."); + if not Is_Regular_File (Filename) then + Raise_Exception + (Context_Error'Identity, "Error: " & Filename & " not found."); end if; end Check; @@ -186,29 +181,29 @@ procedure Gnatdll is -- No, a better choice would be to use tables ??? -- Limits on what??? - Ofiles : OS_Lib.Argument_List (1 .. Max_Files); + Ofiles : Argument_List (1 .. Max_Files); O : Positive := Ofiles'First; -- List of object files to put in the library. O is the next entry -- to be used. - Afiles : OS_Lib.Argument_List (1 .. Max_Files); + Afiles : Argument_List (1 .. Max_Files); A : Positive := Afiles'First; - -- List of ALI files. A is the next entry to be used. + -- List of ALI files. A is the next entry to be used - Gopts : OS_Lib.Argument_List (1 .. Max_Options); + Gopts : Argument_List (1 .. Max_Options); G : Positive := Gopts'First; - -- List of gcc options. G is the next entry to be used. + -- List of gcc options. G is the next entry to be used - Lopts : OS_Lib.Argument_List (1 .. Max_Options); + Lopts : Argument_List (1 .. Max_Options); L : Positive := Lopts'First; -- A list of -largs options (L is next entry to be used) - Bopts : OS_Lib.Argument_List (1 .. Max_Options); + Bopts : Argument_List (1 .. Max_Options); B : Positive := Bopts'First; -- A list of -bargs options (B is next entry to be used) Build_Import : Boolean := True; - -- Set to Fals if option -n if specified (no-import). + -- Set to Fals if option -n if specified (no-import) -------------- -- Add_File -- @@ -216,7 +211,7 @@ procedure Gnatdll is procedure Add_File (Filename : in String) is begin - if Fil.Is_Ali (Filename) then + if Is_Ali (Filename) then Check (Filename); @@ -226,7 +221,7 @@ procedure Gnatdll is Afiles (A) := new String'(Filename); A := A + 1; - elsif Fil.Is_Obj (Filename) then + elsif Is_Obj (Filename) then Check (Filename); @@ -238,7 +233,7 @@ procedure Gnatdll is else -- Unknown file type - Exceptions.Raise_Exception + Raise_Exception (Syntax_Error'Identity, "don't know what to do with " & Filename & " !"); end if; @@ -249,19 +244,19 @@ procedure Gnatdll is ------------------------- procedure Add_Files_From_List (List_Filename : in String) is - File : Text_IO.File_Type; + File : File_Type; Buffer : String (1 .. 500); Last : Natural; begin - Text_IO.Open (File, Text_IO.In_File, List_Filename); + Open (File, In_File, List_Filename); - while not Text_IO.End_Of_File (File) loop - Text_IO.Get_Line (File, Buffer, Last); + while not End_Of_File (File) loop + Get_Line (File, Buffer, Last); Add_File (Buffer (1 .. Last)); end loop; - Text_IO.Close (File); + Close (File); end Add_Files_From_List; -- Start of processing for Parse_Command_Line @@ -272,7 +267,7 @@ procedure Gnatdll is -- scan gnatdll switches loop - case Getopt ("g h v q k a? b: d: e: l: n I:") is + case Getopt ("g h v q k a? b: d: e: l: n m I:") is when ASCII.Nul => exit; @@ -290,7 +285,7 @@ procedure Gnatdll is MDLL.Verbose := True; if MDLL.Quiet then - Exceptions.Raise_Exception + Raise_Exception (Syntax_Error'Identity, "impossible to use -q and -v together."); end if; @@ -301,7 +296,7 @@ procedure Gnatdll is MDLL.Quiet := True; if MDLL.Verbose then - Exceptions.Raise_Exception + Raise_Exception (Syntax_Error'Identity, "impossible to use -v and -q together."); end if; @@ -343,11 +338,15 @@ procedure Gnatdll is if Def_Filename = Null_Unbounded_String then Def_Filename := To_Unbounded_String - (Fil.Ext_To (Parameter, "def")); + (Ext_To (Parameter, "def")); end if; Build_Mode := Dynamic_Lib; + when 'm' => + + Gen_Map_File := True; + when 'n' => Build_Import := False; @@ -361,7 +360,6 @@ procedure Gnatdll is when others => raise Invalid_Switch; - end case; end loop; @@ -382,14 +380,12 @@ procedure Gnatdll is loop case Getopt ("*") is - when ASCII.Nul => exit; when others => Lopts (L) := new String'(Full_Switch); L := L + 1; - end case; end loop; @@ -416,12 +412,10 @@ procedure Gnatdll is Add_Files_From_List (To_String (List_Filename)); end if; - -- Check if the set of parameters are compatible. + -- Check if the set of parameters are compatible - if Build_Mode = Nil and then not Help and then not Verbose then - Exceptions.Raise_Exception - (Syntax_Error'Identity, - "nothing to do."); + if Build_Mode = Nil and then not Help and then not MDLL.Verbose then + Raise_Exception (Syntax_Error'Identity, "nothing to do."); end if; -- -n option but no file specified @@ -430,7 +424,7 @@ procedure Gnatdll is and then A = Afiles'First and then O = Ofiles'First then - Exceptions.Raise_Exception + Raise_Exception (Syntax_Error'Identity, "-n specified but there are no objects to build the library."); end if; @@ -445,41 +439,49 @@ procedure Gnatdll is Build_Mode := Import_Lib; end if; - -- Check if only a dynamic library must be built. + -- If map file is to be generated, add linker option here + + if Gen_Map_File and then Build_Mode = Import_Lib then + Raise_Exception + (Syntax_Error'Identity, + "Can't generate a map file for an import library."); + end if; + + -- Check if only a dynamic library must be built if Build_Mode = Dynamic_Lib and then not Build_Import then Build_Mode := Dynamic_Lib_Only; end if; if O /= Ofiles'First then - Objects_Files := new OS_Lib.Argument_List'(Ofiles (1 .. O - 1)); + Objects_Files := new Argument_List'(Ofiles (1 .. O - 1)); end if; if A /= Afiles'First then - Ali_Files := new OS_Lib.Argument_List'(Afiles (1 .. A - 1)); + Ali_Files := new Argument_List'(Afiles (1 .. A - 1)); end if; if G /= Gopts'First then - Options := new OS_Lib.Argument_List'(Gopts (1 .. G - 1)); + Options := new Argument_List'(Gopts (1 .. G - 1)); end if; if L /= Lopts'First then - Largs_Options := new OS_Lib.Argument_List'(Lopts (1 .. L - 1)); + Largs_Options := new Argument_List'(Lopts (1 .. L - 1)); end if; if B /= Bopts'First then - Bargs_Options := new OS_Lib.Argument_List'(Bopts (1 .. B - 1)); + Bargs_Options := new Argument_List'(Bopts (1 .. B - 1)); end if; exception when Invalid_Switch => - Exceptions.Raise_Exception + Raise_Exception (Syntax_Error'Identity, Message => "Invalid Switch " & Full_Switch); when Invalid_Parameter => - Exceptions.Raise_Exception + Raise_Exception (Syntax_Error'Identity, Message => "No parameter for " & Full_Switch); @@ -512,9 +514,9 @@ begin end if; if MDLL.Verbose or else Help then - Text_IO.New_Line; - Text_IO.Put_Line ("GNATDLL " & Version & " - Dynamic Libraries Builder"); - Text_IO.New_Line; + New_Line; + Put_Line ("GNATDLL " & Version & " - Dynamic Libraries Builder"); + New_Line; end if; MDLL.Utl.Locate; @@ -544,7 +546,8 @@ begin To_String (Def_Filename), To_String (DLL_Address), Build_Import => True, - Relocatable => Must_Build_Relocatable); + Relocatable => Must_Build_Relocatable, + Map_File => Gen_Map_File); when Dynamic_Lib_Only => MDLL.Build_Dynamic_Library @@ -557,31 +560,30 @@ begin To_String (Def_Filename), To_String (DLL_Address), Build_Import => False, - Relocatable => Must_Build_Relocatable); + Relocatable => Must_Build_Relocatable, + Map_File => Gen_Map_File); when Nil => null; - end case; - end if; - Ada.Command_Line.Set_Exit_Status (Ada.Command_Line.Success); + Set_Exit_Status (Success); exception when SE : Syntax_Error => - Text_IO.Put_Line ("Syntax error : " & Exceptions.Exception_Message (SE)); - Text_IO.New_Line; + Put_Line ("Syntax error : " & Exception_Message (SE)); + New_Line; Syntax; - Ada.Command_Line.Set_Exit_Status (Ada.Command_Line.Failure); + Set_Exit_Status (Failure); - when E : Tools_Error | Context_Error => - Text_IO.Put_Line (Exceptions.Exception_Message (E)); - Ada.Command_Line.Set_Exit_Status (Ada.Command_Line.Failure); + when E : MDLL.Tools_Error | Context_Error => + Put_Line (Exception_Message (E)); + Set_Exit_Status (Failure); when others => - Text_IO.Put_Line ("gnatdll: INTERNAL ERROR. Please report"); - Ada.Command_Line.Set_Exit_Status (Ada.Command_Line.Failure); + Put_Line ("gnatdll: INTERNAL ERROR. Please report"); + Set_Exit_Status (Failure); end Gnatdll; diff --git a/gcc/ada/gnatls.adb b/gcc/ada/gnatls.adb index 5c269916371..cdc924cb418 100644 --- a/gcc/ada/gnatls.adb +++ b/gcc/ada/gnatls.adb @@ -98,6 +98,8 @@ procedure Gnatls is Dependable : Boolean := False; -- flag -d Also_Predef : Boolean := False; + Very_Verbose_Mode : Boolean := False; -- flag -V + Unit_Start : Integer; Unit_End : Integer; Source_Start : Integer; @@ -162,6 +164,20 @@ procedure Gnatls is function Image (Restriction : Restriction_Id) return String; -- Returns the capitalized image of Restriction + --------------------------------------- + -- GLADE specific output subprograms -- + --------------------------------------- + + package GLADE is + + -- Any modification to this subunit requires a synchronization + -- with the GLADE implementation. + + procedure Output_ALI (A : ALI_Id); + procedure Output_No_ALI (Afile : File_Name_Type); + + end GLADE; + ----------------- -- Add_Lib_Dir -- ----------------- @@ -355,6 +371,409 @@ procedure Gnatls is end Find_Status; ----------- + -- GLADE -- + ----------- + + package body GLADE is + + N_Flags : Natural; + N_Indents : Natural := 0; + + type Token_Type is + (T_No_ALI, + T_ALI, + T_Unit, + T_With, + T_Source, + T_Afile, + T_Ofile, + T_Sfile, + T_Name, + T_Main, + T_Kind, + T_Flags, + T_Preelaborated, + T_Pure, + T_Has_RACW, + T_Remote_Types, + T_Shared_Passive, + T_RCI, + T_Predefined, + T_Internal, + T_Is_Generic, + T_Procedure, + T_Function, + T_Package, + T_Subprogram, + T_Spec, + T_Body); + + Image : constant array (Token_Type) of String_Access := + (T_No_ALI => new String'("No_ALI"), + T_ALI => new String'("ALI"), + T_Unit => new String'("Unit"), + T_With => new String'("With"), + T_Source => new String'("Source"), + T_Afile => new String'("Afile"), + T_Ofile => new String'("Ofile"), + T_Sfile => new String'("Sfile"), + T_Name => new String'("Name"), + T_Main => new String'("Main"), + T_Kind => new String'("Kind"), + T_Flags => new String'("Flags"), + T_Preelaborated => new String'("Preelaborated"), + T_Pure => new String'("Pure"), + T_Has_RACW => new String'("Has_RACW"), + T_Remote_Types => new String'("Remote_Types"), + T_Shared_Passive => new String'("Shared_Passive"), + T_RCI => new String'("RCI"), + T_Predefined => new String'("Predefined"), + T_Internal => new String'("Internal"), + T_Is_Generic => new String'("Is_Generic"), + T_Procedure => new String'("procedure"), + T_Function => new String'("function"), + T_Package => new String'("package"), + T_Subprogram => new String'("subprogram"), + T_Spec => new String'("spec"), + T_Body => new String'("body")); + + procedure Output_Name (N : Name_Id); + -- Remove any encoding info (%b and %s) and output N + + procedure Output_Afile (A : File_Name_Type); + procedure Output_Ofile (O : File_Name_Type); + procedure Output_Sfile (S : File_Name_Type); + -- Output various names. Check that the name is different from + -- no name. Otherwise, skip the output. + + procedure Output_Token (T : Token_Type); + -- Output token using a specific format. That is several + -- indentations and: + -- + -- T_No_ALI .. T_With : & " =>" & NL + -- T_Source .. T_Kind : & " => " + -- T_Flags : & " =>" + -- T_Preelab .. T_Body : " " & + + procedure Output_Sdep (S : Sdep_Id); + procedure Output_Unit (U : Unit_Id); + procedure Output_With (W : With_Id); + -- Output this entry as a global section (like ALIs) + + ------------------ + -- Output_Afile -- + ------------------ + + procedure Output_Afile (A : File_Name_Type) is + begin + if A /= No_File then + Output_Token (T_Afile); + Write_Name (A); + Write_Eol; + end if; + end Output_Afile; + + ---------------- + -- Output_ALI -- + ---------------- + + procedure Output_ALI (A : ALI_Id) is + begin + Output_Token (T_ALI); + N_Indents := N_Indents + 1; + + Output_Afile (ALIs.Table (A).Afile); + Output_Ofile (ALIs.Table (A).Ofile_Full_Name); + Output_Sfile (ALIs.Table (A).Sfile); + + -- Output Main + + if ALIs.Table (A).Main_Program /= None then + Output_Token (T_Main); + + if ALIs.Table (A).Main_Program = Proc then + Output_Token (T_Procedure); + else + Output_Token (T_Function); + end if; + + Write_Eol; + end if; + + -- Output Units + + for U in ALIs.Table (A).First_Unit .. ALIs.Table (A).Last_Unit loop + Output_Unit (U); + end loop; + + -- Output Sdeps + + for S in ALIs.Table (A).First_Sdep .. ALIs.Table (A).Last_Sdep loop + Output_Sdep (S); + end loop; + + N_Indents := N_Indents - 1; + end Output_ALI; + + ------------------- + -- Output_No_ALI -- + ------------------- + + procedure Output_No_ALI (Afile : File_Name_Type) is + begin + Output_Token (T_No_ALI); + N_Indents := N_Indents + 1; + Output_Afile (Afile); + N_Indents := N_Indents - 1; + end Output_No_ALI; + + ----------------- + -- Output_Name -- + ----------------- + + procedure Output_Name (N : Name_Id) is + begin + -- Remove any encoding info (%s or %b) + + Get_Name_String (N); + if Name_Len > 2 + and then Name_Buffer (Name_Len - 1) = '%' + then + Name_Len := Name_Len - 2; + end if; + + Output_Token (T_Name); + Write_Str (Name_Buffer (1 .. Name_Len)); + Write_Eol; + end Output_Name; + + ------------------ + -- Output_Ofile -- + ------------------ + + procedure Output_Ofile (O : File_Name_Type) is + begin + if O /= No_File then + Output_Token (T_Ofile); + Write_Name (O); + Write_Eol; + end if; + end Output_Ofile; + + ----------------- + -- Output_Sdep -- + ----------------- + + procedure Output_Sdep (S : Sdep_Id) is + begin + Output_Token (T_Source); + Write_Name (Sdep.Table (S).Sfile); + Write_Eol; + end Output_Sdep; + + ------------------ + -- Output_Sfile -- + ------------------ + + procedure Output_Sfile (S : File_Name_Type) is + FS : File_Name_Type := S; + + begin + if FS /= No_File then + + -- We want to output the full source name + + FS := Full_Source_Name (FS); + + -- There is no full source name. This occurs for instance when a + -- withed unit has a spec file but no body file. This situation + -- is not a problem for GLADE since the unit may be located on + -- a partition we do not want to build. However, we need to + -- locate the spec file and to find its full source name. + -- Replace the body file name with the spec file name used to + -- compile the current unit when possible. + + if FS = No_File then + Get_Name_String (S); + + if Name_Len > 4 + and then Name_Buffer (Name_Len - 3 .. Name_Len) = ".adb" + then + Name_Buffer (Name_Len) := 's'; + FS := Full_Source_Name (Name_Find); + end if; + end if; + end if; + + if FS /= No_File then + Output_Token (T_Sfile); + Write_Name (FS); + Write_Eol; + end if; + end Output_Sfile; + + ------------------ + -- Output_Token -- + ------------------ + + procedure Output_Token (T : Token_Type) is + begin + if T in T_No_ALI .. T_Flags then + for J in 1 .. N_Indents loop + Write_Str (" "); + end loop; + + Write_Str (Image (T).all); + + for J in Image (T)'Length .. 12 loop + Write_Char (' '); + end loop; + + Write_Str ("=>"); + + if T in T_No_ALI .. T_With then + Write_Eol; + elsif T in T_Source .. T_Name then + Write_Char (' '); + end if; + + elsif T in T_Preelaborated .. T_Body then + if T in T_Preelaborated .. T_Is_Generic then + if N_Flags = 0 then + Output_Token (T_Flags); + end if; + + N_Flags := N_Flags + 1; + end if; + + Write_Char (' '); + Write_Str (Image (T).all); + + else + Write_Str (Image (T).all); + end if; + end Output_Token; + + ----------------- + -- Output_Unit -- + ----------------- + + procedure Output_Unit (U : Unit_Id) is + begin + Output_Token (T_Unit); + N_Indents := N_Indents + 1; + + -- Output Name + + Output_Name (Units.Table (U).Uname); + + -- Output Kind + + Output_Token (T_Kind); + + if Units.Table (U).Unit_Kind = 'p' then + Output_Token (T_Package); + else + Output_Token (T_Subprogram); + end if; + + if Name_Buffer (Name_Len) = 's' then + Output_Token (T_Spec); + else + Output_Token (T_Body); + end if; + + Write_Eol; + + -- Output source file name + + Output_Sfile (Units.Table (U).Sfile); + + -- Output Flags + + N_Flags := 0; + + if Units.Table (U).Preelab then + Output_Token (T_Preelaborated); + end if; + + if Units.Table (U).Pure then + Output_Token (T_Pure); + end if; + + if Units.Table (U).Has_RACW then + Output_Token (T_Has_RACW); + end if; + + if Units.Table (U).Remote_Types then + Output_Token (T_Remote_Types); + end if; + + if Units.Table (U).Shared_Passive then + Output_Token (T_Shared_Passive); + end if; + + if Units.Table (U).RCI then + Output_Token (T_RCI); + end if; + + if Units.Table (U).Predefined then + Output_Token (T_Predefined); + end if; + + if Units.Table (U).Internal then + Output_Token (T_Internal); + end if; + + if Units.Table (U).Is_Generic then + Output_Token (T_Is_Generic); + end if; + + if N_Flags > 0 then + Write_Eol; + end if; + + -- Output Withs + + for W in Units.Table (U).First_With .. Units.Table (U).Last_With loop + Output_With (W); + end loop; + + N_Indents := N_Indents - 1; + end Output_Unit; + + ----------------- + -- Output_With -- + ----------------- + + procedure Output_With (W : With_Id) is + begin + Output_Token (T_With); + N_Indents := N_Indents + 1; + + Output_Name (Withs.Table (W).Uname); + + -- Output Kind + + Output_Token (T_Kind); + + if Name_Buffer (Name_Len) = 's' then + Output_Token (T_Spec); + else + Output_Token (T_Body); + end if; + + Write_Eol; + + Output_Afile (Withs.Table (W).Afile); + Output_Sfile (Withs.Table (W).Sfile); + + N_Indents := N_Indents - 1; + end Output_With; + + end GLADE; + + ----------- -- Image -- ----------- @@ -629,6 +1048,7 @@ procedure Gnatls is declare Restrictions : constant Restrictions_Info := ALIs.Table (ALI).Restrictions; + begin -- If the source was compiled with pragmas Restrictions, -- Display these restrictions. @@ -721,6 +1141,7 @@ procedure Gnatls is procedure Scan_Ls_Arg (Argv : String) is FD : File_Descriptor; Len : Integer; + begin pragma Assert (Argv'First = 1); @@ -729,7 +1150,6 @@ procedure Gnatls is end if; if Argv (1) = '-' then - if Argv'Length = 1 then Fail ("switch character cannot be followed by a blank"); @@ -782,6 +1202,7 @@ procedure Gnatls is when 'o' => Reset_Print; Print_Object := True; when 'v' => Verbose_Mode := True; when 'd' => Dependable := True; + when 'V' => Very_Verbose_Mode := True; when others => null; end case; @@ -911,9 +1332,6 @@ procedure Gnatls is ----------- procedure Usage is - - -- Start of processing for Usage - begin -- Usage line @@ -1020,7 +1438,7 @@ procedure Gnatls is end Usage; - -- Start of processing for Gnatls +-- Start of processing for Gnatls begin -- Initialize standard packages @@ -1063,11 +1481,6 @@ begin if Verbose_Mode then Targparm.Get_Target_Parameters; - -- WARNING: the output of gnatls -v is used during the compilation - -- and installation of GLADE to recreate sdefault.adb and locate - -- the libgnat.a to use. Any change in the output of gnatls -v must - -- be synchronized with the GLADE Dist/config.sdefault shell script. - Write_Eol; Write_Str ("GNATLS "); Write_Str (Gnat_Version_String); @@ -1132,15 +1545,20 @@ begin while More_Lib_Files loop Main_File := Next_Main_Lib_File; - Ali_File := Full_Lib_File_Name (Lib_File_Name (Main_File)); + Ali_File := Full_Lib_File_Name (Lib_File_Name (Main_File)); if Ali_File = No_File then - Write_Str ("Can't find library info for "); - Get_Name_String (Main_File); - Write_Char ('"'); - Write_Str (Name_Buffer (1 .. Name_Len)); - Write_Char ('"'); - Write_Eol; + if Very_Verbose_Mode then + GLADE.Output_No_ALI (Lib_File_Name (Main_File)); + + else + Write_Str ("Can't find library info for "); + Get_Name_String (Main_File); + Write_Char ('"'); -- " + Write_Str (Name_Buffer (1 .. Name_Len)); + Write_Char ('"'); -- " + Write_Eol; + end if; else Ali_File := Strip_Directory (Ali_File); @@ -1166,6 +1584,14 @@ begin end if; end loop; + if Very_Verbose_Mode then + for A in ALIs.First .. ALIs.Last loop + GLADE.Output_ALI (A); + end loop; + + return; + end if; + Find_General_Layout; for Id in ALIs.First .. ALIs.Last loop diff --git a/gcc/ada/impunit.adb b/gcc/ada/impunit.adb index 0dbe4795980..189ee917691 100644 --- a/gcc/ada/impunit.adb +++ b/gcc/ada/impunit.adb @@ -224,8 +224,7 @@ package body Impunit is "g-memdum", -- GNAT.Memory_Dump "g-moreex", -- GNAT.Most_Recent_Exception "g-os_lib", -- GNAT.Os_Lib - "g-pehage", -- GNAT.Perfect_Hash.Generators - "g-perhas", -- GNAT.Perfect_Hash + "g-pehage", -- GNAT.Perfect_Hash_Generators "g-regexp", -- GNAT.Regexp "g-regist", -- GNAT.Registry "g-regpat", -- GNAT.Regpat diff --git a/gcc/ada/init.c b/gcc/ada/init.c index 9fe4aa13239..4a54affe477 100644 --- a/gcc/ada/init.c +++ b/gcc/ada/init.c @@ -111,6 +111,7 @@ int __gl_num_interrupt_states = 0; int __gl_unreserve_all_interrupts = 0; int __gl_exception_tracebacks = 0; int __gl_zero_cost_exceptions = 0; +int __gl_detect_blocking = 0; /* Indication of whether synchronous signal handler has already been installed by a previous call to adainit */ @@ -173,7 +174,8 @@ __gnat_set_globals (int main_priority, int num_interrupt_states, int unreserve_all_interrupts, int exception_tracebacks, - int zero_cost_exceptions) + int zero_cost_exceptions, + int detect_blocking) { static int already_called = 0; @@ -236,6 +238,7 @@ __gnat_set_globals (int main_priority, __gl_task_dispatching_policy = task_dispatching_policy; __gl_unreserve_all_interrupts = unreserve_all_interrupts; __gl_exception_tracebacks = exception_tracebacks; + __gl_detect_blocking = detect_blocking; /* ??? __gl_zero_cost_exceptions is new in 3.15 and is referenced from a-except.adb, which is also part of the compiler sources. Since the diff --git a/gcc/ada/lib-writ.adb b/gcc/ada/lib-writ.adb index 89b4e23b210..36240549d04 100644 --- a/gcc/ada/lib-writ.adb +++ b/gcc/ada/lib-writ.adb @@ -856,6 +856,10 @@ package body Lib.Writ is Write_Info_Str (" CE"); end if; + if Opt.Detect_Blocking then + Write_Info_Str (" DB"); + end if; + if Opt.Float_Format /= ' ' then Write_Info_Str (" F"); diff --git a/gcc/ada/lib-writ.ads b/gcc/ada/lib-writ.ads index c6f185bf2fc..2cc6b568cb0 100644 --- a/gcc/ada/lib-writ.ads +++ b/gcc/ada/lib-writ.ads @@ -181,6 +181,9 @@ package Lib.Writ is -- format will be correct and complete. Note that NO is -- always present if CE is present. -- + -- DB Detect_Blocking pragma is in effect for all units in + -- this file. + -- -- FD Configuration pragmas apply to all the units in this -- file specifying a possibly non-standard floating point -- format (VAX float with Long_Float using D_Float) diff --git a/gcc/ada/link.c b/gcc/ada/link.c index bf98e903581..70b349f5482 100644 --- a/gcc/ada/link.c +++ b/gcc/ada/link.c @@ -157,9 +157,9 @@ const char *__gnat_object_library_extension = ".a"; char *__gnat_object_file_option = ""; char *__gnat_run_path_option = "-Wl,-rpath,"; char __gnat_shared_libgnat_default = STATIC; -int __gnat_link_max = 2147483647; -unsigned char __gnat_objlist_file_supported = 0; -unsigned char __gnat_using_gnu_linker = 0; +int __gnat_link_max = 8192; +unsigned char __gnat_objlist_file_supported = 1; +unsigned char __gnat_using_gnu_linker = 1; char *__gnat_object_library_extension = ".a"; #elif defined (linux) diff --git a/gcc/ada/mdll.adb b/gcc/ada/mdll.adb index a6c9b23c366..be8ace85db8 100644 --- a/gcc/ada/mdll.adb +++ b/gcc/ada/mdll.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. -- -- -- -- 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- -- @@ -52,7 +52,8 @@ package body MDLL is Def_Filename : String; Lib_Address : String := ""; Build_Import : Boolean := False; - Relocatable : Boolean := False) + Relocatable : Boolean := False; + Map_File : Boolean := False) is use type OS_Lib.Argument_List; @@ -70,6 +71,7 @@ package body MDLL is Lib_Opt : aliased String := "-mdll"; Out_Opt : aliased String := "-o"; Adr_Opt : aliased String := "-Wl,--image-base=" & Lib_Address; + Map_Opt : aliased String := "-Wl,-Map," & Lib_Filename & ".map"; L_Afiles : Argument_List := Afiles; -- Local afiles list. This list can be reordered to ensure that the @@ -97,12 +99,10 @@ package body MDLL is procedure Build_Reloc_DLL is -- Objects plus the export table (.exp) file - Objects_Exp_File : constant OS_Lib.Argument_List := Exp_File'Unchecked_Access & Ofiles; Success : Boolean; - begin if not Quiet then Text_IO.Put_Line ("building relocatable DLL..."); @@ -147,10 +147,20 @@ package body MDLL is -- 5) Build the dynamic library - Utl.Gcc (Output_File => Dll_File, - Files => Objects_Exp_File, - Options => Adr_Opt'Unchecked_Access & All_Options, - Build_Lib => True); + declare + Params : OS_Lib.Argument_List := + Adr_Opt'Unchecked_Access & All_Options; + begin + if Map_File then + Params := Map_Opt'Unchecked_Access & Params; + end if; + + Utl.Gcc + (Output_File => Dll_File, + Files => Objects_Exp_File, + Options => Params, + Build_Lib => True); + end; OS_Lib.Delete_File (Exp_File, Success); OS_Lib.Delete_File (Bas_File, Success); @@ -234,7 +244,7 @@ package body MDLL is Utl.Gnatbind (L_Afiles, Options & Bargs_Options); declare - Params : constant OS_Lib.Argument_List := + Params : OS_Lib.Argument_List := Out_Opt'Unchecked_Access & Dll_File'Unchecked_Access & Lib_Opt'Unchecked_Access & @@ -243,6 +253,10 @@ package body MDLL is Ofiles & All_Options; begin + if Map_File then + Params := Map_Opt'Unchecked_Access & Params; + end if; + Utl.Gnatlink (L_Afiles (L_Afiles'Last).all, Params); end; @@ -285,10 +299,19 @@ package body MDLL is -- Build the DLL - Utl.Gcc (Output_File => Dll_File, - Files => Exp_File'Unchecked_Access & Ofiles, - Options => Adr_Opt'Unchecked_Access & All_Options, - Build_Lib => True); + declare + Params : OS_Lib.Argument_List := + Adr_Opt'Unchecked_Access & All_Options; + begin + if Map_File then + Params := Map_Opt'Unchecked_Access & Params; + end if; + + Utl.Gcc (Output_File => Dll_File, + Files => Exp_File'Unchecked_Access & Ofiles, + Options => Params, + Build_Lib => True); + end; OS_Lib.Delete_File (Exp_File, Success); @@ -330,7 +353,7 @@ package body MDLL is Utl.Gnatbind (L_Afiles, Options & Bargs_Options); declare - Params : constant OS_Lib.Argument_List := + Params : OS_Lib.Argument_List := Out_Opt'Unchecked_Access & Dll_File'Unchecked_Access & Lib_Opt'Unchecked_Access & @@ -339,6 +362,10 @@ package body MDLL is Ofiles & All_Options; begin + if Map_File then + Params := Map_Opt'Unchecked_Access & Params; + end if; + Utl.Gnatlink (L_Afiles (L_Afiles'Last).all, Params); end; @@ -370,7 +397,6 @@ package body MDLL is end if; case Relocatable is - when True => if L_Afiles'Length = 0 then Build_Reloc_DLL; @@ -384,7 +410,6 @@ package body MDLL is else Ada_Build_Non_Reloc_DLL; end if; - end case; end Build_Dynamic_Library; @@ -408,13 +433,11 @@ package body MDLL is -------------------------- procedure Build_Import_Library (Def_Base_Filename : String) is - Def_File : String renames Def_Filename; Dll_File : constant String := Def_Base_Filename & ".dll"; Lib_File : constant String := "lib" & Base_Filename & ".a"; begin - if not Quiet then Text_IO.Put_Line ("Building import library..."); Text_IO.Put_Line ("make " & Lib_File & diff --git a/gcc/ada/mdll.ads b/gcc/ada/mdll.ads index 5ca9f01a70e..495e025aabb 100644 --- a/gcc/ada/mdll.ads +++ b/gcc/ada/mdll.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- 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- -- @@ -28,6 +28,7 @@ -- to build Windows DLL with GNAT.OS_Lib; +-- Should have USE here ??? package MDLL is @@ -36,20 +37,21 @@ package MDLL is Null_Argument_List : constant Argument_List := (1 .. 0 => new String'("")); - Null_Argument_List_Access : Argument_List_Access - := new Argument_List (1 .. 0); + Null_Argument_List_Access : Argument_List_Access := + new Argument_List (1 .. 0); - Tools_Error : exception; + Tools_Error : exception; + -- Commment required - Verbose : Boolean := False; - Quiet : Boolean := False; + Verbose : Boolean := False; + Quiet : Boolean := False; + -- Comment required ??? + Kill_Suffix : Boolean := False; -- Kill_Suffix is used by dlltool to know whether or not the @nn suffix -- should be removed from the exported names. When Kill_Suffix is set to -- True then dlltool -k option is used. - Kill_Suffix : Boolean := False; - procedure Build_Dynamic_Library (Ofiles : Argument_List; Afiles : Argument_List; @@ -60,14 +62,16 @@ package MDLL is Def_Filename : String; Lib_Address : String := ""; Build_Import : Boolean := False; - Relocatable : Boolean := False); + Relocatable : Boolean := False; + Map_File : Boolean := False); -- Build a DLL and the import library to link against the DLL. -- this function handles relocatable and non relocatable DLL. -- If the Afiles argument list contains some Ada units then it will -- generate the right adainit and adafinal and integrate it in the DLL. -- If the Afiles argument list is empty (there is only some object files -- provided) then it will not try to build a binder file. This is ok to - -- build DLL containing no Ada code. + -- build DLL containing no Ada code. If Map_File is set to True, a map + -- file named Lib_Filename & ".map" will be created. procedure Build_Import_Library (Lib_Filename : String; diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c index cdaa862bd75..d1631cdb463 100644 --- a/gcc/ada/misc.c +++ b/gcc/ada/misc.c @@ -173,9 +173,9 @@ const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; #define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE, -const char tree_code_type[] = { +const enum tree_code_class tree_code_type[] = { #include "tree.def" - 'x', + tcc_exceptional, #include "ada-tree.def" }; #undef DEFTREECODE diff --git a/gcc/ada/opt.adb b/gcc/ada/opt.adb index 69798078f92..528cbffaf99 100644 --- a/gcc/ada/opt.adb +++ b/gcc/ada/opt.adb @@ -98,7 +98,7 @@ package body Opt is procedure Set_Opt_Config_Switches (Internal_Unit : Boolean) is begin if Internal_Unit then - Ada_Version := Ada_Version_Default; + Ada_Version := Ada_Version_Runtime; Dynamic_Elaboration_Checks := False; Extensions_Allowed := True; External_Name_Exp_Casing := As_Is; diff --git a/gcc/ada/opt.ads b/gcc/ada/opt.ads index 25223bcbf32..e710275b74a 100644 --- a/gcc/ada/opt.ads +++ b/gcc/ada/opt.ads @@ -72,6 +72,10 @@ package Opt is -- GNAT -- Current Ada version for compiler + Ada_Version_Runtime : Ada_Version_Type := Ada_05; + -- GNAT + -- Ada version used to compile the runtime + Ada_Final_Suffix : constant String := "final"; Ada_Final_Name : String_Ptr := new String'("ada" & Ada_Final_Suffix); -- GNATBIND diff --git a/gcc/ada/prj-attr.adb b/gcc/ada/prj-attr.adb index 2127e35067c..324b7dcde30 100644 --- a/gcc/ada/prj-attr.adb +++ b/gcc/ada/prj-attr.adb @@ -24,8 +24,9 @@ -- -- ------------------------------------------------------------------------------ -with Namet; use Namet; -with Osint; use Osint; +with Namet; use Namet; +with Osint; +with Prj.Com; use Prj.Com; with Table; with System.Case_Util; use System.Case_Util; @@ -39,11 +40,13 @@ package body Prj.Attr is -- Package names are preceded by 'P' -- Attribute names are preceded by two letters: + -- The first letter is one of -- 'S' for Single -- 's' for Single with optional index -- 'L' for List -- 'l' for List of strings with optional indexes + -- The second letter is one of -- 'V' for single variable -- 'A' for associative array @@ -186,90 +189,9 @@ package body Prj.Attr is Initialized : Boolean := False; -- A flag to avoid multiple initialization - ---------------- - -- Attributes -- - ---------------- - - type Attribute_Record is record - Name : Name_Id; - Var_Kind : Variable_Kind; - Optional_Index : Boolean; - Attr_Kind : Attribute_Kind; - Next : Attr_Node_Id; - end record; - -- Data for an attribute - - package Attrs is - new Table.Table (Table_Component_Type => Attribute_Record, - Table_Index_Type => Attr_Node_Id, - Table_Low_Bound => First_Attribute, - Table_Initial => Attributes_Initial, - Table_Increment => Attributes_Increment, - Table_Name => "Prj.Attr.Attrs"); - -- The table of the attributes - - -------------- - -- Packages -- - -------------- - - type Package_Record is record - Name : Name_Id; - Known : Boolean := True; - First_Attribute : Attr_Node_Id; - end record; - -- Data for a package - - package Package_Attributes is - new Table.Table (Table_Component_Type => Package_Record, - Table_Index_Type => Pkg_Node_Id, - Table_Low_Bound => First_Package, - Table_Initial => Packages_Initial, - Table_Increment => Packages_Increment, - Table_Name => "Prj.Attr.Packages"); - -- The table of the packages - function Name_Id_Of (Name : String) return Name_Id; -- Returns the Name_Id for Name in lower case - ------------------- - -- Add_Attribute -- - ------------------- - - procedure Add_Attribute - (To_Package : Package_Node_Id; - Attribute_Name : Name_Id; - Attribute_Node : out Attribute_Node_Id) - is - begin - -- Only add the attribute if the package is already defined - - if To_Package /= Empty_Package then - Attrs.Increment_Last; - Attrs.Table (Attrs.Last) := - (Name => Attribute_Name, - Var_Kind => Undefined, - Optional_Index => False, - Attr_Kind => Unknown, - Next => - Package_Attributes.Table (To_Package.Value).First_Attribute); - Package_Attributes.Table (To_Package.Value).First_Attribute := - Attrs.Last; - Attribute_Node := (Value => Attrs.Last); - end if; - end Add_Attribute; - - ------------------------- - -- Add_Unknown_Package -- - ------------------------- - - procedure Add_Unknown_Package (Name : Name_Id; Id : out Package_Node_Id) is - begin - Package_Attributes.Increment_Last; - Id := (Value => Package_Attributes.Last); - Package_Attributes.Table (Id.Value) := - (Name => Name, Known => False, First_Attribute => Empty_Attr); - end Add_Unknown_Package; - ----------------------- -- Attribute_Kind_Of -- ----------------------- @@ -307,6 +229,7 @@ package body Prj.Attr is Starting_At : Attribute_Node_Id) return Attribute_Node_Id is Id : Attr_Node_Id := Starting_At.Value; + begin while Id /= Empty_Attr and then Attrs.Table (Id).Name /= Name @@ -386,7 +309,7 @@ package body Prj.Attr is for Index in First_Package .. Package_Attributes.Last loop if Package_Name = Package_Attributes.Table (Index).Name then - Fail ("duplicate name """, + Osint.Fail ("duplicate name """, Initialization_Data (Start .. Finish - 1), """ in predefined packages."); end if; @@ -438,14 +361,14 @@ package body Prj.Attr is Attr_Kind := Case_Insensitive_Associative_Array; when 'b' => - if File_Names_Case_Sensitive then + if Osint.File_Names_Case_Sensitive then Attr_Kind := Associative_Array; else Attr_Kind := Case_Insensitive_Associative_Array; end if; when 'c' => - if File_Names_Case_Sensitive then + if Osint.File_Names_Case_Sensitive then Attr_Kind := Optional_Index_Associative_Array; else Attr_Kind := @@ -480,7 +403,7 @@ package body Prj.Attr is for Index in First_Attribute .. Attrs.Last - 1 loop if Attribute_Name = Attrs.Table (Index).Name then - Fail ("duplicate attribute """, + Osint.Fail ("duplicate attribute """, Initialization_Data (Start .. Finish - 1), """ in " & Attribute_Location); end if; @@ -581,11 +504,13 @@ package body Prj.Attr is begin if Name'Length = 0 then Fail ("cannot register an attribute with no name"); + raise Project_Error; end if; if In_Package = Empty_Package then Fail ("attempt to add attribute """, Name, """ to an undefined package"); + raise Project_Error; end if; Attr_Name := Name_Id_Of (Name); @@ -603,7 +528,7 @@ package body Prj.Attr is Get_Name_String (Package_Attributes.Table (In_Package.Value).Name) & """"); - exit; + raise Project_Error; end if; Curr_Attr := Attrs.Table (Curr_Attr).Next; @@ -613,7 +538,7 @@ package body Prj.Attr is -- If Index_Is_File_Name, change the attribute kind if necessary - if Index_Is_File_Name and then not File_Names_Case_Sensitive then + if Index_Is_File_Name and then not Osint.File_Names_Case_Sensitive then case Attr_Kind is when Associative_Array => Real_Attr_Kind := Case_Insensitive_Associative_Array; @@ -645,14 +570,26 @@ package body Prj.Attr is -------------------------- procedure Register_New_Package (Name : String; Id : out Package_Node_Id) is - Pkg_Name : Name_Id; + Pkg_Name : Name_Id; begin if Name'Length = 0 then Fail ("cannot register a package with no name"); + Id := Empty_Package; + return; end if; Pkg_Name := Name_Id_Of (Name); + + for Index in Package_Attributes.First .. Package_Attributes.Last loop + if Package_Attributes.Table (Index).Name = Pkg_Name then + Fail ("cannot register a package with a non unique name""", + Name, """"); + Id := Empty_Package; + return; + end if; + end loop; + Package_Attributes.Increment_Last; Id := (Value => Package_Attributes.Last); Package_Attributes.Table (Package_Attributes.Last) := @@ -672,6 +609,7 @@ package body Prj.Attr is begin if Name'Length = 0 then Fail ("cannot register a package with no name"); + raise Project_Error; end if; Pkg_Name := Name_Id_Of (Name); @@ -680,7 +618,7 @@ package body Prj.Attr is if Package_Attributes.Table (Index).Name = Pkg_Name then Fail ("cannot register a package with a non unique name""", Name, """"); - exit; + raise Project_Error; end if; end loop; @@ -692,7 +630,7 @@ package body Prj.Attr is if Attrs.Table (Curr_Attr).Name = Attr_Name then Fail ("duplicate attribute name """, Attributes (Index).Name, """ in new package """ & Name & """"); - exit; + raise Project_Error; end if; Curr_Attr := Attrs.Table (Curr_Attr).Next; @@ -701,7 +639,7 @@ package body Prj.Attr is Attr_Kind := Attributes (Index).Attr_Kind; if Attributes (Index).Index_Is_File_Name - and then not File_Names_Case_Sensitive + and then not Osint.File_Names_Case_Sensitive then case Attr_Kind is when Associative_Array => diff --git a/gcc/ada/prj-attr.ads b/gcc/ada/prj-attr.ads index 226d82440ed..4c096893426 100644 --- a/gcc/ada/prj-attr.ads +++ b/gcc/ada/prj-attr.ads @@ -86,6 +86,12 @@ package Prj.Attr is -- explicitly with Register_New_Package (see below). type Attribute_Data_Array is array (Positive range <>) of Attribute_Data; + -- A list of attribute name/characteristics to be used as parameter of + -- procedure Register_New_Package below. + + -- In the subprograms below, when it is specified that the subprogram + -- "fails", procedure Prj.Com.Fail is called. Unless it is specified + -- otherwise, if Prj.Com.Fail returns, exception Prj.Prj_Error is raised. procedure Register_New_Package (Name : String; @@ -93,11 +99,8 @@ package Prj.Attr is -- Add a new package with its attributes. -- This procedure can only be called after Initialize, but before any -- other call to a service of the Project Managers. - -- The name of the package must be unique. The names of the attributes - -- must be different. - - -- The following declarations are only for the Project Manager, that is - -- the packages of the Prj or MLib hierarchies. + -- Fail if the name of the package is empty or not unique, or if the names + -- of the attributes are not different. ---------------- -- Attributes -- @@ -168,9 +171,11 @@ package Prj.Attr is -- Default value of Package_Node_Id objects procedure Register_New_Package (Name : String; Id : out Package_Node_Id); - -- Add a new package. Fails if the package has a duplicate name. - -- Initially, the new package has no attributes. Id may be used to add - -- attributes using procedure Register_New_Attribute below. + -- Add a new package. Fails if Name (the package name) is empty or is + -- already the name of a package, and set Id to Empty_Package, + -- if Prj.Com.Fail returns. Initially, the new package has no attributes. + -- Id may be used to add attributes using procedure Register_New_Attribute + -- below. procedure Register_New_Attribute (Name : String; @@ -179,32 +184,21 @@ package Prj.Attr is Var_Kind : Defined_Variable_Kind; Index_Is_File_Name : Boolean := False; Opt_Index : Boolean := False); - -- Add a new attribute to registered package In_Package. Fails if the - -- attribute has a duplicate name. See definition of type Attribute_Data - -- above for the meaning of parameters Attr_Kind, Var_Kind, + -- Add a new attribute to registered package In_Package. Fails if Name + -- (the attribute name) is empty, if In_Package is Empty_Package or if + -- the attribute name has a duplicate name. See definition of type + -- Attribute_Data above for the meaning of parameters Attr_Kind, Var_Kind, -- Index_Is_File_Name and Opt_Index. function Package_Node_Id_Of (Name : Name_Id) return Package_Node_Id; -- Returns the package node id of the package with name Name. Returns -- Empty_Package if there is no package with this name. - procedure Add_Unknown_Package (Name : Name_Id; Id : out Package_Node_Id); - -- Add a new package. The Name cannot be the name of a predefined or - -- already registered package. - function First_Attribute_Of (Pkg : Package_Node_Id) return Attribute_Node_Id; -- Returns the first attribute in the list of attributes of package Pkg. -- Returns Empty_Attribute if Pkg is Empty_Package. - procedure Add_Attribute - (To_Package : Package_Node_Id; - Attribute_Name : Name_Id; - Attribute_Node : out Attribute_Node_Id); - -- Add an attribute to the list for package To_Package. Attribute_Name - -- cannot be the name of an existing attribute of the package. - -- Does nothing if To_Package is Empty_Package. - private ---------------- -- Attributes -- @@ -266,4 +260,46 @@ private Package_First : constant Package_Node_Id := First_Package_Node_Id; + ---------------- + -- Attributes -- + ---------------- + + type Attribute_Record is record + Name : Name_Id; + Var_Kind : Variable_Kind; + Optional_Index : Boolean; + Attr_Kind : Attribute_Kind; + Next : Attr_Node_Id; + end record; + -- Data for an attribute + + package Attrs is + new Table.Table (Table_Component_Type => Attribute_Record, + Table_Index_Type => Attr_Node_Id, + Table_Low_Bound => First_Attribute, + Table_Initial => Attributes_Initial, + Table_Increment => Attributes_Increment, + Table_Name => "Prj.Attr.Attrs"); + -- The table of the attributes + + -------------- + -- Packages -- + -------------- + + type Package_Record is record + Name : Name_Id; + Known : Boolean := True; + First_Attribute : Attr_Node_Id; + end record; + -- Data for a package + + package Package_Attributes is + new Table.Table (Table_Component_Type => Package_Record, + Table_Index_Type => Pkg_Node_Id, + Table_Low_Bound => First_Package, + Table_Initial => Packages_Initial, + Table_Increment => Packages_Increment, + Table_Name => "Prj.Attr.Packages"); + -- The table of the packages + end Prj.Attr; diff --git a/gcc/ada/prj-dect.adb b/gcc/ada/prj-dect.adb index 8a9ebaaf90a..e030236afe8 100644 --- a/gcc/ada/prj-dect.adb +++ b/gcc/ada/prj-dect.adb @@ -24,17 +24,18 @@ -- -- ------------------------------------------------------------------------------ -with Err_Vars; use Err_Vars; -with Namet; use Namet; -with Opt; use Opt; -with Prj.Err; use Prj.Err; -with Prj.Strt; use Prj.Strt; -with Prj.Tree; use Prj.Tree; -with Scans; use Scans; +with Err_Vars; use Err_Vars; +with Namet; use Namet; +with Opt; use Opt; +with Prj.Err; use Prj.Err; +with Prj.Strt; use Prj.Strt; +with Prj.Tree; use Prj.Tree; +with Scans; use Scans; with Snames; -with Types; use Types; -with Prj.Attr; use Prj.Attr; -with Uintp; use Uintp; +with Types; use Types; +with Prj.Attr; use Prj.Attr; +with Prj.Attr.PM; use Prj.Attr.PM; +with Uintp; use Uintp; package body Prj.Dect is @@ -876,7 +877,6 @@ package body Prj.Dect is -- Scan past "package" Scan; - Expect (Tok_Identifier, "identifier"); if Token = Tok_Identifier then diff --git a/gcc/ada/prj.ads b/gcc/ada/prj.ads index 1af7f598918..41ca8d9fbc1 100644 --- a/gcc/ada/prj.ads +++ b/gcc/ada/prj.ads @@ -699,6 +699,9 @@ package Prj is end record; + Project_Error : exception; + -- Raised by some subprograms in Prj.Attr. + function Empty_Project return Project_Data; -- Return the representation of an empty project diff --git a/gcc/ada/raise.h b/gcc/ada/raise.h index f9eb02aff72..4a6ffbe2dbf 100644 --- a/gcc/ada/raise.h +++ b/gcc/ada/raise.h @@ -65,7 +65,7 @@ extern void set_gnat_exit_status (int); extern void __gnat_set_globals (int, int, char, char, char, char, char *, char *, - int, int, int, int); + int, int, int, int, int); extern void __gnat_initialize (void); extern void __gnat_init_float (void); extern void __gnat_install_handler (void); diff --git a/gcc/ada/s-parint.adb b/gcc/ada/s-parint.adb index 1174d75e565..89ba39fc1b3 100644 --- a/gcc/ada/s-parint.adb +++ b/gcc/ada/s-parint.adb @@ -45,8 +45,10 @@ package body System.Partition_Interface is type Pkg_Node; type Pkg_List is access Pkg_Node; type Pkg_Node is record - Name : String_Access; - Next : Pkg_List; + Name : String_Access; + Subp_Info : System.Address; + Subp_Info_Len : Integer; + Next : Pkg_List; end record; Pkg_Head : Pkg_List; @@ -63,9 +65,9 @@ package body System.Partition_Interface is -- String prepended in top of shared passive packages procedure Check - (Name : in Unit_Name; - Version : in String; - RCI : in Boolean := True) + (Name : Unit_Name; + Version : String; + RCI : Boolean := True) is begin null; @@ -76,8 +78,7 @@ package body System.Partition_Interface is ----------------------------- function Get_Active_Partition_ID - (Name : Unit_Name) - return System.RPC.Partition_ID + (Name : Unit_Name) return System.RPC.Partition_ID is P : Pkg_List := Pkg_Head; N : String := Lower (Name); @@ -98,10 +99,7 @@ package body System.Partition_Interface is -- Get_Active_Version -- ------------------------ - function Get_Active_Version - (Name : Unit_Name) - return String - is + function Get_Active_Version (Name : Unit_Name) return String is begin return ""; end Get_Active_Version; @@ -120,8 +118,7 @@ package body System.Partition_Interface is ------------------------------ function Get_Passive_Partition_ID - (Name : Unit_Name) - return System.RPC.Partition_ID + (Name : Unit_Name) return System.RPC.Partition_ID is begin return Get_Local_Partition_ID; @@ -131,21 +128,50 @@ package body System.Partition_Interface is -- Get_Passive_Version -- ------------------------- - function Get_Passive_Version - (Name : Unit_Name) - return String - is + function Get_Passive_Version (Name : Unit_Name) return String is begin return ""; end Get_Passive_Version; + ------------------ + -- Get_RAS_Info -- + ------------------ + + procedure Get_RAS_Info + (Name : Unit_Name; + Subp_Id : Subprogram_Id; + Proxy_Address : out Interfaces.Unsigned_64) + is + LName : constant String := Lower (Name); + N : Pkg_List; + begin + N := Pkg_Head; + while N /= null loop + if N.Name.all = LName then + declare + subtype Subprogram_Array is RCI_Subp_Info_Array + (First_RCI_Subprogram_Id .. + First_RCI_Subprogram_Id + N.Subp_Info_Len - 1); + Subprograms : Subprogram_Array; + for Subprograms'Address use N.Subp_Info; + pragma Import (Ada, Subprograms); + begin + Proxy_Address := + Interfaces.Unsigned_64 (Subprograms (Integer (Subp_Id)).Addr); + return; + end; + end if; + N := N.Next; + end loop; + Proxy_Address := 0; + end Get_RAS_Info; + ------------------------------ -- Get_RCI_Package_Receiver -- ------------------------------ function Get_RCI_Package_Receiver - (Name : Unit_Name) - return Interfaces.Unsigned_64 + (Name : Unit_Name) return Interfaces.Unsigned_64 is begin return 0; @@ -186,7 +212,7 @@ package body System.Partition_Interface is ------------------------------------- procedure Raise_Program_Error_Unknown_Tag - (E : in Ada.Exceptions.Exception_Occurrence) + (E : Ada.Exceptions.Exception_Occurrence) is begin Ada.Exceptions.Raise_Exception @@ -235,11 +261,12 @@ package body System.Partition_Interface is ------------------------------ procedure Register_Passive_Package - (Name : in Unit_Name; - Version : in String := "") + (Name : Unit_Name; + Version : String := "") is begin - Register_Receiving_Stub (Passive_Prefix & Name, null, Version); + Register_Receiving_Stub + (Passive_Prefix & Name, null, Version, System.Null_Address, 0); end Register_Passive_Package; ----------------------------- @@ -247,19 +274,23 @@ package body System.Partition_Interface is ----------------------------- procedure Register_Receiving_Stub - (Name : in Unit_Name; - Receiver : in RPC.RPC_Receiver; - Version : in String := "") + (Name : Unit_Name; + Receiver : RPC.RPC_Receiver; + Version : String := ""; + Subp_Info : System.Address; + Subp_Info_Len : Integer) is + N : constant Pkg_List := + new Pkg_Node'(new String'(Lower (Name)), + Subp_Info, Subp_Info_Len, + Next => null); begin if Pkg_Tail = null then - Pkg_Head := new Pkg_Node'(new String'(Lower (Name)), null); - Pkg_Tail := Pkg_Head; - + Pkg_Head := N; else - Pkg_Tail.Next := new Pkg_Node'(new String'(Lower (Name)), null); - Pkg_Tail := Pkg_Tail.Next; + Pkg_Tail.Next := N; end if; + Pkg_Tail := N; end Register_Receiving_Stub; --------- @@ -267,7 +298,7 @@ package body System.Partition_Interface is --------- procedure Run - (Main : in Main_Subprogram_Type := null) + (Main : Main_Subprogram_Type := null) is begin if Main /= null then diff --git a/gcc/ada/s-parint.ads b/gcc/ada/s-parint.ads index cf0a8b396e5..a4ac13d0789 100644 --- a/gcc/ada/s-parint.ads +++ b/gcc/ada/s-parint.ads @@ -45,8 +45,20 @@ package System.Partition_Interface is type DSA_Implementation_Name is (No_DSA, GLADE_DSA, PolyORB_DSA); DSA_Implementation : constant DSA_Implementation_Name := No_DSA; + -- RCI receiving stubs contain a table of descriptors for + -- all user subprograms exported by the unit. + type Subprogram_Id is new Natural; - -- This type is used exclusively by stubs + First_RCI_Subprogram_Id : constant := 2; + + type RCI_Subp_Info is record + Addr : System.Address; + -- Local address of the proxy object + end record; + + type RCI_Subp_Info_Access is access all RCI_Subp_Info; + type RCI_Subp_Info_Array is array (Integer range <>) of + aliased RCI_Subp_Info; subtype Unit_Name is String; -- Name of Ada units @@ -59,42 +71,49 @@ package System.Partition_Interface is Addr : Interfaces.Unsigned_64; Asynchronous : Boolean; end record; + type RACW_Stub_Type_Access is access RACW_Stub_Type; -- This type is used by the expansion to implement distributed objects. -- Do not change its definition or its layout without updating -- exp_dist.adb. + type RAS_Proxy_Type is tagged limited record + All_Calls_Remote : Boolean; + Receiver : System.Address; + Subp_Id : Subprogram_Id; + end record; + + type RAS_Proxy_Type_Access is access RAS_Proxy_Type; + pragma No_Strict_Aliasing (RAS_Proxy_Type_Access); + -- This type is used by the expansion to implement distributed objects. + -- Do not change its definition or its layout without updating + -- Exp_Dist.Build_Remote_Supbrogram_Proxy_Type. + procedure Check - (Name : in Unit_Name; - Version : in String; - RCI : in Boolean := True); + (Name : Unit_Name; + Version : String; + RCI : Boolean := True); -- Use by the main subprogram to check that a remote receiver -- unit has has the same version than the caller's one. - function Get_Active_Partition_ID - (Name : Unit_Name) - return RPC.Partition_ID; + function Get_Active_Partition_ID (Name : Unit_Name) return RPC.Partition_ID; -- Similar in some respects to RCI_Info.Get_Active_Partition_ID - function Get_Active_Version - (Name : Unit_Name) - return String; + function Get_Active_Version (Name : Unit_Name) return String; -- Similar in some respects to Get_Active_Partition_ID function Get_Local_Partition_ID return RPC.Partition_ID; -- Return the Partition_ID of the current partition function Get_Passive_Partition_ID - (Name : Unit_Name) - return RPC.Partition_ID; + (Name : Unit_Name) return RPC.Partition_ID; -- Return the Partition_ID of the given shared passive partition function Get_Passive_Version (Name : Unit_Name) return String; -- Return the version corresponding to a shared passive unit function Get_RCI_Package_Receiver - (Name : Unit_Name) - return Interfaces.Unsigned_64; + (Name : Unit_Name) return Interfaces.Unsigned_64; -- Similar in some respects to RCI_Info.Get_RCI_Package_Receiver procedure Get_Unique_Remote_Pointer @@ -102,20 +121,30 @@ package System.Partition_Interface is -- Get a unique pointer on a remote object procedure Raise_Program_Error_Unknown_Tag - (E : in Ada.Exceptions.Exception_Occurrence); + (E : Ada.Exceptions.Exception_Occurrence); pragma No_Return (Raise_Program_Error_Unknown_Tag); -- Raise Program_Error with the same message as E one procedure Register_Receiving_Stub - (Name : in Unit_Name; - Receiver : in RPC.RPC_Receiver; - Version : in String := ""); + (Name : Unit_Name; + Receiver : RPC.RPC_Receiver; + Version : String := ""; + Subp_Info : System.Address; + Subp_Info_Len : Integer); -- Register the fact that the Name receiving stub is now elaborated. -- Register the access value to the package RPC_Receiver procedure. + procedure Get_RAS_Info + (Name : Unit_Name; + Subp_Id : Subprogram_Id; + Proxy_Address : out Interfaces.Unsigned_64); + -- Look up the address of the proxy object for the given subprogram + -- in the named unit, or Null_Address if not present on the local + -- partition. + procedure Register_Passive_Package - (Name : in Unit_Name; - Version : in String := ""); + (Name : Unit_Name; + Version : String := ""); -- Register a passive package generic @@ -126,7 +155,7 @@ package System.Partition_Interface is end RCI_Info; -- RCI package information caching - procedure Run (Main : in Main_Subprogram_Type := null); + procedure Run (Main : Main_Subprogram_Type := null); -- Run the main subprogram end System.Partition_Interface; diff --git a/gcc/ada/s-solita.adb b/gcc/ada/s-solita.adb index 79c1b36b78e..6fd13da6cf8 100644 --- a/gcc/ada/s-solita.adb +++ b/gcc/ada/s-solita.adb @@ -44,6 +44,12 @@ with System.Task_Primitives.Operations; -- Used for Self -- Timed_Delay +with System.Tasking; +-- Used for Task_Id + +with Ada.Exceptions; +-- Used for Raise_Exception + package body System.Soft_Links.Tasking is package STPO renames System.Task_Primitives.Operations; @@ -79,9 +85,9 @@ package body System.Soft_Links.Tasking is procedure Timed_Delay_T (Time : Duration; Mode : Integer); -- Task-safe version of SSL.Timed_Delay - ---------------------- - -- Soft-Link Bodies -- - ---------------------- + -------------------------- + -- Soft-Link Get Bodies -- + -------------------------- function Get_Current_Excep return SSL.EOA is begin @@ -103,6 +109,10 @@ package body System.Soft_Links.Tasking is return STPO.Self.Common.Compiler_Data.Sec_Stack_Addr; end Get_Sec_Stack_Addr; + -------------------------- + -- Soft-Link Set Bodies -- + -------------------------- + procedure Set_Jmpbuf_Address (Addr : Address) is begin STPO.Self.Common.Compiler_Data.Jmpbuf_Address := Addr; @@ -118,9 +128,27 @@ package body System.Soft_Links.Tasking is STPO.Self.Common.Compiler_Data.Sec_Stack_Addr := Addr; end Set_Sec_Stack_Addr; + ------------------- + -- Timed_Delay_T -- + ------------------- + procedure Timed_Delay_T (Time : Duration; Mode : Integer) is + Self_Id : constant System.Tasking.Task_Id := STPO.Self; + begin - STPO.Timed_Delay (STPO.Self, Time, Mode); + -- In case pragma Detect_Blocking is active then Program_Error + -- must be raised if this potentially blocking operation + -- is called from a protected operation. + + if System.Tasking.Detect_Blocking + and then Self_Id.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + else + STPO.Timed_Delay (Self_Id, Time, Mode); + end if; + end Timed_Delay_T; ----------------------------- diff --git a/gcc/ada/s-taprob.adb b/gcc/ada/s-taprob.adb index 4a5b6af4bfc..9852c4e376c 100644 --- a/gcc/ada/s-taprob.adb +++ b/gcc/ada/s-taprob.adb @@ -39,6 +39,7 @@ pragma Polling (Off); with System.Task_Primitives.Operations; -- used for Write_Lock -- Unlock +-- Self with System.Parameters; -- used for Runtime_Traces @@ -87,6 +88,7 @@ package body System.Tasking.Protected_Objects is procedure Lock (Object : Protection_Access) is Ceiling_Violation : Boolean; + begin -- The lock is made without defering abortion. @@ -107,6 +109,19 @@ package body System.Tasking.Protected_Objects is if Ceiling_Violation then raise Program_Error; end if; + + -- We are entering in a protected action, so that we increase the + -- protected object nesting level (if pragma Detect_Blocking is + -- active). + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := Self; + begin + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting + 1; + end; + end if; end Lock; -------------------- @@ -115,6 +130,7 @@ package body System.Tasking.Protected_Objects is procedure Lock_Read_Only (Object : Protection_Access) is Ceiling_Violation : Boolean; + begin Read_Lock (Object.L'Access, Ceiling_Violation); @@ -125,6 +141,19 @@ package body System.Tasking.Protected_Objects is if Ceiling_Violation then raise Program_Error; end if; + + -- We are entering in a protected action, so that we increase the + -- protected object nesting level (if pragma Detect_Blocking is + -- active). + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := Self; + begin + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting + 1; + end; + end if; end Lock_Read_Only; ------------ @@ -133,6 +162,25 @@ package body System.Tasking.Protected_Objects is procedure Unlock (Object : Protection_Access) is begin + -- We are exiting from a protected action, so that we decrease the + -- protected object nesting level (if pragma Detect_Blocking is + -- active). + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := Self; + + begin + -- Cannot call this procedure without being within a protected + -- action. + + pragma Assert (Self_Id.Common.Protected_Action_Nesting > 0); + + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting - 1; + end; + end if; + Unlock (Object.L'Access); if Parameters.Runtime_Traces then diff --git a/gcc/ada/s-taskin.adb b/gcc/ada/s-taskin.adb index a79db6afb69..f667a313bf3 100644 --- a/gcc/ada/s-taskin.adb +++ b/gcc/ada/s-taskin.adb @@ -83,6 +83,7 @@ package body System.Tasking is T.Common.Parent := Parent; T.Common.Base_Priority := Base_Priority; T.Common.Current_Priority := 0; + T.Common.Protected_Action_Nesting := 0; T.Common.Call := null; T.Common.Task_Arg := Task_Arg; T.Common.Task_Entry_Point := Task_Entry_Point; diff --git a/gcc/ada/s-taskin.ads b/gcc/ada/s-taskin.ads index 5fd2c22c4ef..1dd9e27d730 100644 --- a/gcc/ada/s-taskin.ads +++ b/gcc/ada/s-taskin.ads @@ -335,13 +335,18 @@ package System.Tasking is ------------------------------------ type Activation_Chain is limited private; + -- Comment required ??? type Activation_Chain_Access is access all Activation_Chain; + -- Comment required ??? type Task_Procedure_Access is access procedure (Arg : System.Address); type Access_Boolean is access all Boolean; + Detect_Blocking : constant Boolean; + -- Boolean constant set True iff Detect_Blocking is active + ---------------------------------------------- -- Ada_Task_Control_Block (ATCB) definition -- ---------------------------------------------- @@ -421,6 +426,14 @@ package System.Tasking is -- accepts an entry or when Created activates, at which points Self is -- suspended. + Protected_Action_Nesting : Natural; + pragma Atomic (Protected_Action_Nesting); + -- The dynamic level of protected action nesting for this task. + -- This field is needed for checking whether potentially + -- blocking operations are invoked from protected actions. + -- pragma Atomic is used because it can be read/written from + -- protected interrupt handlers. + Task_Image : String (1 .. 32); -- Hold a string that provides a readable id for task, -- built from the variable of which it is a value or component. @@ -969,6 +982,14 @@ package System.Tasking is private Null_Task : constant Task_Id := null; + GL_Detect_Blocking : Integer; + pragma Import (C, GL_Detect_Blocking, "__gl_detect_blocking"); + -- Global variable exported by the binder generated file. A value + -- equal to 1 indicates that pragma Detect_Blocking is active, + -- while 0 is used for the pragma not being present. + + Detect_Blocking : constant Boolean := GL_Detect_Blocking = 1; + type Activation_Chain is record T_ID : Task_Id; end record; diff --git a/gcc/ada/s-tasren.adb b/gcc/ada/s-tasren.adb index 75eecc6755a..5763272ce24 100644 --- a/gcc/ada/s-tasren.adb +++ b/gcc/ada/s-tasren.adb @@ -102,6 +102,10 @@ package body System.Tasking.Rendezvous is Accept_Alternative_Open, No_Alternative_Open); + ---------------- + -- Local Data -- + ---------------- + Default_Treatment : constant array (Select_Modes) of Select_Treatment := (Simple_Mode => No_Alternative_Open, Else_Mode => Else_Selected, @@ -391,7 +395,19 @@ package body System.Tasking.Rendezvous is Uninterpreted_Data : System.Address) is Rendezvous_Successful : Boolean; + begin + -- If pragma Detect_Blocking is active then Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action. + + if System.Tasking.Detect_Blocking + and then STPO.Self.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + end if; + Call_Synchronous (Acceptor, E, Uninterpreted_Data, Simple_Call, Rendezvous_Successful); end Call_Simple; @@ -1309,6 +1325,17 @@ package body System.Tasking.Rendezvous is Entry_Call : Entry_Call_Link; begin + -- If pragma Detect_Blocking is active then Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action. + + if System.Tasking.Detect_Blocking + and then Self_Id.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + end if; + if Parameters.Runtime_Traces then Send_Trace_Info (W_Call, Acceptor, Entry_Index (E)); end if; @@ -1668,6 +1695,17 @@ package body System.Tasking.Rendezvous is Yielded : Boolean; begin + -- If pragma Detect_Blocking is active then Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action. + + if System.Tasking.Detect_Blocking + and then Self_Id.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + end if; + Initialization.Defer_Abort (Self_Id); Self_Id.ATC_Nesting_Level := Self_Id.ATC_Nesting_Level + 1; diff --git a/gcc/ada/s-tassta.adb b/gcc/ada/s-tassta.adb index bdd30be27f6..535add5afbd 100644 --- a/gcc/ada/s-tassta.adb +++ b/gcc/ada/s-tassta.adb @@ -226,6 +226,17 @@ package body System.Tasking.Stages is procedure Abort_Tasks (Tasks : Task_List) is begin + -- If pragma Detect_Blocking is active then Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action. + + if System.Tasking.Detect_Blocking + and then STPO.Self.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + end if; + Utilities.Abort_Tasks (Tasks); end Abort_Tasks; @@ -266,6 +277,17 @@ package body System.Tasking.Stages is All_Elaborated : Boolean := True; begin + -- If pragma Detect_Blocking is active must be checked whether + -- this potentially blocking operation is called from a + -- protected action. + + if System.Tasking.Detect_Blocking + and then Self_ID.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + end if; + pragma Debug (Debug.Trace (Self_ID, "Activate_Tasks", 'C')); @@ -513,6 +535,17 @@ package body System.Tasking.Stages is Len : Natural; begin + -- If pragma Detect_Blocking is active must be checked whether + -- this potentially blocking operation is called from a + -- protected action. + + if System.Tasking.Detect_Blocking + and then Self_ID.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + end if; + pragma Debug (Debug.Trace (Self_ID, "Create_Task", 'C')); diff --git a/gcc/ada/s-tpoben.adb b/gcc/ada/s-tpoben.adb index a195828c9b2..c1d7d3ccae4 100644 --- a/gcc/ada/s-tpoben.adb +++ b/gcc/ada/s-tpoben.adb @@ -44,6 +44,7 @@ with Ada.Exceptions; -- used for Exception_Occurrence_Access +-- Raise_Exception with System.Task_Primitives.Operations; -- used for Initialize_Lock @@ -72,6 +73,10 @@ package body System.Tasking.Protected_Objects.Entries is use Task_Primitives.Operations; use Ada.Exceptions; + ---------------- + -- Local Data -- + ---------------- + Locking_Policy : Character; pragma Import (C, Locking_Policy, "__gl_locking_policy"); @@ -216,13 +221,36 @@ package body System.Tasking.Protected_Objects.Entries is ------------------ procedure Lock_Entries - (Object : Protection_Entries_Access; Ceiling_Violation : out Boolean) is + (Object : Protection_Entries_Access; Ceiling_Violation : out Boolean) + is begin if Object.Finalized then Raise_Exception (Program_Error'Identity, "Protected Object is finalized"); end if; + -- If pragma Detect_Blocking is active then Program_Error must + -- be raised if this potentially blocking operation is called from + -- a protected action, and the protected object nesting level + -- must be increased. + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := STPO.Self; + begin + if Self_Id.Common.Protected_Action_Nesting > 0 then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + else + -- We are entering in a protected action, so that we + -- increase the protected object nesting level. + + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting + 1; + end if; + end; + end if; + -- The lock is made without defering abortion. -- Therefore the abortion has to be deferred before calling this @@ -239,14 +267,9 @@ package body System.Tasking.Protected_Objects.Entries is procedure Lock_Entries (Object : Protection_Entries_Access) is Ceiling_Violation : Boolean; - begin - if Object.Finalized then - Raise_Exception - (Program_Error'Identity, "Protected Object is finalized"); - end if; - pragma Assert (STPO.Self.Deferral_Level > 0); - Write_Lock (Object.L'Access, Ceiling_Violation); + begin + Lock_Entries (Object, Ceiling_Violation); if Ceiling_Violation then Raise_Exception (Program_Error'Identity, "Ceiling Violation"); @@ -259,12 +282,35 @@ package body System.Tasking.Protected_Objects.Entries is procedure Lock_Read_Only_Entries (Object : Protection_Entries_Access) is Ceiling_Violation : Boolean; + begin if Object.Finalized then Raise_Exception (Program_Error'Identity, "Protected Object is finalized"); end if; + -- If pragma Detect_Blocking is active then Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action, and the protected object nesting level must + -- be increased. + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := STPO.Self; + begin + if Self_Id.Common.Protected_Action_Nesting > 0 then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + else + -- We are entering in a protected action, so that we + -- increase the protected object nesting level. + + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting + 1; + end if; + end; + end if; + Read_Lock (Object.L'Access, Ceiling_Violation); if Ceiling_Violation then @@ -278,6 +324,24 @@ package body System.Tasking.Protected_Objects.Entries is procedure Unlock_Entries (Object : Protection_Entries_Access) is begin + -- We are exiting from a protected action, so that we decrease the + -- protected object nesting level (if pragma Detect_Blocking is + -- active). + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := Self; + begin + -- Cannot call this procedure without being within a protected + -- action. + + pragma Assert (Self_Id.Common.Protected_Action_Nesting > 0); + + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting - 1; + end; + end if; + Unlock (Object.L'Access); end Unlock_Entries; diff --git a/gcc/ada/s-tposen.adb b/gcc/ada/s-tposen.adb index 25a8251b9dc..a992ed1df0f 100644 --- a/gcc/ada/s-tposen.adb +++ b/gcc/ada/s-tposen.adb @@ -67,7 +67,8 @@ with System.Task_Primitives.Operations; -- Unlock with Ada.Exceptions; --- used for Exception_Id; +-- used for Exception_Id +-- Raise_Exception with System.Parameters; -- used for Single_Lock @@ -347,7 +348,30 @@ package body System.Tasking.Protected_Objects.Single_Entry is procedure Lock_Entry (Object : Protection_Entry_Access) is Ceiling_Violation : Boolean; + begin + -- If pragma Detect_Blocking is active then Program_Error must + -- be raised if this potentially blocking operation is called from + -- a protected action, and the protected object nesting level + -- must be increased. + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := STPO.Self; + begin + if Self_Id.Common.Protected_Action_Nesting > 0 then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + else + -- We are entering in a protected action, so that we + -- increase the protected object nesting level. + + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting + 1; + end if; + end; + end if; + STPO.Write_Lock (Object.L'Access, Ceiling_Violation); if Ceiling_Violation then @@ -364,7 +388,30 @@ package body System.Tasking.Protected_Objects.Single_Entry is procedure Lock_Read_Only_Entry (Object : Protection_Entry_Access) is Ceiling_Violation : Boolean; + begin + -- If pragma Detect_Blocking is active then Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action, and the protected object nesting level must + -- be increased. + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := STPO.Self; + begin + if Self_Id.Common.Protected_Action_Nesting > 0 then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + else + -- We are entering in a protected action, so that we + -- increase the protected object nesting level. + + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting + 1; + end if; + end; + end if; + STPO.Read_Lock (Object.L'Access, Ceiling_Violation); if Ceiling_Violation then @@ -465,6 +512,17 @@ package body System.Tasking.Protected_Objects.Single_Entry is Ceiling_Violation : Boolean; begin + -- If pragma Detect_Blocking is active then Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action. + + if Detect_Blocking + and then Self_Id.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + end if; + STPO.Write_Lock (Object.L'Access, Ceiling_Violation); if Ceiling_Violation then @@ -579,6 +637,17 @@ package body System.Tasking.Protected_Objects.Single_Entry is Ceiling_Violation : Boolean; begin + -- If pragma Detect_Blocking is active then Program_Error must be + -- raised if this potentially blocking operation is called from a + -- protected action. + + if Detect_Blocking + and then Self_Id.Common.Protected_Action_Nesting > 0 + then + Ada.Exceptions.Raise_Exception + (Program_Error'Identity, "potentially blocking operation"); + end if; + STPO.Write_Lock (Object.L'Access, Ceiling_Violation); if Ceiling_Violation then @@ -631,6 +700,23 @@ package body System.Tasking.Protected_Objects.Single_Entry is procedure Unlock_Entry (Object : Protection_Entry_Access) is begin + -- We are exiting from a protected action, so that we decrease the + -- protected object nesting level (if pragma Detect_Blocking is active). + + if Detect_Blocking then + declare + Self_Id : constant Task_Id := Self; + + begin + -- Cannot call Unlock_Entry without being within protected action + + pragma Assert (Self_Id.Common.Protected_Action_Nesting > 0); + + Self_Id.Common.Protected_Action_Nesting := + Self_Id.Common.Protected_Action_Nesting - 1; + end; + end if; + STPO.Unlock (Object.L'Access); end Unlock_Entry; diff --git a/gcc/ada/sem_ch3.adb b/gcc/ada/sem_ch3.adb index dd2e183ef84..7f78060490b 100644 --- a/gcc/ada/sem_ch3.adb +++ b/gcc/ada/sem_ch3.adb @@ -5594,12 +5594,13 @@ package body Sem_Ch3 is elsif Private_Extension and then Is_Generic_Type (Derived_Type) then Record_Type_Definition (Empty, Derived_Type); - -- STEP 5c: Process the record extension for non private tagged types. + -- STEP 5c: Process the record extension for non private tagged types elsif not Private_Extension then - -- Add the _parent field in the derived type. - Expand_Derived_Record (Derived_Type, Type_Def); + -- Add the _parent field in the derived type + + Expand_Record_Extension (Derived_Type, Type_Def); -- Analyze the record extension diff --git a/gcc/ada/sem_disp.adb b/gcc/ada/sem_disp.adb index 183118f3225..7ea68f85699 100644 --- a/gcc/ada/sem_disp.adb +++ b/gcc/ada/sem_disp.adb @@ -150,7 +150,8 @@ package body Sem_Disp is and then Ekind (Etype (Formal)) = E_Anonymous_Access_Type then Error_Msg_N - ("Access parameter of a remote subprogram must be controlling", + ("access parameter of remote object primitive" + & " must be controlling", Formal); end if; diff --git a/gcc/ada/sem_dist.adb b/gcc/ada/sem_dist.adb index aee306dd1d6..8314e6ca32f 100644 --- a/gcc/ada/sem_dist.adb +++ b/gcc/ada/sem_dist.adb @@ -105,6 +105,55 @@ package body Sem_Dist is end if; end Add_Stub_Constructs; + --------------------------------------- + -- Build_RAS_Primitive_Specification -- + --------------------------------------- + + function Build_RAS_Primitive_Specification + (Subp_Spec : Node_Id; + Remote_Object_Type : Node_Id) return Node_Id + is + Loc : constant Source_Ptr := Sloc (Subp_Spec); + + Primitive_Spec : constant Node_Id := + Copy_Specification (Loc, + Spec => Subp_Spec, + New_Name => Name_Call); + + Subtype_Mark_For_Self : Node_Id; + + begin + if No (Parameter_Specifications (Primitive_Spec)) then + Set_Parameter_Specifications (Primitive_Spec, New_List); + end if; + + if Nkind (Remote_Object_Type) in N_Entity then + Subtype_Mark_For_Self := + New_Occurrence_Of (Remote_Object_Type, Loc); + else + Subtype_Mark_For_Self := Remote_Object_Type; + end if; + + Prepend_To ( + Parameter_Specifications (Primitive_Spec), + Make_Parameter_Specification (Loc, + Defining_Identifier => + Make_Defining_Identifier (Loc, Name_uS), + Parameter_Type => + Make_Access_Definition (Loc, + Subtype_Mark => + Subtype_Mark_For_Self))); + + -- Trick later semantic analysis into considering this + -- operation as a primitive (dispatching) operation of + -- tagged type Obj_Type. + + Set_Comes_From_Source ( + Defining_Unit_Name (Primitive_Spec), True); + + return Primitive_Spec; + end Build_RAS_Primitive_Specification; + ------------------------- -- Full_Qualified_Name -- ------------------------- @@ -295,7 +344,6 @@ package body Sem_Dist is Async_E : Entity_Id; All_Calls_Remote_E : Entity_Id; Attribute_Subp : Entity_Id; - Local_Addr : Node_Id; begin -- Check if we have to expand the access attribute @@ -329,17 +377,11 @@ package body Sem_Dist is All_Calls_Remote_E := Boolean_Literals (Has_All_Calls_Remote (RS_Pkg_E)); - Local_Addr := - Make_Attribute_Reference (Loc, - Prefix => New_Occurrence_Of (Remote_Subp, Loc), - Attribute_Name => Name_Address); - Tick_Access_Conv_Call := Make_Function_Call (Loc, Name => New_Occurrence_Of (Attribute_Subp, Loc), Parameter_Associations => New_List ( - Local_Addr, Make_String_Literal (Loc, Full_Qualified_Name (RS_Pkg_E)), Build_Subprogram_Id (Loc, Remote_Subp), New_Occurrence_Of (Async_E, Loc), @@ -354,78 +396,165 @@ package body Sem_Dist is ------------------------------------ procedure Process_Remote_AST_Declaration (N : Node_Id) is - Loc : constant Source_Ptr := Sloc (N); - User_Type : constant Node_Id := Defining_Identifier (N); - Fat_Type : constant Entity_Id := + Loc : constant Source_Ptr := Sloc (N); + User_Type : constant Node_Id := Defining_Identifier (N); + Scop : constant Entity_Id := Scope (User_Type); + Is_RCI : constant Boolean := + Is_Remote_Call_Interface (Scop); + Is_RT : constant Boolean := + Is_Remote_Types (Scop); + Type_Def : constant Node_Id := Type_Definition (N); + + Parameter : Node_Id; + Is_Degenerate : Boolean; + -- True iff this RAS has an access formal parameter (see + -- Exp_Dist.Add_RAS_Dereference_TSS for details). + + Subpkg : constant Entity_Id := + Make_Defining_Identifier + (Loc, New_Internal_Name ('S')); + Subpkg_Decl : Node_Id; + Vis_Decls : constant List_Id := New_List; + Priv_Decls : constant List_Id := New_List; + + Obj_Type : constant Entity_Id := + Make_Defining_Identifier + (Loc, New_External_Name ( + Chars (User_Type), 'R')); + + + Full_Obj_Type : constant Entity_Id := + Make_Defining_Identifier + (Loc, Chars (Obj_Type)); + + RACW_Type : constant Entity_Id := + Make_Defining_Identifier + (Loc, New_External_Name ( + Chars (User_Type), 'P')); + + Fat_Type : constant Entity_Id := Make_Defining_Identifier (Loc, Chars (User_Type)); - New_Type_Decl : Node_Id; + Fat_Type_Decl : Node_Id; begin - -- We add a record type declaration for the equivalent fat pointer type - New_Type_Decl := + -- The tagged private type, primitive operation and RACW + -- type associated with a RAS need to all be declared in + -- a subpackage of the one that contains the RAS declaration, + -- because the primitive of the object type, and the associated + -- primitive of the stub type, need to be dispatching operations + -- of these types, and the profile of the RAS might contain + -- tagged types declared in the same scope. + + Append_To (Vis_Decls, + Make_Private_Type_Declaration (Loc, + Defining_Identifier => Obj_Type, + Abstract_Present => True, + Tagged_Present => True, + Limited_Present => True)); + + Append_To (Priv_Decls, Make_Full_Type_Declaration (Loc, - Defining_Identifier => Fat_Type, - Type_Definition => + Defining_Identifier => + Full_Obj_Type, + Type_Definition => Make_Record_Definition (Loc, - Component_List => - Make_Component_List (Loc, - Component_Items => New_List ( - - Make_Component_Declaration (Loc, - Defining_Identifier => - Make_Defining_Identifier (Loc, - Chars => Name_Ras), - Component_Definition => - Make_Component_Definition (Loc, - Aliased_Present => False, - Subtype_Indication => - New_Occurrence_Of (RTE (RE_Unsigned_64), Loc))), - - Make_Component_Declaration (Loc, - Defining_Identifier => - Make_Defining_Identifier (Loc, - Chars => Name_Origin), - Component_Definition => - Make_Component_Definition (Loc, - Aliased_Present => False, - Subtype_Indication => - New_Reference_To (Standard_Integer, Loc))), - - Make_Component_Declaration (Loc, - Defining_Identifier => - Make_Defining_Identifier (Loc, - Chars => Name_Receiver), - Component_Definition => - Make_Component_Definition (Loc, - Aliased_Present => False, - Subtype_Indication => - New_Reference_To (RTE (RE_Unsigned_64), Loc))), - - Make_Component_Declaration (Loc, - Defining_Identifier => - Make_Defining_Identifier (Loc, - Chars => Name_Subp_Id), - Component_Definition => - Make_Component_Definition (Loc, - Aliased_Present => False, - Subtype_Indication => - New_Reference_To (Standard_Natural, Loc))), - - Make_Component_Declaration (Loc, - Defining_Identifier => - Make_Defining_Identifier (Loc, - Chars => Name_Async), - Component_Definition => - Make_Component_Definition (Loc, - Aliased_Present => False, - Subtype_Indication => - New_Reference_To (Standard_Boolean, Loc))))))); - - Insert_After (N, New_Type_Decl); + Abstract_Present => True, + Tagged_Present => True, + Limited_Present => True, + Null_Present => True, + Component_List => Empty))); + + Is_Degenerate := False; + Parameter := First (Parameter_Specifications (Type_Def)); + Parameters : while Present (Parameter) loop + if Nkind (Parameter_Type (Parameter)) = N_Access_Definition then + Error_Msg_N ("formal parameter& has anonymous access type?", + Defining_Identifier (Parameter)); + Is_Degenerate := True; + exit Parameters; + end if; + Next (Parameter); + end loop Parameters; + + if Is_Degenerate then + Error_Msg_NE ( + "remote access-to-subprogram type& can only be null?", + Defining_Identifier (Parameter), User_Type); + -- The only legal value for a RAS with a formal parameter of an + -- anonymous access type is null, because it cannot be + -- subtype-Conformant with any legal remote subprogram declaration. + -- In this case, we cannot generate a corresponding primitive + -- operation. + + else + Append_To (Vis_Decls, + Make_Abstract_Subprogram_Declaration (Loc, + Specification => Build_RAS_Primitive_Specification ( + Subp_Spec => Type_Def, + Remote_Object_Type => Obj_Type))); + end if; + + Append_To (Vis_Decls, + Make_Full_Type_Declaration (Loc, + Defining_Identifier => RACW_Type, + Type_Definition => + Make_Access_To_Object_Definition (Loc, + All_Present => True, + Subtype_Indication => + Make_Attribute_Reference (Loc, + Prefix => + New_Occurrence_Of (Obj_Type, Loc), + Attribute_Name => + Name_Class)))); + Set_Is_Remote_Call_Interface (RACW_Type, Is_RCI); + Set_Is_Remote_Types (RACW_Type, Is_RT); + -- ??? Object RPC receiver generation should be bypassed for this + -- RACW type, since actually calls will be received by the package + -- RPC receiver for the designated RCI subprogram. + + Subpkg_Decl := + Make_Package_Declaration (Loc, + Make_Package_Specification (Loc, + Defining_Unit_Name => + Subpkg, + Visible_Declarations => + Vis_Decls, + Private_Declarations => + Priv_Decls, + End_Label => + New_Occurrence_Of (Subpkg, Loc))); + Set_Is_Remote_Call_Interface (Subpkg, Is_RCI); + Set_Is_Remote_Types (Subpkg, Is_RT); + Insert_After_And_Analyze (N, Subpkg_Decl); + + -- Many parts of the analyzer and expander expect + -- that the fat pointer type used to implement remote + -- access to subprogram types be a record. + -- Note: The structure of this type must be kept consistent + -- with the code generated by Remote_AST_Null_Value for the + -- corresponding 'null' expression. + + Fat_Type_Decl := Make_Full_Type_Declaration (Loc, + Defining_Identifier => Fat_Type, + Type_Definition => + Make_Record_Definition (Loc, + Component_List => + Make_Component_List (Loc, + Component_Items => New_List ( + Make_Component_Declaration (Loc, + Defining_Identifier => + Make_Defining_Identifier (Loc, Name_Ras), + Component_Definition => + Make_Component_Definition (Loc, + Aliased_Present => + False, + Subtype_Indication => + New_Occurrence_Of (RACW_Type, Loc))))))); Set_Equivalent_Type (User_Type, Fat_Type); Set_Corresponding_Remote_Type (Fat_Type, User_Type); + Insert_After_And_Analyze (Subpkg_Decl, Fat_Type_Decl); -- The reason we suppress the initialization procedure is that we know -- that no initialization is required (even if Initialize_Scalars mode @@ -506,8 +635,7 @@ package body Sem_Dist is -- Remote_AST_E_Dereference -- ------------------------------ - function Remote_AST_E_Dereference (P : Node_Id) return Boolean - is + function Remote_AST_E_Dereference (P : Node_Id) return Boolean is ET : constant Entity_Id := Etype (P); begin @@ -534,12 +662,11 @@ package body Sem_Dist is -- Remote_AST_I_Dereference -- ------------------------------ - function Remote_AST_I_Dereference (P : Node_Id) return Boolean - is + function Remote_AST_I_Dereference (P : Node_Id) return Boolean is ET : constant Entity_Id := Etype (P); Deref : Node_Id; - begin + begin if Comes_From_Source (P) and then (Is_Remote_Call_Interface (ET) or else Is_Remote_Types (ET)) @@ -563,9 +690,8 @@ package body Sem_Dist is --------------------------- function Remote_AST_Null_Value - (N : Node_Id; - Typ : Entity_Id) - return Boolean + (N : Node_Id; + Typ : Entity_Id) return Boolean is Loc : constant Source_Ptr := Sloc (N); Target_Type : Entity_Id; @@ -603,12 +729,12 @@ package body Sem_Dist is Rewrite (N, Make_Aggregate (Loc, - Expressions => New_List ( - Make_Integer_Literal (Loc, 0), -- Ras - Make_Integer_Literal (Loc, 0), -- Origin - Make_Integer_Literal (Loc, 0), -- Receiver - Make_Integer_Literal (Loc, 0), -- Subp_Id - New_Occurrence_Of (Standard_False, Loc)))); -- Asyn + Component_Associations => New_List ( + Make_Component_Association (Loc, + Choices => New_List ( + Make_Identifier (Loc, Name_Ras)), + Expression => + Make_Null (Loc))))); Analyze_And_Resolve (N, Target_Type); return True; end Remote_AST_Null_Value; diff --git a/gcc/ada/sem_dist.ads b/gcc/ada/sem_dist.ads index efadbef6644..4acf872baf4 100644 --- a/gcc/ada/sem_dist.ads +++ b/gcc/ada/sem_dist.ads @@ -36,6 +36,13 @@ package Sem_Dist is -- caller stubs, expansion takes place directly in the specification and -- no additional compilation unit is created. + function Build_RAS_Primitive_Specification + (Subp_Spec : Node_Id; + Remote_Object_Type : Node_Id) return Node_Id; + -- Build a subprogram specification for the primitive operation of the + -- Remote_Object_Type used to implement a remote access-to-subprogram + -- type whose parameter profile is given by specification Subp_Spec. + function Is_All_Remote_Call (N : Node_Id) return Boolean; -- Check whether a function or procedure call should be expanded into -- a remote call, because the entity is declared in a package decl that @@ -75,9 +82,8 @@ package Sem_Dist is -- the previous function. function Remote_AST_Null_Value - (N : Node_Id; - Typ : Entity_Id) - return Boolean; + (N : Node_Id; + Typ : Entity_Id) return Boolean; -- If N is a null value and Typ a remote access to subprogram type, -- this function will check if null needs to be replaced with an -- aggregate and will return True in this case. Otherwise, it will diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index 02b19473962..6fd97d8a269 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -2929,7 +2929,6 @@ package body Sem_Prag is -- denoted entities in the same declarative part. Hom_Id := Def_Id; - while Present (Hom_Id) loop Def_Id := Get_Base_Subprogram (Hom_Id); @@ -4498,6 +4497,9 @@ package body Sem_Prag is elsif Ekind (Nm) = E_Record_Type and then Present (Corresponding_Remote_Type (Nm)) then + -- A record type that is the Equivalent_Type for + -- a remote access-to-subprogram type. + N := Declaration_Node (Corresponding_Remote_Type (Nm)); if Nkind (N) = N_Full_Type_Declaration @@ -4507,6 +4509,13 @@ package body Sem_Prag is L := Parameter_Specifications (Type_Definition (N)); Process_Async_Pragma; + if Is_Asynchronous (Nm) + and then Expander_Active + then + RACW_Type_Is_Asynchronous ( + Underlying_RACW_Type (Nm)); + end if; + else Error_Pragma_Arg ("pragma% cannot reference access-to-function type", diff --git a/gcc/ada/sem_type.adb b/gcc/ada/sem_type.adb index 8f2ccad2350..8d0cf7577e0 100644 --- a/gcc/ada/sem_type.adb +++ b/gcc/ada/sem_type.adb @@ -141,7 +141,7 @@ package body Sem_Type is -- visibility of these user-defined operations must be special-cased -- to determine whether they hide or are hidden by predefined operators. -- The form P."+" (x, y) requires additional handling. - -- + -- Concatenation is treated more conventionally: for every one-dimensional -- array type we introduce a explicit concatenation operator. This is -- necessary to handle the case of (element & element => array) which @@ -154,7 +154,7 @@ package body Sem_Type is procedure All_Overloads; pragma Warnings (Off, All_Overloads); - -- Debugging procedure: list full contents of Overloads table. + -- Debugging procedure: list full contents of Overloads table procedure New_Interps (N : Node_Id); -- Initialize collection of interpretations for the given node, which is @@ -197,7 +197,6 @@ package body Sem_Type is begin Get_First_Interp (N, Index, It); - while Present (It.Nam) loop -- A user-defined subprogram hides another declared at an outer @@ -234,8 +233,8 @@ package body Sem_Type is exit; elsif not In_Open_Scopes (Scope (Name)) - or else Scope_Depth (Scope (Name)) - <= Scope_Depth (Scope (It.Nam)) + or else Scope_Depth (Scope (Name)) <= + Scope_Depth (Scope (It.Nam)) then -- If ambiguity within instance, and entity is not an -- implicit operation, save for later disambiguation. @@ -297,9 +296,7 @@ package body Sem_Type is elsif Nkind (N) = N_Function_Call then Arg := First_Actual (N); - while Present (Arg) loop - if No (Universal_Interpretation (Arg)) then return False; end if; @@ -338,7 +335,7 @@ package body Sem_Type is or else Is_Potentially_Use_Visible (Vis_Type) or else In_Use (Vis_Type) or else (In_Use (Scope (Vis_Type)) - and then not Is_Hidden (Vis_Type)) + and then not Is_Hidden (Vis_Type)) or else Nkind (N) = N_Expanded_Name or else (Nkind (N) in N_Op and then E = Entity (N)) or else In_Instance @@ -354,8 +351,8 @@ package body Sem_Type is elsif Nkind (N) = N_Function_Call and then Nkind (Name (N)) = N_Expanded_Name and then (Entity (Prefix (Name (N))) = Scope (Base_Type (T)) - or else Entity (Prefix (Name (N))) = Scope (Vis_Type) - or else Scope (Vis_Type) = System_Aux_Id) + or else Entity (Prefix (Name (N))) = Scope (Vis_Type) + or else Scope (Vis_Type) = System_Aux_Id) then null; @@ -390,7 +387,7 @@ package body Sem_Type is Set_Etype (N, T); else - -- Record both the operator or subprogram name, and its type. + -- Record both the operator or subprogram name, and its type if Nkind (N) in N_Op or else Is_Entity_Name (N) then Set_Entity (N, E); @@ -504,12 +501,12 @@ package body Sem_Type is for J in First_Interp .. All_Interp.Last - 1 loop - -- Current homograph is not hidden. Add to overloads. + -- Current homograph is not hidden. Add to overloads if not Is_Immediately_Visible (All_Interp.Table (J).Nam) then exit; - -- Homograph is hidden, unless it is a predefined operator. + -- Homograph is hidden, unless it is a predefined operator elsif Type_Conformant (H, All_Interp.Table (J).Nam) then @@ -547,7 +544,7 @@ package body Sem_Type is H := Homonym (H); end loop; - -- Scan list of homographs for use-visible entities only. + -- Scan list of homographs for use-visible entities only H := Current_Entity (Ent); @@ -576,7 +573,7 @@ package body Sem_Type is if All_Interp.Last = First_Interp + 1 then - -- The original interpretation is in fact not overloaded. + -- The original interpretation is in fact not overloaded Set_Is_Overloaded (N, False); end if; @@ -666,7 +663,7 @@ package body Sem_Type is then return True; - -- The context may be class wide. + -- The context may be class wide elsif Is_Class_Wide_Type (T1) and then Is_Ancestor (Root_Type (T1), T2) @@ -903,6 +900,10 @@ package body Sem_Type is Predef_Subp : Entity_Id; User_Subp : Entity_Id; + function Inherited_From_Actual (S : Entity_Id) return Boolean; + -- Determine whether one of the candidates is an operation inherited + -- by a type that is derived from an actual in an instantiation. + function Is_Actual_Subprogram (S : Entity_Id) return Boolean; -- Determine whether a subprogram is an actual in an enclosing -- instance. An overloading between such a subprogram and one @@ -914,6 +915,7 @@ package body Sem_Type is -- ambiguities when two formal types have the same actual. function Standard_Operator return Boolean; + -- Comment required ??? function Remove_Conversions return Interp; -- Last chance for pathological cases involving comparisons on @@ -932,6 +934,29 @@ package body Sem_Type is -- pathology in the other direction with calls whose multiple overloaded -- actuals make them truly unresolvable. + --------------------------- + -- Inherited_From_Actual -- + --------------------------- + + function Inherited_From_Actual (S : Entity_Id) return Boolean is + Par : constant Node_Id := Parent (S); + begin + if Nkind (Par) /= N_Full_Type_Declaration + or else Nkind (Type_Definition (Par)) /= N_Derived_Type_Definition + then + return False; + else + return Is_Entity_Name (Subtype_Indication (Type_Definition (Par))) + and then + Is_Generic_Actual_Type ( + Entity (Subtype_Indication (Type_Definition (Par)))); + end if; + end Inherited_From_Actual; + + -------------------------- + -- Is_Actual_Subprogram -- + -------------------------- + function Is_Actual_Subprogram (S : Entity_Id) return Boolean is begin return In_Open_Scopes (Scope (S)) @@ -947,7 +972,6 @@ package body Sem_Type is function Matches (Actual, Formal : Node_Id) return Boolean is T1 : constant Entity_Id := Etype (Actual); T2 : constant Entity_Id := Etype (Formal); - begin return T1 = T2 or else @@ -969,9 +993,9 @@ package body Sem_Type is Act2 : Node_Id; begin - It1 := No_Interp; - Get_First_Interp (N, I, It); + It1 := No_Interp; + Get_First_Interp (N, I, It); while Present (It.Typ) loop if not Is_Overloadable (It.Nam) then @@ -1055,12 +1079,11 @@ package body Sem_Type is Get_Next_Interp (I, It); end loop; - if Serious_Errors_Detected > 0 then - - -- After some error, a formal may have Any_Type and yield - -- a spurious match. To avoid cascaded errors if possible, - -- check for such a formal in either candidate. + -- After some error, a formal may have Any_Type and yield + -- a spurious match. To avoid cascaded errors if possible, + -- check for such a formal in either candidate. + if Serious_Errors_Detected > 0 then declare Formal : Entity_Id; @@ -1115,17 +1138,15 @@ package body Sem_Type is -- Start of processing for Disambiguate begin - -- Recover the two legal interpretations. + -- Recover the two legal interpretations Get_First_Interp (N, I, It); - while I /= I1 loop Get_Next_Interp (I, It); end loop; It1 := It; Nam1 := It.Nam; - while I /= I2 loop Get_Next_Interp (I, It); end loop; @@ -1154,12 +1175,12 @@ package body Sem_Type is declare Candidate : Interp := No_Interp; + begin Get_First_Interp (N, I, It); - while Present (It.Typ) loop if (Covers (Typ, It.Typ) - or else Typ = Any_Type) + or else Typ = Any_Type) and then (It.Typ = Universal_Integer or else It.Typ = Universal_Real) @@ -1183,8 +1204,7 @@ package body Sem_Type is end; elsif Chars (Nam1) /= Name_Op_Not - and then (Typ = Standard_Boolean - or else Typ = Any_Boolean) + and then (Typ = Standard_Boolean or else Typ = Any_Boolean) then -- Equality or comparison operation. Choose predefined operator -- if arguments are universal. The node may be an operator, a @@ -1215,7 +1235,6 @@ package body Sem_Type is Universal_Interpretation (Arg1) then Get_First_Interp (N, I, It); - while Scope (It.Nam) /= Standard_Standard loop Get_Next_Interp (I, It); end loop; @@ -1273,6 +1292,11 @@ package body Sem_Type is -- node is overloaded, it did not resolve to the global entity in -- the generic, and we choose the formal subprogram. + -- Finally, the ambiguity can be between an explicit subprogram and + -- one inherited (with different defaults) from an actual. In this + -- case the resolution was to the explicit declaration in the + -- generic, and remains so in the instance. + elsif In_Instance then if Nkind (N) = N_Function_Call or else Nkind (N) = N_Procedure_Call_Statement @@ -1289,6 +1313,16 @@ package body Sem_Type is elsif Is_Act2 and then not Is_Act1 then return It2; + + elsif Inherited_From_Actual (Nam1) + and then Comes_From_Source (Nam2) + then + return It2; + + elsif Inherited_From_Actual (Nam2) + and then Comes_From_Source (Nam1) + then + return It1; end if; Actual := First_Actual (N); @@ -1306,7 +1340,6 @@ package body Sem_Type is end; elsif Nkind (N) in N_Binary_Op then - if Matches (Left_Opnd (N), First_Formal (Nam1)) and then Matches (Right_Opnd (N), Next_Formal (First_Formal (Nam1))) @@ -1317,7 +1350,6 @@ package body Sem_Type is end if; elsif Nkind (N) in N_Unary_Op then - if Etype (Right_Opnd (N)) = Etype (First_Formal (Nam1)) then return It1; else @@ -1374,7 +1406,7 @@ package body Sem_Type is then if Is_Fixed_Point_Type (Typ) and then (Chars (Nam1) = Name_Op_Multiply - or else Chars (Nam1) = Name_Op_Divide) + or else Chars (Nam1) = Name_Op_Divide) and then Ada_Version = Ada_83 then if It2.Nam = Predef_Subp then @@ -1393,7 +1425,6 @@ package body Sem_Type is return It2; end if; end if; - end Disambiguate; --------------------- @@ -1449,7 +1480,6 @@ package body Sem_Type is begin if Is_Overloaded (R) then Get_First_Interp (R, I, It); - while Present (It.Typ) loop if Covers (T, It.Typ) or else Covers (It.Typ, T) then @@ -1474,8 +1504,7 @@ package body Sem_Type is Set_Etype (R, TR); - -- In the non-overloaded case, the Etype of R is already set - -- correctly. + -- In the non-overloaded case, the Etype of R is already set correctly else null; @@ -1542,7 +1571,6 @@ package body Sem_Type is end if; Map_Ptr := Headers (Hash (O_N)); - while Present (Interp_Map.Table (Map_Ptr).Node) loop if Interp_Map.Table (Map_Ptr).Node = O_N then Int_Ind := Interp_Map.Table (Map_Ptr).Index; @@ -1598,16 +1626,14 @@ package body Sem_Type is else Get_First_Interp (N, I, It); - while Present (It.Typ) loop if (Covers (Typ, It.Typ) - and then - (Scope (It.Nam) /= Standard_Standard - or else not Is_Invisible_Operator (N, Base_Type (Typ)))) - + and then + (Scope (It.Nam) /= Standard_Standard + or else not Is_Invisible_Operator (N, Base_Type (Typ)))) or else (not Is_Tagged_Type (Typ) - and then Ekind (Typ) /= E_Anonymous_Access_Type - and then Covers (It.Typ, Typ)) + and then Ekind (Typ) /= E_Anonymous_Access_Type + and then Covers (It.Typ, Typ)) then return True; end if; @@ -1685,7 +1711,6 @@ package body Sem_Type is else Get_First_Interp (R, Index, It); - loop T2 := Specific_Type (T, It.Typ); @@ -1714,7 +1739,6 @@ package body Sem_Type is else Typ := Any_Type; Get_First_Interp (L, Index, It); - while Present (It.Typ) loop Typ := Check_Right_Argument (It.Typ); exit when Typ /= Any_Type; @@ -1726,7 +1750,6 @@ package body Sem_Type is -- If Typ is Any_Type, it means no compatible pair of types was found if Typ = Any_Type then - if Nkind (Parent (L)) in N_Op then Error_Msg_N ("incompatible types for operator", Parent (L)); @@ -1947,7 +1970,6 @@ package body Sem_Type is New_F := First_Formal (New_S); Old_F := First_Formal (Op); Num := 0; - while Present (New_F) and then Present (Old_F) loop Num := Num + 1; Next_Formal (New_F); @@ -2095,7 +2117,6 @@ package body Sem_Type is -- Find end of Interp list and copy downward to erase the discarded one II := I + 1; - while Present (All_Interp.Table (II).Typ) loop II := II + 1; end loop; diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index 0f1894aef82..762be69a9a4 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -41,7 +41,6 @@ with Nlists; use Nlists; with Nmake; use Nmake; with Output; use Output; with Opt; use Opt; -with Restrict; use Restrict; with Rtsfind; use Rtsfind; with Scans; use Scans; with Scn; use Scn; @@ -869,33 +868,23 @@ package body Sem_Util is procedure Check_Potentially_Blocking_Operation (N : Node_Id) is S : Entity_Id; - Loc : constant Source_Ptr := Sloc (N); begin - -- N is one of the potentially blocking operations listed in - -- 9.5.1 (8). When using the Ravenscar profile, raise Program_Error - -- before N if the context is a protected action. Otherwise, only issue - -- a warning, since some users are relying on blocking operations - -- inside protected objects. - -- Indirect blocking through a subprogram call - -- cannot be diagnosed statically without interprocedural analysis, - -- so we do not attempt to do it here. + -- N is one of the potentially blocking operations listed in 9.5.1(8). + -- When pragma Detect_Blocking is active, the run time will raise + -- Program_Error. Here we only issue a warning, since we generally + -- support the use of potentially blocking operations in the absence + -- of the pragma. - S := Scope (Current_Scope); + -- Indirect blocking through a subprogram call cannot be diagnosed + -- statically without interprocedural analysis, so we do not attempt + -- to do it here. + S := Scope (Current_Scope); while Present (S) and then S /= Standard_Standard loop if Is_Protected_Type (S) then - if Restricted_Profile then - Insert_Before_And_Analyze (N, - Make_Raise_Program_Error (Loc, - Reason => PE_Potentially_Blocking_Operation)); - Error_Msg_N ("potentially blocking operation, " & - " Program Error will be raised at run time?", N); - - else - Error_Msg_N - ("potentially blocking operation in protected operation?", N); - end if; + Error_Msg_N + ("potentially blocking operation in protected operation?", N); return; end if; @@ -5781,10 +5770,9 @@ package body Sem_Util is -- scope because the back end otherwise tries to allocate a -- variable length temporary for the particular variant. - -- ??? With tree-ssa, the back-end does not (yet) support these - -- types either, so disable this optimization for now. - - if Has_Discriminants (Typ) then + if Opt.GCC_Version = 2 + and then Has_Discriminants (Typ) + then return True; -- For GCC 3, or for a non-discriminated record in GCC 2, we are diff --git a/gcc/ada/sem_util.ads b/gcc/ada/sem_util.ads index 5212ffb49e3..4cc22f8b917 100644 --- a/gcc/ada/sem_util.ads +++ b/gcc/ada/sem_util.ads @@ -110,8 +110,7 @@ package Sem_Util is procedure Check_Potentially_Blocking_Operation (N : Node_Id); -- N is one of the statement forms that is a potentially blocking - -- operation. If it appears within a protected action, emit warning - -- and raise Program_Error. + -- operation. If it appears within a protected action, emit warning. procedure Check_VMS (Construct : Node_Id); -- Check that this the target is OpenVMS, and if so, return with diff --git a/gcc/ada/trans.c b/gcc/ada/trans.c index c22c192da08..4defe553e62 100644 --- a/gcc/ada/trans.c +++ b/gcc/ada/trans.c @@ -779,8 +779,8 @@ Attribute_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, int attribute) if (attribute == Attr_Max_Size_In_Storage_Elements) gnu_result = convert (sizetype, - fold (build (CEIL_DIV_EXPR, bitsizetype, - gnu_result, bitsize_unit_node))); + fold (build2 (CEIL_DIV_EXPR, bitsizetype, + gnu_result, bitsize_unit_node))); break; case Attr_Alignment: @@ -1101,8 +1101,8 @@ Attribute_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, int attribute) example in AARM 11.6(5.e). */ if (prefix_unused && TREE_SIDE_EFFECTS (gnu_prefix) && !Is_Entity_Name (Prefix (gnat_node))) - gnu_result = fold (build (COMPOUND_EXPR, TREE_TYPE (gnu_result), - gnu_prefix, gnu_result)); + gnu_result = fold (build2 (COMPOUND_EXPR, TREE_TYPE (gnu_result), + gnu_prefix, gnu_result)); *gnu_result_type_p = gnu_result_type; return gnu_result; @@ -1197,9 +1197,9 @@ Case_Statement_to_gnu (Node_Id gnat_node) abort (); } - add_stmt_with_node (build (CASE_LABEL_EXPR, void_type_node, - gnu_low, gnu_high, - create_artificial_label ()), + add_stmt_with_node (build3 (CASE_LABEL_EXPR, void_type_node, + gnu_low, gnu_high, + create_artificial_label ()), gnat_choice); } @@ -1214,8 +1214,8 @@ Case_Statement_to_gnu (Node_Id gnat_node) /* Now emit a definition of the label all the cases branched to. */ add_stmt (build1 (LABEL_EXPR, void_type_node, TREE_VALUE (gnu_switch_label_stack))); - gnu_result = build (SWITCH_EXPR, TREE_TYPE (gnu_expr), gnu_expr, - end_stmt_group (), NULL_TREE); + gnu_result = build3 (SWITCH_EXPR, TREE_TYPE (gnu_expr), gnu_expr, + end_stmt_group (), NULL_TREE); pop_stack (&gnu_switch_label_stack); return gnu_result; @@ -1279,10 +1279,10 @@ Loop_Statement_to_gnu (Node_Id gnat_node) || tree_int_cst_equal (gnu_last, gnu_limit)) { gnu_cond_expr - = build (COND_EXPR, void_type_node, - build_binary_op (LE_EXPR, integer_type_node, - gnu_low, gnu_high), - NULL_TREE, alloc_stmt_list ()); + = build3 (COND_EXPR, void_type_node, + build_binary_op (LE_EXPR, integer_type_node, + gnu_low, gnu_high), + NULL_TREE, alloc_stmt_list ()); annotate_with_node (gnu_cond_expr, gnat_loop_spec); } @@ -1485,8 +1485,8 @@ Subprogram_Body_to_gnu (Node_Id gnat_node) add_stmt_with_node (build1 (RETURN_EXPR, void_type_node, - build (MODIFY_EXPR, TREE_TYPE (gnu_retval), - DECL_RESULT (current_function_decl), gnu_retval)), + build2 (MODIFY_EXPR, TREE_TYPE (gnu_retval), + DECL_RESULT (current_function_decl), gnu_retval)), gnat_node); gnat_poplevel (); gnu_result = end_stmt_group (); @@ -1520,10 +1520,12 @@ Subprogram_Body_to_gnu (Node_Id gnat_node) /* Subroutine of gnat_to_gnu to translate gnat_node, either an N_Function_Call or an N_Procedure_Call_Statement, to a GCC tree, which is returned. - GNU_RESULT_TYPE_P is a pointer to where we should place the result type. */ + GNU_RESULT_TYPE_P is a pointer to where we should place the result type. + If GNU_TARGET is non-null, this must be a function call and the result + of the call is to be placed into that object. */ static tree -call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p) +call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, tree gnu_target) { tree gnu_result; /* The GCC node corresponding to the GNAT subprogram name. This can either @@ -1566,7 +1568,7 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p) gnat_actual = Next_Actual (gnat_actual)) add_stmt (gnat_to_gnu (gnat_actual)); - if (Nkind (gnat_node) == N_Function_Call) + if (Nkind (gnat_node) == N_Function_Call && !gnu_target) { *gnu_result_type_p = TREE_TYPE (gnu_subprog_type); return build1 (NULL_EXPR, *gnu_result_type_p, @@ -1576,6 +1578,37 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p) return build_call_raise (PE_Stubbed_Subprogram_Called); } + /* If we are calling by supplying a pointer to a target, set up that + pointer as the first argument. Use GNU_TARGET if one was passed; + otherwise, make a target by building a variable of the maximum size + of the type. */ + if (TYPE_RETURNS_BY_TARGET_PTR_P (gnu_subprog_type)) + { + tree gnu_real_ret_type + = TREE_TYPE (TREE_VALUE (TYPE_ARG_TYPES (gnu_subprog_type))); + + if (!gnu_target) + { + tree gnu_obj_type + = maybe_pad_type (gnu_real_ret_type, + max_size (TYPE_SIZE (gnu_real_ret_type), true), + 0, Etype (Name (gnat_node)), "PAD", false, + false, false); + + gnu_target = create_tmp_var_raw (gnu_obj_type, "LR"); + gnat_pushdecl (gnu_target, gnat_node); + } + + gnu_actual_list + = tree_cons (NULL_TREE, + build_unary_op (ADDR_EXPR, NULL_TREE, + unchecked_convert (gnu_real_ret_type, + gnu_target, + false)), + NULL_TREE); + + } + /* The only way we can be making a call via an access type is if Name is an explicit dereference. In that case, get the list of formal args from the type the access type is pointing to. Otherwise, get the formals from @@ -1660,8 +1693,8 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p) } /* Set up to move the copy back to the original. */ - gnu_temp = build (MODIFY_EXPR, TREE_TYPE (gnu_copy), - gnu_copy, gnu_actual); + gnu_temp = build2 (MODIFY_EXPR, TREE_TYPE (gnu_copy), + gnu_copy, gnu_actual); annotate_with_node (gnu_temp, gnat_actual); append_to_statement_list (gnu_temp, &gnu_after_list); } @@ -1826,12 +1859,24 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p) gnu_actual_list = tree_cons (NULL_TREE, gnu_actual, gnu_actual_list); } - gnu_subprog_call = build (CALL_EXPR, TREE_TYPE (gnu_subprog_type), - gnu_subprog_addr, nreverse (gnu_actual_list), - NULL_TREE); + gnu_subprog_call = build3 (CALL_EXPR, TREE_TYPE (gnu_subprog_type), + gnu_subprog_addr, nreverse (gnu_actual_list), + NULL_TREE); - /* If it is a function call, the result is the call expression. */ - if (Nkind (gnat_node) == N_Function_Call) + /* If we return by passing a target, we emit the call and return the target + as our result. */ + if (TYPE_RETURNS_BY_TARGET_PTR_P (gnu_subprog_type)) + { + add_stmt_with_node (gnu_subprog_call, gnat_node); + *gnu_result_type_p + = TREE_TYPE (TREE_VALUE (TYPE_ARG_TYPES (gnu_subprog_type))); + return unchecked_convert (*gnu_result_type_p, gnu_target, false); + } + + /* If it is a function call, the result is the call expression unless + a target is specified, in which case we copy the result into the target + and return the assignment statement. */ + else if (Nkind (gnat_node) == N_Function_Call) { gnu_result = gnu_subprog_call; @@ -1841,7 +1886,12 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p) || TYPE_RETURNS_BY_REF_P (gnu_subprog_type)) gnu_result = build_unary_op (INDIRECT_REF, NULL_TREE, gnu_result); - *gnu_result_type_p = get_unpadded_type (Etype (gnat_node)); + if (gnu_target) + gnu_result = build_binary_op (MODIFY_EXPR, NULL_TREE, + gnu_target, gnu_result); + else + *gnu_result_type_p = get_unpadded_type (Etype (gnat_node)); + return gnu_result; } @@ -2111,12 +2161,12 @@ Handled_Sequence_Of_Statements_to_gnu (Node_Id gnat_node) gnu_handler = end_stmt_group (); /* This block is now "if (setjmp) ... else ". */ - gnu_result = build (COND_EXPR, void_type_node, - (build_call_1_expr - (setjmp_decl, - build_unary_op (ADDR_EXPR, NULL_TREE, - gnu_jmpbuf_decl))), - gnu_handler, gnu_inner_block); + gnu_result = build3 (COND_EXPR, void_type_node, + (build_call_1_expr + (setjmp_decl, + build_unary_op (ADDR_EXPR, NULL_TREE, + gnu_jmpbuf_decl))), + gnu_handler, gnu_inner_block); } else if (gcc_zcx) { @@ -2131,8 +2181,8 @@ Handled_Sequence_Of_Statements_to_gnu (Node_Id gnat_node) gnu_handlers = end_stmt_group (); /* Now make the TRY_CATCH_EXPR for the block. */ - gnu_result = build (TRY_CATCH_EXPR, void_type_node, - gnu_inner_block, gnu_handlers); + gnu_result = build2 (TRY_CATCH_EXPR, void_type_node, + gnu_inner_block, gnu_handlers); } else gnu_result = gnu_inner_block; @@ -2225,7 +2275,7 @@ Exception_Handler_to_gnu_sjlj (Node_Id gnat_node) gnu_choice, this_choice); } - return build (COND_EXPR, void_type_node, gnu_choice, gnu_body, NULL_TREE); + return build3 (COND_EXPR, void_type_node, gnu_choice, gnu_body, NULL_TREE); } /* Subroutine of gnat_to_gnu to translate gnat_node, an N_Exception_Handler, @@ -2312,7 +2362,7 @@ Exception_Handler_to_gnu_zcx (Node_Id gnat_node) We use a local variable to retrieve the incoming value at handler entry time, and reuse it to feed the end_handler hook's argument at exit. */ - gnu_current_exc_ptr = build (EXC_PTR_EXPR, ptr_type_node); + gnu_current_exc_ptr = build0 (EXC_PTR_EXPR, ptr_type_node); gnu_incoming_exc_ptr = create_var_decl (get_identifier ("EXPTR"), NULL_TREE, ptr_type_node, gnu_current_exc_ptr, false, false, false, false, NULL, @@ -2325,8 +2375,8 @@ Exception_Handler_to_gnu_zcx (Node_Id gnat_node) add_stmt_list (Statements (gnat_node)); gnat_poplevel (); - return build (CATCH_EXPR, void_type_node, gnu_etypes_list, - end_stmt_group ()); + return build2 (CATCH_EXPR, void_type_node, gnu_etypes_list, + end_stmt_group ()); } /* Subroutine of gnat_to_gnu to generate code for an N_Compilation unit. */ @@ -2857,13 +2907,13 @@ gnat_to_gnu (Node_Id gnat_node) expression if the slice range is not null (max >= min) or returns the min if the slice range is null */ gnu_expr - = fold (build (COND_EXPR, gnu_expr_type, - build_binary_op (GE_EXPR, gnu_expr_type, - convert (gnu_expr_type, - gnu_max_expr), - convert (gnu_expr_type, - gnu_min_expr)), - gnu_expr, gnu_min_expr)); + = fold (build3 (COND_EXPR, gnu_expr_type, + build_binary_op (GE_EXPR, gnu_expr_type, + convert (gnu_expr_type, + gnu_max_expr), + convert (gnu_expr_type, + gnu_min_expr)), + gnu_expr, gnu_min_expr)); } else gnu_expr = TYPE_MIN_VALUE (TYPE_DOMAIN (gnu_result_type)); @@ -3169,7 +3219,7 @@ gnat_to_gnu (Node_Id gnat_node) /* If this is a comparison operator, convert any references to an unconstrained array value into a reference to the actual array. */ - if (TREE_CODE_CLASS (code) == '<') + if (TREE_CODE_CLASS (code) == tcc_comparison) { gnu_lhs = maybe_unconstrained_array (gnu_lhs); gnu_rhs = maybe_unconstrained_array (gnu_rhs); @@ -3354,26 +3404,32 @@ gnat_to_gnu (Node_Id gnat_node) case N_Assignment_Statement: /* Get the LHS and RHS of the statement and convert any reference to an - unconstrained array into a reference to the underlying array. */ + unconstrained array into a reference to the underlying array. + If we are not to do range checking and the RHS is an N_Function_Call, + pass the LHS to the call function. */ gnu_lhs = maybe_unconstrained_array (gnat_to_gnu (Name (gnat_node))); - gnu_rhs - = maybe_unconstrained_array (gnat_to_gnu (Expression (gnat_node))); - - /* If range check is needed, emit code to generate it */ - if (Do_Range_Check (Expression (gnat_node))) - gnu_rhs = emit_range_check (gnu_rhs, Etype (Name (gnat_node))); - /* If either side's type has a size that overflows, convert this - into raise of Storage_Error: execution shouldn't have gotten - here anyway. */ - if ((TREE_CODE (TYPE_SIZE (TREE_TYPE (gnu_lhs))) == INTEGER_CST + /* If the type has a size that overflows, convert this into raise of + Storage_Error: execution shouldn't have gotten here anyway. */ + if (TREE_CODE (TYPE_SIZE (TREE_TYPE (gnu_lhs))) == INTEGER_CST && TREE_OVERFLOW (TYPE_SIZE (TREE_TYPE (gnu_lhs)))) - || (TREE_CODE (TYPE_SIZE (TREE_TYPE (gnu_rhs))) == INTEGER_CST - && TREE_OVERFLOW (TYPE_SIZE (TREE_TYPE (gnu_rhs))))) gnu_result = build_call_raise (SE_Object_Too_Large); + else if (Nkind (Expression (gnat_node)) == N_Function_Call + && !Do_Range_Check (Expression (gnat_node))) + gnu_result = call_to_gnu (Expression (gnat_node), + &gnu_result_type, gnu_lhs); else - gnu_result - = build_binary_op (MODIFY_EXPR, NULL_TREE, gnu_lhs, gnu_rhs); + { + gnu_rhs + = maybe_unconstrained_array (gnat_to_gnu (Expression (gnat_node))); + + /* If range check is needed, emit code to generate it */ + if (Do_Range_Check (Expression (gnat_node))) + gnu_rhs = emit_range_check (gnu_rhs, Etype (Name (gnat_node))); + + gnu_result + = build_binary_op (MODIFY_EXPR, NULL_TREE, gnu_lhs, gnu_rhs); + } break; case N_If_Statement: @@ -3381,9 +3437,9 @@ gnat_to_gnu (Node_Id gnat_node) tree *gnu_else_ptr; /* Point to put next "else if" or "else". */ /* Make the outer COND_EXPR. Avoid non-determinism. */ - gnu_result = build (COND_EXPR, void_type_node, - gnat_to_gnu (Condition (gnat_node)), - NULL_TREE, NULL_TREE); + gnu_result = build3 (COND_EXPR, void_type_node, + gnat_to_gnu (Condition (gnat_node)), + NULL_TREE, NULL_TREE); COND_EXPR_THEN (gnu_result) = build_stmt_group (Then_Statements (gnat_node), false); TREE_SIDE_EFFECTS (gnu_result) = 1; @@ -3396,9 +3452,9 @@ gnat_to_gnu (Node_Id gnat_node) for (gnat_temp = First (Elsif_Parts (gnat_node)); Present (gnat_temp); gnat_temp = Next (gnat_temp)) { - gnu_expr = build (COND_EXPR, void_type_node, - gnat_to_gnu (Condition (gnat_temp)), - NULL_TREE, NULL_TREE); + gnu_expr = build3 (COND_EXPR, void_type_node, + gnat_to_gnu (Condition (gnat_temp)), + NULL_TREE, NULL_TREE); COND_EXPR_THEN (gnu_expr) = build_stmt_group (Then_Statements (gnat_temp), false); TREE_SIDE_EFFECTS (gnu_expr) = 1; @@ -3433,12 +3489,12 @@ gnat_to_gnu (Node_Id gnat_node) case N_Exit_Statement: gnu_result - = build (EXIT_STMT, void_type_node, - (Present (Condition (gnat_node)) - ? gnat_to_gnu (Condition (gnat_node)) : NULL_TREE), - (Present (Name (gnat_node)) - ? get_gnu_tree (Entity (Name (gnat_node))) - : TREE_VALUE (gnu_loop_label_stack))); + = build2 (EXIT_STMT, void_type_node, + (Present (Condition (gnat_node)) + ? gnat_to_gnu (Condition (gnat_node)) : NULL_TREE), + (Present (Name (gnat_node)) + ? get_gnu_tree (Entity (Name (gnat_node))) + : TREE_VALUE (gnu_loop_label_stack))); break; case N_Return_Statement: @@ -3446,7 +3502,13 @@ gnat_to_gnu (Node_Id gnat_node) /* The gnu function type of the subprogram currently processed. */ tree gnu_subprog_type = TREE_TYPE (current_function_decl); /* The return value from the subprogram. */ - tree gnu_ret_val = 0; + tree gnu_ret_val = NULL_TREE; + /* The place to put the return value. */ + tree gnu_lhs + = (TYPE_RETURNS_BY_TARGET_PTR_P (gnu_subprog_type) + ? build_unary_op (INDIRECT_REF, NULL_TREE, + DECL_ARGUMENTS (current_function_decl)) + : DECL_RESULT (current_function_decl)); /* If we are dealing with a "return;" from an Ada procedure with parameters passed by copy in copy out, we need to return a record @@ -3484,53 +3546,71 @@ gnat_to_gnu (Node_Id gnat_node) else if (Present (Expression (gnat_node))) { - gnu_ret_val = gnat_to_gnu (Expression (gnat_node)); - - /* Do not remove the padding from GNU_RET_VAL if the inner - type is self-referential since we want to allocate the fixed - size in that case. */ - if (TREE_CODE (gnu_ret_val) == COMPONENT_REF - && (TREE_CODE (TREE_TYPE (TREE_OPERAND (gnu_ret_val, 0))) - == RECORD_TYPE) - && (TYPE_IS_PADDING_P - (TREE_TYPE (TREE_OPERAND (gnu_ret_val, 0)))) - && (CONTAINS_PLACEHOLDER_P - (TYPE_SIZE (TREE_TYPE (gnu_ret_val))))) - gnu_ret_val = TREE_OPERAND (gnu_ret_val, 0); - - if (TYPE_RETURNS_BY_REF_P (gnu_subprog_type) - || By_Ref (gnat_node)) - gnu_ret_val = build_unary_op (ADDR_EXPR, NULL_TREE, gnu_ret_val); - - else if (TYPE_RETURNS_UNCONSTRAINED_P (gnu_subprog_type)) + /* If the current function returns by target pointer and we + are doing a call, pass that target to the call. */ + if (TYPE_RETURNS_BY_TARGET_PTR_P (gnu_subprog_type) + && Nkind (Expression (gnat_node)) == N_Function_Call) + gnu_result = call_to_gnu (Expression (gnat_node), + &gnu_result_type, gnu_lhs); + + else { - gnu_ret_val = maybe_unconstrained_array (gnu_ret_val); - - /* We have two cases: either the function returns with - depressed stack or not. If not, we allocate on the - secondary stack. If so, we allocate in the stack frame. - if no copy is needed, the front end will set By_Ref, - which we handle in the case above. */ - if (TYPE_RETURNS_STACK_DEPRESSED (gnu_subprog_type)) - gnu_ret_val - = build_allocator (TREE_TYPE (gnu_ret_val), gnu_ret_val, - TREE_TYPE (gnu_subprog_type), 0, -1, - gnat_node); - else + gnu_ret_val = gnat_to_gnu (Expression (gnat_node)); + + /* Do not remove the padding from GNU_RET_VAL if the inner + type is self-referential since we want to allocate the fixed + size in that case. */ + if (TREE_CODE (gnu_ret_val) == COMPONENT_REF + && (TREE_CODE (TREE_TYPE (TREE_OPERAND (gnu_ret_val, 0))) + == RECORD_TYPE) + && (TYPE_IS_PADDING_P + (TREE_TYPE (TREE_OPERAND (gnu_ret_val, 0)))) + && (CONTAINS_PLACEHOLDER_P + (TYPE_SIZE (TREE_TYPE (gnu_ret_val))))) + gnu_ret_val = TREE_OPERAND (gnu_ret_val, 0); + + if (TYPE_RETURNS_BY_REF_P (gnu_subprog_type) + || By_Ref (gnat_node)) gnu_ret_val - = build_allocator (TREE_TYPE (gnu_ret_val), gnu_ret_val, - TREE_TYPE (gnu_subprog_type), - Procedure_To_Call (gnat_node), - Storage_Pool (gnat_node), gnat_node); + = build_unary_op (ADDR_EXPR, NULL_TREE, gnu_ret_val); + + else if (TYPE_RETURNS_UNCONSTRAINED_P (gnu_subprog_type)) + { + gnu_ret_val = maybe_unconstrained_array (gnu_ret_val); + + /* We have two cases: either the function returns with + depressed stack or not. If not, we allocate on the + secondary stack. If so, we allocate in the stack frame. + if no copy is needed, the front end will set By_Ref, + which we handle in the case above. */ + if (TYPE_RETURNS_STACK_DEPRESSED (gnu_subprog_type)) + gnu_ret_val + = build_allocator (TREE_TYPE (gnu_ret_val), + gnu_ret_val, + TREE_TYPE (gnu_subprog_type), + 0, -1, gnat_node); + else + gnu_ret_val + = build_allocator (TREE_TYPE (gnu_ret_val), + gnu_ret_val, + TREE_TYPE (gnu_subprog_type), + Procedure_To_Call (gnat_node), + Storage_Pool (gnat_node), + gnat_node); + } + } + + gnu_result = build2 (MODIFY_EXPR, TREE_TYPE (gnu_ret_val), + gnu_lhs, gnu_ret_val); + if (TYPE_RETURNS_BY_TARGET_PTR_P (gnu_subprog_type)) + { + add_stmt_with_node (gnu_result, gnat_node); + gnu_ret_val = NULL_TREE; } } gnu_result = build1 (RETURN_EXPR, void_type_node, - (gnu_ret_val - ? build (MODIFY_EXPR, TREE_TYPE (gnu_ret_val), - DECL_RESULT (current_function_decl), - gnu_ret_val) - : NULL_TREE)); + gnu_ret_val ? gnu_result : gnu_ret_val); } break; @@ -3584,7 +3664,7 @@ gnat_to_gnu (Node_Id gnat_node) case N_Function_Call: case N_Procedure_Call_Statement: - gnu_result = call_to_gnu (gnat_node, &gnu_result_type); + gnu_result = call_to_gnu (gnat_node, &gnu_result_type, NULL_TREE); break; /*************************/ @@ -3788,9 +3868,9 @@ gnat_to_gnu (Node_Id gnat_node) gnu_input_list = nreverse (gnu_input_list); gnu_output_list = nreverse (gnu_output_list); - gnu_result = build (ASM_EXPR, void_type_node, - gnu_template, gnu_output_list, - gnu_input_list, gnu_clobber_list); + gnu_result = build4 (ASM_EXPR, void_type_node, + gnu_template, gnu_output_list, + gnu_input_list, gnu_clobber_list); ASM_VOLATILE_P (gnu_result) = Is_Asm_Volatile (gnat_node); } else @@ -3889,9 +3969,9 @@ gnat_to_gnu (Node_Id gnat_node) annotate_with_node (gnu_result, gnat_node); if (Present (Condition (gnat_node))) - gnu_result = build (COND_EXPR, void_type_node, - gnat_to_gnu (Condition (gnat_node)), - gnu_result, alloc_stmt_list ()); + gnu_result = build3 (COND_EXPR, void_type_node, + gnat_to_gnu (Condition (gnat_node)), + gnu_result, alloc_stmt_list ()); } else gnu_result = build1 (NULL_EXPR, gnu_result_type, gnu_result); @@ -3955,7 +4035,7 @@ gnat_to_gnu (Node_Id gnat_node) /* Set the location information into the result. If we're supposed to return something of void_type, it means we have something we're elaborating for effect, so just return. */ - if (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (gnu_result)))) + if (EXPR_P (gnu_result)) annotate_with_node (gnu_result, gnat_node); if (TREE_CODE (gnu_result_type) == VOID_TYPE) @@ -4079,7 +4159,7 @@ gnat_to_gnu (Node_Id gnat_node) static void record_code_position (Node_Id gnat_node) { - tree stmt_stmt = build (STMT_STMT, void_type_node, NULL_TREE); + tree stmt_stmt = build1 (STMT_STMT, void_type_node, NULL_TREE); add_stmt_with_node (stmt_stmt, gnat_node); save_gnu_tree (gnat_node, stmt_stmt, true); @@ -4157,7 +4237,7 @@ add_decl_expr (tree gnu_decl, Entity_Id gnat_entity) this decl since we already have evaluated the expressions in the sizes and positions as globals and doing it again would be wrong. But we do have to mark everything as used. */ - gnu_stmt = build (DECL_EXPR, void_type_node, gnu_decl); + gnu_stmt = build1 (DECL_EXPR, void_type_node, gnu_decl); if (!global_bindings_p ()) add_stmt_with_node (gnu_stmt, gnat_entity); else @@ -4276,12 +4356,12 @@ end_stmt_group () gnu_retval = alloc_stmt_list (); if (group->cleanups) - gnu_retval = build (TRY_FINALLY_EXPR, void_type_node, gnu_retval, - group->cleanups); + gnu_retval = build2 (TRY_FINALLY_EXPR, void_type_node, gnu_retval, + group->cleanups); if (current_stmt_group->block) - gnu_retval = build (BIND_EXPR, void_type_node, BLOCK_VARS (group->block), - gnu_retval, group->block); + gnu_retval = build3 (BIND_EXPR, void_type_node, BLOCK_VARS (group->block), + gnu_retval, group->block); /* Remove this group from the stack and add it to the free list. */ current_stmt_group = group->previous; @@ -4418,10 +4498,33 @@ gnat_gimplify_expr (tree *expr_p, tree *pre_p, tree *post_p ATTRIBUTE_UNUSED) *expr_p = TREE_OPERAND (*expr_p, 0); return GS_OK; + case ADDR_EXPR: + /* If we're taking the address of a constant CONSTRUCTOR, force it to + be put into static memory. We know it's going to be readonly given + the semantics we have and it's required to be static memory in + the case when the reference is in an elaboration procedure. */ + if (TREE_CODE (TREE_OPERAND (expr, 0)) == CONSTRUCTOR + && TREE_CONSTANT (TREE_OPERAND (expr, 0))) + { + tree new_var + = create_tmp_var (TREE_TYPE (TREE_OPERAND (expr, 0)), "C"); + + TREE_READONLY (new_var) = 1; + TREE_STATIC (new_var) = 1; + TREE_ADDRESSABLE (new_var) = 1; + + gimplify_and_add (build2 (MODIFY_EXPR, TREE_TYPE (new_var), + new_var, TREE_OPERAND (expr, 0)), + pre_p); + + TREE_OPERAND (expr, 0) = new_var; + return GS_ALL_DONE; + } + return GS_UNHANDLED; + case COMPONENT_REF: - /* We have a kludge here. If the FIELD_DECL is from a fat pointer - and is from an early dummy type, replace it with the proper - FIELD_DECL. */ + /* We have a kludge here. If the FIELD_DECL is from a fat pointer and is + from an early dummy type, replace it with the proper FIELD_DECL. */ if (TYPE_FAT_POINTER_P (TREE_TYPE (TREE_OPERAND (*expr_p, 0))) && DECL_ORIGINAL_FIELD (TREE_OPERAND (*expr_p, 1))) { @@ -4472,23 +4575,23 @@ gnat_gimplify_stmt (tree *stmt_p) stmt_p); if (LOOP_STMT_TOP_COND (stmt)) - append_to_statement_list (build (COND_EXPR, void_type_node, - LOOP_STMT_TOP_COND (stmt), - alloc_stmt_list (), - build1 (GOTO_EXPR, - void_type_node, - gnu_end_label)), + append_to_statement_list (build3 (COND_EXPR, void_type_node, + LOOP_STMT_TOP_COND (stmt), + alloc_stmt_list (), + build1 (GOTO_EXPR, + void_type_node, + gnu_end_label)), stmt_p); append_to_statement_list (LOOP_STMT_BODY (stmt), stmt_p); if (LOOP_STMT_BOT_COND (stmt)) - append_to_statement_list (build (COND_EXPR, void_type_node, - LOOP_STMT_BOT_COND (stmt), - alloc_stmt_list (), - build1 (GOTO_EXPR, - void_type_node, - gnu_end_label)), + append_to_statement_list (build3 (COND_EXPR, void_type_node, + LOOP_STMT_BOT_COND (stmt), + alloc_stmt_list (), + build1 (GOTO_EXPR, + void_type_node, + gnu_end_label)), stmt_p); if (LOOP_STMT_UPDATE (stmt)) @@ -4508,8 +4611,8 @@ gnat_gimplify_stmt (tree *stmt_p) see if it needs to be conditional. */ *stmt_p = build1 (GOTO_EXPR, void_type_node, EXIT_STMT_LABEL (stmt)); if (EXIT_STMT_COND (stmt)) - *stmt_p = build (COND_EXPR, void_type_node, - EXIT_STMT_COND (stmt), *stmt_p, alloc_stmt_list ()); + *stmt_p = build3 (COND_EXPR, void_type_node, + EXIT_STMT_COND (stmt), *stmt_p, alloc_stmt_list ()); return GS_OK; default: @@ -4974,17 +5077,17 @@ emit_check (tree gnu_cond, tree gnu_expr, int reason) in front of the comparison in case it ends up being a SAVE_EXPR. Put the whole thing inside its own SAVE_EXPR so the inner SAVE_EXPR doesn't leak out. */ - gnu_result = fold (build (COND_EXPR, TREE_TYPE (gnu_expr), gnu_cond, - build (COMPOUND_EXPR, TREE_TYPE (gnu_expr), - gnu_call, gnu_expr), - gnu_expr)); + gnu_result = fold (build3 (COND_EXPR, TREE_TYPE (gnu_expr), gnu_cond, + build2 (COMPOUND_EXPR, TREE_TYPE (gnu_expr), + gnu_call, gnu_expr), + gnu_expr)); /* If GNU_EXPR has side effects, make the outer COMPOUND_EXPR and protect it. Otherwise, show GNU_RESULT has no side effects: we don't need to evaluate it just for the check. */ if (TREE_SIDE_EFFECTS (gnu_expr)) gnu_result - = build (COMPOUND_EXPR, TREE_TYPE (gnu_expr), gnu_expr, gnu_result); + = build2 (COMPOUND_EXPR, TREE_TYPE (gnu_expr), gnu_expr, gnu_result); else TREE_SIDE_EFFECTS (gnu_result) = 0; @@ -5107,13 +5210,13 @@ convert_with_check (Entity_Id gnat_type, tree gnu_expr, bool overflowp, tree gnu_minus_point_5 = build_real (gnu_in_basetype, dconstmp5); tree gnu_zero = convert (gnu_in_basetype, integer_zero_node); tree gnu_saved_result = save_expr (gnu_result); - tree gnu_comp = build (GE_EXPR, integer_type_node, - gnu_saved_result, gnu_zero); - tree gnu_adjust = build (COND_EXPR, gnu_in_basetype, gnu_comp, - gnu_point_5, gnu_minus_point_5); + tree gnu_comp = build2 (GE_EXPR, integer_type_node, + gnu_saved_result, gnu_zero); + tree gnu_adjust = build3 (COND_EXPR, gnu_in_basetype, gnu_comp, + gnu_point_5, gnu_minus_point_5); gnu_result - = build (PLUS_EXPR, gnu_in_basetype, gnu_saved_result, gnu_adjust); + = build2 (PLUS_EXPR, gnu_in_basetype, gnu_saved_result, gnu_adjust); } if (TREE_CODE (gnu_ada_base_type) == INTEGER_TYPE @@ -5531,36 +5634,36 @@ gnat_stabilize_reference (tree ref, bool force) break; case COMPONENT_REF: - result = build (COMPONENT_REF, type, - gnat_stabilize_reference (TREE_OPERAND (ref, 0), - force), - TREE_OPERAND (ref, 1), NULL_TREE); + result = build3 (COMPONENT_REF, type, + gnat_stabilize_reference (TREE_OPERAND (ref, 0), + force), + TREE_OPERAND (ref, 1), NULL_TREE); break; case BIT_FIELD_REF: - result = build (BIT_FIELD_REF, type, - gnat_stabilize_reference (TREE_OPERAND (ref, 0), force), - gnat_stabilize_reference_1 (TREE_OPERAND (ref, 1), - force), - gnat_stabilize_reference_1 (TREE_OPERAND (ref, 2), - force)); + result = build3 (BIT_FIELD_REF, type, + gnat_stabilize_reference (TREE_OPERAND (ref, 0), force), + gnat_stabilize_reference_1 (TREE_OPERAND (ref, 1), + force), + gnat_stabilize_reference_1 (TREE_OPERAND (ref, 2), + force)); break; case ARRAY_REF: case ARRAY_RANGE_REF: - result = build (code, type, - gnat_stabilize_reference (TREE_OPERAND (ref, 0), force), - gnat_stabilize_reference_1 (TREE_OPERAND (ref, 1), - force), - NULL_TREE, NULL_TREE); + result = build4 (code, type, + gnat_stabilize_reference (TREE_OPERAND (ref, 0), force), + gnat_stabilize_reference_1 (TREE_OPERAND (ref, 1), + force), + NULL_TREE, NULL_TREE); break; case COMPOUND_EXPR: - result = build (COMPOUND_EXPR, type, - gnat_stabilize_reference_1 (TREE_OPERAND (ref, 0), - force), - gnat_stabilize_reference (TREE_OPERAND (ref, 1), - force)); + result = build2 (COMPOUND_EXPR, type, + gnat_stabilize_reference_1 (TREE_OPERAND (ref, 0), + force), + gnat_stabilize_reference (TREE_OPERAND (ref, 1), + force)); break; /* If arg isn't a kind of lvalue we recognize, make no change. @@ -5609,41 +5712,42 @@ gnat_stabilize_reference_1 (tree e, bool force) switch (TREE_CODE_CLASS (code)) { - case 'x': - case 't': - case 'd': - case '<': - case 's': - case 'e': - case 'r': + case tcc_exceptional: + case tcc_type: + case tcc_declaration: + case tcc_comparison: + case tcc_statement: + case tcc_expression: + case tcc_reference: /* If this is a COMPONENT_REF of a fat pointer, save the entire fat pointer. This may be more efficient, but will also allow us to more easily find the match for the PLACEHOLDER_EXPR. */ if (code == COMPONENT_REF && TYPE_FAT_POINTER_P (TREE_TYPE (TREE_OPERAND (e, 0)))) - result = build (COMPONENT_REF, type, - gnat_stabilize_reference_1 (TREE_OPERAND (e, 0), - force), - TREE_OPERAND (e, 1), TREE_OPERAND (e, 2)); + result = build3 (COMPONENT_REF, type, + gnat_stabilize_reference_1 (TREE_OPERAND (e, 0), + force), + TREE_OPERAND (e, 1), TREE_OPERAND (e, 2)); else if (TREE_SIDE_EFFECTS (e) || force) return save_expr (e); else return e; break; - case 'c': + case tcc_constant: /* Constants need no processing. In fact, we should never reach here. */ return e; - case '2': + case tcc_binary: /* Recursively stabilize each operand. */ - result = build (code, type, - gnat_stabilize_reference_1 (TREE_OPERAND (e, 0), force), - gnat_stabilize_reference_1 (TREE_OPERAND (e, 1), force)); + result = build2 (code, type, + gnat_stabilize_reference_1 (TREE_OPERAND (e, 0), force), + gnat_stabilize_reference_1 (TREE_OPERAND (e, 1), + force)); break; - case '1': + case tcc_unary: /* Recursively stabilize each operand. */ result = build1 (code, type, gnat_stabilize_reference_1 (TREE_OPERAND (e, 0), diff --git a/gcc/ada/utils.c b/gcc/ada/utils.c index 9e848578690..1a5afb3d9b1 100644 --- a/gcc/ada/utils.c +++ b/gcc/ada/utils.c @@ -832,12 +832,13 @@ finish_record_type (tree record_type, tree fieldlist, bool has_rep, case QUAL_UNION_TYPE: ada_size - = fold (build (COND_EXPR, bitsizetype, DECL_QUALIFIER (field), - this_ada_size, ada_size)); - size = fold (build (COND_EXPR, bitsizetype, DECL_QUALIFIER (field), - this_size, size)); - size_unit = fold (build (COND_EXPR, sizetype, DECL_QUALIFIER (field), - this_size_unit, size_unit)); + = fold (build3 (COND_EXPR, bitsizetype, DECL_QUALIFIER (field), + this_ada_size, ada_size)); + size = fold (build3 (COND_EXPR, bitsizetype, DECL_QUALIFIER (field), + this_size, size)); + size_unit = fold (build3 (COND_EXPR, sizetype, + DECL_QUALIFIER (field), + this_size_unit, size_unit)); break; case RECORD_TYPE: @@ -1073,15 +1074,15 @@ merge_sizes (tree last_size, tree first_bit, tree size, bool special, } else - new = fold (build (COND_EXPR, type, TREE_OPERAND (size, 0), - integer_zerop (TREE_OPERAND (size, 1)) - ? last_size : merge_sizes (last_size, first_bit, - TREE_OPERAND (size, 1), - 1, has_rep), - integer_zerop (TREE_OPERAND (size, 2)) - ? last_size : merge_sizes (last_size, first_bit, - TREE_OPERAND (size, 2), - 1, has_rep))); + new = fold (build3 (COND_EXPR, type, TREE_OPERAND (size, 0), + integer_zerop (TREE_OPERAND (size, 1)) + ? last_size : merge_sizes (last_size, first_bit, + TREE_OPERAND (size, 1), + 1, has_rep), + integer_zerop (TREE_OPERAND (size, 2)) + ? last_size : merge_sizes (last_size, first_bit, + TREE_OPERAND (size, 2), + 1, has_rep))); /* We don't need any NON_VALUE_EXPRs and they can confuse us (especially when fed through substitute_in_expr) into thinking that a constant @@ -1157,12 +1158,14 @@ split_plus (tree in, tree *pvar) RETURNS_UNCONSTRAINED is nonzero if the function returns an unconstrained object. RETURNS_BY_REF is nonzero if the function returns by reference. RETURNS_WITH_DSP is nonzero if the function is to return with a - depressed stack pointer. */ + depressed stack pointer. RETURNS_BY_TARGET_PTR is true if the function + is to be passed (as its first parameter) the address of the place to copy + its result. */ tree create_subprog_type (tree return_type, tree param_decl_list, tree cico_list, bool returns_unconstrained, bool returns_by_ref, - bool returns_with_dsp) + bool returns_with_dsp, bool returns_by_target_ptr) { /* A chain of TREE_LIST nodes whose TREE_VALUEs are the data type nodes of the subprogram formal parameters. This list is generated by traversing the @@ -1193,13 +1196,15 @@ create_subprog_type (tree return_type, tree param_decl_list, tree cico_list, RETURNS_UNCONSTRAINED and RETURNS_BY_REF. */ if (TYPE_CI_CO_LIST (type) || cico_list || TYPE_RETURNS_UNCONSTRAINED_P (type) != returns_unconstrained - || TYPE_RETURNS_BY_REF_P (type) != returns_by_ref) + || TYPE_RETURNS_BY_REF_P (type) != returns_by_ref + || TYPE_RETURNS_BY_TARGET_PTR_P (type) != returns_by_target_ptr) type = copy_type (type); TYPE_CI_CO_LIST (type) = cico_list; TYPE_RETURNS_UNCONSTRAINED_P (type) = returns_unconstrained; TYPE_RETURNS_STACK_DEPRESSED (type) = returns_with_dsp; TYPE_RETURNS_BY_REF_P (type) = returns_by_ref; + TYPE_RETURNS_BY_TARGET_PTR_P (type) = returns_by_target_ptr; return type; } @@ -1342,10 +1347,12 @@ create_var_decl (tree var_name, tree asm_name, tree type, tree var_init, TREE_THIS_VOLATILE (var_decl) = TREE_SIDE_EFFECTS (var_decl) = TYPE_VOLATILE (type); - /* At the global binding level we need to allocate static storage for the - variable if and only if its not external. If we are not at the top level + /* If it's public and not external, always allocate storage for it. + At the global binding level we need to allocate static storage for the + variable if and only if it's not external. If we are not at the top level we allocate automatic storage unless requested not to. */ - TREE_STATIC (var_decl) = global_bindings_p () ? !extern_flag : static_flag; + TREE_STATIC (var_decl) + = public_flag || (global_bindings_p () ? !extern_flag : static_flag); if (asm_name) SET_DECL_ASSEMBLER_NAME (var_decl, asm_name); @@ -2002,11 +2009,11 @@ max_size (tree exp, bool max_p) switch (TREE_CODE_CLASS (code)) { - case 'd': - case 'c': + case tcc_declaration: + case tcc_constant: return exp; - case 'x': + case tcc_exceptional: if (code == TREE_LIST) return tree_cons (TREE_PURPOSE (exp), max_size (TREE_VALUE (exp), max_p), @@ -2014,7 +2021,7 @@ max_size (tree exp, bool max_p) ? max_size (TREE_CHAIN (exp), max_p) : NULL_TREE); break; - case 'r': + case tcc_reference: /* If this contains a PLACEHOLDER_EXPR, it is the thing we want to modify. Otherwise, we treat it like a variable. */ if (!CONTAINS_PLACEHOLDER_P (exp)) @@ -2024,12 +2031,12 @@ max_size (tree exp, bool max_p) return max_size (max_p ? TYPE_MAX_VALUE (type) : TYPE_MIN_VALUE (type), true); - case '<': + case tcc_comparison: return max_p ? size_one_node : size_zero_node; - case '1': - case '2': - case 'e': + case tcc_unary: + case tcc_binary: + case tcc_expression: switch (TREE_CODE_LENGTH (code)) { case 1: @@ -2066,20 +2073,24 @@ max_size (tree exp, bool max_p) && !TREE_CONSTANT (rhs)) return lhs; else - return fold (build (code, type, lhs, rhs)); + return fold (build2 (code, type, lhs, rhs)); } case 3: if (code == SAVE_EXPR) return exp; else if (code == COND_EXPR) - return fold (build (max_p ? MAX_EXPR : MIN_EXPR, type, - max_size (TREE_OPERAND (exp, 1), max_p), - max_size (TREE_OPERAND (exp, 2), max_p))); + return fold (build2 (max_p ? MAX_EXPR : MIN_EXPR, type, + max_size (TREE_OPERAND (exp, 1), max_p), + max_size (TREE_OPERAND (exp, 2), max_p))); else if (code == CALL_EXPR && TREE_OPERAND (exp, 1)) - return build (CALL_EXPR, type, TREE_OPERAND (exp, 0), - max_size (TREE_OPERAND (exp, 1), max_p), NULL); + return build3 (CALL_EXPR, type, TREE_OPERAND (exp, 0), + max_size (TREE_OPERAND (exp, 1), max_p), NULL); } + + /* Other tree classes cannot happen. */ + default: + break; } abort (); @@ -2307,7 +2318,7 @@ build_vms_descriptor (tree type, Mechanism_Type mech, Entity_Id gnat_entity) build_pointer_type_for_mode (type, SImode, false), record_type, build1 (ADDR_EXPR, build_pointer_type_for_mode (type, SImode, false), - build (PLACEHOLDER_EXPR, type)))); + build0 (PLACEHOLDER_EXPR, type)))); switch (mech) { @@ -2368,12 +2379,12 @@ build_vms_descriptor (tree type, Mechanism_Type mech, Entity_Id gnat_entity) size_in_bytes (type))); /* Now build a pointer to the 0,0,0... element. */ - tem = build (PLACEHOLDER_EXPR, type); + tem = build0 (PLACEHOLDER_EXPR, type); for (i = 0, inner_type = type; i < ndim; i++, inner_type = TREE_TYPE (inner_type)) - tem = build (ARRAY_REF, TREE_TYPE (inner_type), tem, - convert (TYPE_DOMAIN (inner_type), size_zero_node), - NULL_TREE, NULL_TREE); + tem = build4 (ARRAY_REF, TREE_TYPE (inner_type), tem, + convert (TYPE_DOMAIN (inner_type), size_zero_node), + NULL_TREE, NULL_TREE); field_list = chainon (field_list, @@ -2596,9 +2607,9 @@ update_pointer_to (tree old_type, tree new_type) is now a very "heavy" routine to do this, so it should be replaced at some point. */ ptr_temp_type = TREE_TYPE (TREE_CHAIN (TYPE_FIELDS (ptr))); - new_ref = build (COMPONENT_REF, ptr_temp_type, - build (PLACEHOLDER_EXPR, ptr), - TREE_CHAIN (TYPE_FIELDS (ptr)), NULL_TREE); + new_ref = build3 (COMPONENT_REF, ptr_temp_type, + build0 (PLACEHOLDER_EXPR, ptr), + TREE_CHAIN (TYPE_FIELDS (ptr)), NULL_TREE); update_pointer_to (TREE_TYPE (TREE_TYPE (TYPE_FIELDS (ptr))), @@ -2801,10 +2812,11 @@ convert (tree type, tree expr) /* If the input is a biased type, adjust first. */ if (ecode == INTEGER_TYPE && TYPE_BIASED_REPRESENTATION_P (etype)) - return convert (type, fold (build (PLUS_EXPR, TREE_TYPE (etype), - fold (build1 (NOP_EXPR, - TREE_TYPE (etype), expr)), - TYPE_MIN_VALUE (etype)))); + return convert (type, fold (build2 (PLUS_EXPR, TREE_TYPE (etype), + fold (build1 (NOP_EXPR, + TREE_TYPE (etype), + expr)), + TYPE_MIN_VALUE (etype)))); /* If the input is a left-justified modular type, we need to extract the actual object before converting it to any other type with the @@ -2936,9 +2948,9 @@ convert (tree type, tree expr) return unchecked_convert (type, expr, false); else if (TYPE_BIASED_REPRESENTATION_P (type)) return fold (build1 (CONVERT_EXPR, type, - fold (build (MINUS_EXPR, TREE_TYPE (type), - convert (TREE_TYPE (type), expr), - TYPE_MIN_VALUE (type))))); + fold (build2 (MINUS_EXPR, TREE_TYPE (type), + convert (TREE_TYPE (type), expr), + TYPE_MIN_VALUE (type))))); /* ... fall through ... */ diff --git a/gcc/ada/utils2.c b/gcc/ada/utils2.c index 016356399c4..4611fc8e904 100644 --- a/gcc/ada/utils2.c +++ b/gcc/ada/utils2.c @@ -96,9 +96,9 @@ gnat_truthvalue_conversion (tree expr) case COND_EXPR: /* Distribute the conversion into the arms of a COND_EXPR. */ return fold - (build (COND_EXPR, type, TREE_OPERAND (expr, 0), - gnat_truthvalue_conversion (TREE_OPERAND (expr, 1)), - gnat_truthvalue_conversion (TREE_OPERAND (expr, 2)))); + (build3 (COND_EXPR, type, TREE_OPERAND (expr, 0), + gnat_truthvalue_conversion (TREE_OPERAND (expr, 1)), + gnat_truthvalue_conversion (TREE_OPERAND (expr, 2)))); default: return build_binary_op (NE_EXPR, type, expr, @@ -290,17 +290,18 @@ contains_null_expr (tree exp) switch (TREE_CODE_CLASS (TREE_CODE (exp))) { - case '1': + case tcc_unary: return contains_null_expr (TREE_OPERAND (exp, 0)); - case '<': case '2': + case tcc_comparison: + case tcc_binary: tem = contains_null_expr (TREE_OPERAND (exp, 0)); if (tem) return tem; return contains_null_expr (TREE_OPERAND (exp, 1)); - case 'e': + case tcc_expression: switch (TREE_CODE (exp)) { case SAVE_EXPR: @@ -355,8 +356,8 @@ compare_arrays (tree result_type, tree a1, tree a2) tree lb2 = TYPE_MIN_VALUE (TYPE_DOMAIN (t2)); tree ub2 = TYPE_MAX_VALUE (TYPE_DOMAIN (t2)); tree bt = get_base_type (TREE_TYPE (lb1)); - tree length1 = fold (build (MINUS_EXPR, bt, ub1, lb1)); - tree length2 = fold (build (MINUS_EXPR, bt, ub2, lb2)); + tree length1 = fold (build2 (MINUS_EXPR, bt, ub1, lb1)); + tree length2 = fold (build2 (MINUS_EXPR, bt, ub2, lb2)); tree nbt; tree tem; tree comparison, this_a1_is_null, this_a2_is_null; @@ -365,8 +366,8 @@ compare_arrays (tree result_type, tree a1, tree a2) unless the length of the second array is the constant zero. Note that we have set the `length' values to the length - 1. */ if (TREE_CODE (length1) == INTEGER_CST - && !integer_zerop (fold (build (PLUS_EXPR, bt, length2, - convert (bt, integer_one_node))))) + && !integer_zerop (fold (build2 (PLUS_EXPR, bt, length2, + convert (bt, integer_one_node))))) { tem = a1, a1 = a2, a2 = tem; tem = t1, t1 = t2, t2 = tem; @@ -379,8 +380,8 @@ compare_arrays (tree result_type, tree a1, tree a2) /* If the length of this dimension in the second array is the constant zero, we can just go inside the original bounds for the first array and see if last < first. */ - if (integer_zerop (fold (build (PLUS_EXPR, bt, length2, - convert (bt, integer_one_node))))) + if (integer_zerop (fold (build2 (PLUS_EXPR, bt, length2, + convert (bt, integer_one_node))))) { tree ub = TYPE_MAX_VALUE (TYPE_INDEX_TYPE (TYPE_DOMAIN (t1))); tree lb = TYPE_MIN_VALUE (TYPE_INDEX_TYPE (TYPE_DOMAIN (t1))); @@ -459,7 +460,7 @@ compare_arrays (tree result_type, tree a1, tree a2) a1 = convert (type, a1), a2 = convert (type, a2); result = build_binary_op (TRUTH_ANDIF_EXPR, result_type, result, - fold (build (EQ_EXPR, result_type, a1, a2))); + fold (build2 (EQ_EXPR, result_type, a1, a2))); } @@ -474,10 +475,10 @@ compare_arrays (tree result_type, tree a1, tree a2) evaluated would be wrong. */ if (contains_save_expr_p (a1)) - result = build (COMPOUND_EXPR, result_type, a1, result); + result = build2 (COMPOUND_EXPR, result_type, a1, result); if (contains_save_expr_p (a2)) - result = build (COMPOUND_EXPR, result_type, a2, result); + result = build2 (COMPOUND_EXPR, result_type, a2, result); return result; } @@ -500,7 +501,7 @@ nonbinary_modular_operation (enum tree_code op_code, tree type, tree lhs, /* If this is an addition of a constant, convert it to a subtraction of a constant since we can do that faster. */ if (op_code == PLUS_EXPR && TREE_CODE (rhs) == INTEGER_CST) - rhs = fold (build (MINUS_EXPR, type, modulus, rhs)), op_code = MINUS_EXPR; + rhs = fold (build2 (MINUS_EXPR, type, modulus, rhs)), op_code = MINUS_EXPR; /* For the logical operations, we only need PRECISION bits. For addition and subraction, we need one more and for multiplication we @@ -532,7 +533,7 @@ nonbinary_modular_operation (enum tree_code op_code, tree type, tree lhs, } /* Do the operation, then we'll fix it up. */ - result = fold (build (op_code, op_type, lhs, rhs)); + result = fold (build2 (op_code, op_type, lhs, rhs)); /* For multiplication, we have no choice but to do a full modulus operation. However, we want to do this in the narrowest @@ -544,32 +545,32 @@ nonbinary_modular_operation (enum tree_code op_code, tree type, tree lhs, SET_TYPE_MODULUS (div_type, modulus); TYPE_MODULAR_P (div_type) = 1; result = convert (op_type, - fold (build (TRUNC_MOD_EXPR, div_type, - convert (div_type, result), modulus))); + fold (build2 (TRUNC_MOD_EXPR, div_type, + convert (div_type, result), modulus))); } /* For subtraction, add the modulus back if we are negative. */ else if (op_code == MINUS_EXPR) { result = save_expr (result); - result = fold (build (COND_EXPR, op_type, - build (LT_EXPR, integer_type_node, result, - convert (op_type, integer_zero_node)), - fold (build (PLUS_EXPR, op_type, - result, modulus)), - result)); + result = fold (build3 (COND_EXPR, op_type, + build2 (LT_EXPR, integer_type_node, result, + convert (op_type, integer_zero_node)), + fold (build2 (PLUS_EXPR, op_type, + result, modulus)), + result)); } /* For the other operations, subtract the modulus if we are >= it. */ else { result = save_expr (result); - result = fold (build (COND_EXPR, op_type, - build (GE_EXPR, integer_type_node, - result, modulus), - fold (build (MINUS_EXPR, op_type, - result, modulus)), - result)); + result = fold (build3 (COND_EXPR, op_type, + build2 (GE_EXPR, integer_type_node, + result, modulus), + fold (build2 (MINUS_EXPR, op_type, + result, modulus)), + result)); } return convert (type, result); @@ -791,16 +792,16 @@ build_binary_op (enum tree_code op_code, tree result_type, case NE_EXPR: /* If either operand is a NULL_EXPR, just return a new one. */ if (TREE_CODE (left_operand) == NULL_EXPR) - return build (op_code, result_type, - build1 (NULL_EXPR, integer_type_node, - TREE_OPERAND (left_operand, 0)), - integer_zero_node); + return build2 (op_code, result_type, + build1 (NULL_EXPR, integer_type_node, + TREE_OPERAND (left_operand, 0)), + integer_zero_node); else if (TREE_CODE (right_operand) == NULL_EXPR) - return build (op_code, result_type, - build1 (NULL_EXPR, integer_type_node, - TREE_OPERAND (right_operand, 0)), - integer_zero_node); + return build2 (op_code, result_type, + build1 (NULL_EXPR, integer_type_node, + TREE_OPERAND (right_operand, 0)), + integer_zero_node); /* If either object is a left-justified modular types, get the fields from within. */ @@ -998,11 +999,11 @@ build_binary_op (enum tree_code op_code, tree result_type, else if (TREE_CODE (right_operand) == NULL_EXPR) return build1 (NULL_EXPR, operation_type, TREE_OPERAND (right_operand, 0)); else if (op_code == ARRAY_REF || op_code == ARRAY_RANGE_REF) - result = fold (build (op_code, operation_type, left_operand, right_operand, - NULL_TREE, NULL_TREE)); + result = fold (build4 (op_code, operation_type, left_operand, + right_operand, NULL_TREE, NULL_TREE)); else result - = fold (build (op_code, operation_type, left_operand, right_operand)); + = fold (build2 (op_code, operation_type, left_operand, right_operand)); TREE_SIDE_EFFECTS (result) |= has_side_effects; TREE_CONSTANT (result) @@ -1016,8 +1017,8 @@ build_binary_op (enum tree_code op_code, tree result_type, /* If we are working with modular types, perform the MOD operation if something above hasn't eliminated the need for it. */ if (modulus) - result = fold (build (FLOOR_MOD_EXPR, operation_type, result, - convert (operation_type, modulus))); + result = fold (build2 (FLOOR_MOD_EXPR, operation_type, result, + convert (operation_type, modulus))); if (result_type && result_type != operation_type) result = convert (result_type, result); @@ -1260,10 +1261,10 @@ build_unary_op (enum tree_code op_code, tree result_type, tree operand) the straightforward code; the TRUNC_MOD_EXPR below is an AND operation. */ if (op_code == NEGATE_EXPR && mod_pow2) - result = fold (build (TRUNC_MOD_EXPR, operation_type, - fold (build1 (NEGATE_EXPR, operation_type, - operand)), - modulus)); + result = fold (build2 (TRUNC_MOD_EXPR, operation_type, + fold (build1 (NEGATE_EXPR, operation_type, + operand)), + modulus)); /* For nonbinary negate case, return zero for zero operand, else return the modulus minus the operand. If the modulus @@ -1271,22 +1272,24 @@ build_unary_op (enum tree_code op_code, tree result_type, tree operand) as an XOR since it is equivalent and faster on most machines. */ else if (op_code == NEGATE_EXPR && !mod_pow2) { - if (integer_pow2p (fold (build (PLUS_EXPR, operation_type, - modulus, - convert (operation_type, - integer_one_node))))) - result = fold (build (BIT_XOR_EXPR, operation_type, - operand, modulus)); + if (integer_pow2p (fold (build2 (PLUS_EXPR, operation_type, + modulus, + convert (operation_type, + integer_one_node))))) + result = fold (build2 (BIT_XOR_EXPR, operation_type, + operand, modulus)); else - result = fold (build (MINUS_EXPR, operation_type, + result = fold (build2 (MINUS_EXPR, operation_type, modulus, operand)); - result = fold (build (COND_EXPR, operation_type, - fold (build (NE_EXPR, integer_type_node, - operand, - convert (operation_type, - integer_zero_node))), - result, operand)); + result = fold (build3 (COND_EXPR, operation_type, + fold (build2 (NE_EXPR, + integer_type_node, + operand, + convert + (operation_type, + integer_zero_node))), + result, operand)); } else { @@ -1295,16 +1298,16 @@ build_unary_op (enum tree_code op_code, tree result_type, tree operand) XOR against the constant and subtract the operand from that constant for nonbinary modulus. */ - tree cnst = fold (build (MINUS_EXPR, operation_type, modulus, - convert (operation_type, - integer_one_node))); + tree cnst = fold (build2 (MINUS_EXPR, operation_type, modulus, + convert (operation_type, + integer_one_node))); if (mod_pow2) - result = fold (build (BIT_XOR_EXPR, operation_type, - operand, cnst)); + result = fold (build2 (BIT_XOR_EXPR, operation_type, + operand, cnst)); else - result = fold (build (MINUS_EXPR, operation_type, - cnst, operand)); + result = fold (build2 (MINUS_EXPR, operation_type, + cnst, operand)); } break; @@ -1360,8 +1363,8 @@ build_cond_expr (tree result_type, tree condition_operand, false_operand = build_unary_op (ADDR_EXPR, result_type, false_operand); } - result = fold (build (COND_EXPR, result_type, condition_operand, - true_operand, false_operand)); + result = fold (build3 (COND_EXPR, result_type, condition_operand, + true_operand, false_operand)); /* If either operand is a SAVE_EXPR (possibly surrounded by arithmetic, make sure it gets done. */ @@ -1369,10 +1372,10 @@ build_cond_expr (tree result_type, tree condition_operand, false_operand = skip_simple_arithmetic (false_operand); if (TREE_CODE (true_operand) == SAVE_EXPR) - result = build (COMPOUND_EXPR, result_type, true_operand, result); + result = build2 (COMPOUND_EXPR, result_type, true_operand, result); if (TREE_CODE (false_operand) == SAVE_EXPR) - result = build (COMPOUND_EXPR, result_type, false_operand, result); + result = build2 (COMPOUND_EXPR, result_type, false_operand, result); /* ??? Seems the code above is wrong, as it may move ahead of the COND SAVE_EXPRs with side effects and not shared by both arms. */ @@ -1390,10 +1393,10 @@ build_cond_expr (tree result_type, tree condition_operand, tree build_call_1_expr (tree fundecl, tree arg) { - tree call = build (CALL_EXPR, TREE_TYPE (TREE_TYPE (fundecl)), - build_unary_op (ADDR_EXPR, NULL_TREE, fundecl), - chainon (NULL_TREE, build_tree_list (NULL_TREE, arg)), - NULL_TREE); + tree call = build3 (CALL_EXPR, TREE_TYPE (TREE_TYPE (fundecl)), + build_unary_op (ADDR_EXPR, NULL_TREE, fundecl), + chainon (NULL_TREE, build_tree_list (NULL_TREE, arg)), + NULL_TREE); TREE_SIDE_EFFECTS (call) = 1; @@ -1406,11 +1409,11 @@ build_call_1_expr (tree fundecl, tree arg) tree build_call_2_expr (tree fundecl, tree arg1, tree arg2) { - tree call = build (CALL_EXPR, TREE_TYPE (TREE_TYPE (fundecl)), - build_unary_op (ADDR_EXPR, NULL_TREE, fundecl), - chainon (chainon (NULL_TREE, - build_tree_list (NULL_TREE, arg1)), - build_tree_list (NULL_TREE, arg2)), + tree call = build3 (CALL_EXPR, TREE_TYPE (TREE_TYPE (fundecl)), + build_unary_op (ADDR_EXPR, NULL_TREE, fundecl), + chainon (chainon (NULL_TREE, + build_tree_list (NULL_TREE, arg1)), + build_tree_list (NULL_TREE, arg2)), NULL_TREE); TREE_SIDE_EFFECTS (call) = 1; @@ -1423,9 +1426,9 @@ build_call_2_expr (tree fundecl, tree arg1, tree arg2) tree build_call_0_expr (tree fundecl) { - tree call = build (CALL_EXPR, TREE_TYPE (TREE_TYPE (fundecl)), - build_unary_op (ADDR_EXPR, NULL_TREE, fundecl), - NULL_TREE, NULL_TREE); + tree call = build3 (CALL_EXPR, TREE_TYPE (TREE_TYPE (fundecl)), + build_unary_op (ADDR_EXPR, NULL_TREE, fundecl), + NULL_TREE, NULL_TREE); TREE_SIDE_EFFECTS (call) = 1; @@ -1510,11 +1513,10 @@ gnat_build_constructor (tree type, tree list) } result = build_constructor (type, list); - TREE_CONSTANT (result) = allconstant; - TREE_STATIC (result) = allconstant; + TREE_CONSTANT (result) = TREE_INVARIANT (result) + = TREE_STATIC (result) = allconstant; TREE_SIDE_EFFECTS (result) = side_effects; - TREE_READONLY (result) = TYPE_READONLY (type); - + TREE_READONLY (result) = TYPE_READONLY (type) || allconstant; return result; } @@ -1596,8 +1598,8 @@ build_simple_component_ref (tree record_variable, tree component, /* It would be nice to call "fold" here, but that can lose a type we need to tag a PLACEHOLDER_EXPR with, so we can't do it. */ - ref = build (COMPONENT_REF, TREE_TYPE (field), record_variable, field, - NULL_TREE); + ref = build3 (COMPONENT_REF, TREE_TYPE (field), record_variable, field, + NULL_TREE); if (TREE_READONLY (record_variable) || TREE_READONLY (field)) TREE_READONLY (ref) = 1; @@ -1688,8 +1690,8 @@ build_call_alloc_dealloc (tree gnu_obj, tree gnu_size, unsigned align, build_tree_list (NULL_TREE, convert (gnu_size_type, gnu_align))); - gnu_call = build (CALL_EXPR, TREE_TYPE (TREE_TYPE (gnu_proc)), - gnu_proc_addr, gnu_args, NULL_TREE); + gnu_call = build3 (CALL_EXPR, TREE_TYPE (TREE_TYPE (gnu_proc)), + gnu_proc_addr, gnu_args, NULL_TREE); TREE_SIDE_EFFECTS (gnu_call) = 1; return gnu_call; } @@ -1717,8 +1719,8 @@ build_call_alloc_dealloc (tree gnu_obj, tree gnu_size, unsigned align, build_tree_list (NULL_TREE, convert (gnu_size_type, gnu_size))); - gnu_call = build (CALL_EXPR, TREE_TYPE (TREE_TYPE (gnu_proc)), - gnu_proc_addr, gnu_args, NULL_TREE); + gnu_call = build3 (CALL_EXPR, TREE_TYPE (TREE_TYPE (gnu_proc)), + gnu_proc_addr, gnu_args, NULL_TREE); TREE_SIDE_EFFECTS (gnu_call) = 1; return gnu_call; } @@ -1750,7 +1752,7 @@ build_call_alloc_dealloc (tree gnu_obj, tree gnu_size, unsigned align, else abort (); #if 0 - return build (ALLOCATE_EXPR, ptr_void_type_node, gnu_size, gnu_align); + return build2 (ALLOCATE_EXPR, ptr_void_type_node, gnu_size, gnu_align); #endif } else @@ -1830,16 +1832,16 @@ build_allocator (tree type, tree init, tree result_type, Entity_Id gnat_proc, return convert (result_type, - build (COMPOUND_EXPR, storage_ptr_type, - build_binary_op - (MODIFY_EXPR, storage_type, - build_unary_op (INDIRECT_REF, NULL_TREE, - convert (storage_ptr_type, storage)), - gnat_build_constructor (storage_type, template_cons)), - convert (storage_ptr_type, storage))); + build2 (COMPOUND_EXPR, storage_ptr_type, + build_binary_op + (MODIFY_EXPR, storage_type, + build_unary_op (INDIRECT_REF, NULL_TREE, + convert (storage_ptr_type, storage)), + gnat_build_constructor (storage_type, template_cons)), + convert (storage_ptr_type, storage))); } else - return build + return build2 (COMPOUND_EXPR, result_type, build_binary_op (MODIFY_EXPR, template_type, @@ -1910,13 +1912,13 @@ build_allocator (tree type, tree init, tree result_type, Entity_Id gnat_proc, { result = save_expr (result); result - = build (COMPOUND_EXPR, TREE_TYPE (result), - build_binary_op - (MODIFY_EXPR, NULL_TREE, - build_unary_op (INDIRECT_REF, TREE_TYPE (TREE_TYPE (result)), - result), - init), - result); + = build2 (COMPOUND_EXPR, TREE_TYPE (result), + build_binary_op + (MODIFY_EXPR, NULL_TREE, + build_unary_op (INDIRECT_REF, + TREE_TYPE (TREE_TYPE (result)), result), + init), + result); } return convert (result_type, result); diff --git a/gcc/alias.c b/gcc/alias.c index 02ba2603baa..cc74ee8a187 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -342,13 +342,13 @@ objects_must_conflict_p (tree t1, tree t2) static tree find_base_decl (tree t) { - tree d0, d1, d2; + tree d0, d1; if (t == 0 || t == error_mark_node || ! POINTER_TYPE_P (TREE_TYPE (t))) return 0; /* If this is a declaration, return it. */ - if (TREE_CODE_CLASS (TREE_CODE (t)) == 'd') + if (DECL_P (t)) return t; /* Handle general expressions. It would be nice to deal with @@ -356,10 +356,10 @@ find_base_decl (tree t) same, then `a->f' and `b->f' are also the same. */ switch (TREE_CODE_CLASS (TREE_CODE (t))) { - case '1': + case tcc_unary: return find_base_decl (TREE_OPERAND (t, 0)); - case '2': + case tcc_binary: /* Return 0 if found in neither or both are the same. */ d0 = find_base_decl (TREE_OPERAND (t, 0)); d1 = find_base_decl (TREE_OPERAND (t, 1)); @@ -372,21 +372,6 @@ find_base_decl (tree t) else return 0; - case '3': - d0 = find_base_decl (TREE_OPERAND (t, 0)); - d1 = find_base_decl (TREE_OPERAND (t, 1)); - d2 = find_base_decl (TREE_OPERAND (t, 2)); - - /* Set any nonzero values from the last, then from the first. */ - if (d1 == 0) d1 = d2; - if (d0 == 0) d0 = d1; - if (d1 == 0) d1 = d0; - if (d2 == 0) d2 = d1; - - /* At this point all are nonzero or all are zero. If all three are the - same, return it. Otherwise, return zero. */ - return (d0 == d1 && d1 == d2) ? d0 : 0; - default: return 0; } @@ -2763,11 +2748,6 @@ init_alias_analysis (void) new_reg_base_value = xmalloc (maxreg * sizeof (rtx)); reg_seen = xmalloc (maxreg); - if (! reload_completed && flag_old_unroll_loops) - { - alias_invariant = ggc_calloc (maxreg, sizeof (rtx)); - alias_invariant_size = maxreg; - } /* The basic idea is that each pass through this loop will use the "constant" information from the previous pass to propagate alias diff --git a/gcc/attribs.c b/gcc/attribs.c index 6f111818dd3..1aab101c624 100644 --- a/gcc/attribs.c +++ b/gcc/attribs.c @@ -172,7 +172,7 @@ decl_attributes (tree *node, tree attributes, int flags) if (spec == NULL) { - warning ("`%s' attribute directive ignored", + warning ("%qs attribute directive ignored", IDENTIFIER_POINTER (name)); continue; } @@ -180,7 +180,7 @@ decl_attributes (tree *node, tree attributes, int flags) || (spec->max_length >= 0 && list_length (args) > spec->max_length)) { - error ("wrong number of arguments specified for `%s' attribute", + error ("wrong number of arguments specified for %qs attribute", IDENTIFIER_POINTER (name)); continue; } @@ -197,7 +197,7 @@ decl_attributes (tree *node, tree attributes, int flags) } else { - warning ("`%s' attribute does not apply to types", + warning ("%qs attribute does not apply to types", IDENTIFIER_POINTER (name)); continue; } @@ -243,7 +243,7 @@ decl_attributes (tree *node, tree attributes, int flags) if (TREE_CODE (*anode) != FUNCTION_TYPE && TREE_CODE (*anode) != METHOD_TYPE) { - warning ("`%s' attribute only applies to function types", + warning ("%qs attribute only applies to function types", IDENTIFIER_POINTER (name)); continue; } diff --git a/gcc/basic-block.h b/gcc/basic-block.h index 0549efd9c3e..1c0496abd4f 100644 --- a/gcc/basic-block.h +++ b/gcc/basic-block.h @@ -166,7 +166,7 @@ DEF_VEC_GC_P(edge); #define EDGE_SIBCALL 256 /* Edge from sibcall to exit. */ #define EDGE_LOOP_EXIT 512 /* Exit of a loop. */ #define EDGE_TRUE_VALUE 1024 /* Edge taken when controlling - predicate is non zero. */ + predicate is nonzero. */ #define EDGE_FALSE_VALUE 2048 /* Edge taken when controlling predicate is zero. */ #define EDGE_EXECUTABLE 4096 /* Edge is executable. Only @@ -294,6 +294,7 @@ typedef struct reorder_block_def /* Used by loop copying. */ basic_block copy; int duplicated; + int copy_number; /* These fields are used by bb-reorder pass. */ int visited; @@ -813,6 +814,8 @@ extern void set_immediate_dominator (enum cdi_direction, basic_block, extern basic_block get_immediate_dominator (enum cdi_direction, basic_block); extern bool dominated_by_p (enum cdi_direction, basic_block, basic_block); extern int get_dominated_by (enum cdi_direction, basic_block, basic_block **); +extern unsigned get_dominated_by_region (enum cdi_direction, basic_block *, + unsigned, basic_block *); extern void add_to_dominance_info (enum cdi_direction, basic_block); extern void delete_from_dominance_info (enum cdi_direction, basic_block); basic_block recount_dominator (enum cdi_direction, basic_block); diff --git a/gcc/bb-reorder.c b/gcc/bb-reorder.c index 4d1da90cef9..e90ebb63ee2 100644 --- a/gcc/bb-reorder.c +++ b/gcc/bb-reorder.c @@ -521,7 +521,7 @@ find_traces_1_round (int branch_th, int exec_th, gcov_type count_th, freq = EDGE_FREQUENCY (e); /* Edge that cannot be fallthru or improbable or infrequent - successor (ie. it is unsuitable successor). */ + successor (i.e. it is unsuitable successor). */ if (!(e->flags & EDGE_CAN_FALLTHRU) || (e->flags & EDGE_COMPLEX) || prob < branch_th || freq < exec_th || e->count < count_th) continue; diff --git a/gcc/builtins.c b/gcc/builtins.c index 34dceb9ef65..8502087cc77 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -248,7 +248,7 @@ get_pointer_alignment (tree exp, unsigned int max_align) else if (DECL_P (exp)) align = DECL_ALIGN (exp); #ifdef CONSTANT_ALIGNMENT - else if (TREE_CODE_CLASS (TREE_CODE (exp)) == 'c') + else if (CONSTANT_CLASS_P (exp)) align = CONSTANT_ALIGNMENT (exp, align); #endif return MIN (align, max_align); @@ -924,7 +924,7 @@ expand_builtin_prefetch (tree arglist) /* Argument 1 (read/write flag) must be a compile-time constant int. */ if (TREE_CODE (arg1) != INTEGER_CST) { - error ("second arg to `__builtin_prefetch' must be a constant"); + error ("second arg to %<__builtin_prefetch%> must be a constant"); arg1 = integer_zero_node; } op1 = expand_expr (arg1, NULL_RTX, VOIDmode, 0); @@ -938,7 +938,7 @@ expand_builtin_prefetch (tree arglist) /* Argument 2 (locality) must be a compile-time constant int. */ if (TREE_CODE (arg2) != INTEGER_CST) { - error ("third arg to `__builtin_prefetch' must be a constant"); + error ("third arg to %<__builtin_prefetch%> must be a constant"); arg2 = integer_zero_node; } op2 = expand_expr (arg2, NULL_RTX, VOIDmode, 0); @@ -2940,6 +2940,16 @@ expand_builtin_memmove (tree arglist, rtx target, enum machine_mode mode) target, mode, EXPAND_NORMAL); } + /* If length is 1 and we can expand memcpy call inline, + it is ok to use memcpy as well. */ + if (integer_onep (len)) + { + rtx ret = expand_builtin_mempcpy (arglist, target, mode, + /*endp=*/0); + if (ret) + return ret; + } + /* Otherwise, call the normal function. */ return 0; } @@ -4137,19 +4147,19 @@ expand_builtin_args_info (tree arglist) if (arglist != 0) { if (!host_integerp (TREE_VALUE (arglist), 0)) - error ("argument of `__builtin_args_info' must be constant"); + error ("argument of %<__builtin_args_info%> must be constant"); else { HOST_WIDE_INT wordnum = tree_low_cst (TREE_VALUE (arglist), 0); if (wordnum < 0 || wordnum >= nwords) - error ("argument of `__builtin_args_info' out of range"); + error ("argument of %<__builtin_args_info%> out of range"); else return GEN_INT (word_ptr[wordnum]); } } else - error ("missing argument in `__builtin_args_info'"); + error ("missing argument in %<__builtin_args_info%>"); return const0_rtx; } @@ -4165,7 +4175,7 @@ expand_builtin_next_arg (tree arglist) || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (fntype))) == void_type_node)) { - error ("`va_start' used in function with fixed args"); + error ("% used in function with fixed args"); return const0_rtx; } @@ -4184,12 +4194,12 @@ expand_builtin_next_arg (tree arglist) || TREE_CODE (arg) == INDIRECT_REF) arg = TREE_OPERAND (arg, 0); if (arg != last_parm) - warning ("second parameter of `va_start' not last named argument"); + warning ("second parameter of % not last named argument"); } else /* Evidently an out of date version of ; can't validate va_start's second argument, but can still work as intended. */ - warning ("`__builtin_next_arg' called without an argument"); + warning ("%<__builtin_next_arg%> called without an argument"); return expand_binop (Pmode, add_optab, current_function_internal_arg_pointer, @@ -4274,7 +4284,7 @@ expand_builtin_va_start (tree arglist) chain = TREE_CHAIN (arglist); if (TREE_CHAIN (chain)) - error ("too many arguments to function `va_start'"); + error ("too many arguments to function %"); nextarg = expand_builtin_next_arg (chain); valist = stabilize_va_list (TREE_VALUE (arglist), 1); @@ -4420,7 +4430,7 @@ gimplify_va_arg_expr (tree *expr_p, tree *pre_p, tree *post_p) if (TYPE_MAIN_VARIANT (want_va_type) != TYPE_MAIN_VARIANT (have_va_type)) { - error ("first argument to `va_arg' not of type `va_list'"); + error ("first argument to % not of type %"); return GS_ERROR; } @@ -4434,12 +4444,12 @@ gimplify_va_arg_expr (tree *expr_p, tree *pre_p, tree *post_p) /* 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. */ - warning ("`%T' is promoted to `%T' when passed through `...'", + warning ("%qT is promoted to %qT when passed through %<...%>", type, promoted_type); if (! gave_help) { gave_help = true; - warning ("(so you should pass `%T' not `%T' to `va_arg')", + warning ("(so you should pass %qT not %qT to %)", promoted_type, type); } @@ -4563,9 +4573,9 @@ expand_builtin_frame_address (tree fndecl, tree arglist) else if (! host_integerp (TREE_VALUE (arglist), 1)) { if (DECL_FUNCTION_CODE (fndecl) == BUILT_IN_FRAME_ADDRESS) - error ("invalid arg to `__builtin_frame_address'"); + error ("invalid arg to %<__builtin_frame_address%>"); else - error ("invalid arg to `__builtin_return_address'"); + error ("invalid arg to %<__builtin_return_address%>"); return const0_rtx; } else @@ -4579,9 +4589,9 @@ expand_builtin_frame_address (tree fndecl, tree arglist) if (tem == NULL) { if (DECL_FUNCTION_CODE (fndecl) == BUILT_IN_FRAME_ADDRESS) - warning ("unsupported arg to `__builtin_frame_address'"); + warning ("unsupported arg to %<__builtin_frame_address%>"); else - warning ("unsupported arg to `__builtin_return_address'"); + warning ("unsupported arg to %<__builtin_return_address%>"); return const0_rtx; } @@ -4747,7 +4757,7 @@ expand_builtin_expect (tree arglist, rtx target) if (TREE_CODE (c) != INTEGER_CST) { - error ("second arg to `__builtin_expect' must be a constant"); + error ("second arg to %<__builtin_expect%> must be a constant"); c = integer_zero_node; } @@ -6195,7 +6205,7 @@ fold_builtin_constant_p (tree arglist) STRIP_NOPS (arglist); /* If we know this is a constant, emit the constant of one. */ - if (TREE_CODE_CLASS (TREE_CODE (arglist)) == 'c' + if (CONSTANT_CLASS_P (arglist) || (TREE_CODE (arglist) == CONSTRUCTOR && TREE_CONSTANT (arglist)) || (TREE_CODE (arglist) == ADDR_EXPR @@ -8030,19 +8040,19 @@ fold_builtin_classify (tree exp, int builtin_index) /* Check that we have exactly one argument. */ if (arglist == 0) { - error ("too few arguments to function `%s'", + error ("too few arguments to function %qs", IDENTIFIER_POINTER (DECL_NAME (fndecl))); return error_mark_node; } else if (TREE_CHAIN (arglist) != 0) { - error ("too many arguments to function `%s'", + error ("too many arguments to function %qs", IDENTIFIER_POINTER (DECL_NAME (fndecl))); return error_mark_node; } else { - error ("non-floating-point argument to function `%s'", + error ("non-floating-point argument to function %qs", IDENTIFIER_POINTER (DECL_NAME (fndecl))); return error_mark_node; } @@ -8126,13 +8136,13 @@ fold_builtin_unordered_cmp (tree exp, /* Check that we have exactly two arguments. */ if (arglist == 0 || TREE_CHAIN (arglist) == 0) { - error ("too few arguments to function `%s'", + error ("too few arguments to function %qs", IDENTIFIER_POINTER (DECL_NAME (fndecl))); return error_mark_node; } else if (TREE_CHAIN (TREE_CHAIN (arglist)) != 0) { - error ("too many arguments to function `%s'", + error ("too many arguments to function %qs", IDENTIFIER_POINTER (DECL_NAME (fndecl))); return error_mark_node; } @@ -8156,7 +8166,7 @@ fold_builtin_unordered_cmp (tree exp, cmp_type = type1; else { - error ("non-floating-point argument to function `%s'", + error ("non-floating-point argument to function %qs", IDENTIFIER_POINTER (DECL_NAME (fndecl))); return error_mark_node; } @@ -8503,7 +8513,7 @@ fold_builtin (tree exp, bool ignore) if (exp) { /* ??? Don't clobber shared nodes such as integer_zero_node. */ - if (TREE_CODE_CLASS (TREE_CODE (exp)) == 'c') + if (CONSTANT_CLASS_P (exp)) exp = build1 (NOP_EXPR, TREE_TYPE (exp), exp); TREE_NO_WARNING (exp) = 1; } @@ -9237,7 +9247,7 @@ simplify_builtin_va_start (tree arglist) tree chain = TREE_CHAIN (arglist); if (TREE_CHAIN (chain)) - error ("too many arguments to function `va_start'"); + error ("too many arguments to function %"); simplify_builtin_next_arg (chain); } @@ -9250,7 +9260,7 @@ simplify_builtin_next_arg (tree arglist) if (TYPE_ARG_TYPES (fntype) == 0 || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (fntype))) == void_type_node)) - error ("`va_start' used in function with fixed args"); + error ("% used in function with fixed args"); else if (arglist) { tree last_parm = tree_last (DECL_ARGUMENTS (current_function_decl)); @@ -9266,13 +9276,13 @@ simplify_builtin_next_arg (tree arglist) || TREE_CODE (arg) == INDIRECT_REF) arg = TREE_OPERAND (arg, 0); if (arg != last_parm) - warning ("second parameter of `va_start' not last named argument"); + warning ("second parameter of % not last named argument"); TREE_VALUE (arglist) = arg; } else /* Evidently an out of date version of ; can't validate va_start's second argument, but can still work as intended. */ - warning ("`__builtin_next_arg' called without an argument"); + warning ("%<__builtin_next_arg%> called without an argument"); } diff --git a/gcc/c-common.c b/gcc/c-common.c index b7aa389cbfa..2b8ad801e9a 100644 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -828,7 +828,7 @@ fname_decl (unsigned int rid, tree id) input_location = saved_location; } if (!ix && !current_function_decl) - pedwarn ("%J'%D' is not defined outside of function scope", decl, decl); + pedwarn ("%J%qD is not defined outside of function scope", decl, decl); return decl; } @@ -849,7 +849,7 @@ fix_string_type (tree value) nchars = wide_flag ? length / wchar_bytes : length; if (pedantic && nchars - 1 > nchars_max && !c_dialect_cxx ()) - pedwarn ("string length `%d' is greater than the length `%d' ISO C%d compilers are required to support", + pedwarn ("string length %qd is greater than the length %qd ISO C%d compilers are required to support", nchars - 1, nchars_max, flag_isoc99 ? 99 : 89); e_type = wide_flag ? wchar_type_node : char_type_node; @@ -1135,7 +1135,7 @@ warn_for_collisions_1 (tree written, tree writer, struct tlist *list, && DECL_NAME (list->expr)) { warned_ids = new_tlist (warned_ids, written, NULL_TREE); - warning ("operation on `%s' may be undefined", + warning ("operation on %qs may be undefined", IDENTIFIER_POINTER (DECL_NAME (list->expr))); } list = list->next; @@ -1196,7 +1196,7 @@ verify_tree (tree x, struct tlist **pbefore_sp, struct tlist **pno_sp, { struct tlist *tmp_before, *tmp_nosp, *tmp_list2, *tmp_list3; enum tree_code code; - char cl; + enum tree_code_class cl; /* X may be NULL if it is the operand of an empty statement expression ({ }). */ @@ -1345,39 +1345,32 @@ verify_tree (tree x, struct tlist **pbefore_sp, struct tlist **pno_sp, add_tlist (pno_sp, t->cache_after_sp, NULL_TREE, 1); return; } - default: - break; - } - if (cl == '1') - { - if (first_rtl_op (code) == 0) - return; - x = TREE_OPERAND (x, 0); - writer = 0; - goto restart; - } - - switch (cl) - { - case 'r': - case '<': - case '2': - case 'e': - case 's': - case 'x': - { - int lp; - int max = first_rtl_op (TREE_CODE (x)); - for (lp = 0; lp < max; lp++) - { - tmp_before = tmp_nosp = 0; - verify_tree (TREE_OPERAND (x, lp), &tmp_before, &tmp_nosp, NULL_TREE); - merge_tlist (&tmp_nosp, tmp_before, 0); - add_tlist (pno_sp, tmp_nosp, NULL_TREE, 0); - } - break; - } + default: + /* For other expressions, simply recurse on their operands. + Manual tail recursion for unary expressions. + Other non-expressions need not be processed. */ + if (cl == tcc_unary) + { + if (first_rtl_op (code) == 0) + return; + x = TREE_OPERAND (x, 0); + writer = 0; + goto restart; + } + else if (IS_EXPR_CODE_CLASS (cl)) + { + int lp; + int max = first_rtl_op (TREE_CODE (x)); + for (lp = 0; lp < max; lp++) + { + tmp_before = tmp_nosp = 0; + verify_tree (TREE_OPERAND (x, lp), &tmp_before, &tmp_nosp, 0); + merge_tlist (&tmp_nosp, tmp_before, 0); + add_tlist (pno_sp, tmp_nosp, NULL_TREE, 0); + } + } + return; } } @@ -1441,14 +1434,14 @@ check_case_value (tree value) } /* See if the case values LOW and HIGH are in the range of the original - type (ie. before the default conversion to int) of the switch testing + type (i.e. before the default conversion to int) of the switch testing expression. TYPE is the promoted type of the testing expression, and ORIG_TYPE is the type before promoting it. CASE_LOW_P is a pointer to the lower bound of the case label, and CASE_HIGH_P is the upper bound or NULL if the case is not a case range. The caller has to make sure that we are not called with NULL for - CASE_LOW_P (ie. the defualt case). + CASE_LOW_P (i.e. the default case). Returns true if the case label is in range of ORIG_TYPE (satured or untouched) or false if the label is out of range. */ @@ -2229,7 +2222,7 @@ pointer_int_sum (enum tree_code resultcode, tree ptrop, tree intop) if (TREE_CODE (TREE_TYPE (result_type)) == VOID_TYPE) { if (pedantic || warn_pointer_arith) - pedwarn ("pointer of type `void *' used in arithmetic"); + pedwarn ("pointer of type % used in arithmetic"); size_exp = integer_one_node; } else if (TREE_CODE (TREE_TYPE (result_type)) == FUNCTION_TYPE) @@ -2349,7 +2342,7 @@ c_common_truthvalue_conversion (tree expr) { /* Common Ada/Pascal programmer's mistake. We always warn about this since it is so bad. */ - warning ("the address of `%D', will always evaluate as `true'", + warning ("the address of %qD, will always evaluate as %", TREE_OPERAND (expr, 0)); return truthvalue_true_node; } @@ -2494,7 +2487,7 @@ c_build_qualified_type (tree type, int type_quals) && (!POINTER_TYPE_P (type) || !C_TYPE_OBJECT_OR_INCOMPLETE_P (TREE_TYPE (type)))) { - error ("invalid use of `restrict'"); + error ("invalid use of %"); type_quals &= ~TYPE_QUAL_RESTRICT; } @@ -2534,7 +2527,7 @@ c_apply_type_quals_to_decl (int type_quals, tree decl) if (!type || !POINTER_TYPE_P (type) || !C_TYPE_OBJECT_OR_INCOMPLETE_P (TREE_TYPE (type))) - error ("invalid use of `restrict'"); + error ("invalid use of %"); else if (flag_strict_aliasing && type == TREE_TYPE (decl)) /* Indicate we need to make a unique alias set for this pointer. We can't do it here because it might be pointing to an @@ -2749,7 +2742,7 @@ c_sizeof_or_alignof_type (tree type, enum tree_code op, int complain) if (op == SIZEOF_EXPR) { if (complain && (pedantic || warn_pointer_arith)) - pedwarn ("invalid application of `sizeof' to a function type"); + pedwarn ("invalid application of % to a function type"); value = size_one_node; } else @@ -2759,13 +2752,13 @@ c_sizeof_or_alignof_type (tree type, enum tree_code op, int complain) { if (type_code == VOID_TYPE && complain && (pedantic || warn_pointer_arith)) - pedwarn ("invalid application of `%s' to a void type", op_name); + pedwarn ("invalid application of %qs to a void type", op_name); value = size_one_node; } else if (!COMPLETE_TYPE_P (type)) { if (complain) - error ("invalid application of `%s' to incomplete type `%T' ", + error ("invalid application of %qs to incomplete type %qT ", op_name, type); value = size_zero_node; } @@ -2806,7 +2799,7 @@ c_alignof_expr (tree expr) else if (TREE_CODE (expr) == COMPONENT_REF && DECL_C_BIT_FIELD (TREE_OPERAND (expr, 1))) { - error ("`__alignof' applied to a bit-field"); + error ("%<__alignof%> applied to a bit-field"); t = size_one_node; } else if (TREE_CODE (expr) == COMPONENT_REF @@ -3249,7 +3242,7 @@ void disable_builtin_function (const char *name) { if (strncmp (name, "__builtin_", strlen ("__builtin_")) == 0) - error ("cannot disable built-in function `%s'", name); + error ("cannot disable built-in function %qs", name); else { disabled_builtin *new_disabled_builtin = XNEW (disabled_builtin); @@ -3657,10 +3650,10 @@ match_case_to_enum_1 (tree key, tree type, tree label) TREE_INT_CST_HIGH (key), TREE_INT_CST_LOW (key)); if (TYPE_NAME (type) == 0) - warning ("%Jcase value `%s' not in enumerated type", + warning ("%Jcase value %qs not in enumerated type", CASE_LABEL (label), buf); else - warning ("%Jcase value `%s' not in enumerated type `%T'", + warning ("%Jcase value %qs not in enumerated type %qT", CASE_LABEL (label), buf, type); } @@ -3761,7 +3754,7 @@ c_do_switch_warnings (splay_tree cases, tree switch_stmt) { /* Warn if there are enumerators that don't correspond to case expressions. */ - warning ("%Henumeration value `%E' not handled in switch", + warning ("%Henumeration value %qE not handled in switch", &switch_location, TREE_PURPOSE (chain)); } } @@ -3957,7 +3950,7 @@ handle_packed_attribute (tree *node, tree name, tree ARG_UNUSED (args), that changes what the typedef is typing. */ else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -3976,7 +3969,7 @@ handle_nocommon_attribute (tree *node, tree name, DECL_COMMON (*node) = 0; else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -3994,7 +3987,7 @@ handle_common_attribute (tree *node, tree name, tree ARG_UNUSED (args), DECL_COMMON (*node) = 1; else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4021,7 +4014,7 @@ handle_noreturn_attribute (tree *node, tree name, tree ARG_UNUSED (args), TYPE_READONLY (TREE_TYPE (type)), 1)); else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4040,7 +4033,7 @@ handle_noinline_attribute (tree *node, tree name, DECL_UNINLINABLE (*node) = 1; else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4063,7 +4056,7 @@ handle_always_inline_attribute (tree *node, tree name, } else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4087,7 +4080,7 @@ handle_used_attribute (tree *pnode, tree name, tree ARG_UNUSED (args), } else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4113,7 +4106,7 @@ handle_unused_attribute (tree *node, tree name, tree ARG_UNUSED (args), TREE_USED (decl) = 1; else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } } @@ -4147,7 +4140,7 @@ handle_const_attribute (tree *node, tree name, tree ARG_UNUSED (args), TREE_THIS_VOLATILE (TREE_TYPE (type)))); else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4191,7 +4184,7 @@ handle_transparent_union_attribute (tree *node, tree name, DECL_TRANSPARENT_UNION (decl) = 1; else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4219,7 +4212,7 @@ handle_constructor_attribute (tree *node, tree name, } else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4247,7 +4240,7 @@ handle_destructor_attribute (tree *node, tree name, } else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4266,7 +4259,7 @@ handle_mode_attribute (tree *node, tree name, tree args, *no_add_attrs = true; if (TREE_CODE (TREE_VALUE (args)) != IDENTIFIER_NODE) - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); else { int j; @@ -4367,7 +4360,7 @@ handle_mode_attribute (tree *node, tree name, tree args, this mode for this type. */ if (TREE_CODE (typefm) != INTEGER_TYPE) { - error ("cannot use mode '%s' for enumeral types", + error ("cannot use mode %qs for enumeral types", GET_MODE_NAME (mode)); return NULL_TREE; } @@ -4417,7 +4410,7 @@ handle_section_attribute (tree *node, tree ARG_UNUSED (name), tree args, && strcmp (TREE_STRING_POINTER (DECL_SECTION_NAME (decl)), TREE_STRING_POINTER (TREE_VALUE (args))) != 0) { - error ("%Jsection of '%D' conflicts with previous declaration", + error ("%Jsection of %qD conflicts with previous declaration", *node, *node); *no_add_attrs = true; } @@ -4426,7 +4419,7 @@ handle_section_attribute (tree *node, tree ARG_UNUSED (name), tree args, } else { - error ("%Jsection attribute not allowed for '%D'", *node, *node); + error ("%Jsection attribute not allowed for %qD", *node, *node); *no_add_attrs = true; } } @@ -4506,7 +4499,7 @@ handle_aligned_attribute (tree *node, tree ARG_UNUSED (name), tree args, else if (TREE_CODE (decl) != VAR_DECL && TREE_CODE (decl) != FIELD_DECL) { - error ("%Jalignment may not be specified for '%D'", decl, decl); + error ("%Jalignment may not be specified for %qD", decl, decl); *no_add_attrs = true; } else @@ -4544,7 +4537,7 @@ handle_alias_attribute (tree *node, tree name, tree args, if ((TREE_CODE (decl) == FUNCTION_DECL && DECL_INITIAL (decl)) || (TREE_CODE (decl) != FUNCTION_DECL && ! DECL_EXTERNAL (decl))) { - error ("%J'%D' defined both normally and as an alias", decl, decl); + error ("%J%qD defined both normally and as an alias", decl, decl); *no_add_attrs = true; } @@ -4578,7 +4571,7 @@ handle_alias_attribute (tree *node, tree name, tree args, } else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4602,14 +4595,14 @@ handle_visibility_attribute (tree *node, tree name, tree args, { if (TREE_CODE (*node) != RECORD_TYPE && TREE_CODE (*node) != UNION_TYPE) { - warning ("`%s' attribute ignored on non-class types", + warning ("%qs attribute ignored on non-class types", IDENTIFIER_POINTER (name)); return NULL_TREE; } } else if (decl_function_context (decl) != 0 || ! TREE_PUBLIC (decl)) { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); return NULL_TREE; } @@ -4695,7 +4688,7 @@ handle_tls_model_attribute (tree *node, tree name, tree args, if (! DECL_THREAD_LOCAL (decl)) { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } else @@ -4736,12 +4729,12 @@ handle_no_instrument_function_attribute (tree *node, tree name, if (TREE_CODE (decl) != FUNCTION_DECL) { - error ("%J'%E' attribute applies only to functions", decl, name); + error ("%J%qE attribute applies only to functions", decl, name); *no_add_attrs = true; } else if (DECL_INITIAL (decl)) { - error ("%Jcan't set '%E' attribute after definition", decl, name); + error ("%Jcan%'t set %qE attribute after definition", decl, name); *no_add_attrs = true; } else @@ -4762,7 +4755,7 @@ handle_malloc_attribute (tree *node, tree name, tree ARG_UNUSED (args), /* ??? TODO: Support types. */ else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4782,12 +4775,12 @@ handle_no_limit_stack_attribute (tree *node, tree name, if (TREE_CODE (decl) != FUNCTION_DECL) { - error ("%J'%E' attribute applies only to functions", decl, name); + error ("%J%qE attribute applies only to functions", decl, name); *no_add_attrs = true; } else if (DECL_INITIAL (decl)) { - error ("%Jcan't set '%E' attribute after definition", decl, name); + error ("%Jcan%'t set %qE attribute after definition", decl, name); *no_add_attrs = true; } else @@ -4808,7 +4801,7 @@ handle_pure_attribute (tree *node, tree name, tree ARG_UNUSED (args), /* ??? TODO: Support types. */ else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -4863,10 +4856,10 @@ handle_deprecated_attribute (tree *node, tree name, what = IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (type))); } if (what) - warning ("`%s' attribute ignored for `%s'", + warning ("%qs attribute ignored for %qs", IDENTIFIER_POINTER (name), what); else - warning ("`%s' attribute ignored", + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); } @@ -4895,7 +4888,7 @@ handle_vector_size_attribute (tree *node, tree name, tree args, if (! host_integerp (size, 1)) { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); return NULL_TREE; } @@ -4924,7 +4917,7 @@ handle_vector_size_attribute (tree *node, tree name, tree args, && GET_MODE_CLASS (orig_mode) != MODE_INT) || ! host_integerp (TYPE_SIZE_UNIT (type), 1)) { - error ("invalid vector type for attribute `%s'", + error ("invalid vector type for attribute %qs", IDENTIFIER_POINTER (name)); return NULL_TREE; } @@ -5174,7 +5167,7 @@ handle_nothrow_attribute (tree *node, tree name, tree ARG_UNUSED (args), /* ??? TODO: Support types. */ else { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -5197,7 +5190,7 @@ handle_cleanup_attribute (tree *node, tree name, tree args, we'd be missing too much, since we do have attribute constructor. */ if (TREE_CODE (decl) != VAR_DECL || TREE_STATIC (decl)) { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; return NULL_TREE; } @@ -5236,7 +5229,7 @@ handle_warn_unused_result_attribute (tree *node, tree name, /* Ignore the attribute for functions not returning any value. */ if (VOID_TYPE_P (TREE_TYPE (*node))) { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -5253,7 +5246,7 @@ handle_sentinel_attribute (tree *node, tree name, tree args, if (!params) { - warning ("`%s' attribute requires prototypes with named arguments", + warning ("%qs attribute requires prototypes with named arguments", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -5264,7 +5257,7 @@ handle_sentinel_attribute (tree *node, tree name, tree args, if (VOID_TYPE_P (TREE_VALUE (params))) { - warning ("`%s' attribute only applies to variadic functions", + warning ("%qs attribute only applies to variadic functions", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -5489,7 +5482,7 @@ c_parse_error (const char *msgid, enum cpp_ttype token, tree value) else if (token == CPP_NAME) error ("%s before \"%s\"", string, IDENTIFIER_POINTER (value)); else if (token < N_TTYPES) - error ("%s before '%s' token", string, cpp_type2name (token)); + error ("%s before %qs token", string, cpp_type2name (token)); else error ("%s", string); } @@ -5551,7 +5544,7 @@ c_warn_unused_result (tree *top_p) if (lookup_attribute ("warn_unused_result", TYPE_ATTRIBUTES (ftype))) { if (fdecl) - warning ("%Hignoring return value of `%D', " + warning ("%Hignoring return value of %qD, " "declared with attribute warn_unused_result", EXPR_LOCUS (t), fdecl); else @@ -5595,7 +5588,7 @@ fold_offsetof_1 (tree expr) if (DECL_C_BIT_FIELD (t)) { error ("attempt to take address of bit-field structure " - "member `%s'", IDENTIFIER_POINTER (DECL_NAME (t))); + "member %qs", IDENTIFIER_POINTER (DECL_NAME (t))); return error_mark_node; } off = size_binop (PLUS_EXPR, DECL_FIELD_OFFSET (t), diff --git a/gcc/c-common.def b/gcc/c-common.def index fa45ad0526a..adca88f4700 100644 --- a/gcc/c-common.def +++ b/gcc/c-common.def @@ -25,46 +25,46 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA /* Tree nodes relevant to both C and C++. These were originally in cp-tree.def in the cp subdir. */ -DEFTREECODE (SIZEOF_EXPR, "sizeof_expr", '1', 1) -DEFTREECODE (ARROW_EXPR, "arrow_expr", 'e', 1) -DEFTREECODE (ALIGNOF_EXPR, "alignof_expr", '1', 1) +DEFTREECODE (SIZEOF_EXPR, "sizeof_expr", tcc_unary, 1) +DEFTREECODE (ARROW_EXPR, "arrow_expr", tcc_expression, 1) +DEFTREECODE (ALIGNOF_EXPR, "alignof_expr", tcc_unary, 1) /* Used to represent an expression statement. Use `EXPR_STMT_EXPR' to obtain the expression. */ -DEFTREECODE (EXPR_STMT, "expr_stmt", 'e', 1) +DEFTREECODE (EXPR_STMT, "expr_stmt", tcc_expression, 1) /* Used to represent a `for' statement. The operands are FOR_INIT_STMT, FOR_COND, FOR_EXPR, and FOR_BODY, respectively. */ -DEFTREECODE (FOR_STMT, "for_stmt", 'e', 4) +DEFTREECODE (FOR_STMT, "for_stmt", tcc_expression, 4) /* Used to represent a 'while' statement. The operands are WHILE_COND and WHILE_BODY, respectively. */ -DEFTREECODE (WHILE_STMT, "while_stmt", 'e', 2) +DEFTREECODE (WHILE_STMT, "while_stmt", tcc_expression, 2) /* Used to represent a 'do' statement. The operands are DO_BODY and DO_COND, respectively. */ -DEFTREECODE (DO_STMT, "do_stmt", 'e', 2) +DEFTREECODE (DO_STMT, "do_stmt", tcc_expression, 2) /* Used to represent a 'break' statement. */ -DEFTREECODE (BREAK_STMT, "break_stmt", 'e', 0) +DEFTREECODE (BREAK_STMT, "break_stmt", tcc_expression, 0) /* Used to represent a 'continue' statement. */ -DEFTREECODE (CONTINUE_STMT, "continue_stmt", 'e', 0) +DEFTREECODE (CONTINUE_STMT, "continue_stmt", tcc_expression, 0) /* Used to represent a 'switch' statement. The operands are SWITCH_COND, SWITCH_BODY and SWITCH_TYPE, respectively. */ -DEFTREECODE (SWITCH_STMT, "switch_stmt", 'e', 3) +DEFTREECODE (SWITCH_STMT, "switch_stmt", tcc_expression, 3) /* A STMT_EXPR represents a statement-expression. The STMT_EXPR_STMT is the statement given by the expression. */ -DEFTREECODE (STMT_EXPR, "stmt_expr", 'e', 1) +DEFTREECODE (STMT_EXPR, "stmt_expr", tcc_expression, 1) /* A COMPOUND_LITERAL_EXPR represents a C99 compound literal. The COMPOUND_LITERAL_EXPR_DECL_STMT is the a DECL_STMT containing the decl for the anonymous object represented by the COMPOUND_LITERAL; the DECL_INITIAL of that decl is the CONSTRUCTOR that initializes the compound literal. */ -DEFTREECODE (COMPOUND_LITERAL_EXPR, "compound_literal_expr", 'e', 1) +DEFTREECODE (COMPOUND_LITERAL_EXPR, "compound_literal_expr", tcc_expression, 1) /* Local variables: diff --git a/gcc/c-common.h b/gcc/c-common.h index e6371b830e1..46e843b0004 100644 --- a/gcc/c-common.h +++ b/gcc/c-common.h @@ -820,10 +820,6 @@ extern tree decl_constant_value (tree); /* Handle increment and decrement of boolean types. */ extern tree boolean_increment (enum tree_code, tree); -/* Hook currently used only by the C++ front end to reset internal state - after entering or leaving a header file. */ -extern void extract_interface_info (void); - extern int case_compare (splay_tree_key, splay_tree_key); extern tree c_add_case_label (splay_tree, tree, tree, tree, tree); @@ -859,7 +855,14 @@ extern GTY(()) int pending_lang_change; struct c_fileinfo { int time; /* Time spent in the file. */ - short interface_only; /* Flags - used only by C++ */ + + /* Flags used only by C++. + INTERFACE_ONLY nonzero means that we are in an "interface" section + of the compiler. INTERFACE_UNKNOWN nonzero means we cannot trust + the value of INTERFACE_ONLY. If INTERFACE_UNKNOWN is zero and + INTERFACE_ONLY is zero, it means that we are responsible for + exporting definitions that others might need. */ + short interface_only; short interface_unknown; }; diff --git a/gcc/c-decl.c b/gcc/c-decl.c index 12e27a0053d..e1e8d4d8f0d 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -521,7 +521,7 @@ c_finish_incomplete_decl (tree decl) && ! DECL_EXTERNAL (decl) && TYPE_DOMAIN (type) == 0) { - warning ("%Jarray '%D' assumed to have one element", decl, decl); + warning ("%Jarray %qD assumed to have one element", decl, decl); complete_array_type (type, NULL_TREE, 1); @@ -718,15 +718,15 @@ pop_scope (void) /* Warnings for unused labels, errors for undefined labels. */ if (TREE_USED (p) && !DECL_INITIAL (p)) { - error ("%Jlabel `%D' used but not defined", p, p); + error ("%Jlabel %qD used but not defined", p, p); DECL_INITIAL (p) = error_mark_node; } else if (!TREE_USED (p) && warn_unused_label) { if (DECL_INITIAL (p)) - warning ("%Jlabel `%D' defined but not used", p, p); + warning ("%Jlabel %qD defined but not used", p, p); else - warning ("%Jlabel `%D' declared but not defined", p, p); + warning ("%Jlabel %qD declared but not defined", p, p); } /* Labels go in BLOCK_VARS. */ TREE_CHAIN (p) = BLOCK_VARS (block); @@ -771,7 +771,7 @@ pop_scope (void) || (TREE_STATIC (p) && !TREE_PUBLIC (p) && !TREE_THIS_VOLATILE (p))) && scope != external_scope) - warning ("%Junused variable `%D'", p, p); + warning ("%Junused variable %qD", p, p); if (b->inner_comp) { @@ -1050,13 +1050,13 @@ validate_proto_after_old_defn (tree newdecl, tree newtype, tree oldtype) agree on the number of arguments. */ if (END_OF_ARGLIST (oldargtype)) { - error ("%Jprototype for '%D' declares more arguments " + error ("%Jprototype for %qD declares more arguments " "than previous old-style definition", newdecl, newdecl); return false; } else if (END_OF_ARGLIST (newargtype)) { - error ("%Jprototype for '%D' declares fewer arguments " + error ("%Jprototype for %qD declares fewer arguments " "than previous old-style definition", newdecl, newdecl); return false; } @@ -1065,7 +1065,7 @@ validate_proto_after_old_defn (tree newdecl, tree newtype, tree oldtype) for the arg. */ else if (! comptypes (oldargtype, newargtype)) { - error ("%Jprototype for '%D' declares arg %d with incompatible type", + error ("%Jprototype for %qD declares arg %d with incompatible type", newdecl, newdecl, i); return false; } @@ -1077,7 +1077,7 @@ validate_proto_after_old_defn (tree newdecl, tree newtype, tree oldtype) /* If we get here, no errors were found, but do issue a warning for this poor-style construct. */ - warning ("%Jprototype for '%D' follows non-prototype definition", + warning ("%Jprototype for %qD follows non-prototype definition", newdecl, newdecl); return true; #undef END_OF_ARGLIST @@ -1092,11 +1092,11 @@ locate_old_decl (tree decl, void (*diag)(const char *, ...)) if (TREE_CODE (decl) == FUNCTION_DECL && DECL_BUILT_IN (decl)) ; else if (DECL_INITIAL (decl)) - diag (N_("%Jprevious definition of '%D' was here"), decl, decl); + diag (N_("%Jprevious definition of %qD was here"), decl, decl); else if (C_DECL_IMPLICIT (decl)) - diag (N_("%Jprevious implicit declaration of '%D' was here"), decl, decl); + diag (N_("%Jprevious implicit declaration of %qD was here"), decl, decl); else - diag (N_("%Jprevious declaration of '%D' was here"), decl, decl); + diag (N_("%Jprevious declaration of %qD was here"), decl, decl); } /* Subroutine of duplicate_decls. Compare NEWDECL to OLDDECL. @@ -1132,15 +1132,15 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, && DECL_BUILT_IN (olddecl) && !C_DECL_DECLARED_BUILTIN (olddecl))) { - error ("%J'%D' redeclared as different kind of symbol", + error ("%J%qD redeclared as different kind of symbol", newdecl, newdecl); locate_old_decl (olddecl, error); } else if (TREE_PUBLIC (newdecl)) - warning ("%Jbuilt-in function '%D' declared as non-function", + warning ("%Jbuilt-in function %qD declared as non-function", newdecl, newdecl); else if (warn_shadow) - warning ("%Jdeclaration of '%D' shadows a built-in function", + warning ("%Jdeclaration of %qD shadows a built-in function", newdecl, newdecl); return false; } @@ -1161,7 +1161,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, /* 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. */ - warning ("%Jconflicting types for built-in function '%D'", + warning ("%Jconflicting types for built-in function %qD", newdecl, newdecl); return false; } @@ -1185,7 +1185,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, && TYPE_MAIN_VARIANT (TREE_TYPE (newtype)) == integer_type_node && C_FUNCTION_IMPLICIT_INT (newdecl)) { - pedwarn ("%Jconflicting types for '%D'", newdecl, newdecl); + pedwarn ("%Jconflicting types for %qD", newdecl, newdecl); /* Make sure we keep void as the return type. */ TREE_TYPE (newdecl) = *newtypep = newtype = oldtype; C_FUNCTION_IMPLICIT_INT (newdecl) = 0; @@ -1194,9 +1194,9 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, else { if (TYPE_QUALS (newtype) != TYPE_QUALS (oldtype)) - error ("%J conflicting type qualifiers for '%D'", newdecl, newdecl); + error ("%J conflicting type qualifiers for %qD", newdecl, newdecl); else - error ("%Jconflicting types for '%D'", newdecl, newdecl); + error ("%Jconflicting types for %qD", newdecl, newdecl); diagnose_arglist_conflict (newdecl, olddecl, newtype, oldtype); locate_old_decl (olddecl, error); return false; @@ -1211,7 +1211,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, if (DECL_IN_SYSTEM_HEADER (newdecl) || DECL_IN_SYSTEM_HEADER (olddecl)) return true; /* Allow OLDDECL to continue in use. */ - error ("%Jredefinition of typedef '%D'", newdecl, newdecl); + error ("%Jredefinition of typedef %qD", newdecl, newdecl); locate_old_decl (olddecl, error); return false; } @@ -1235,7 +1235,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, && !TYPE_ARG_TYPES (TREE_TYPE (newdecl))))) { if (warn_shadow) - warning ("%Jdeclaration of '%D' shadows a built-in function", + warning ("%Jdeclaration of %qD shadows a built-in function", newdecl, newdecl); /* Discard the old built-in function. */ return false; @@ -1250,7 +1250,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, && DECL_EXTERNAL (newdecl) && same_translation_unit_p (olddecl, newdecl)))) { - error ("%Jredefinition of '%D'", newdecl, newdecl); + error ("%Jredefinition of %qD", newdecl, newdecl); locate_old_decl (olddecl, error); return false; } @@ -1285,7 +1285,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, && !(DECL_EXTERNAL (olddecl) && DECL_DECLARED_INLINE_P (olddecl))) { - error ("%Jstatic declaration of '%D' follows " + error ("%Jstatic declaration of %qD follows " "non-static declaration", newdecl, newdecl); locate_old_decl (olddecl, error); } @@ -1295,14 +1295,14 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, { if (DECL_CONTEXT (olddecl)) { - error ("%Jnon-static declaration of '%D' follows " + error ("%Jnon-static declaration of %qD follows " "static declaration", newdecl, newdecl); locate_old_decl (olddecl, error); return false; } else if (warn_traditional) { - warning ("%Jnon-static declaration of '%D' follows " + warning ("%Jnon-static declaration of %qD follows " "static declaration", newdecl, newdecl); warned = true; } @@ -1315,10 +1315,10 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, if (DECL_THREAD_LOCAL (newdecl) != DECL_THREAD_LOCAL (olddecl)) { if (DECL_THREAD_LOCAL (newdecl)) - error ("%Jthread-local declaration of '%D' follows " + error ("%Jthread-local declaration of %qD follows " "non-thread-local declaration", newdecl, newdecl); else - error ("%Jnon-thread-local declaration of '%D' follows " + error ("%Jnon-thread-local declaration of %qD follows " "thread-local declaration", newdecl, newdecl); locate_old_decl (olddecl, error); @@ -1328,7 +1328,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, /* Multiple initialized definitions are not allowed (6.9p3,5). */ if (DECL_INITIAL (newdecl) && DECL_INITIAL (olddecl)) { - error ("%Jredefinition of '%D'", newdecl, newdecl); + error ("%Jredefinition of %qD", newdecl, newdecl); locate_old_decl (olddecl, error); return false; } @@ -1355,7 +1355,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, } else if (warn_traditional) { - warning ("%Jnon-static declaration of '%D' follows " + warning ("%Jnon-static declaration of %qD follows " "static declaration", newdecl, newdecl); warned = true; } @@ -1363,10 +1363,10 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, else { if (TREE_PUBLIC (newdecl)) - error ("%Jnon-static declaration of '%D' follows " + error ("%Jnon-static declaration of %qD follows " "static declaration", newdecl, newdecl); else - error ("%Jstatic declaration of '%D' follows " + error ("%Jstatic declaration of %qD follows " "non-static declaration", newdecl, newdecl); locate_old_decl (olddecl, error); @@ -1384,13 +1384,13 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, } else if (DECL_EXTERNAL (olddecl)) { - error ("%Jdeclaration of '%D' with no linkage follows " + error ("%Jdeclaration of %qD with no linkage follows " "extern declaration", newdecl, newdecl); locate_old_decl (olddecl, error); } else { - error ("%Jredeclaration of '%D' with no linkage", + error ("%Jredeclaration of %qD with no linkage", newdecl, newdecl); locate_old_decl (olddecl, error); } @@ -1404,7 +1404,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, if (DECL_VISIBILITY_SPECIFIED (newdecl) && DECL_VISIBILITY_SPECIFIED (olddecl) && DECL_VISIBILITY (newdecl) != DECL_VISIBILITY (olddecl)) { - warning ("%Jredeclaration of '%D' with different visibility " + warning ("%Jredeclaration of %qD with different visibility " "(old visibility preserved)", newdecl, newdecl); warned = true; } @@ -1415,14 +1415,14 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, if (DECL_DECLARED_INLINE_P (newdecl) && lookup_attribute ("noinline", DECL_ATTRIBUTES (olddecl))) { - warning ("%Jinline declaration of '%D' follows " + warning ("%Jinline declaration of %qD follows " "declaration with attribute noinline", newdecl, newdecl); warned = true; } else if (DECL_DECLARED_INLINE_P (olddecl) && lookup_attribute ("noinline", DECL_ATTRIBUTES (newdecl))) { - warning ("%Jdeclaration of '%D' with attribute noinline follows " + warning ("%Jdeclaration of %qD with attribute noinline follows " "inline declaration ", newdecl, newdecl); warned = true; } @@ -1437,13 +1437,13 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, { if (TREE_USED (olddecl)) { - warning ("%J'%D' declared inline after being called", + warning ("%J%qD declared inline after being called", olddecl, olddecl); warned = true; } else if (DECL_INITIAL (olddecl)) { - warning ("%J'%D' declared inline after its definition", + warning ("%J%qD declared inline after its definition", olddecl, olddecl); warned = true; } @@ -1463,7 +1463,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, if (TREE_CODE (newdecl) == PARM_DECL && (!TREE_ASM_WRITTEN (olddecl) || TREE_ASM_WRITTEN (newdecl))) { - error ("%Jredefinition of parameter '%D'", newdecl, newdecl); + error ("%Jredefinition of parameter %qD", newdecl, newdecl); locate_old_decl (olddecl, error); return false; } @@ -1487,7 +1487,7 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl, && !(TREE_CODE (newdecl) == PARM_DECL && TREE_ASM_WRITTEN (olddecl) && !TREE_ASM_WRITTEN (newdecl))) { - warning ("%Jredundant redeclaration of '%D'", newdecl, newdecl); + warning ("%Jredundant redeclaration of %qD", newdecl, newdecl); warned = true; } @@ -1793,17 +1793,17 @@ warn_if_shadowing (tree new_decl) tree old_decl = b->decl; if (TREE_CODE (old_decl) == PARM_DECL) - warning ("%Jdeclaration of '%D' shadows a parameter", + warning ("%Jdeclaration of %qD shadows a parameter", new_decl, new_decl); else if (DECL_FILE_SCOPE_P (old_decl)) - warning ("%Jdeclaration of '%D' shadows a global declaration", + warning ("%Jdeclaration of %qD shadows a global declaration", new_decl, new_decl); else if (TREE_CODE (old_decl) == FUNCTION_DECL && DECL_BUILT_IN (old_decl)) - warning ("%Jdeclaration of '%D' shadows a built-in function", + warning ("%Jdeclaration of %qD shadows a built-in function", new_decl, new_decl); else - warning ("%Jdeclaration of '%D' shadows a previous local", + warning ("%Jdeclaration of %qD shadows a previous local", new_decl, new_decl); if (TREE_CODE (old_decl) != FUNCTION_DECL @@ -1962,7 +1962,7 @@ pushdecl (tree x) if (warn_nested_externs && scope != file_scope && !DECL_IN_SYSTEM_HEADER (x)) - warning ("nested extern declaration of '%D'", x); + warning ("nested extern declaration of %qD", x); while (b && !B_IN_EXTERNAL_SCOPE (b)) { @@ -2051,7 +2051,7 @@ pushdecl (tree x) && !TREE_PUBLIC (x) && !DECL_INITIAL (x)) { if (warn_nested_externs && !DECL_IN_SYSTEM_HEADER (x)) - warning ("nested static declaration of '%D'", x); + warning ("nested static declaration of %qD", x); while (b && !B_IN_FILE_SCOPE (b)) b = b->shadowed; @@ -2146,7 +2146,7 @@ implicit_decl_warning (tree id, tree olddecl) default: gcc_unreachable (); } - diag (N_("implicit declaration of function '%E'"), id); + diag (N_("implicit declaration of function %qE"), id); if (olddecl) locate_old_decl (olddecl, diag); } @@ -2261,12 +2261,12 @@ undeclared_variable (tree id) if (current_function_decl == 0) { - error ("'%E' undeclared here (not in a function)", id); + error ("%qE undeclared here (not in a function)", id); scope = current_scope; } else { - error ("'%E' undeclared (first use in this function)", id); + error ("%qE undeclared (first use in this function)", id); if (! already) { @@ -2309,7 +2309,7 @@ lookup_label (tree name) if (current_function_decl == 0) { - error ("label %s referenced outside of any function", + error ("label %qs referenced outside of any function", IDENTIFIER_POINTER (name)); return 0; } @@ -2352,7 +2352,7 @@ declare_label (tree name) at this scope */ if (b && B_IN_CURRENT_SCOPE (b)) { - error ("duplicate label declaration `%s'", IDENTIFIER_POINTER (name)); + error ("duplicate label declaration %qs", IDENTIFIER_POINTER (name)); locate_old_decl (b->decl, error); /* Just use the previous declaration. */ @@ -2387,7 +2387,7 @@ define_label (location_t location, tree name) || (DECL_CONTEXT (label) != current_function_decl && C_DECLARED_LABEL_FLAG (label)))) { - error ("%Hduplicate label `%D'", &location, label); + error ("%Hduplicate label %qD", &location, label); locate_old_decl (label, error); return 0; } @@ -2410,7 +2410,7 @@ define_label (location_t location, tree name) if (warn_traditional && !in_system_header && lookup_name (name)) warning ("%Htraditional C lacks a separate namespace for labels, " - "identifier `%s' conflicts", &location, + "identifier %qs conflicts", &location, IDENTIFIER_POINTER (name)); /* Mark label as having been defined. */ @@ -2475,7 +2475,7 @@ void pending_xref_error (void) { if (pending_invalid_xref != 0) - error ("%H`%s' defined as wrong kind of tag", + error ("%H%qs defined as wrong kind of tag", &pending_invalid_xref_location, IDENTIFIER_POINTER (pending_invalid_xref)); pending_invalid_xref = 0; @@ -2681,7 +2681,7 @@ shadow_tag_warned (const struct c_declspecs *declspecs, int warned) pending_invalid_xref = 0; - if (declspecs->type && !declspecs->typedef_decl) + if (declspecs->type && !declspecs->default_int_p && !declspecs->typedef_p) { tree value = declspecs->type; enum tree_code code = TREE_CODE (value); @@ -2724,26 +2724,47 @@ shadow_tag_warned (const struct c_declspecs *declspecs, int warned) } } } - else if (warned != 1 && !in_system_header && declspecs->typedef_decl) + else if (warned != 1 && !in_system_header && declspecs->typedef_p) { pedwarn ("useless type name in empty declaration"); warned = 1; } - if (found_tag && (declspecs->specbits & ((1 << (int) RID_LONG) - | (1 << (int) RID_SHORT) - | (1 << (int) RID_UNSIGNED) - | (1 << (int) RID_SIGNED) - | (1 << (int) RID_COMPLEX)))) + if (declspecs->inline_p) { - error ("long, short, signed, unsigned or complex used invalidly " - "in empty declaration"); + error ("% in empty declaration"); warned = 1; } - if (!warned && !in_system_header && declspecs->specbits) + if (current_scope == file_scope && declspecs->storage_class == csc_auto) { - warning ("useless keyword or type name in empty declaration"); + error ("% in file-scope empty declaration"); + warned = 1; + } + + if (current_scope == file_scope && declspecs->storage_class == csc_register) + { + error ("% in file-scope empty declaration"); + warned = 1; + } + + if (!warned && !in_system_header && declspecs->storage_class != csc_none) + { + warning ("useless storage class specifier in empty declaration"); + warned = 2; + } + + if (!warned && !in_system_header && declspecs->thread_p) + { + warning ("useless %<__thread%> in empty declaration"); + warned = 2; + } + + if (!warned && !in_system_header && (declspecs->const_p + || declspecs->volatile_p + || declspecs->restrict_p)) + { + warning ("useless type qualifier in empty declaration"); warned = 2; } @@ -2754,6 +2775,35 @@ shadow_tag_warned (const struct c_declspecs *declspecs, int warned) } } + +/* Return the qualifiers from SPECS as a bitwise OR of TYPE_QUAL_* + bits. SPECS represents declaration specifiers that the grammar + only permits to contain type qualifiers and attributes. */ + +int +quals_from_declspecs (const struct c_declspecs *specs) +{ + int quals = ((specs->const_p ? TYPE_QUAL_CONST : 0) + | (specs->volatile_p ? TYPE_QUAL_VOLATILE : 0) + | (specs->restrict_p ? TYPE_QUAL_RESTRICT : 0)); + gcc_assert (!specs->type + && !specs->decl_attr + && specs->typespec_word == cts_none + && specs->storage_class == csc_none + && !specs->typedef_p + && !specs->explicit_signed_p + && !specs->deprecated_p + && !specs->long_p + && !specs->long_long_p + && !specs->short_p + && !specs->signed_p + && !specs->unsigned_p + && !specs->complex_p + && !specs->inline_p + && !specs->thread_p); + return quals; +} + /* Construct an array declarator. EXPR is the expression inside [], or NULL_TREE. QUALS are the type qualifiers inside the [] (to be applied to the pointer to which a parameter array is converted). STATIC_P is @@ -2772,18 +2822,28 @@ build_array_declarator (tree expr, struct c_declspecs *quals, bool static_p, declarator->kind = cdk_array; declarator->declarator = 0; declarator->u.array.dimen = expr; - declarator->u.array.quals = quals; + if (quals) + { + declarator->u.array.attrs = quals->attrs; + declarator->u.array.quals = quals_from_declspecs (quals); + } + else + { + declarator->u.array.attrs = NULL_TREE; + declarator->u.array.quals = 0; + } declarator->u.array.static_p = static_p; declarator->u.array.vla_unspec_p = vla_unspec_p; if (pedantic && !flag_isoc99) { if (static_p || quals != NULL) - pedwarn ("ISO C90 does not support `static' or type qualifiers in parameter array declarators"); + pedwarn ("ISO C90 does not support % or type " + "qualifiers in parameter array declarators"); if (vla_unspec_p) - pedwarn ("ISO C90 does not support `[*]' array declarators"); + pedwarn ("ISO C90 does not support %<[*]%> array declarators"); } if (vla_unspec_p) - warning ("GCC does not yet properly implement `[*]' array declarators"); + warning ("GCC does not yet properly implement %<[*]%> array declarators"); return declarator; } @@ -2799,7 +2859,8 @@ set_array_declarator_inner (struct c_declarator *decl, struct c_declarator *inner, bool abstract_p) { decl->declarator = inner; - if (abstract_p && (decl->u.array.quals != NULL + if (abstract_p && (decl->u.array.quals != TYPE_UNQUALIFIED + || decl->u.array.attrs != NULL_TREE || decl->u.array.static_p)) error ("static or type qualifiers in abstract declarator"); return decl; @@ -2858,7 +2919,7 @@ start_decl (struct c_declarator *declarator, struct c_declspecs *declspecs, if (warn_main > 0 && TREE_CODE (decl) != FUNCTION_DECL && MAIN_NAME_P (DECL_NAME (decl))) - warning ("%J'%D' is usually a function", decl, decl); + warning ("%J%qD is usually a function", decl, decl); if (initialized) /* Is it valid for this decl to have an initializer at all? @@ -2867,18 +2928,18 @@ start_decl (struct c_declarator *declarator, struct c_declspecs *declspecs, switch (TREE_CODE (decl)) { case TYPE_DECL: - error ("typedef '%D' is initialized (use __typeof__ instead)", decl); + error ("typedef %qD is initialized (use __typeof__ instead)", decl); initialized = 0; break; case FUNCTION_DECL: - error ("function '%D' is initialized like a variable", decl); + error ("function %qD is initialized like a variable", decl); initialized = 0; break; case PARM_DECL: /* DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE. */ - error ("parameter '%D' is initialized", decl); + error ("parameter %qD is initialized", decl); initialized = 0; break; @@ -2903,12 +2964,12 @@ start_decl (struct c_declarator *declarator, struct c_declspecs *declspecs, } else if (TREE_CODE (TREE_TYPE (decl)) != ARRAY_TYPE) { - error ("variable '%D' has initializer but incomplete type", decl); + error ("variable %qD has initializer but incomplete type", decl); initialized = 0; } else if (!COMPLETE_TYPE_P (TREE_TYPE (TREE_TYPE (decl)))) { - error ("elements of array '%D' have incomplete type", decl); + error ("elements of array %qD have incomplete type", decl); initialized = 0; } } @@ -2975,14 +3036,17 @@ start_decl (struct c_declarator *declarator, struct c_declspecs *declspecs, && DECL_DECLARED_INLINE_P (decl) && DECL_UNINLINABLE (decl) && lookup_attribute ("noinline", DECL_ATTRIBUTES (decl))) - warning ("%Jinline function '%D' given attribute noinline", decl, decl); + warning ("%Jinline function %qD given attribute noinline", decl, decl); /* Add this decl to the current scope. TEM may equal DECL or it may be a previous decl of the same name. */ tem = pushdecl (decl); - if (initialized) - DECL_EXTERNAL (tem) = 0; + if (initialized && DECL_EXTERNAL (tem)) + { + DECL_EXTERNAL (tem) = 0; + TREE_STATIC (tem) = 1; + } return tem; } @@ -3039,12 +3103,12 @@ finish_decl (tree decl, tree init, tree asmspec_tree) type = TREE_TYPE (decl); if (failure == 1) - error ("%Jinitializer fails to determine size of '%D'", decl, decl); + error ("%Jinitializer fails to determine size of %qD", decl, decl); else if (failure == 2) { if (do_default) - error ("%Jarray size missing in '%D'", decl, decl); + error ("%Jarray size missing in %qD", decl, decl); /* If a `static' var's size isn't known, make it extern as well as static, so it does not get allocated. @@ -3060,7 +3124,7 @@ finish_decl (tree decl, tree init, tree asmspec_tree) warn only if the value is less than zero. */ else if (pedantic && TYPE_DOMAIN (type) != 0 && tree_int_cst_sgn (TYPE_MAX_VALUE (TYPE_DOMAIN (type))) < 0) - error ("%Jzero or negative size array '%D'", decl, decl); + error ("%Jzero or negative size array %qD", decl, decl); layout_decl (decl, 0); } @@ -3086,7 +3150,7 @@ finish_decl (tree decl, tree init, tree asmspec_tree) is an error. */ : !DECL_EXTERNAL (decl))) { - error ("%Jstorage size of '%D' isn't known", decl, decl); + error ("%Jstorage size of %qD isn%'t known", decl, decl); TREE_TYPE (decl) = error_mark_node; } @@ -3096,7 +3160,7 @@ finish_decl (tree decl, tree init, tree asmspec_tree) if (TREE_CODE (DECL_SIZE (decl)) == INTEGER_CST) constant_expression_warning (DECL_SIZE (decl)); else - error ("%Jstorage size of '%D' isn't constant", decl, decl); + error ("%Jstorage size of %qD isn%'t constant", decl, decl); } if (TREE_USED (type)) @@ -3152,7 +3216,7 @@ finish_decl (tree decl, tree init, tree asmspec_tree) && !C_DECL_REGISTER (decl) && !TREE_STATIC (decl)) warning ("%Jignoring asm-specifier for non-static local " - "variable '%D'", decl, decl); + "variable %qD", decl, decl); else if (C_DECL_REGISTER (decl)) change_decl_assembler_name (decl, get_identifier (asmspec)); else @@ -3503,7 +3567,7 @@ check_bitfield_type_and_width (tree *type, tree *width, const char *orig_name) field widths. */ if (TREE_CODE (*width) != INTEGER_CST) { - error ("bit-field `%s' width not an integer constant", name); + error ("bit-field %qs width not an integer constant", name); *width = integer_one_node; } else @@ -3511,12 +3575,12 @@ check_bitfield_type_and_width (tree *type, tree *width, const char *orig_name) constant_expression_warning (*width); if (tree_int_cst_sgn (*width) < 0) { - error ("negative width in bit-field `%s'", name); + error ("negative width in bit-field %qs", name); *width = integer_one_node; } else if (integer_zerop (*width) && orig_name) { - error ("zero width for bit-field `%s'", name); + error ("zero width for bit-field %qs", name); *width = integer_one_node; } } @@ -3526,7 +3590,7 @@ check_bitfield_type_and_width (tree *type, tree *width, const char *orig_name) && TREE_CODE (*type) != BOOLEAN_TYPE && TREE_CODE (*type) != ENUMERAL_TYPE) { - error ("bit-field `%s' has invalid type", name); + error ("bit-field %qs has invalid type", name); *type = unsigned_type_node; } @@ -3535,7 +3599,7 @@ check_bitfield_type_and_width (tree *type, tree *width, const char *orig_name) && type_mv != integer_type_node && type_mv != unsigned_type_node && type_mv != boolean_type_node) - pedwarn ("type of bit-field `%s' is a GCC extension", name); + pedwarn ("type of bit-field %qs is a GCC extension", name); if (type_mv == boolean_type_node) max_width = CHAR_TYPE_SIZE; @@ -3544,7 +3608,7 @@ check_bitfield_type_and_width (tree *type, tree *width, const char *orig_name) if (0 < compare_tree_int (*width, max_width)) { - error ("width of `%s' exceeds its type", name); + error ("width of %qs exceeds its type", name); w = max_width; *width = build_int_cst (NULL_TREE, w); } @@ -3557,7 +3621,7 @@ check_bitfield_type_and_width (tree *type, tree *width, const char *orig_name) if (!lt || w < min_precision (lt->enum_min, TYPE_UNSIGNED (*type)) || w < min_precision (lt->enum_max, TYPE_UNSIGNED (*type))) - warning ("`%s' is narrower than values of its type", name); + warning ("%qs is narrower than values of its type", name); } } @@ -3595,21 +3659,21 @@ grokdeclarator (const struct c_declarator *declarator, struct c_declspecs *declspecs, enum decl_context decl_context, bool initialized, tree *width) { - int specbits = declspecs->specbits; tree type = declspecs->type; + bool threadp = declspecs->thread_p; + enum c_storage_class storage_class = declspecs->storage_class; int constp; int restrictp; int volatilep; int type_quals = TYPE_UNQUALIFIED; - int inlinep; - int defaulted_int = 0; const char *name, *orig_name; tree typedef_type = 0; int funcdef_flag = 0; bool funcdef_syntax = false; int size_varies = 0; - tree decl_attr = NULL_TREE; - struct c_declspecs *array_ptr_quals = 0; + tree decl_attr = declspecs->decl_attr; + int array_ptr_quals = TYPE_UNQUALIFIED; + tree array_ptr_attrs = NULL_TREE; int array_parm_static = 0; tree returned_attrs = NULL_TREE; bool bitfield = width != NULL; @@ -3666,187 +3730,31 @@ grokdeclarator (const struct c_declarator *declarator, decl_context = PARM; if (declspecs->deprecated_p && deprecated_state != DEPRECATED_SUPPRESS) - warn_deprecated_use (declspecs->typedef_decl - ? declspecs->typedef_decl - : declspecs->type); + warn_deprecated_use (declspecs->type); typedef_type = type; - if (type) - size_varies = C_TYPE_VARIABLE_SIZE (type); - - /* No type at all: default to `int', and set DEFAULTED_INT - because it was not a user-defined typedef. */ + size_varies = C_TYPE_VARIABLE_SIZE (type); - if (type == 0) - { - if ((! (specbits & ((1 << (int) RID_LONG) | (1 << (int) RID_SHORT) - | (1 << (int) RID_SIGNED) - | (1 << (int) RID_UNSIGNED) - | (1 << (int) RID_COMPLEX)))) - /* Don't warn about typedef foo = bar. */ - && ! (specbits & (1 << (int) RID_TYPEDEF) && initialized) - && ! in_system_header) - { - /* Issue a warning if this is an ISO C 99 program or if -Wreturn-type - and this is a function, or if -Wimplicit; prefer the former - warning since it is more explicit. */ - if ((warn_implicit_int || warn_return_type || flag_isoc99) - && funcdef_flag) - warn_about_return_type = 1; - else if (warn_implicit_int || flag_isoc99) - pedwarn_c99 ("type defaults to `int' in declaration of `%s'", - name); - } - - defaulted_int = 1; - type = integer_type_node; - } - - /* Now process the modifiers that were specified - and check for invalid combinations. */ - - /* Long double is a special combination. */ + /* Diagnose defaulting to "int". */ - if ((specbits & 1 << (int) RID_LONG) && ! declspecs->long_long_p - && TYPE_MAIN_VARIANT (type) == double_type_node) + if (declspecs->default_int_p && !in_system_header) { - specbits &= ~(1 << (int) RID_LONG); - type = long_double_type_node; + /* Issue a warning if this is an ISO C 99 program or if + -Wreturn-type and this is a function, or if -Wimplicit; + prefer the former warning since it is more explicit. */ + if ((warn_implicit_int || warn_return_type || flag_isoc99) + && funcdef_flag) + warn_about_return_type = 1; + else if (warn_implicit_int || flag_isoc99) + pedwarn_c99 ("type defaults to % in declaration of %qs", name); } - /* Check all other uses of type modifiers. */ - - if (specbits & ((1 << (int) RID_LONG) | (1 << (int) RID_SHORT) - | (1 << (int) RID_UNSIGNED) | (1 << (int) RID_SIGNED))) - { - int ok = 0; - - if ((specbits & 1 << (int) RID_LONG) - && (specbits & 1 << (int) RID_SHORT)) - error ("both long and short specified for `%s'", name); - else if (((specbits & 1 << (int) RID_LONG) - || (specbits & 1 << (int) RID_SHORT)) - && declspecs->explicit_char_p) - error ("long or short specified with char for `%s'", name); - else if (((specbits & 1 << (int) RID_LONG) - || (specbits & 1 << (int) RID_SHORT)) - && TREE_CODE (type) == REAL_TYPE) - { - static int already = 0; - - error ("long or short specified with floating type for `%s'", name); - if (! already && ! pedantic) - { - error ("the only valid combination is `long double'"); - already = 1; - } - } - else if ((specbits & 1 << (int) RID_SIGNED) - && (specbits & 1 << (int) RID_UNSIGNED)) - error ("both signed and unsigned specified for `%s'", name); - else if (TREE_CODE (type) != INTEGER_TYPE) - error ("long, short, signed or unsigned invalid for `%s'", name); - else - { - ok = 1; - if (!declspecs->explicit_int_p && !defaulted_int - && !declspecs->explicit_char_p) - { - error ("long, short, signed or unsigned used invalidly for `%s'", - name); - ok = 0; - } - } - - /* Discard the type modifiers if they are invalid. */ - if (! ok) - { - specbits &= ~((1 << (int) RID_LONG) | (1 << (int) RID_SHORT) - | (1 << (int) RID_UNSIGNED) | (1 << (int) RID_SIGNED)); - declspecs->long_long_p = 0; - } - } - - if ((specbits & (1 << (int) RID_COMPLEX)) - && TREE_CODE (type) != INTEGER_TYPE && TREE_CODE (type) != REAL_TYPE) - { - error ("complex invalid for `%s'", name); - specbits &= ~(1 << (int) RID_COMPLEX); - } - - /* Decide whether an integer type is signed or not. - Optionally treat bit-fields as signed by default. */ - if (specbits & 1 << (int) RID_UNSIGNED - || (bitfield && ! flag_signed_bitfields - && (declspecs->explicit_int_p || defaulted_int - || declspecs->explicit_char_p - /* A typedef for plain `int' without `signed' - can be controlled just like plain `int'. */ - || ! (declspecs->typedef_decl != 0 - && C_TYPEDEF_EXPLICITLY_SIGNED (declspecs->typedef_decl))) - && TREE_CODE (type) != ENUMERAL_TYPE - && !(specbits & 1 << (int) RID_SIGNED))) - { - if (declspecs->long_long_p) - type = long_long_unsigned_type_node; - else if (specbits & 1 << (int) RID_LONG) - type = long_unsigned_type_node; - else if (specbits & 1 << (int) RID_SHORT) - type = short_unsigned_type_node; - else if (type == char_type_node) - type = unsigned_char_type_node; - else if (declspecs->typedef_decl) - type = c_common_unsigned_type (type); - else - type = unsigned_type_node; - } - else if ((specbits & 1 << (int) RID_SIGNED) - && type == char_type_node) - type = signed_char_type_node; - else if (declspecs->long_long_p) - type = long_long_integer_type_node; - else if (specbits & 1 << (int) RID_LONG) - type = long_integer_type_node; - else if (specbits & 1 << (int) RID_SHORT) - type = short_integer_type_node; - - if (specbits & 1 << (int) RID_COMPLEX) - { - if (pedantic && !flag_isoc99) - pedwarn ("ISO C90 does not support complex types"); - /* If we just have "complex", it is equivalent to - "complex double", but if any modifiers at all are specified it is - the complex form of TYPE. E.g, "complex short" is - "complex short int". */ - - if (defaulted_int && ! declspecs->long_long_p - && ! (specbits & ((1 << (int) RID_LONG) | (1 << (int) RID_SHORT) - | (1 << (int) RID_SIGNED) - | (1 << (int) RID_UNSIGNED)))) - { - if (pedantic) - pedwarn ("ISO C does not support plain `complex' meaning `double complex'"); - type = complex_double_type_node; - } - else if (type == integer_type_node) - { - if (pedantic) - pedwarn ("ISO C does not support complex integer types"); - type = complex_integer_type_node; - } - else if (type == float_type_node) - type = complex_float_type_node; - else if (type == double_type_node) - type = complex_double_type_node; - else if (type == long_double_type_node) - type = complex_long_double_type_node; - else - { - if (pedantic) - pedwarn ("ISO C does not support complex integer types"); - type = build_complex_type (type); - } - } + /* Adjust the type if a bit-field is being declared, + -funsigned-bitfields applied and the type is not explicitly + "signed". */ + if (bitfield && !flag_signed_bitfields && !declspecs->explicit_signed_p + && TREE_CODE (type) == INTEGER_TYPE) + type = c_common_unsigned_type (type); /* Check the type and width of a bit-field. */ if (bitfield) @@ -3864,20 +3772,17 @@ grokdeclarator (const struct c_declarator *declarator, duplicate qualifiers should be diagnosed in this case, but it seems most appropriate to do so). */ element_type = strip_array_types (type); - constp = !! (specbits & 1 << (int) RID_CONST) + TYPE_READONLY (element_type); - restrictp - = !! (specbits & 1 << (int) RID_RESTRICT) + TYPE_RESTRICT (element_type); - volatilep - = !! (specbits & 1 << (int) RID_VOLATILE) + TYPE_VOLATILE (element_type); - inlinep = !! (specbits & (1 << (int) RID_INLINE)); + constp = declspecs->const_p + TYPE_READONLY (element_type); + restrictp = declspecs->restrict_p + TYPE_RESTRICT (element_type); + volatilep = declspecs->volatile_p + TYPE_VOLATILE (element_type); if (pedantic && !flag_isoc99) { if (constp > 1) - pedwarn ("duplicate `const'"); + pedwarn ("duplicate %"); if (restrictp > 1) - pedwarn ("duplicate `restrict'"); + pedwarn ("duplicate %"); if (volatilep > 1) - pedwarn ("duplicate `volatile'"); + pedwarn ("duplicate %"); } if (! flag_gen_aux_info && (TYPE_QUALS (type))) type = TYPE_MAIN_VARIANT (type); @@ -3885,99 +3790,82 @@ grokdeclarator (const struct c_declarator *declarator, | (restrictp ? TYPE_QUAL_RESTRICT : 0) | (volatilep ? TYPE_QUAL_VOLATILE : 0)); - /* Warn if two storage classes are given. Default to `auto'. */ - - { - int nclasses = 0; - - if (specbits & 1 << (int) RID_AUTO) nclasses++; - if (specbits & 1 << (int) RID_STATIC) nclasses++; - if (specbits & 1 << (int) RID_EXTERN) nclasses++; - if (specbits & 1 << (int) RID_REGISTER) nclasses++; - if (specbits & 1 << (int) RID_TYPEDEF) nclasses++; - - /* "static __thread" and "extern __thread" are allowed. */ - if ((specbits & (1 << (int) RID_THREAD - | 1 << (int) RID_STATIC - | 1 << (int) RID_EXTERN)) == (1 << (int) RID_THREAD)) - nclasses++; - - /* Warn about storage classes that are invalid for certain - kinds of declarations (parameters, typenames, etc.). */ - - if (nclasses > 1) - error ("multiple storage classes in declaration of `%s'", name); - else if (funcdef_flag - && (specbits - & ((1 << (int) RID_REGISTER) - | (1 << (int) RID_AUTO) - | (1 << (int) RID_TYPEDEF) - | (1 << (int) RID_THREAD)))) - { - if (specbits & 1 << (int) RID_AUTO - && (pedantic || current_scope == file_scope)) - pedwarn ("function definition declared `auto'"); - if (specbits & 1 << (int) RID_REGISTER) - error ("function definition declared `register'"); - if (specbits & 1 << (int) RID_TYPEDEF) - error ("function definition declared `typedef'"); - if (specbits & 1 << (int) RID_THREAD) - error ("function definition declared `__thread'"); - specbits &= ~((1 << (int) RID_TYPEDEF) | (1 << (int) RID_REGISTER) - | (1 << (int) RID_AUTO) | (1 << (int) RID_THREAD)); - } - else if (decl_context != NORMAL && nclasses > 0) - { - if (decl_context == PARM && specbits & 1 << (int) RID_REGISTER) - ; - else - { - switch (decl_context) - { - case FIELD: - error ("storage class specified for structure field `%s'", - name); - break; - case PARM: - error ("storage class specified for parameter `%s'", name); - break; - default: - error ("storage class specified for typename"); - break; - } - specbits &= ~((1 << (int) RID_TYPEDEF) | (1 << (int) RID_REGISTER) - | (1 << (int) RID_AUTO) | (1 << (int) RID_STATIC) - | (1 << (int) RID_EXTERN) | (1 << (int) RID_THREAD)); - } - } - else if (specbits & 1 << (int) RID_EXTERN && initialized && ! funcdef_flag) - { - /* `extern' with initialization is invalid if not at file scope. */ - if (current_scope == file_scope) - warning ("`%s' initialized and declared `extern'", name); - else - error ("`%s' has both `extern' and initializer", name); - } - else if (current_scope == file_scope) - { - if (specbits & 1 << (int) RID_AUTO) - error ("file-scope declaration of `%s' specifies `auto'", name); - } - else - { - if (specbits & 1 << (int) RID_EXTERN && funcdef_flag) - error ("nested function `%s' declared `extern'", name); - else if ((specbits & (1 << (int) RID_THREAD - | 1 << (int) RID_EXTERN - | 1 << (int) RID_STATIC)) - == (1 << (int) RID_THREAD)) - { - error ("function-scope `%s' implicitly auto and declared `__thread'", - name); - specbits &= ~(1 << (int) RID_THREAD); - } - } - } + /* Warn about storage classes that are invalid for certain + kinds of declarations (parameters, typenames, etc.). */ + + if (funcdef_flag + && (threadp + || storage_class == csc_auto + || storage_class == csc_register + || storage_class == csc_typedef)) + { + if (storage_class == csc_auto + && (pedantic || current_scope == file_scope)) + pedwarn ("function definition declared %"); + if (storage_class == csc_register) + error ("function definition declared %"); + if (storage_class == csc_typedef) + error ("function definition declared %"); + if (threadp) + error ("function definition declared %<__thread%>"); + threadp = false; + if (storage_class == csc_auto + || storage_class == csc_register + || storage_class == csc_typedef) + storage_class = csc_none; + } + else if (decl_context != NORMAL && (storage_class != csc_none || threadp)) + { + if (decl_context == PARM && storage_class == csc_register) + ; + else + { + switch (decl_context) + { + case FIELD: + error ("storage class specified for structure field %qs", + name); + break; + case PARM: + error ("storage class specified for parameter %qs", name); + break; + default: + error ("storage class specified for typename"); + break; + } + storage_class = csc_none; + threadp = false; + } + } + else if (storage_class == csc_extern + && initialized + && !funcdef_flag) + { + /* 'extern' with initialization is invalid if not at file scope. */ + if (current_scope == file_scope) + warning ("%qs initialized and declared %", name); + else + error ("%qs has both % and initializer", name); + } + else if (current_scope == file_scope) + { + if (storage_class == csc_auto) + error ("file-scope declaration of %qs specifies %", name); + if (pedantic && storage_class == csc_register) + pedwarn ("file-scope declaration of %qs specifies %", name); + } + else + { + if (storage_class == csc_extern && funcdef_flag) + error ("nested function %qs declared %", name); + else if (threadp && storage_class == csc_none) + { + error ("function-scope %qs implicitly auto and declared " + "%<__thread%>", + name); + threadp = false; + } + } /* Now figure out the structure of the declarator proper. Descend through it, creating more complex types, until we reach @@ -4006,13 +3894,16 @@ grokdeclarator (const struct c_declarator *declarator, array or function or pointer, and DECLARATOR has had its outermost layer removed. */ - if (array_ptr_quals != NULL || array_parm_static) + if (array_ptr_quals != TYPE_UNQUALIFIED + || array_ptr_attrs != NULL_TREE + || array_parm_static) { /* Only the innermost declarator (making a parameter be of array type which is converted to pointer type) may have static or type qualifiers. */ error ("static or type qualifiers in non-parameter array declarator"); - array_ptr_quals = NULL; + array_ptr_quals = TYPE_UNQUALIFIED; + array_ptr_attrs = NULL_TREE; array_parm_static = 0; } @@ -4047,6 +3938,7 @@ grokdeclarator (const struct c_declarator *declarator, tree index_type = c_common_signed_type (sizetype); array_ptr_quals = declarator->u.array.quals; + array_ptr_attrs = declarator->u.array.attrs; array_parm_static = declarator->u.array.static_p; declarator = declarator->declarator; @@ -4055,13 +3947,13 @@ grokdeclarator (const struct c_declarator *declarator, if (VOID_TYPE_P (type)) { - error ("declaration of `%s' as array of voids", name); + error ("declaration of %qs as array of voids", name); type = error_mark_node; } if (TREE_CODE (type) == FUNCTION_TYPE) { - error ("declaration of `%s' as array of functions", name); + error ("declaration of %qs as array of functions", name); type = error_mark_node; } @@ -4086,19 +3978,19 @@ grokdeclarator (const struct c_declarator *declarator, if (! INTEGRAL_TYPE_P (TREE_TYPE (size))) { - error ("size of array `%s' has non-integer type", name); + error ("size of array %qs has non-integer type", name); size = integer_one_node; } if (pedantic && integer_zerop (size)) - pedwarn ("ISO C forbids zero-size array `%s'", name); + pedwarn ("ISO C forbids zero-size array %qs", name); if (TREE_CODE (size) == INTEGER_CST) { constant_expression_warning (size); if (tree_int_cst_sgn (size) < 0) { - error ("size of array `%s' is negative", name); + error ("size of array %qs is negative", name); size = integer_one_node; } } @@ -4112,10 +4004,11 @@ grokdeclarator (const struct c_declarator *declarator, if (!flag_isoc99 && pedantic) { if (TREE_CONSTANT (size)) - pedwarn ("ISO C90 forbids array `%s' whose size can't be evaluated", + pedwarn ("ISO C90 forbids array %qs whose size " + "can%'t be evaluated", name); else - pedwarn ("ISO C90 forbids variable-size array `%s'", + pedwarn ("ISO C90 forbids variable-size array %qs", name); } } @@ -4148,7 +4041,7 @@ grokdeclarator (const struct c_declarator *declarator, complication. */ if (TREE_OVERFLOW (itype)) { - error ("size of array `%s' is too large", name); + error ("size of array %qs is too large", name); type = error_mark_node; continue; } @@ -4198,10 +4091,13 @@ grokdeclarator (const struct c_declarator *declarator, layout_type (type); if (decl_context != PARM - && (array_ptr_quals != NULL || array_parm_static)) + && (array_ptr_quals != TYPE_UNQUALIFIED + || array_ptr_attrs != NULL_TREE + || array_parm_static)) { error ("static or type qualifiers in non-parameter array declarator"); - array_ptr_quals = NULL; + array_ptr_quals = TYPE_UNQUALIFIED; + array_ptr_attrs = NULL_TREE; array_parm_static = 0; } break; @@ -4231,12 +4127,12 @@ grokdeclarator (const struct c_declarator *declarator, /* Warn about some types functions can't return. */ if (TREE_CODE (type) == FUNCTION_TYPE) { - error ("`%s' declared as function returning a function", name); + error ("%qs declared as function returning a function", name); type = integer_type_node; } if (TREE_CODE (type) == ARRAY_TYPE) { - error ("`%s' declared as function returning an array", name); + error ("%qs declared as function returning an array", name); type = integer_type_node; } @@ -4290,31 +4186,13 @@ grokdeclarator (const struct c_declarator *declarator, pedwarn ("ISO C forbids qualified function types"); if (type_quals) type = c_build_qualified_type (type, type_quals); - type_quals = TYPE_UNQUALIFIED; size_varies = 0; - + type = build_pointer_type (type); /* Process type qualifiers (such as const or volatile) that were given inside the `*'. */ - if (declarator->u.pointer_quals) - { - int pbits = declarator->u.pointer_quals->specbits; - - /* The grammar should only permit qualifiers here. */ - gcc_assert (!declarator->u.pointer_quals->type - && !(pbits & ~((1 << (int) RID_CONST) - | (1 << (int) RID_VOLATILE) - | (1 << (int) RID_RESTRICT)))); - - constp = !!(pbits & (1 << (int) RID_CONST)); - volatilep = !!(pbits & (1 << (int) RID_VOLATILE)); - restrictp = !!(pbits & (1 << (int) RID_RESTRICT)); - - type_quals = ((constp ? TYPE_QUAL_CONST : 0) - | (restrictp ? TYPE_QUAL_RESTRICT : 0) - | (volatilep ? TYPE_QUAL_VOLATILE : 0)); - } + type_quals = declarator->u.pointer_quals; declarator = declarator->declarator; break; @@ -4332,7 +4210,7 @@ grokdeclarator (const struct c_declarator *declarator, && COMPLETE_TYPE_P (type) && TREE_OVERFLOW (TYPE_SIZE (type))) { - error ("size of array `%s' is too large", name); + error ("size of array %qs is too large", name); /* If we proceed with the array type as it is, we'll eventually crash in tree_low_cst(). */ type = error_mark_node; @@ -4340,22 +4218,20 @@ grokdeclarator (const struct c_declarator *declarator, /* If this is declaring a typedef name, return a TYPE_DECL. */ - if (specbits & (1 << (int) RID_TYPEDEF)) + if (storage_class == csc_typedef) { tree decl; - /* Note that the grammar rejects storage classes - in typenames, fields or parameters */ if (pedantic && TREE_CODE (type) == FUNCTION_TYPE && type_quals) pedwarn ("ISO C forbids qualified function types"); if (type_quals) type = c_build_qualified_type (type, type_quals); decl = build_decl (TYPE_DECL, declarator->u.id, type); - if ((specbits & (1 << (int) RID_SIGNED)) - || (declspecs->typedef_decl - && C_TYPEDEF_EXPLICITLY_SIGNED (declspecs->typedef_decl))) + if (declspecs->explicit_signed_p) C_TYPEDEF_EXPLICITLY_SIGNED (decl) = 1; decl_attributes (&decl, returned_attrs, 0); + if (declspecs->inline_p) + pedwarn ("%Jtypedef %qD declared %", decl, decl); return decl; } @@ -4379,8 +4255,10 @@ grokdeclarator (const struct c_declarator *declarator, if (decl_context == TYPENAME) { - /* Note that the grammar rejects storage classes - in typenames, fields or parameters */ + /* Note that the grammar rejects storage classes in typenames + and fields. */ + gcc_assert (storage_class == csc_none && !threadp + && !declspecs->inline_p); if (pedantic && TREE_CODE (type) == FUNCTION_TYPE && type_quals) pedwarn ("ISO C forbids const or volatile function types"); @@ -4398,12 +4276,12 @@ grokdeclarator (const struct c_declarator *declarator, if (VOID_TYPE_P (type) && decl_context != PARM && ! ((decl_context != FIELD && TREE_CODE (type) != FUNCTION_TYPE) - && ((specbits & (1 << (int) RID_EXTERN)) + && (storage_class == csc_extern || (current_scope == file_scope - && !(specbits - & ((1 << (int) RID_STATIC) | (1 << (int) RID_REGISTER))))))) + && !(storage_class == csc_static + || storage_class == csc_register))))) { - error ("variable or field `%s' declared void", name); + error ("variable or field %qs declared void", name); type = integer_type_node; } @@ -4428,29 +4306,12 @@ grokdeclarator (const struct c_declarator *declarator, if (type_quals) type = c_build_qualified_type (type, type_quals); type = build_pointer_type (type); - type_quals = TYPE_UNQUALIFIED; - if (array_ptr_quals) - { - int apqbits = array_ptr_quals->specbits; + type_quals = array_ptr_quals; - /* We don't yet implement attributes in this context. */ - if (array_ptr_quals->attrs != NULL_TREE) - warning ("attributes in parameter array declarator ignored"); + /* We don't yet implement attributes in this context. */ + if (array_ptr_attrs != NULL_TREE) + warning ("attributes in parameter array declarator ignored"); - /* The grammar should only permit qualifiers here. */ - gcc_assert (!array_ptr_quals->type - && !(apqbits & ~((1 << (int) RID_CONST) - | (1 << (int) RID_VOLATILE) - | (1 << (int) RID_RESTRICT)))); - - constp = !!(apqbits & (1 << (int) RID_CONST)); - volatilep = !!(apqbits & (1 << (int) RID_VOLATILE)); - restrictp = !!(apqbits & (1 << (int) RID_RESTRICT)); - - type_quals = ((constp ? TYPE_QUAL_CONST : 0) - | (restrictp ? TYPE_QUAL_RESTRICT : 0) - | (volatilep ? TYPE_QUAL_VOLATILE : 0)); - } size_varies = 0; } else if (TREE_CODE (type) == FUNCTION_TYPE) @@ -4483,20 +4344,27 @@ grokdeclarator (const struct c_declarator *declarator, DECL_ARG_TYPE (decl) = promoted_type; DECL_ARG_TYPE_AS_WRITTEN (decl) = type_as_written; + if (declspecs->inline_p) + pedwarn ("%Jparameter %qD declared %", decl, decl); } else if (decl_context == FIELD) { + /* Note that the grammar rejects storage classes in typenames + and fields. */ + gcc_assert (storage_class == csc_none && !threadp + && !declspecs->inline_p); + /* Structure field. It may not be a function. */ if (TREE_CODE (type) == FUNCTION_TYPE) { - error ("field `%s' declared as a function", name); + error ("field %qs declared as a function", name); type = build_pointer_type (type); } else if (TREE_CODE (type) != ERROR_MARK && !COMPLETE_OR_UNBOUND_ARRAY_TYPE_P (type)) { - error ("field `%s' has incomplete type", name); + error ("field %qs has incomplete type", name); type = error_mark_node; } /* Move type qualifiers down to element of an array. */ @@ -4512,9 +4380,8 @@ grokdeclarator (const struct c_declarator *declarator, } else if (TREE_CODE (type) == FUNCTION_TYPE) { - if (specbits & (1 << (int) RID_REGISTER) - || specbits & (1 << (int) RID_THREAD)) - error ("invalid storage class for function `%s'", name); + if (storage_class == csc_register || threadp) + error ("invalid storage class for function %qs", name); else if (current_scope != file_scope) { /* Function declaration not at file scope. Storage @@ -4522,13 +4389,13 @@ grokdeclarator (const struct c_declarator *declarator, 6.7.1p5, and `extern' makes no difference. However, GCC allows 'auto', perhaps with 'inline', to support nested functions. */ - if (specbits & (1 << (int) RID_AUTO)) + if (storage_class == csc_auto) { if (pedantic) - pedwarn ("invalid storage class for function `%s'", name); + pedwarn ("invalid storage class for function %qs", name); } - if (specbits & (1 << (int) RID_STATIC)) - error ("invalid storage class for function `%s'", name); + if (storage_class == csc_static) + error ("invalid storage class for function %qs", name); } decl = build_decl (FUNCTION_DECL, declarator->u.id, type); @@ -4543,37 +4410,37 @@ grokdeclarator (const struct c_declarator *declarator, that the function does not return. */ if ((type_quals & TYPE_QUAL_VOLATILE) && !VOID_TYPE_P (TREE_TYPE (TREE_TYPE (decl)))) - warning ("`noreturn' function returns non-void value"); + warning ("% function returns non-void value"); /* Every function declaration is an external reference (DECL_EXTERNAL) except for those which are not at file scope and are explicitly declared "auto". This is forbidden by standard C (C99 6.7.1p5) and is interpreted by GCC to signify a forward declaration of a nested function. */ - if ((specbits & (1 << RID_AUTO)) && current_scope != file_scope) + if (storage_class == csc_auto && current_scope != file_scope) DECL_EXTERNAL (decl) = 0; else DECL_EXTERNAL (decl) = 1; /* Record absence of global scope for `static' or `auto'. */ TREE_PUBLIC (decl) - = !(specbits & ((1 << (int) RID_STATIC) | (1 << (int) RID_AUTO))); + = !(storage_class == csc_static || storage_class == csc_auto); /* For a function definition, record the argument information block where store_parm_decls will look for it. */ if (funcdef_flag) current_function_arg_info = arg_info; - if (defaulted_int) + if (declspecs->default_int_p) C_FUNCTION_IMPLICIT_INT (decl) = 1; /* Record presence of `inline', if it is reasonable. */ - if (MAIN_NAME_P (declarator->u.id)) + if (flag_hosted && MAIN_NAME_P (declarator->u.id)) { - if (inlinep) - warning ("cannot inline function `main'"); + if (declspecs->inline_p) + pedwarn ("cannot inline function %"); } - else if (inlinep) + else if (declspecs->inline_p) { /* Record that the function is declared `inline'. */ DECL_DECLARED_INLINE_P (decl) = 1; @@ -4585,7 +4452,7 @@ grokdeclarator (const struct c_declarator *declarator, if (initialized) { DECL_INLINE (decl) = 1; - if (specbits & (1 << (int) RID_EXTERN)) + if (storage_class == csc_extern) current_extern_inline = 1; } } @@ -4599,7 +4466,7 @@ grokdeclarator (const struct c_declarator *declarator, { /* It's a variable. */ /* An uninitialized decl with `extern' is a reference. */ - int extern_ref = !initialized && (specbits & (1 << (int) RID_EXTERN)); + int extern_ref = !initialized && storage_class == csc_extern; /* Move type qualifiers down to element of an array. */ if (TREE_CODE (type) == ARRAY_TYPE && type_quals) @@ -4628,21 +4495,21 @@ grokdeclarator (const struct c_declarator *declarator, && global_decl != visible_decl && TREE_CODE (global_decl) == VAR_DECL && !TREE_PUBLIC (global_decl)) - error ("variable previously declared 'static' redeclared " - "'extern'"); + error ("variable previously declared % redeclared " + "%"); } decl = build_decl (VAR_DECL, declarator->u.id, type); if (size_varies) C_DECL_VARIABLE_SIZE (decl) = 1; - if (inlinep) - pedwarn ("%Jvariable '%D' declared `inline'", decl, decl); + if (declspecs->inline_p) + pedwarn ("%Jvariable %qD declared %", decl, decl); /* At file scope, an initialized extern declaration may follow a static declaration. In that case, DECL_EXTERNAL will be reset later in start_decl. */ - DECL_EXTERNAL (decl) = !!(specbits & (1 << (int) RID_EXTERN)); + DECL_EXTERNAL (decl) = (storage_class == csc_extern); /* At file scope, the presence of a `static' or `register' storage class specifier, or the absence of all storage class specifiers @@ -4650,18 +4517,18 @@ grokdeclarator (const struct c_declarator *declarator, the absence of both `static' and `register' makes it public. */ if (current_scope == file_scope) { - TREE_PUBLIC (decl) = !(specbits & ((1 << (int) RID_STATIC) - | (1 << (int) RID_REGISTER))); + TREE_PUBLIC (decl) = !(storage_class == csc_static + || storage_class == csc_register); TREE_STATIC (decl) = !extern_ref; } /* Not at file scope, only `static' makes a static definition. */ else { - TREE_STATIC (decl) = (specbits & (1 << (int) RID_STATIC)) != 0; + TREE_STATIC (decl) = (storage_class == csc_static); TREE_PUBLIC (decl) = extern_ref; } - if (specbits & 1 << (int) RID_THREAD) + if (threadp) { if (targetm.have_tls) DECL_THREAD_LOCAL (decl) = 1; @@ -4675,7 +4542,7 @@ grokdeclarator (const struct c_declarator *declarator, /* Record `register' declaration for warnings on & and in case doing stupid register allocation. */ - if (specbits & (1 << (int) RID_REGISTER)) + if (storage_class == csc_register) { C_DECL_REGISTER (decl) = 1; DECL_REGISTER (decl) = 1; @@ -4730,7 +4597,7 @@ grokparms (struct c_arg_info *arg_info, bool funcdef_flag) if (warn_strict_prototypes && arg_types == 0 && !funcdef_flag && !in_system_header) - warning ("function declaration isn't a prototype"); + warning ("function declaration isn%'t a prototype"); if (arg_types == error_mark_node) return 0; /* don't set TYPE_ARG_TYPES in this case */ @@ -4767,7 +4634,7 @@ grokparms (struct c_arg_info *arg_info, bool funcdef_flag) if (funcdef_flag) { if (DECL_NAME (parm)) - error ("%Jparameter %u ('%D') has incomplete type", + error ("%Jparameter %u (%qD) has incomplete type", parm, parmno, parm); else error ("%Jparameter %u has incomplete type", @@ -4779,7 +4646,7 @@ grokparms (struct c_arg_info *arg_info, bool funcdef_flag) else { if (DECL_NAME (parm)) - warning ("%Jparameter %u ('%D') has incomplete type", + warning ("%Jparameter %u (%qD) has incomplete type", parm, parmno, parm); else warning ("%Jparameter %u has incomplete type", @@ -4839,11 +4706,11 @@ get_parm_info (bool ellipsis) if (TREE_THIS_VOLATILE (b->decl) || TREE_READONLY (b->decl) || C_DECL_REGISTER (b->decl)) - error ("'void' as only parameter may not be qualified"); + error ("% as only parameter may not be qualified"); /* There cannot be an ellipsis. */ if (ellipsis) - error ("'void' must be the only parameter"); + error ("% must be the only parameter"); arg_info->types = void_list_node; return arg_info; @@ -4871,14 +4738,14 @@ get_parm_info (bool ellipsis) /* Check for forward decls that never got their actual decl. */ if (TREE_ASM_WRITTEN (decl)) - error ("%Jparameter '%D' has just a forward declaration", + error ("%Jparameter %qD has just a forward declaration", decl, decl); /* Check for (..., void, ...) and issue an error. */ else if (VOID_TYPE_P (type) && !DECL_NAME (decl)) { if (!gave_void_only_once_err) { - error ("'void' must be the only parameter"); + error ("% must be the only parameter"); gave_void_only_once_err = true; } } @@ -4917,7 +4784,7 @@ get_parm_info (bool ellipsis) { if (b->id) /* The %s will be one of 'struct', 'union', or 'enum'. */ - warning ("'%s %E' declared inside parameter list", + warning ("%<%s %E%> declared inside parameter list", keyword, b->id); else /* The %s will be one of 'struct', 'union', or 'enum'. */ @@ -5040,9 +4907,9 @@ start_struct (enum tree_code code, tree name) if (TYPE_FIELDS (ref)) { if (code == UNION_TYPE) - error ("redefinition of `union %s'", IDENTIFIER_POINTER (name)); + error ("redefinition of %", IDENTIFIER_POINTER (name)); else - error ("redefinition of `struct %s'", IDENTIFIER_POINTER (name)); + error ("redefinition of %", IDENTIFIER_POINTER (name)); } } else @@ -5099,7 +4966,7 @@ grokfield (struct c_declarator *declarator, struct c_declspecs *declspecs, if (type && (TREE_CODE (type) == RECORD_TYPE || TREE_CODE (type) == UNION_TYPE) - && (flag_ms_extensions || !declspecs->typedef_decl)) + && (flag_ms_extensions || !declspecs->typedef_p)) { if (flag_ms_extensions) ; /* ok */ @@ -5158,7 +5025,7 @@ detect_field_duplicates (tree fieldlist) for (y = fieldlist; y != x; y = TREE_CHAIN (y)) if (DECL_NAME (y) == DECL_NAME (x)) { - error ("%Jduplicate member '%D'", x, x); + error ("%Jduplicate member %qD", x, x); DECL_NAME (x) = NULL_TREE; } } @@ -5174,7 +5041,7 @@ detect_field_duplicates (tree fieldlist) slot = htab_find_slot (htab, y, INSERT); if (*slot) { - error ("%Jduplicate member '%D'", x, x); + error ("%Jduplicate member %qD", x, x); DECL_NAME (x) = NULL_TREE; } *slot = y; @@ -5252,7 +5119,7 @@ finish_struct (tree t, tree fieldlist, tree attributes) /* Detect invalid nested redefinition. */ if (TREE_TYPE (x) == t) - error ("nested redefinition of `%s'", + error ("nested redefinition of %qs", IDENTIFIER_POINTER (TYPE_NAME (t))); if (DECL_INITIAL (x)) @@ -5462,7 +5329,7 @@ start_enum (tree name) if (TYPE_VALUES (enumtype) != 0) { /* This enum is a named one that has been declared already. */ - error ("redeclaration of `enum %s'", IDENTIFIER_POINTER (name)); + error ("redeclaration of %", IDENTIFIER_POINTER (name)); /* Completely replace its old definition. The old enumerators remain defined, however. */ @@ -5641,7 +5508,7 @@ build_enumerator (tree name, tree value) value = 0; else if (TREE_CODE (value) != INTEGER_CST) { - error ("enumerator value for '%E' is not an integer constant", name); + error ("enumerator value for %qE is not an integer constant", name); value = 0; } else @@ -5663,7 +5530,7 @@ build_enumerator (tree name, tree value) if (pedantic && ! int_fits_type_p (value, integer_type_node)) { - pedwarn ("ISO C restricts enumerator values to range of `int'"); + pedwarn ("ISO C restricts enumerator values to range of %"); /* XXX This causes -pedantic to change the meaning of the program. Remove? -zw 2004-03-15 */ value = convert (integer_type_node, value); @@ -5733,7 +5600,7 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator, if (DECL_DECLARED_INLINE_P (decl1) && DECL_UNINLINABLE (decl1) && lookup_attribute ("noinline", DECL_ATTRIBUTES (decl1))) - warning ("%Jinline function '%D' given attribute noinline", decl1, decl1); + warning ("%Jinline function %qD given attribute noinline", decl1, decl1); announce_function (decl1); @@ -5747,7 +5614,7 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator, } if (warn_about_return_type) - pedwarn_c99 ("return type defaults to `int'"); + pedwarn_c99 ("return type defaults to %"); /* Make the init_value nonzero so pushdecl knows this is not tentative. error_mark_node is replaced below (in pop_scope) with the BLOCK. */ @@ -5772,32 +5639,32 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator, if (warn_strict_prototypes && TYPE_ARG_TYPES (TREE_TYPE (decl1)) == 0 && C_DECL_ISNT_PROTOTYPE (old_decl)) - warning ("function declaration isn't a prototype"); + warning ("function declaration isn%'t a prototype"); /* Optionally warn of any global def with no previous prototype. */ else if (warn_missing_prototypes && TREE_PUBLIC (decl1) && ! MAIN_NAME_P (DECL_NAME (decl1)) && C_DECL_ISNT_PROTOTYPE (old_decl)) - warning ("%Jno previous prototype for '%D'", decl1, decl1); + warning ("%Jno previous prototype for %qD", decl1, decl1); /* Optionally warn of any def with no previous prototype if the function has already been used. */ else if (warn_missing_prototypes && old_decl != 0 && TREE_USED (old_decl) && TYPE_ARG_TYPES (TREE_TYPE (old_decl)) == 0) - warning ("%J'%D' was used with no prototype before its definition", + warning ("%J%qD was used with no prototype before its definition", decl1, decl1); /* Optionally warn of any global def with no previous declaration. */ else if (warn_missing_declarations && TREE_PUBLIC (decl1) && old_decl == 0 && ! MAIN_NAME_P (DECL_NAME (decl1))) - warning ("%Jno previous declaration for '%D'", decl1, decl1); + warning ("%Jno previous declaration for %qD", decl1, decl1); /* Optionally warn of any def with no previous declaration if the function has already been used. */ else if (warn_missing_declarations && old_decl != 0 && TREE_USED (old_decl) && C_DECL_IMPLICIT (old_decl)) - warning ("%J`%D' was used with no declaration before its definition", + warning ("%J%qD was used with no declaration before its definition", decl1, decl1); /* This is a definition, not a reference. @@ -5830,7 +5697,7 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator, if (TYPE_MAIN_VARIANT (TREE_TYPE (TREE_TYPE (decl1))) != integer_type_node) - pedwarn ("%Jreturn type of '%D' is not `int'", decl1, decl1); + pedwarn ("%Jreturn type of %qD is not %", decl1, decl1); for (args = TYPE_ARG_TYPES (TREE_TYPE (decl1)); args; args = TREE_CHAIN (args)) @@ -5845,7 +5712,7 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator, { case 1: if (TYPE_MAIN_VARIANT (type) != integer_type_node) - pedwarn ("%Jfirst argument of '%D' should be `int'", + pedwarn ("%Jfirst argument of %qD should be %", decl1, decl1); break; @@ -5854,7 +5721,7 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator, || TREE_CODE (TREE_TYPE (type)) != POINTER_TYPE || (TYPE_MAIN_VARIANT (TREE_TYPE (TREE_TYPE (type))) != char_type_node)) - pedwarn ("%Jsecond argument of '%D' should be 'char **'", + pedwarn ("%Jsecond argument of %qD should be %", decl1, decl1); break; @@ -5863,8 +5730,8 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator, || TREE_CODE (TREE_TYPE (type)) != POINTER_TYPE || (TYPE_MAIN_VARIANT (TREE_TYPE (TREE_TYPE (type))) != char_type_node)) - pedwarn ("%Jthird argument of '%D' should probably be " - "'char **'", decl1, decl1); + pedwarn ("%Jthird argument of %qD should probably be " + "%", decl1, decl1); break; } } @@ -5873,10 +5740,10 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator, argument because it's only mentioned in an appendix of the standard. */ if (argct > 0 && (argct < 2 || argct > 3)) - pedwarn ("%J'%D' takes only zero or two arguments", decl1, decl1); + pedwarn ("%J%qD takes only zero or two arguments", decl1, decl1); if (! TREE_PUBLIC (decl1)) - pedwarn ("%J'%D' is normally a non-static function", decl1, decl1); + pedwarn ("%J%qD is normally a non-static function", decl1, decl1); } /* Record the decl so that the function name is defined. @@ -6006,12 +5873,12 @@ store_parm_decls_oldstyle (tree fndecl, const struct c_arg_info *arg_info) decl = b->decl; /* If we got something other than a PARM_DECL it is an error. */ if (TREE_CODE (decl) != PARM_DECL) - error ("%J'%D' declared as a non-parameter", decl, decl); + error ("%J%qD declared as a non-parameter", decl, decl); /* If the declaration is already marked, we have a duplicate name. Complain and ignore the duplicate. */ else if (DECL_WEAK (decl)) { - error ("%Jmultiple parameters named '%D'", decl, decl); + error ("%Jmultiple parameters named %qD", decl, decl); TREE_PURPOSE (parm) = 0; continue; } @@ -6019,7 +5886,7 @@ store_parm_decls_oldstyle (tree fndecl, const struct c_arg_info *arg_info) an int. */ else if (VOID_TYPE_P (TREE_TYPE (decl))) { - error ("%Jparameter '%D' declared with void type", decl, decl); + error ("%Jparameter %qD declared with void type", decl, decl); TREE_TYPE (decl) = integer_type_node; DECL_ARG_TYPE (decl) = integer_type_node; layout_decl (decl, 0); @@ -6034,9 +5901,9 @@ store_parm_decls_oldstyle (tree fndecl, const struct c_arg_info *arg_info) pushdecl (decl); if (flag_isoc99) - pedwarn ("%Jtype of '%D' defaults to 'int'", decl, decl); + pedwarn ("%Jtype of %qD defaults to %", decl, decl); else if (extra_warnings) - warning ("%Jtype of '%D' defaults to 'int'", decl, decl); + warning ("%Jtype of %qD defaults to %", decl, decl); } TREE_PURPOSE (parm) = decl; @@ -6054,13 +5921,13 @@ store_parm_decls_oldstyle (tree fndecl, const struct c_arg_info *arg_info) if (!COMPLETE_TYPE_P (TREE_TYPE (parm))) { - error ("%Jparameter '%D' has incomplete type", parm, parm); + error ("%Jparameter %qD has incomplete type", parm, parm); TREE_TYPE (parm) = error_mark_node; } if (! DECL_WEAK (parm)) { - error ("%Jdeclaration for parameter '%D' but no such parameter", + error ("%Jdeclaration for parameter %qD but no such parameter", parm, parm); /* Pretend the parameter was not missing. @@ -6110,7 +5977,7 @@ store_parm_decls_oldstyle (tree fndecl, const struct c_arg_info *arg_info) if (parm == 0 || type == 0 || TYPE_MAIN_VARIANT (TREE_VALUE (type)) == void_type_node) { - error ("number of arguments doesn't match prototype"); + error ("number of arguments doesn%'t match prototype"); error ("%Hprototype declaration", ¤t_function_prototype_locus); break; @@ -6139,15 +6006,15 @@ store_parm_decls_oldstyle (tree fndecl, const struct c_arg_info *arg_info) if (pedantic) { - pedwarn ("promoted argument '%D' " - "doesn't match prototype", parm); + pedwarn ("promoted argument %qD " + "doesn%'t match prototype", parm); pedwarn ("%Hprototype declaration", ¤t_function_prototype_locus); } } else { - error ("argument '%D' doesn't match prototype", parm); + error ("argument %qD doesn%'t match prototype", parm); error ("%Hprototype declaration", ¤t_function_prototype_locus); } @@ -6246,7 +6113,7 @@ store_parm_decls (void) DECL_SAVED_TREE (fndecl) = push_stmt_list (); /* ??? Insert the contents of the pending sizes list into the function - to be evaluated. This just changes mis-behaviour until assign_parms + to be evaluated. This just changes mis-behavior until assign_parms phase ordering problems are resolved. */ { tree t; @@ -6327,7 +6194,7 @@ finish_function (void) /* If warn_main is 1 (-Wmain) or 2 (-Wall), we have already warned. If warn_main is -1 (-Wno-main) we don't want to be warned. */ if (!warn_main) - pedwarn ("%Jreturn type of '%D' is not `int'", fndecl, fndecl); + pedwarn ("%Jreturn type of %qD is not %", fndecl, fndecl); } else { @@ -6441,7 +6308,7 @@ check_for_loop_decls (void) /* 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. */ - error ("'for' loop initial declaration used outside C99 mode"); + error ("% loop initial declaration used outside C99 mode"); return; } /* C99 subclause 6.8.5 paragraph 3: @@ -6470,24 +6337,27 @@ check_for_loop_decls (void) { case VAR_DECL: if (TREE_STATIC (decl)) - error ("%Jdeclaration of static variable '%D' in 'for' loop " + error ("%Jdeclaration of static variable %qD in % loop " "initial declaration", decl, decl); else if (DECL_EXTERNAL (decl)) - error ("%Jdeclaration of 'extern' variable '%D' in 'for' loop " + error ("%Jdeclaration of % variable %qD in % loop " "initial declaration", decl, decl); break; case RECORD_TYPE: - error ("'struct %E' declared in 'for' loop initial declaration", id); + error ("% declared in % loop initial declaration", + id); break; case UNION_TYPE: - error ("'union %E' declared in 'for' loop initial declaration", id); + error ("% declared in % loop initial declaration", + id); break; case ENUMERAL_TYPE: - error ("'enum %E' declared in 'for' loop initial declaration", id); + error ("% declared in % loop initial declaration", + id); break; default: - error ("%Jdeclaration of non-variable '%D' in 'for' loop " + error ("%Jdeclaration of non-variable %qD in % loop " "initial declaration", decl, decl); } } @@ -6595,13 +6465,6 @@ anon_aggr_type_p (tree ARG_UNUSED (node)) return 0; } -/* Dummy function in place of callback used by C++. */ - -void -extract_interface_info (void) -{ -} - /* Return the global value of T as a symbol. */ tree @@ -6705,18 +6568,19 @@ make_pointer_declarator (struct c_declspecs *type_quals_attrs, struct c_declarator *target) { tree attrs; + int quals = 0; struct c_declarator *itarget = target; struct c_declarator *ret = XOBNEW (&parser_obstack, struct c_declarator); if (type_quals_attrs) { attrs = type_quals_attrs->attrs; - type_quals_attrs->attrs = NULL_TREE; + quals = quals_from_declspecs (type_quals_attrs); if (attrs != NULL_TREE) itarget = build_attrs_declarator (attrs, target); } ret->kind = cdk_pointer; ret->declarator = itarget; - ret->u.pointer_quals = type_quals_attrs; + ret->u.pointer_quals = quals; return ret; } @@ -6728,15 +6592,26 @@ build_null_declspecs (void) { struct c_declspecs *ret = XOBNEW (&parser_obstack, struct c_declspecs); ret->type = 0; - ret->typedef_decl = 0; ret->decl_attr = 0; ret->attrs = 0; - ret->specbits = 0; + ret->typespec_word = cts_none; + ret->storage_class = csc_none; ret->non_sc_seen_p = false; + ret->typedef_p = false; + ret->explicit_signed_p = false; ret->deprecated_p = false; - ret->explicit_int_p = false; - ret->explicit_char_p = false; + ret->default_int_p = false; + ret->long_p = false; ret->long_long_p = false; + ret->short_p = false; + ret->signed_p = false; + ret->unsigned_p = false; + ret->complex_p = false; + ret->inline_p = false; + ret->thread_p = false; + ret->const_p = false; + ret->volatile_p = false; + ret->restrict_p = false; return ret; } @@ -6747,14 +6622,30 @@ struct c_declspecs * declspecs_add_qual (struct c_declspecs *specs, tree qual) { enum rid i; + bool dupe = false; specs->non_sc_seen_p = true; gcc_assert (TREE_CODE (qual) == IDENTIFIER_NODE && C_IS_RESERVED_WORD (qual)); i = C_RID_CODE (qual); - gcc_assert (i == RID_CONST || i == RID_VOLATILE || i == RID_RESTRICT); - if ((specs->specbits & (1 << (int) i)) && pedantic && !flag_isoc99) + switch (i) + { + case RID_CONST: + dupe = specs->const_p; + specs->const_p = true; + break; + case RID_VOLATILE: + dupe = specs->volatile_p; + specs->volatile_p = true; + break; + case RID_RESTRICT: + dupe = specs->restrict_p; + specs->restrict_p = true; + break; + default: + gcc_unreachable (); + } + if (dupe && pedantic && !flag_isoc99) pedwarn ("duplicate %qs", IDENTIFIER_POINTER (qual)); - specs->specbits |= 1 << (int) i; return specs; } @@ -6767,38 +6658,254 @@ declspecs_add_type (struct c_declspecs *specs, tree type) specs->non_sc_seen_p = true; if (TREE_DEPRECATED (type)) specs->deprecated_p = true; - if (type == ridpointers[(int) RID_INT]) - specs->explicit_int_p = true; - if (type == ridpointers[(int) RID_CHAR]) - specs->explicit_char_p = true; + /* Handle type specifier keywords. */ if (TREE_CODE (type) == IDENTIFIER_NODE && C_IS_RESERVED_WORD (type)) { enum rid i = C_RID_CODE (type); + if (specs->type) + { + error ("two or more data types in declaration specifiers"); + return specs; + } if ((int) i <= (int) RID_LAST_MODIFIER) { - if (i == RID_LONG && (specs->specbits & (1 << (int) RID_LONG))) + /* "long", "short", "signed", "unsigned" or "_Complex". */ + bool dupe = false; + switch (i) { + case RID_LONG: if (specs->long_long_p) - error ("% is too long for GCC"); - else { + error ("% is too long for GCC"); + break; + } + if (specs->long_p) + { + if (specs->typespec_word == cts_double) + { + error ("both % and % in " + "declaration specifiers"); + break; + } if (pedantic && !flag_isoc99 && !in_system_header && warn_long_long) pedwarn ("ISO C90 does not support %"); specs->long_long_p = 1; + break; } + if (specs->short_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_void) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_bool) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else if (specs->typespec_word == cts_char) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_float) + error ("both % and % in " + "declaration specifiers"); + else + specs->long_p = true; + break; + case RID_SHORT: + dupe = specs->short_p; + if (specs->long_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_void) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_bool) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else if (specs->typespec_word == cts_char) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_float) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_double) + error ("both % and % in " + "declaration specifiers"); + else + specs->short_p = true; + break; + case RID_SIGNED: + dupe = specs->signed_p; + if (specs->unsigned_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_void) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_bool) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else if (specs->typespec_word == cts_float) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_double) + error ("both % and % in " + "declaration specifiers"); + else + specs->signed_p = true; + break; + case RID_UNSIGNED: + dupe = specs->unsigned_p; + if (specs->signed_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_void) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_bool) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else if (specs->typespec_word == cts_float) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_double) + error ("both % and % in " + "declaration specifiers"); + else + specs->unsigned_p = true; + break; + case RID_COMPLEX: + dupe = specs->complex_p; + if (pedantic && !flag_isoc99) + pedwarn ("ISO C90 does not support complex types"); + if (specs->typespec_word == cts_void) + error ("both % and % in " + "declaration specifiers"); + else if (specs->typespec_word == cts_bool) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else + specs->complex_p = true; + break; + default: + gcc_unreachable (); } - else if (specs->specbits & (1 << (int) i)) + + if (dupe) error ("duplicate %qs", IDENTIFIER_POINTER (type)); - specs->specbits |= 1 << (int) i; return specs; } + else + { + /* "void", "_Bool", "char", "int", "float" or "double". */ + if (specs->typespec_word != cts_none) + { + error ("two or more data types in declaration specifiers"); + return specs; + } + switch (i) + { + case RID_VOID: + if (specs->long_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->short_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->signed_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->unsigned_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->complex_p) + error ("both % and % in " + "declaration specifiers"); + else + specs->typespec_word = cts_void; + return specs; + case RID_BOOL: + if (specs->long_p) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else if (specs->short_p) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else if (specs->signed_p) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else if (specs->unsigned_p) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else if (specs->complex_p) + error ("both % and %<_Bool%> in " + "declaration specifiers"); + else + specs->typespec_word = cts_bool; + return specs; + case RID_CHAR: + if (specs->long_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->short_p) + error ("both % and % in " + "declaration specifiers"); + else + specs->typespec_word = cts_char; + return specs; + case RID_INT: + specs->typespec_word = cts_int; + return specs; + case RID_FLOAT: + if (specs->long_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->short_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->signed_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->unsigned_p) + error ("both % and % in " + "declaration specifiers"); + else + specs->typespec_word = cts_float; + return specs; + case RID_DOUBLE: + if (specs->long_long_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->short_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->signed_p) + error ("both % and % in " + "declaration specifiers"); + else if (specs->unsigned_p) + error ("both % and % in " + "declaration specifiers"); + else + specs->typespec_word = cts_double; + return specs; + default: + /* ObjC reserved word "id", handled below. */ + break; + } + } } - if (specs->type) + + /* Now we have a typedef (a TYPE_DECL node), an identifier (some + form of ObjC type, cases such as "int" and "long" being handled + above), a TYPE (struct, union, enum and typeof specifiers) or an + ERROR_MARK. In none of these cases may there have previously + been any type specifiers. */ + if (specs->type || specs->typespec_word != cts_none + || specs->long_p || specs->short_p || specs->signed_p + || specs->unsigned_p || specs->complex_p) error ("two or more data types in declaration specifiers"); - /* Actual typedefs come to us as TYPE_DECL nodes. */ else if (TREE_CODE (type) == TYPE_DECL) { if (TREE_TYPE (type) == error_mark_node) @@ -6807,10 +6914,10 @@ declspecs_add_type (struct c_declspecs *specs, tree type) { specs->type = TREE_TYPE (type); specs->decl_attr = DECL_ATTRIBUTES (type); - specs->typedef_decl = type; + specs->typedef_p = true; + specs->explicit_signed_p = C_TYPEDEF_EXPLICITLY_SIGNED (type); } } - /* Built-in types come as identifiers. */ else if (TREE_CODE (type) == IDENTIFIER_NODE) { tree t = lookup_name (type); @@ -6835,23 +6942,80 @@ struct c_declspecs * declspecs_add_scspec (struct c_declspecs *specs, tree scspec) { enum rid i; + enum c_storage_class n = csc_none; + bool dupe = false; gcc_assert (TREE_CODE (scspec) == IDENTIFIER_NODE && C_IS_RESERVED_WORD (scspec)); i = C_RID_CODE (scspec); if (extra_warnings && specs->non_sc_seen_p) warning ("%qs is not at beginning of declaration", IDENTIFIER_POINTER (scspec)); - if (specs->specbits & (1 << (int) i)) - error ("duplicate %qs", IDENTIFIER_POINTER (scspec)); - /* Diagnose "__thread extern" and "__thread static". */ - if (specs->specbits & (1 << (int) RID_THREAD)) - { - if (i == RID_EXTERN) + switch (i) + { + case RID_INLINE: + /* C99 permits duplicate inline. Although of doubtful utility, + it seems simplest to permit it in gnu89 mode as well, as + there is also little utility in maintaining this as a + difference between gnu89 and C99 inline. */ + dupe = false; + specs->inline_p = true; + break; + case RID_THREAD: + dupe = specs->thread_p; + if (specs->storage_class == csc_auto) + error ("%<__thread%> used with %"); + else if (specs->storage_class == csc_register) + error ("%<__thread%> used with %"); + else if (specs->storage_class == csc_typedef) + error ("%<__thread%> used with %"); + else + specs->thread_p = true; + break; + case RID_AUTO: + n = csc_auto; + break; + case RID_EXTERN: + n = csc_extern; + /* Diagnose "__thread extern". */ + if (specs->thread_p) error ("%<__thread%> before %"); - else if (i == RID_STATIC) + break; + case RID_REGISTER: + n = csc_register; + break; + case RID_STATIC: + n = csc_static; + /* Diagnose "__thread static". */ + if (specs->thread_p) error ("%<__thread%> before %"); + break; + case RID_TYPEDEF: + n = csc_typedef; + break; + default: + gcc_unreachable (); + } + if (n != csc_none && n == specs->storage_class) + dupe = true; + if (dupe) + error ("duplicate %qs", IDENTIFIER_POINTER (scspec)); + if (n != csc_none) + { + if (specs->storage_class != csc_none && n != specs->storage_class) + { + error ("multiple storage classes in declaration specifiers"); + } + else + { + specs->storage_class = n; + if (n != csc_extern && n != csc_static && specs->thread_p) + { + error ("%<__thread%> used with %qs", + IDENTIFIER_POINTER (scspec)); + specs->thread_p = false; + } + } } - specs->specbits |= 1 << (int) i; return specs; } @@ -6865,6 +7029,146 @@ declspecs_add_attrs (struct c_declspecs *specs, tree attrs) return specs; } +/* Combine "long", "short", "signed", "unsigned" and "_Complex" type + specifiers with any other type specifier to determine the resulting + type. This is where ISO C checks on complex types are made, since + "_Complex long" is a prefix of the valid ISO C type "_Complex long + double". */ + +struct c_declspecs * +finish_declspecs (struct c_declspecs *specs) +{ + /* If a type was specified as a whole, we have no modifiers and are + done. */ + if (specs->type != NULL_TREE) + { + gcc_assert (!specs->long_p && !specs->long_long_p && !specs->short_p + && !specs->signed_p && !specs->unsigned_p + && !specs->complex_p); + return specs; + } + + /* If none of "void", "_Bool", "char", "int", "float" or "double" + has been specified, treat it as "int" unless "_Complex" is + present and there are no other specifiers. If we just have + "_Complex", it is equivalent to "_Complex double", but e.g. + "_Complex short" is equivalent to "_Complex short int". */ + if (specs->typespec_word == cts_none) + { + if (specs->long_p || specs->short_p + || specs->signed_p || specs->unsigned_p) + { + specs->typespec_word = cts_int; + } + else if (specs->complex_p) + { + specs->typespec_word = cts_double; + if (pedantic) + pedwarn ("ISO C does not support plain % meaning " + "%"); + } + else + { + specs->typespec_word = cts_int; + specs->default_int_p = true; + /* We don't diagnose this here because grokdeclarator will + give more specific diagnostics according to whether it is + a function definition. */ + } + } + + /* If "signed" was specified, record this to distinguish "int" and + "signed int" in the case of a bit-field with + -funsigned-bitfields. */ + specs->explicit_signed_p = specs->signed_p; + + /* Now compute the actual type. */ + switch (specs->typespec_word) + { + case cts_void: + gcc_assert (!specs->long_p && !specs->short_p + && !specs->signed_p && !specs->unsigned_p + && !specs->complex_p); + specs->type = void_type_node; + break; + case cts_bool: + gcc_assert (!specs->long_p && !specs->short_p + && !specs->signed_p && !specs->unsigned_p + && !specs->complex_p); + specs->type = boolean_type_node; + break; + case cts_char: + gcc_assert (!specs->long_p && !specs->short_p); + gcc_assert (!(specs->signed_p && specs->unsigned_p)); + if (specs->signed_p) + specs->type = signed_char_type_node; + else if (specs->unsigned_p) + specs->type = unsigned_char_type_node; + else + specs->type = char_type_node; + if (specs->complex_p) + { + if (pedantic) + pedwarn ("ISO C does not support complex integer types"); + specs->type = build_complex_type (specs->type); + } + break; + case cts_int: + gcc_assert (!(specs->long_p && specs->short_p)); + gcc_assert (!(specs->signed_p && specs->unsigned_p)); + if (specs->long_long_p) + specs->type = (specs->unsigned_p + ? long_long_unsigned_type_node + : long_long_integer_type_node); + else if (specs->long_p) + specs->type = (specs->unsigned_p + ? long_unsigned_type_node + : long_integer_type_node); + else if (specs->short_p) + specs->type = (specs->unsigned_p + ? short_unsigned_type_node + : short_integer_type_node); + else + specs->type = (specs->unsigned_p + ? unsigned_type_node + : integer_type_node); + if (specs->complex_p) + { + if (pedantic) + pedwarn ("ISO C does not support complex integer types"); + specs->type = build_complex_type (specs->type); + } + break; + case cts_float: + gcc_assert (!specs->long_p && !specs->short_p + && !specs->signed_p && !specs->unsigned_p); + specs->type = (specs->complex_p + ? complex_float_type_node + : float_type_node); + break; + case cts_double: + gcc_assert (!specs->long_long_p && !specs->short_p + && !specs->signed_p && !specs->unsigned_p); + if (specs->long_p) + { + specs->type = (specs->complex_p + ? complex_long_double_type_node + : long_double_type_node); + } + else + { + specs->type = (specs->complex_p + ? complex_double_type_node + : double_type_node); + } + break; + default: + gcc_unreachable (); + } + + return specs; +} + /* Synthesize a function which calls all the global ctors or global dtors in this file. This is only used for targets which do not support .ctors/.dtors sections. FIXME: Migrate into cgraph. */ @@ -6906,7 +7210,7 @@ c_write_global_declarations_1 (tree globals) && !TREE_PUBLIC (decl) && C_DECL_USED (decl)) { - pedwarn ("%J%<%F%> used but never defined", decl, decl); + pedwarn ("%J%qF used but never defined", decl, decl); TREE_NO_WARNING (decl) = 1; } } diff --git a/gcc/c-format.c b/gcc/c-format.c index 9524746568e..341eb59c7c2 100644 --- a/gcc/c-format.c +++ b/gcc/c-format.c @@ -342,13 +342,13 @@ static const format_length_info strfmon_length_specs[] = static const format_flag_spec printf_flag_specs[] = { - { ' ', 0, 0, N_("` ' flag"), N_("the ` ' printf flag"), STD_C89 }, - { '+', 0, 0, N_("`+' flag"), N_("the `+' printf flag"), STD_C89 }, - { '#', 0, 0, N_("`#' flag"), N_("the `#' printf flag"), STD_C89 }, - { '0', 0, 0, N_("`0' flag"), N_("the `0' printf flag"), STD_C89 }, - { '-', 0, 0, N_("`-' flag"), N_("the `-' printf flag"), STD_C89 }, - { '\'', 0, 0, N_("`'' flag"), N_("the `'' printf flag"), STD_EXT }, - { 'I', 0, 0, N_("`I' flag"), N_("the `I' printf flag"), STD_EXT }, + { ' ', 0, 0, N_("' ' flag"), N_("the ' ' printf flag"), STD_C89 }, + { '+', 0, 0, N_("'+' flag"), N_("the '+' printf flag"), STD_C89 }, + { '#', 0, 0, N_("'#' flag"), N_("the '#' printf flag"), STD_C89 }, + { '0', 0, 0, N_("'0' flag"), N_("the '0' printf flag"), STD_C89 }, + { '-', 0, 0, N_("'-' flag"), N_("the '-' printf flag"), STD_C89 }, + { '\'', 0, 0, N_("''' flag"), N_("the ''' printf flag"), STD_EXT }, + { 'I', 0, 0, N_("'I' flag"), N_("the 'I' printf flag"), STD_EXT }, { 'w', 0, 0, N_("field width"), N_("field width in printf format"), STD_C89 }, { 'p', 0, 0, N_("precision"), N_("precision in printf format"), STD_C89 }, { 'L', 0, 0, N_("length modifier"), N_("length modifier in printf format"), STD_C89 }, @@ -366,11 +366,11 @@ static const format_flag_pair printf_flag_pairs[] = static const format_flag_spec asm_fprintf_flag_specs[] = { - { ' ', 0, 0, N_("` ' flag"), N_("the ` ' printf flag"), STD_C89 }, - { '+', 0, 0, N_("`+' flag"), N_("the `+' printf flag"), STD_C89 }, - { '#', 0, 0, N_("`#' flag"), N_("the `#' printf flag"), STD_C89 }, - { '0', 0, 0, N_("`0' flag"), N_("the `0' printf flag"), STD_C89 }, - { '-', 0, 0, N_("`-' flag"), N_("the `-' printf flag"), STD_C89 }, + { ' ', 0, 0, N_("' ' flag"), N_("the ' ' printf flag"), STD_C89 }, + { '+', 0, 0, N_("'+' flag"), N_("the '+' printf flag"), STD_C89 }, + { '#', 0, 0, N_("'#' flag"), N_("the '#' printf flag"), STD_C89 }, + { '0', 0, 0, N_("'0' flag"), N_("the '0' printf flag"), STD_C89 }, + { '-', 0, 0, N_("'-' flag"), N_("the '-' printf flag"), STD_C89 }, { 'w', 0, 0, N_("field width"), N_("field width in printf format"), STD_C89 }, { 'p', 0, 0, N_("precision"), N_("precision in printf format"), STD_C89 }, { 'L', 0, 0, N_("length modifier"), N_("length modifier in printf format"), STD_C89 }, @@ -395,7 +395,7 @@ static const format_flag_pair gcc_diag_flag_pairs[] = static const format_flag_spec gcc_diag_flag_specs[] = { - { 'q', 0, 0, N_("`q' flag"), N_("the `q' diagnostic flag"), STD_C89 }, + { 'q', 0, 0, N_("'q' flag"), N_("the 'q' diagnostic flag"), STD_C89 }, { 'p', 0, 0, N_("precision"), N_("precision in printf format"), STD_C89 }, { 'L', 0, 0, N_("length modifier"), N_("length modifier in printf format"), STD_C89 }, { 0, 0, 0, NULL, NULL, 0 } @@ -405,9 +405,9 @@ static const format_flag_spec gcc_diag_flag_specs[] = static const format_flag_spec gcc_cxxdiag_flag_specs[] = { - { '+', 0, 0, N_("`+' flag"), N_("the `+' printf flag"), STD_C89 }, - { '#', 0, 0, N_("`#' flag"), N_("the `#' printf flag"), STD_C89 }, - { 'q', 0, 0, N_("`q' flag"), N_("the `q' diagnostic flag"), STD_C89 }, + { '+', 0, 0, N_("'+' flag"), N_("the '+' printf flag"), STD_C89 }, + { '#', 0, 0, N_("'#' flag"), N_("the '#' printf flag"), STD_C89 }, + { 'q', 0, 0, N_("'q' flag"), N_("the 'q' diagnostic flag"), STD_C89 }, { 'p', 0, 0, N_("precision"), N_("precision in printf format"), STD_C89 }, { 'L', 0, 0, N_("length modifier"), N_("length modifier in printf format"), STD_C89 }, { 0, 0, 0, NULL, NULL, 0 } @@ -416,11 +416,11 @@ static const format_flag_spec gcc_cxxdiag_flag_specs[] = static const format_flag_spec scanf_flag_specs[] = { { '*', 0, 0, N_("assignment suppression"), N_("the assignment suppression scanf feature"), STD_C89 }, - { 'a', 0, 0, N_("`a' flag"), N_("the `a' scanf flag"), STD_EXT }, + { 'a', 0, 0, N_("'a' flag"), N_("the 'a' scanf flag"), STD_EXT }, { 'w', 0, 0, N_("field width"), N_("field width in scanf format"), STD_C89 }, { 'L', 0, 0, N_("length modifier"), N_("length modifier in scanf format"), STD_C89 }, - { '\'', 0, 0, N_("`'' flag"), N_("the `'' scanf flag"), STD_EXT }, - { 'I', 0, 0, N_("`I' flag"), N_("the `I' scanf flag"), STD_EXT }, + { '\'', 0, 0, N_("''' flag"), N_("the ''' scanf flag"), STD_EXT }, + { 'I', 0, 0, N_("'I' flag"), N_("the 'I' scanf flag"), STD_EXT }, { 0, 0, 0, NULL, NULL, 0 } }; @@ -434,15 +434,15 @@ static const format_flag_pair scanf_flag_pairs[] = static const format_flag_spec strftime_flag_specs[] = { - { '_', 0, 0, N_("`_' flag"), N_("the `_' strftime flag"), STD_EXT }, - { '-', 0, 0, N_("`-' flag"), N_("the `-' strftime flag"), STD_EXT }, - { '0', 0, 0, N_("`0' flag"), N_("the `0' strftime flag"), STD_EXT }, - { '^', 0, 0, N_("`^' flag"), N_("the `^' strftime flag"), STD_EXT }, - { '#', 0, 0, N_("`#' flag"), N_("the `#' strftime flag"), STD_EXT }, + { '_', 0, 0, N_("'_' flag"), N_("the '_' strftime flag"), STD_EXT }, + { '-', 0, 0, N_("'-' flag"), N_("the '-' strftime flag"), STD_EXT }, + { '0', 0, 0, N_("'0' flag"), N_("the '0' strftime flag"), STD_EXT }, + { '^', 0, 0, N_("'^' flag"), N_("the '^' strftime flag"), STD_EXT }, + { '#', 0, 0, N_("'#' flag"), N_("the '#' strftime flag"), STD_EXT }, { 'w', 0, 0, N_("field width"), N_("field width in strftime format"), STD_EXT }, - { 'E', 0, 0, N_("`E' modifier"), N_("the `E' strftime modifier"), STD_C99 }, - { 'O', 0, 0, N_("`O' modifier"), N_("the `O' strftime modifier"), STD_C99 }, - { 'O', 'o', 0, NULL, N_("the `O' modifier"), STD_EXT }, + { 'E', 0, 0, N_("'E' modifier"), N_("the 'E' strftime modifier"), STD_C99 }, + { 'O', 0, 0, N_("'O' modifier"), N_("the 'O' strftime modifier"), STD_C99 }, + { 'O', 'o', 0, NULL, N_("the 'O' modifier"), STD_EXT }, { 0, 0, 0, NULL, NULL, 0 } }; @@ -461,11 +461,11 @@ static const format_flag_pair strftime_flag_pairs[] = static const format_flag_spec strfmon_flag_specs[] = { { '=', 0, 1, N_("fill character"), N_("fill character in strfmon format"), STD_C89 }, - { '^', 0, 0, N_("`^' flag"), N_("the `^' strfmon flag"), STD_C89 }, - { '+', 0, 0, N_("`+' flag"), N_("the `+' strfmon flag"), STD_C89 }, - { '(', 0, 0, N_("`(' flag"), N_("the `(' strfmon flag"), STD_C89 }, - { '!', 0, 0, N_("`!' flag"), N_("the `!' strfmon flag"), STD_C89 }, - { '-', 0, 0, N_("`-' flag"), N_("the `-' strfmon flag"), STD_C89 }, + { '^', 0, 0, N_("'^' flag"), N_("the '^' strfmon flag"), STD_C89 }, + { '+', 0, 0, N_("'+' flag"), N_("the '+' strfmon flag"), STD_C89 }, + { '(', 0, 0, N_("'(' flag"), N_("the '(' strfmon flag"), STD_C89 }, + { '!', 0, 0, N_("'!' flag"), N_("the '!' strfmon flag"), STD_C89 }, + { '-', 0, 0, N_("'-' flag"), N_("the '-' strfmon flag"), STD_C89 }, { 'w', 0, 0, N_("field width"), N_("field width in strfmon format"), STD_C89 }, { '#', 0, 0, N_("left precision"), N_("left precision in strfmon format"), STD_C89 }, { 'p', 0, 0, N_("right precision"), N_("right precision in strfmon format"), STD_C89 }, @@ -587,7 +587,7 @@ static const format_char_info gcc_cxxdiag_char_table[] = /* These will require a "tree" at runtime. */ { "ADEFJTV",0,STD_C89,{ T89_V, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN }, "q+#", "", NULL }, - /* These accept either an `int' or an `enum tree_code' (which is handled as an `int'.) */ + /* These accept either an 'int' or an 'enum tree_code' (which is handled as an 'int'.) */ { "CLOPQ",0,STD_C89, { T89_I, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN, BADLEN }, "q", "", NULL }, { "<>'", 0, STD_C89, NOARGUMENTS, "", "", NULL }, @@ -1720,7 +1720,7 @@ check_format_info_main (format_check_results *res, if (format_chars[1] == 's' || format_chars[1] == 'S' || format_chars[1] == '[') { - /* `a' is used as a flag. */ + /* 'a' is used as a flag. */ i = strlen (flag_chars); flag_chars[i++] = 'a'; flag_chars[i] = 0; @@ -2094,7 +2094,7 @@ check_format_types (format_wanted_type *types, const char *format_start, && i == 0 && (TYPE_READONLY (cur_type) || (cur_param != 0 - && (TREE_CODE_CLASS (TREE_CODE (cur_param)) == 'c' + && (CONSTANT_CLASS_P (cur_param) || (DECL_P (cur_param) && TREE_READONLY (cur_param)))))) warning ("writing into constant object (arg %d)", arg_num); @@ -2137,7 +2137,7 @@ check_format_types (format_wanted_type *types, const char *format_start, /* Check the type of the "real" argument, if there's a type we want. */ if (wanted_type == cur_type) continue; - /* If we want `void *', allow any pointer type. + /* If we want 'void *', allow any pointer type. (Anything else would already have got a warning.) With -pedantic, only allow pointers to void and to character types. */ @@ -2327,7 +2327,7 @@ init_dynamic_diag_info (void) unsigned int i; /* For the GCC-diagnostics custom format specifiers to work, one - must have declared `tree' and/or `location_t' prior to using + must have declared 'tree' and/or 'location_t' prior to using those attributes. If we haven't seen these declarations then you shouldn't use the specifiers requiring these types. However we don't force a hard ICE because we may see only one @@ -2335,7 +2335,7 @@ init_dynamic_diag_info (void) if ((loc = maybe_get_identifier ("location_t"))) loc = TREE_TYPE (identifier_global_value (loc)); - /* We need to grab the underlying `union tree_node' so peek into + /* We need to grab the underlying 'union tree_node' so peek into an extra type level. */ if ((t = maybe_get_identifier ("tree"))) t = TREE_TYPE (TREE_TYPE (identifier_global_value (t))); @@ -2529,7 +2529,7 @@ handle_format_attribute (tree *node, tree ARG_UNUSED (name), tree args, if (info.format_type == asm_fprintf_format_type) init_dynamic_asm_fprintf_info(); /* If this is one of the diagnostic attributes, then we have to - initialize `location_t' and `tree' at runtime. */ + initialize 'location_t' and 'tree' at runtime. */ else if (info.format_type == gcc_diag_format_type || info.format_type == gcc_cdiag_format_type || info.format_type == gcc_cxxdiag_format_type) diff --git a/gcc/c-incpath.c b/gcc/c-incpath.c index 2f00d62bb63..4fd1b131ed8 100644 --- a/gcc/c-incpath.c +++ b/gcc/c-incpath.c @@ -128,7 +128,7 @@ add_standard_paths (const char *sysroot, const char *iprefix, int cxx_stdinc) if (iprefix && (len = cpp_GCC_INCLUDE_DIR_len) != 0) { /* Look for directories that start with the standard prefix. - "Translate" them, ie. replace /usr/local/lib/gcc... with + "Translate" them, i.e. replace /usr/local/lib/gcc... with IPREFIX and search them first. */ for (p = cpp_include_defaults; p->fname; p++) { @@ -372,21 +372,34 @@ register_include_chains (cpp_reader *pfile, const char *sysroot, include chain. */ add_env_var_paths ("CPATH", BRACKET); add_env_var_paths (lang_env_vars[idx], SYSTEM); + + target_c_incpath.extra_pre_includes (sysroot, iprefix, stdinc); /* Finally chain on the standard directories. */ if (stdinc) add_standard_paths (sysroot, iprefix, cxx_stdinc); - target_c_incpath.extra_includes (stdinc); + target_c_incpath.extra_includes (sysroot, iprefix, stdinc); merge_include_chains (pfile, verbose); cpp_set_include_chains (pfile, heads[QUOTE], heads[BRACKET], quote_ignores_source_dir); } +#if !(defined TARGET_EXTRA_INCLUDES) || !(defined TARGET_EXTRA_PRE_INCLUDES) +static void hook_void_charptr_charptr_int (const char *sysroot ATTRIBUTE_UNUSED, + const char *iprefix ATTRIBUTE_UNUSED, + int stdinc ATTRIBUTE_UNUSED) +{ +} +#endif #ifndef TARGET_EXTRA_INCLUDES -static void hook_void_int(int u ATTRIBUTE_UNUSED) { } - -struct target_c_incpath_s target_c_incpath = { hook_void_int }; +#define TARGET_EXTRA_INCLUDES hook_void_charptr_charptr_int #endif +#ifndef TARGET_EXTRA_PRE_INCLUDES +#define TARGET_EXTRA_PRE_INCLUDES hook_void_charptr_charptr_int +#endif + +struct target_c_incpath_s target_c_incpath = { TARGET_EXTRA_PRE_INCLUDES, TARGET_EXTRA_INCLUDES }; + diff --git a/gcc/c-incpath.h b/gcc/c-incpath.h index 1096016784f..cc261a6d884 100644 --- a/gcc/c-incpath.h +++ b/gcc/c-incpath.h @@ -23,11 +23,10 @@ extern void add_cpp_dir_path (struct cpp_dir *, int); struct target_c_incpath_s { /* Do extra includes processing. STDINC is false iff -nostdinc was given. */ - void (*extra_includes) (int); + void (*extra_pre_includes) (const char *, const char *, int); + void (*extra_includes) (const char *, const char *, int); }; extern struct target_c_incpath_s target_c_incpath; -#define C_INCPATH_INIT { TARGET_EXTRA_INCLUDES } - enum { QUOTE = 0, BRACKET, SYSTEM, AFTER }; diff --git a/gcc/c-lang.c b/gcc/c-lang.c index af4932a83ce..ca0173e333a 100644 --- a/gcc/c-lang.c +++ b/gcc/c-lang.c @@ -54,9 +54,9 @@ const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; #define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE, -const char tree_code_type[] = { +const enum tree_code_class tree_code_type[] = { #include "tree.def" - 'x', + tcc_exceptional, #include "c-common.def" }; #undef DEFTREECODE diff --git a/gcc/c-lex.c b/gcc/c-lex.c index 6334885f0a3..d8eaddf015f 100644 --- a/gcc/c-lex.c +++ b/gcc/c-lex.c @@ -82,10 +82,8 @@ init_c_lex (void) struct cpp_callbacks *cb; struct c_fileinfo *toplevel; - /* Set up filename timing. Must happen before cpp_read_main_file. */ - file_info_tree = splay_tree_new ((splay_tree_compare_fn)strcmp, - 0, - (splay_tree_delete_value_fn)free); + /* The get_fileinfo data structure must be initialized before + cpp_read_main_file is called. */ toplevel = get_fileinfo (""); if (flag_detailed_statistics) { @@ -118,6 +116,11 @@ get_fileinfo (const char *name) splay_tree_node n; struct c_fileinfo *fi; + if (!file_info_tree) + file_info_tree = splay_tree_new ((splay_tree_compare_fn)strcmp, + 0, + (splay_tree_delete_value_fn)free); + n = splay_tree_lookup (file_info_tree, (splay_tree_key) name); if (n) return (struct c_fileinfo *) n->value; @@ -266,9 +269,6 @@ fe_file_change (const struct line_map *new_map) input_filename = new_map->to_file; input_line = new_map->to_line; #endif - - /* Hook for C++. */ - extract_interface_info (); } static void @@ -584,7 +584,7 @@ interpret_integer (const cpp_token *token, unsigned int flags) if (itk > itk_unsigned_long && (flags & CPP_N_WIDTH) != CPP_N_LARGE && ! in_system_header && ! flag_isoc99) - pedwarn ("integer constant is too large for \"%s\" type", + pedwarn ("integer constant is too large for %qs type", (flags & CPP_N_UNSIGNED) ? "unsigned long" : "long"); value = build_int_cst_wide (type, integer.low, integer.high); @@ -650,7 +650,7 @@ interpret_float (const cpp_token *token, unsigned int flags) ??? That's a dubious reason... is this a mandatory diagnostic or isn't it? -- zw, 2001-08-21. */ if (REAL_VALUE_ISINF (real) && pedantic) - warning ("floating constant exceeds range of \"%s\"", type_name); + warning ("floating constant exceeds range of %<%s%>", type_name); /* Create a node with determined type and value. */ value = build_real (type, real); diff --git a/gcc/c-objc-common.c b/gcc/c-objc-common.c index 9d05a6d97bf..d59aed10beb 100644 --- a/gcc/c-objc-common.c +++ b/gcc/c-objc-common.c @@ -78,7 +78,7 @@ c_cannot_inline_tree_fn (tree *fnp) && lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn)) == NULL) { if (do_warning) - warning ("%Jfunction '%F' can never be inlined because it " + warning ("%Jfunction %qF can never be inlined because it " "is suppressed using -fno-inline", fn, fn); goto cannot_inline; } @@ -88,7 +88,7 @@ c_cannot_inline_tree_fn (tree *fnp) if (!DECL_DECLARED_INLINE_P (fn) && !targetm.binds_local_p (fn)) { if (do_warning) - warning ("%Jfunction '%F' can never be inlined because it might not " + warning ("%Jfunction %qF can never be inlined because it might not " "be bound within this unit of translation", fn, fn); goto cannot_inline; } @@ -96,7 +96,7 @@ c_cannot_inline_tree_fn (tree *fnp) if (! function_attribute_inlinable_p (fn)) { if (do_warning) - warning ("%Jfunction '%F' can never be inlined because it uses " + warning ("%Jfunction %qF can never be inlined because it uses " "attributes conflicting with inlining", fn, fn); goto cannot_inline; } @@ -111,7 +111,7 @@ c_cannot_inline_tree_fn (tree *fnp) if (t) { if (do_warning) - warning ("%Jfunction '%F' can never be inlined because it has " + warning ("%Jfunction %qF can never be inlined because it has " "pending sizes", fn, fn); goto cannot_inline; } @@ -124,7 +124,7 @@ c_cannot_inline_tree_fn (tree *fnp) if (DECL_LANG_SPECIFIC (fn)->pending_sizes) { if (do_warning) - warning ("%Jnested function '%F' can never be inlined because it " + warning ("%Jnested function %qF can never be inlined because it " "has possibly saved pending sizes", fn, fn); goto cannot_inline; } diff --git a/gcc/c-opts.c b/gcc/c-opts.c index c16bebe5c38..c199c48213b 100644 --- a/gcc/c-opts.c +++ b/gcc/c-opts.c @@ -144,16 +144,16 @@ c_common_missing_argument (const char *opt, size_t code) return false; case OPT_fconstant_string_class_: - error ("no class name specified with \"%s\"", opt); + error ("no class name specified with %qs", opt); break; case OPT_A: - error ("assertion missing after \"%s\"", opt); + error ("assertion missing after %qs", opt); break; case OPT_D: case OPT_U: - error ("macro name missing after \"%s\"", opt); + error ("macro name missing after %qs", opt); break; case OPT_F: @@ -162,7 +162,7 @@ c_common_missing_argument (const char *opt, size_t code) case OPT_isysroot: case OPT_isystem: case OPT_iquote: - error ("missing path after \"%s\"", opt); + error ("missing path after %qs", opt); break; case OPT_MF: @@ -171,12 +171,12 @@ c_common_missing_argument (const char *opt, size_t code) case OPT_include: case OPT_imacros: case OPT_o: - error ("missing filename after \"%s\"", opt); + error ("missing filename after %qs", opt); break; case OPT_MQ: case OPT_MT: - error ("missing makefile target after \"%s\"", opt); + error ("missing makefile target after %qs", opt); break; } @@ -539,7 +539,7 @@ c_common_handle_option (size_t scode, const char *arg, int value) case OPT_fvtable_thunks: case OPT_fxref: case OPT_fvtable_gc: - warning ("switch \"%s\" is no longer supported", option->opt_text); + warning ("switch %qs is no longer supported", option->opt_text); break; case OPT_faccess_control: diff --git a/gcc/c-parse.in b/gcc/c-parse.in index ed0e3e1d095..6fcf66739f5 100644 --- a/gcc/c-parse.in +++ b/gcc/c-parse.in @@ -361,7 +361,7 @@ static inline int _yylex (void); static int yylex (void); static void init_reswords (void); - /* Initialisation routine for this file. */ + /* Initialization routine for this file. */ void c_parse_init (void) { @@ -420,12 +420,12 @@ datadef: | declspecs_ts setspecs initdecls ';' { POP_DECLSPEC_STACK; } | declspecs ';' - { shadow_tag ($1); } + { shadow_tag (finish_declspecs ($1)); } | error ';' | error '}' | ';' { if (pedantic) - pedwarn ("ISO C does not allow extra `;' outside of a function"); } + pedwarn ("ISO C does not allow extra %<;%> outside of a function"); } ; fndef: @@ -541,7 +541,7 @@ unary_expr: in_sizeof--; if (TREE_CODE ($2.value) == COMPONENT_REF && DECL_C_BIT_FIELD (TREE_OPERAND ($2.value, 1))) - error ("`sizeof' applied to a bit-field"); + error ("% applied to a bit-field"); $$ = c_expr_sizeof_expr ($2); } | sizeof '(' typename ')' %prec HYPERUNARY { skip_evaluation--; @@ -835,7 +835,7 @@ datadecl: | declspecs_nots_nosa setspecs notype_initdecls ';' { POP_DECLSPEC_STACK; } | declspecs_ts_nosa ';' - { shadow_tag_warned ($1, 1); + { shadow_tag_warned (finish_declspecs ($1), 1); pedwarn ("empty declaration"); } | declspecs_nots_nosa ';' { pedwarn ("empty declaration"); } @@ -868,6 +868,7 @@ setspecs: /* empty */ prefix_attributes = NULL_TREE; current_declspecs = build_null_declspecs (); } + current_declspecs = finish_declspecs (current_declspecs); all_prefix_attributes = prefix_attributes; } ; @@ -888,7 +889,7 @@ decl: | declspecs_nots setspecs notype_nested_function { POP_DECLSPEC_STACK; } | declspecs ';' - { shadow_tag ($1); } + { shadow_tag (finish_declspecs ($1)); } | extension decl { RESTORE_EXT_FLAGS ($1); } ; @@ -1286,7 +1287,7 @@ typespec_nonreserved_nonattr: in_typeof--; if (TREE_CODE ($3.value) == COMPONENT_REF && DECL_C_BIT_FIELD (TREE_OPERAND ($3.value, 1))) - error ("`typeof' applied to a bit-field"); + error ("% applied to a bit-field"); $$ = TREE_TYPE ($3.value); pop_maybe_used (variably_modified_type_p ($$, NULL_TREE)); } | typeof '(' typename ')' @@ -1359,7 +1360,7 @@ attribute: '(' '(' attribute_list ')' ')' start_string_translation { $$ = $5; } | ATTRIBUTE error start_string_translation - {} + { $$ = NULL_TREE; } ; attribute_list: @@ -1431,11 +1432,11 @@ initelt: pedwarn ("ISO C90 forbids specifying subobject to initialize"); } | designator initval { if (pedantic) - pedwarn ("obsolete use of designated initializer without `='"); } + pedwarn ("obsolete use of designated initializer without %<=%>"); } | identifier ':' { set_init_label ($1); if (pedantic) - pedwarn ("obsolete use of designated initializer with `:'"); } + pedwarn ("obsolete use of designated initializer with %<:%>"); } initval {} | initval @@ -1675,7 +1676,7 @@ structsp_nonattr: /* In ISO C, enumerated types can be referred to only if already defined. */ if (pedantic && !COMPLETE_TYPE_P ($$)) - pedwarn ("ISO C forbids forward references to `enum' types"); } + pedwarn ("ISO C forbids forward references to % types"); } ; maybecomma: @@ -1745,7 +1746,7 @@ component_decl: | declspecs_nosc_nots { if (pedantic) pedwarn ("ISO C forbids member declarations with no members"); - shadow_tag_warned ($1, pedantic); + shadow_tag_warned (finish_declspecs ($1), pedantic); $$ = NULL_TREE; } | error { $$ = NULL_TREE; } @@ -1823,7 +1824,7 @@ enumerator: typename: declspecs_nosc { pending_xref_error (); - $$ = $1; } + $$ = finish_declspecs ($1); } absdcl { $$ = XOBNEW (&parser_obstack, struct c_type_name); $$->specs = $2; @@ -2048,9 +2049,9 @@ c99_block_lineno_labeled_stmt: lineno_stmt: save_location stmt - { + { /* Two cases cannot and do not have line numbers associated: - If stmt is degenerate, such as "2;", then stmt is an + If stmt is degenerate, such as "2;", then stmt is an INTEGER_CST, which cannot hold line numbers. But that's ok because the statement will either be changed to a MODIFY_EXPR during gimplification of the statement expr, @@ -2448,7 +2449,7 @@ parmlist_2: /* empty */ $$->others = 0; /* Suppress -Wold-style-definition for this case. */ $$->types = error_mark_node; - error ("ISO C requires a named argument before `...'"); + error ("ISO C requires a named argument before %<...%>"); } | parms { $$ = get_parm_info (/*ellipsis=*/false); } @@ -2831,7 +2832,7 @@ optparms: grokparm ($3))); } ; - + optellipsis: /* NULL */ { @@ -3480,7 +3481,7 @@ _yylex (void) /* These tokens should not survive translation phase 4. */ case CPP_HASH: case CPP_PASTE: - error ("syntax error at '%s' token", NAME(last_token)); + error ("syntax error at %qs token", NAME(last_token)); goto get_next; default: @@ -3518,7 +3519,7 @@ yyprint (FILE *file, int yychar, YYSTYPE yyl) case SCSPEC: case STATIC: if (IDENTIFIER_POINTER (t)) - fprintf (file, " `%s'", IDENTIFIER_POINTER (t)); + fprintf (file, " '%s'", IDENTIFIER_POINTER (t)); break; case CONSTANT: diff --git a/gcc/c-pch.c b/gcc/c-pch.c index 6352d37fb3d..04eee838dfa 100644 --- a/gcc/c-pch.c +++ b/gcc/c-pch.c @@ -161,7 +161,7 @@ pch_init (void) /* The driver always provides a valid -o option. */ if (asm_file_name == NULL || strcmp (asm_file_name, "-") == 0) - fatal_error ("`%s' is not a valid output file", asm_file_name); + fatal_error ("%qs is not a valid output file", asm_file_name); asm_file_startpos = ftell (asm_out_file); @@ -284,7 +284,7 @@ c_common_valid_pch (cpp_reader *pfile, const char *name, int fd) { if (cpp_get_options (pfile)->warn_invalid_pch) cpp_error (pfile, CPP_DL_WARNING, - "%s: created on host `%.*s', but used on host `%s'", name, + "%s: created on host '%.*s', but used on host '%s'", name, v.host_machine_length, short_strings, host_machine); return 2; } @@ -294,7 +294,7 @@ c_common_valid_pch (cpp_reader *pfile, const char *name, int fd) { if (cpp_get_options (pfile)->warn_invalid_pch) cpp_error (pfile, CPP_DL_WARNING, - "%s: created for target `%.*s', but used for target `%s'", + "%s: created for target '%.*s', but used for target '%s'", name, v.target_machine_length, short_strings + v.host_machine_length, target_machine); return 2; @@ -307,7 +307,7 @@ c_common_valid_pch (cpp_reader *pfile, const char *name, int fd) { if (cpp_get_options (pfile)->warn_invalid_pch) cpp_error (pfile, CPP_DL_WARNING, - "%s: created by version `%.*s', but this is version `%s'", + "%s: created by version '%.*s', but this is version '%s'", name, v.version_length, (short_strings + v.host_machine_length + v.target_machine_length), @@ -448,7 +448,7 @@ c_common_read_pch (cpp_reader *pfile, const char *name, fclose (f); /* Give the front end a chance to take action after a PCH file has - been loadeded. */ + been loaded. */ if (lang_post_pch_load) (*lang_post_pch_load) (); } diff --git a/gcc/c-pragma.c b/gcc/c-pragma.c index fe9f17ab569..fd2f7f714ad 100644 --- a/gcc/c-pragma.c +++ b/gcc/c-pragma.c @@ -145,7 +145,7 @@ handle_pragma_pack (cpp_reader * ARG_UNUSED (dummy)) enum { set, push, pop } action; if (c_lex (&x) != CPP_OPEN_PAREN) - GCC_BAD ("missing '(' after '#pragma pack' - ignored"); + GCC_BAD ("missing %<(%> after %<#pragma pack%> - ignored"); token = c_lex (&x); if (token == CPP_CLOSE_PAREN) @@ -158,14 +158,14 @@ handle_pragma_pack (cpp_reader * ARG_UNUSED (dummy)) align = TREE_INT_CST_LOW (x); action = set; if (c_lex (&x) != CPP_CLOSE_PAREN) - GCC_BAD ("malformed '#pragma pack' - ignored"); + GCC_BAD ("malformed %<#pragma pack%> - ignored"); } else if (token == CPP_NAME) { #define GCC_BAD_ACTION do { if (action != pop) \ - GCC_BAD ("malformed '#pragma pack(push[, id][, ])' - ignored"); \ + GCC_BAD ("malformed %<#pragma pack(push[, id][, ])%> - ignored"); \ else \ - GCC_BAD ("malformed '#pragma pack(pop[, id])' - ignored"); \ + GCC_BAD ("malformed %<#pragma pack(pop[, id])%> - ignored"); \ } while (0) const char *op = IDENTIFIER_POINTER (x); @@ -174,7 +174,7 @@ handle_pragma_pack (cpp_reader * ARG_UNUSED (dummy)) else if (!strcmp (op, "pop")) action = pop; else - GCC_BAD2 ("unknown action '%s' for '#pragma pack' - ignored", op); + GCC_BAD2 ("unknown action %qs for %<#pragma pack%> - ignored", op); while ((token = c_lex (&x)) == CPP_COMMA) { @@ -198,10 +198,10 @@ handle_pragma_pack (cpp_reader * ARG_UNUSED (dummy)) #undef GCC_BAD_ACTION } else - GCC_BAD ("malformed '#pragma pack' - ignored"); + GCC_BAD ("malformed %<#pragma pack%> - ignored"); if (c_lex (&x) != CPP_EOF) - warning ("junk at end of '#pragma pack'"); + warning ("junk at end of %<#pragma pack%>"); if (flag_pack_struct) GCC_BAD ("#pragma pack has no effect with -fpack-struct - ignored"); @@ -257,7 +257,7 @@ apply_pragma_weak (tree decl, tree value) if (SUPPORTS_WEAK && DECL_EXTERNAL (decl) && TREE_USED (decl) && !DECL_WEAK (decl) /* Don't complain about a redundant #pragma. */ && TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl))) - warning ("%Japplying #pragma weak '%D' after first use results " + warning ("%Japplying #pragma weak %qD after first use results " "in unspecified behavior", decl, decl); declare_weak (decl); @@ -316,7 +316,7 @@ handle_pragma_weak (cpp_reader * ARG_UNUSED (dummy)) warning ("junk at end of #pragma weak"); decl = identifier_global_value (name); - if (decl && TREE_CODE_CLASS (TREE_CODE (decl)) == 'd') + if (decl && DECL_P (decl)) { apply_pragma_weak (decl, value); if (value) @@ -578,7 +578,7 @@ handle_pragma_visibility (cpp_reader *dummy ATTRIBUTE_UNUSED) { if (!visidx) { - GCC_BAD ("No matching push for '#pragma GCC visibility pop'"); + GCC_BAD ("No matching push for %<#pragma GCC visibility pop%>"); } else { @@ -589,7 +589,7 @@ handle_pragma_visibility (cpp_reader *dummy ATTRIBUTE_UNUSED) else { if (c_lex (&x) != CPP_OPEN_PAREN) - GCC_BAD ("missing '(' after '#pragma GCC visibility push' - ignored"); + GCC_BAD ("missing %<(%> after %<#pragma GCC visibility push%> - ignored"); token = c_lex (&x); if (token != CPP_NAME) { @@ -618,11 +618,11 @@ handle_pragma_visibility (cpp_reader *dummy ATTRIBUTE_UNUSED) visibility_options.inpragma = 1; } if (c_lex (&x) != CPP_CLOSE_PAREN) - GCC_BAD ("missing '(' after '#pragma GCC visibility push' - ignored"); + GCC_BAD ("missing '(' after %<#pragma GCC visibility push%> - ignored"); } } if (c_lex (&x) != CPP_EOF) - warning ("junk at end of '#pragma GCC visibility'"); + warning ("junk at end of %<#pragma GCC visibility%>"); } #endif diff --git a/gcc/c-tree.h b/gcc/c-tree.h index 37075518b83..76981a7ea7c 100644 --- a/gcc/c-tree.h +++ b/gcc/c-tree.h @@ -131,21 +131,46 @@ struct c_expr enum tree_code original_code; }; +/* A storage class specifier. */ +enum c_storage_class { + csc_none, + csc_auto, + csc_extern, + csc_register, + csc_static, + csc_typedef +}; + +/* A type specifier keyword "void", "_Bool", "char", "int", "float", + "double", or none of these. */ +enum c_typespec_keyword { + cts_none, + cts_void, + cts_bool, + cts_char, + cts_int, + cts_float, + cts_double +}; + /* A sequence of declaration specifiers in C. */ struct c_declspecs { - /* The type specified, not reflecting modifiers such as "short" and - "unsigned", or NULL_TREE if none. */ + /* The type specified, if a single type specifier such as a struct, + union or enum specifier, typedef name or typeof specifies the + whole type, or NULL_TREE if none or a keyword such as "void" or + "char" is used. Does not include qualifiers. */ tree type; - /* If the type was specified with a typedef, that typedef decl. */ - tree typedef_decl; /* The attributes from a typedef decl. */ tree decl_attr; /* When parsing, the attributes. Outside the parser, this will be NULL; attributes (possibly from multiple lists) will be passed separately. */ tree attrs; - /* The modifier bits present. */ - int specbits; + /* Any type specifier keyword used such as "int", not reflecting + modifiers such as "short", or cts_none if none. */ + enum c_typespec_keyword typespec_word; + /* The storage class specifier, or csc_none if none. */ + enum c_storage_class storage_class; /* Whether something other than a storage class specifier or attribute has been seen. This is used to warn for the obsolescent usage of storage class specifiers other than at the @@ -153,14 +178,38 @@ struct c_declspecs { specifiers to be handled separately from storage class specifiers.) */ BOOL_BITFIELD non_sc_seen_p : 1; + /* Whether the type is specified by a typedef. */ + BOOL_BITFIELD typedef_p : 1; + /* Whether the type is explicitly "signed" or specified by a typedef + whose type is explicitly "signed". */ + BOOL_BITFIELD explicit_signed_p : 1; /* Whether the specifiers include a deprecated typedef. */ BOOL_BITFIELD deprecated_p : 1; - /* Whether "int" was explicitly specified. */ - BOOL_BITFIELD explicit_int_p : 1; - /* Whether "char" was explicitly specified. */ - BOOL_BITFIELD explicit_char_p : 1; + /* Whether the type defaulted to "int" because there were no type + specifiers. */ + BOOL_BITFIELD default_int_p; + /* Whether "long" was specified. */ + BOOL_BITFIELD long_p : 1; /* Whether "long" was specified more than once. */ BOOL_BITFIELD long_long_p : 1; + /* Whether "short" was specified. */ + BOOL_BITFIELD short_p : 1; + /* Whether "signed" was specified. */ + BOOL_BITFIELD signed_p : 1; + /* Whether "unsigned" was specified. */ + BOOL_BITFIELD unsigned_p : 1; + /* Whether "complex" was specified. */ + BOOL_BITFIELD complex_p : 1; + /* Whether "inline" was specified. */ + BOOL_BITFIELD inline_p : 1; + /* Whether "__thread" was specified. */ + BOOL_BITFIELD thread_p : 1; + /* Whether "const" was specified. */ + BOOL_BITFIELD const_p : 1; + /* Whether "volatile" was specified. */ + BOOL_BITFIELD volatile_p : 1; + /* Whether "restrict" was specified. */ + BOOL_BITFIELD restrict_p : 1; }; /* The various kinds of declarators in C. */ @@ -206,15 +255,17 @@ struct c_declarator { struct { /* The array dimension, or NULL for [] and [*]. */ tree dimen; - /* The qualifiers (and attributes, currently ignored) inside []. */ - struct c_declspecs *quals; + /* The qualifiers inside []. */ + int quals; + /* The attributes (currently ignored) inside []. */ + tree attrs; /* Whether [static] was used. */ BOOL_BITFIELD static_p : 1; /* Whether [*] was used. */ BOOL_BITFIELD vla_unspec_p : 1; } array; /* For pointers, the qualifiers on the pointer type. */ - struct c_declspecs *pointer_quals; + int pointer_quals; /* For attributes. */ tree attrs; } u; @@ -278,6 +329,7 @@ extern void c_expand_body (tree); extern void c_init_decl_processing (void); extern void c_dup_lang_specific_decl (tree); extern void c_print_identifier (FILE *, tree, int); +extern int quals_from_declspecs (const struct c_declspecs *); extern struct c_declarator *build_array_declarator (tree, struct c_declspecs *, bool, bool); extern tree build_enumerator (tree, tree); @@ -334,6 +386,7 @@ extern struct c_declspecs *declspecs_add_qual (struct c_declspecs *, tree); extern struct c_declspecs *declspecs_add_type (struct c_declspecs *, tree); extern struct c_declspecs *declspecs_add_scspec (struct c_declspecs *, tree); extern struct c_declspecs *declspecs_add_attrs (struct c_declspecs *, tree); +extern struct c_declspecs *finish_declspecs (struct c_declspecs *); /* in c-objc-common.c */ extern int c_disregard_inline_limits (tree); @@ -394,8 +447,6 @@ extern void set_init_index (tree, tree); extern void set_init_label (tree); extern void process_init_element (struct c_expr); extern tree build_compound_literal (tree, tree); -extern void pedwarn_c90 (const char *, ...) ATTRIBUTE_PRINTF_1; -extern void pedwarn_c99 (const char *, ...) ATTRIBUTE_PRINTF_1; extern tree c_start_case (tree); extern void c_finish_case (tree); extern tree build_asm_expr (tree, tree, tree, tree, bool); @@ -450,5 +501,13 @@ extern void c_write_global_declarations (void); diagnostic framework extensions, you must include this file before toplev.h, not after. */ #define GCC_DIAG_STYLE __gcc_cdiag__ +#if GCC_VERSION >= 3005 +#define ATTRIBUTE_GCC_CDIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m ,n))) ATTRIBUTE_NONNULL(m) +#else +#define ATTRIBUTE_GCC_CDIAG(m, n) ATTRIBUTE_NONNULL(m) +#endif + +extern void pedwarn_c90 (const char *, ...) ATTRIBUTE_GCC_CDIAG(1,2); +extern void pedwarn_c99 (const char *, ...) ATTRIBUTE_GCC_CDIAG(1,2); #endif /* ! GCC_C_TREE_H */ diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index a815e2f1193..5ec00aa4250 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -125,7 +125,7 @@ c_incomplete_type_error (tree value, tree type) if (value != 0 && (TREE_CODE (value) == VAR_DECL || TREE_CODE (value) == PARM_DECL)) - error ("`%s' has an incomplete type", + error ("%qs has an incomplete type", IDENTIFIER_POINTER (DECL_NAME (value))); else { @@ -169,11 +169,11 @@ c_incomplete_type_error (tree value, tree type) } if (TREE_CODE (TYPE_NAME (type)) == IDENTIFIER_NODE) - error ("invalid use of undefined type `%s %s'", + error ("invalid use of undefined type %<%s %s%>", type_code_string, IDENTIFIER_POINTER (TYPE_NAME (type))); else /* If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL. */ - error ("invalid use of incomplete typedef `%s'", + error ("invalid use of incomplete typedef %qs", IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (type)))); } } @@ -744,18 +744,24 @@ same_translation_unit_p (tree t1, tree t2) while (t1 && TREE_CODE (t1) != TRANSLATION_UNIT_DECL) switch (TREE_CODE_CLASS (TREE_CODE (t1))) { - case 'd': t1 = DECL_CONTEXT (t1); break; - case 't': t1 = TYPE_CONTEXT (t1); break; - case 'x': t1 = BLOCK_SUPERCONTEXT (t1); break; /* assume block */ + case tcc_declaration: + t1 = DECL_CONTEXT (t1); break; + case tcc_type: + t1 = TYPE_CONTEXT (t1); break; + case tcc_exceptional: + t1 = BLOCK_SUPERCONTEXT (t1); break; /* assume block */ default: gcc_unreachable (); } while (t2 && TREE_CODE (t2) != TRANSLATION_UNIT_DECL) switch (TREE_CODE_CLASS (TREE_CODE (t2))) { - case 'd': t2 = DECL_CONTEXT (t2); break; - case 't': t2 = TYPE_CONTEXT (t2); break; - case 'x': t2 = BLOCK_SUPERCONTEXT (t2); break; /* assume block */ + case tcc_declaration: + t2 = DECL_CONTEXT (t2); break; + case tcc_type: + t2 = TYPE_CONTEXT (t2); break; + case tcc_exceptional: + t2 = BLOCK_SUPERCONTEXT (t2); break; /* assume block */ default: gcc_unreachable (); } @@ -964,7 +970,7 @@ function_types_compatible_p (tree f1, tree f2) /* 'volatile' qualifiers on a function's return type used to mean the function is noreturn. */ if (TYPE_VOLATILE (ret1) != TYPE_VOLATILE (ret2)) - pedwarn ("function return types not compatible due to `volatile'"); + pedwarn ("function return types not compatible due to %"); if (TYPE_VOLATILE (ret1)) ret1 = build_qualified_type (TYPE_MAIN_VARIANT (ret1), TYPE_QUALS (ret1) & ~TYPE_QUAL_VOLATILE); @@ -1200,7 +1206,7 @@ default_function_array_conversion (tree exp) int volatilep = 0; int lvalue_array_p; - if (TREE_CODE_CLASS (TREE_CODE (exp)) == 'r' || DECL_P (exp)) + if (REFERENCE_CLASS_P (exp) || DECL_P (exp)) { constp = TREE_READONLY (exp); volatilep = TREE_THIS_VOLATILE (exp); @@ -1480,7 +1486,7 @@ build_component_ref (tree datum, tree component) if (!field) { - error ("%s has no member named `%s'", + error ("%s has no member named %qs", code == RECORD_TYPE ? "structure" : "union", IDENTIFIER_POINTER (component)); return error_mark_node; @@ -1517,7 +1523,7 @@ build_component_ref (tree datum, tree component) return ref; } else if (code != ERROR_MARK) - error ("request for member `%s' in something not a structure or union", + error ("request for member %qs in something not a structure or union", IDENTIFIER_POINTER (component)); return error_mark_node; @@ -1550,7 +1556,7 @@ build_indirect_ref (tree ptr, const char *errorstring) return error_mark_node; } if (VOID_TYPE_P (t) && skip_evaluation == 0) - warning ("dereferencing `void *' pointer"); + warning ("dereferencing % pointer"); /* We *must* set TREE_READONLY when dereferencing a pointer to const, so that we get the proper error message if the result is used @@ -1567,7 +1573,7 @@ build_indirect_ref (tree ptr, const char *errorstring) } } else if (TREE_CODE (pointer) != ERROR_MARK) - error ("invalid type argument of `%s'", errorstring); + error ("invalid type argument of %qs", errorstring); return error_mark_node; } @@ -1605,7 +1611,7 @@ build_array_ref (tree array, tree index) must have done so deliberately. */ if (warn_char_subscripts && TYPE_MAIN_VARIANT (TREE_TYPE (index)) == char_type_node) - warning ("array subscript has type `char'"); + warning ("array subscript has type %"); /* Apply default promotions *after* noticing character types. */ index = default_conversion (index); @@ -1646,7 +1652,7 @@ build_array_ref (tree array, tree index) while (TREE_CODE (foo) == COMPONENT_REF) foo = TREE_OPERAND (foo, 0); if (TREE_CODE (foo) == VAR_DECL && C_DECL_REGISTER (foo)) - pedwarn ("ISO C forbids subscripting `register' array"); + pedwarn ("ISO C forbids subscripting % array"); else if (! flag_isoc99 && ! lvalue_p (foo)) pedwarn ("ISO C90 forbids subscripting non-lvalue array"); } @@ -1681,7 +1687,7 @@ build_array_ref (tree array, tree index) if (warn_char_subscripts && TREE_CODE (TREE_TYPE (index)) == INTEGER_TYPE && TYPE_MAIN_VARIANT (TREE_TYPE (index)) == char_type_node) - warning ("subscript has type `char'"); + warning ("subscript has type %"); /* Put the integer in IND to simplify error checking. */ if (TREE_CODE (TREE_TYPE (ar)) == INTEGER_TYPE) @@ -1727,7 +1733,7 @@ build_external_ref (tree id, int fun) ref = decl; else if (decl != objc_ivar && !DECL_FILE_SCOPE_P (decl)) { - warning ("local declaration of `%s' hides instance variable", + warning ("local declaration of %qs hides instance variable", IDENTIFIER_POINTER (id)); ref = decl; } @@ -2035,7 +2041,7 @@ convert_arguments (tree typelist, tree values, tree name, tree fundecl) if (type == void_type_node) { if (name) - error ("too many arguments to function `%s'", + error ("too many arguments to function %qs", IDENTIFIER_POINTER (name)); else error ("too many arguments to function"); @@ -2097,7 +2103,9 @@ convert_arguments (tree typelist, tree values, tree name, tree fundecl) /* Warn if any argument is passed as `float', since without a prototype it would be `double'. */ if (formal_prec == TYPE_PRECISION (float_type_node)) - warn_for_assignment ("%s as `float' rather than `double' due to prototype", (char *) 0, name, parmnum + 1); + warn_for_assignment ("%s as % rather than " + "% due to prototype", + (char *) 0, name, parmnum + 1); } /* Detect integer changing in width or signedness. These warnings are only activated with @@ -2174,7 +2182,7 @@ convert_arguments (tree typelist, tree values, tree name, tree fundecl) if (typetail != 0 && TREE_VALUE (typetail) != void_type_node) { if (name) - error ("too few arguments to function `%s'", + error ("too few arguments to function %qs", IDENTIFIER_POINTER (name)); else error ("too few arguments to function"); @@ -2230,7 +2238,8 @@ parser_build_binary_op (enum tree_code code, struct c_expr arg1, || code2 == PLUS_EXPR || code2 == MINUS_EXPR) warning ("suggest parentheses around arithmetic in operand of |"); /* Check cases like x|y==z */ - if (TREE_CODE_CLASS (code1) == '<' || TREE_CODE_CLASS (code2) == '<') + if (TREE_CODE_CLASS (code1) == tcc_comparison + || TREE_CODE_CLASS (code2) == tcc_comparison) warning ("suggest parentheses around comparison in operand of |"); } @@ -2242,7 +2251,8 @@ parser_build_binary_op (enum tree_code code, struct c_expr arg1, || code2 == PLUS_EXPR || code2 == MINUS_EXPR) warning ("suggest parentheses around arithmetic in operand of ^"); /* Check cases like x^y==z */ - if (TREE_CODE_CLASS (code1) == '<' || TREE_CODE_CLASS (code2) == '<') + if (TREE_CODE_CLASS (code1) == tcc_comparison + || TREE_CODE_CLASS (code2) == tcc_comparison) warning ("suggest parentheses around comparison in operand of ^"); } @@ -2252,13 +2262,14 @@ parser_build_binary_op (enum tree_code code, struct c_expr arg1, || code2 == PLUS_EXPR || code2 == MINUS_EXPR) warning ("suggest parentheses around + or - in operand of &"); /* Check cases like x&y==z */ - if (TREE_CODE_CLASS (code1) == '<' || TREE_CODE_CLASS (code2) == '<') + if (TREE_CODE_CLASS (code1) == tcc_comparison + || TREE_CODE_CLASS (code2) == tcc_comparison) warning ("suggest parentheses around comparison in operand of &"); } /* Similarly, check for cases like 1<=i<=10 that are probably errors. */ - if (TREE_CODE_CLASS (code) == '<' - && (TREE_CODE_CLASS (code1) == '<' - || TREE_CODE_CLASS (code2) == '<')) + if (TREE_CODE_CLASS (code) == tcc_comparison + && (TREE_CODE_CLASS (code1) == tcc_comparison + || TREE_CODE_CLASS (code2) == tcc_comparison)) warning ("comparisons like X<=Y<=Z do not have their mathematical meaning"); } @@ -2285,7 +2296,7 @@ pointer_diff (tree op0, tree op1) if (pedantic || warn_pointer_arith) { if (TREE_CODE (target_type) == VOID_TYPE) - pedwarn ("pointer of type `void *' used in subtraction"); + pedwarn ("pointer of type % used in subtraction"); if (TREE_CODE (target_type) == FUNCTION_TYPE) pedwarn ("pointer to a function used in subtraction"); } @@ -2406,7 +2417,7 @@ build_unary_op (enum tree_code code, tree xarg, int flag) { code = CONJ_EXPR; if (pedantic) - pedwarn ("ISO C does not support `~' for complex conjugation"); + pedwarn ("ISO C does not support %<~%> for complex conjugation"); if (!noconvert) arg = default_conversion (arg); } @@ -2483,7 +2494,8 @@ build_unary_op (enum tree_code code, tree xarg, int flag) tree real, imag; if (pedantic) - pedwarn ("ISO C does not support `++' and `--' on complex types"); + pedwarn ("ISO C does not support %<++%> and %<--%>" + " on complex types"); arg = stabilize_reference (arg); real = build_unary_op (REALPART_EXPR, arg, 1); @@ -2591,7 +2603,7 @@ build_unary_op (enum tree_code code, tree xarg, int flag) /* Anything not already handled and not a true memory reference or a non-lvalue array is an error. */ else if (typecode != FUNCTION_TYPE && !flag - && !lvalue_or_else (arg, "invalid lvalue in unary `&'")) + && !lvalue_or_else (arg, "invalid lvalue in unary %<&%>")) return error_mark_node; /* Ordinary case; arg is a COMPONENT_REF or a decl. */ @@ -2601,7 +2613,7 @@ build_unary_op (enum tree_code code, tree xarg, int flag) to which the address will point. Note that you can't get a restricted pointer by taking the address of something, so we only have to deal with `const' and `volatile' here. */ - if ((DECL_P (arg) || TREE_CODE_CLASS (TREE_CODE (arg)) == 'r') + if ((DECL_P (arg) || REFERENCE_CLASS_P (arg)) && (TREE_READONLY (arg) || TREE_THIS_VOLATILE (arg))) argtype = c_build_type_variant (argtype, TREE_READONLY (arg), @@ -2613,12 +2625,20 @@ build_unary_op (enum tree_code code, tree xarg, int flag) if (TREE_CODE (arg) == COMPONENT_REF && DECL_C_BIT_FIELD (TREE_OPERAND (arg, 1))) { - error ("attempt to take address of bit-field structure member `%D'", + error ("attempt to take address of bit-field structure member %qD", TREE_OPERAND (arg, 1)); return error_mark_node; } argtype = build_pointer_type (argtype); + + /* ??? Cope with user tricks that amount to offsetof. Delete this + when we have proper support for integer constant expressions. */ + val = get_base_address (arg); + if (val && TREE_CODE (val) == INDIRECT_REF + && integer_zerop (TREE_OPERAND (val, 0))) + return fold_convert (argtype, fold_offsetof (arg)); + val = build1 (ADDR_EXPR, argtype, arg); if (TREE_CODE (arg) == COMPOUND_LITERAL_EXPR) @@ -2698,11 +2718,11 @@ readonly_error (tree arg, const char *msgid) if (TYPE_READONLY (TREE_TYPE (TREE_OPERAND (arg, 0)))) readonly_error (TREE_OPERAND (arg, 0), msgid); else - error ("%s of read-only member `%s'", _(msgid), + error ("%s of read-only member %qs", _(msgid), IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (arg, 1)))); } else if (TREE_CODE (arg) == VAR_DECL) - error ("%s of read-only variable `%s'", _(msgid), + error ("%s of read-only variable %qs", _(msgid), IDENTIFIER_POINTER (DECL_NAME (arg))); else error ("%s of read-only location", _(msgid)); @@ -2723,7 +2743,7 @@ c_mark_addressable (tree exp) case COMPONENT_REF: if (DECL_C_BIT_FIELD (TREE_OPERAND (x, 1))) { - error ("cannot take address of bit-field `%s'", + error ("cannot take address of bit-field %qs", IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (x, 1)))); return false; } @@ -2751,23 +2771,23 @@ c_mark_addressable (tree exp) { if (TREE_PUBLIC (x) || TREE_STATIC (x) || DECL_EXTERNAL (x)) { - error ("global register variable `%s' used in nested function", + error ("global register variable %qs used in nested function", IDENTIFIER_POINTER (DECL_NAME (x))); return false; } - pedwarn ("register variable `%s' used in nested function", + pedwarn ("register variable %qs used in nested function", IDENTIFIER_POINTER (DECL_NAME (x))); } else if (C_DECL_REGISTER (x)) { if (TREE_PUBLIC (x) || TREE_STATIC (x) || DECL_EXTERNAL (x)) { - error ("address of global register variable `%s' requested", + error ("address of global register variable %qs requested", IDENTIFIER_POINTER (DECL_NAME (x))); return false; } - pedwarn ("address of register variable `%s' requested", + pedwarn ("address of register variable %qs requested", IDENTIFIER_POINTER (DECL_NAME (x))); } @@ -2882,14 +2902,16 @@ build_conditional_expr (tree ifexp, tree op1, tree op2) else if (VOID_TYPE_P (TREE_TYPE (type1))) { if (pedantic && TREE_CODE (TREE_TYPE (type2)) == FUNCTION_TYPE) - pedwarn ("ISO C forbids conditional expr between `void *' and function pointer"); + pedwarn ("ISO C forbids conditional expr between " + "% and function pointer"); result_type = build_pointer_type (qualify_type (TREE_TYPE (type1), TREE_TYPE (type2))); } else if (VOID_TYPE_P (TREE_TYPE (type2))) { if (pedantic && TREE_CODE (TREE_TYPE (type1)) == FUNCTION_TYPE) - pedwarn ("ISO C forbids conditional expr between `void *' and function pointer"); + pedwarn ("ISO C forbids conditional expr between " + "% and function pointer"); result_type = build_pointer_type (qualify_type (TREE_TYPE (type2), TREE_TYPE (type1))); } @@ -3195,7 +3217,7 @@ build_c_cast (tree type, tree expr) else TREE_OVERFLOW (value) = 0; - if (TREE_CODE_CLASS (TREE_CODE (ovalue)) == 'c') + if (CONSTANT_CLASS_P (ovalue)) /* Similarly, constant_overflow cannot have become cleared. */ TREE_CONSTANT_OVERFLOW (value) = TREE_CONSTANT_OVERFLOW (ovalue); @@ -3544,7 +3566,8 @@ convert_for_assignment (tree type, tree rhs, const char *errtype, which are not ANSI null ptr constants. */ && (!integer_zerop (rhs) || TREE_CODE (rhs) == NOP_EXPR) && TREE_CODE (ttl) == FUNCTION_TYPE))) - warn_for_assignment ("ISO C forbids %s between function pointer and `void *'", + warn_for_assignment ("ISO C forbids %s between function " + "pointer and %", errtype, funname, parmnum); /* Const and volatile mean something different for function types, so the usual warnings are not appropriate. */ @@ -3618,10 +3641,10 @@ convert_for_assignment (tree type, tree rhs, const char *errtype, tree selector = objc_message_selector (); if (selector && parmnum > 2) - error ("incompatible type for argument %d of `%s'", + error ("incompatible type for argument %d of %qs", parmnum - 2, IDENTIFIER_POINTER (selector)); else - error ("incompatible type for argument %d of `%s'", + error ("incompatible type for argument %d of %qs", parmnum, IDENTIFIER_POINTER (funname)); } else @@ -3685,7 +3708,7 @@ warn_for_assignment (const char *msgid, const char *opname, tree function, if (function) { /* Function name is known; supply it. */ - const char *const argstring = _("passing arg of `%s'"); + const char *const argstring = _("passing arg of '%s'"); new_opname = (char *) alloca (IDENTIFIER_LENGTH (function) + strlen (argstring) + 1 + 1); sprintf (new_opname, argstring, @@ -3702,7 +3725,7 @@ warn_for_assignment (const char *msgid, const char *opname, tree function, else if (function) { /* Function name is known; supply it. */ - const char *const argstring = _("passing arg %d of `%s'"); + const char *const argstring = _("passing arg %d of '%s'"); new_opname = (char *) alloca (IDENTIFIER_LENGTH (function) + strlen (argstring) + 1 + 25 /*%d*/ + 1); sprintf (new_opname, argstring, argnum, @@ -3935,7 +3958,7 @@ error_init (const char *msgid) error ("%s", _(msgid)); ofwhat = print_spelling ((char *) alloca (spelling_length () + 1)); if (*ofwhat) - error ("(near initialization for `%s')", ofwhat); + error ("(near initialization for %qs)", ofwhat); } /* Issue a pedantic warning for a bad initializer component. @@ -3950,7 +3973,7 @@ pedwarn_init (const char *msgid) pedwarn ("%s", _(msgid)); ofwhat = print_spelling ((char *) alloca (spelling_length () + 1)); if (*ofwhat) - pedwarn ("(near initialization for `%s')", ofwhat); + pedwarn ("(near initialization for %qs)", ofwhat); } /* Issue a warning for a bad initializer component. @@ -3965,7 +3988,7 @@ warning_init (const char *msgid) warning ("%s", _(msgid)); ofwhat = print_spelling ((char *) alloca (spelling_length () + 1)); if (*ofwhat) - warning ("(near initialization for `%s')", ofwhat); + warning ("(near initialization for %qs)", ofwhat); } /* If TYPE is an array type and EXPR is a parenthesized string @@ -5136,7 +5159,7 @@ set_init_label (tree fieldname) } if (tail == 0) - error ("unknown field `%s' specified in initializer", + error ("unknown field %qs specified in initializer", IDENTIFIER_POINTER (fieldname)); else { @@ -6305,7 +6328,7 @@ tree c_finish_goto_ptr (tree expr) { if (pedantic) - pedwarn ("ISO C forbids `goto *expr;'"); + pedwarn ("ISO C forbids %"); expr = convert (ptr_type_node, expr); return add_stmt (build1 (GOTO_EXPR, void_type_node, expr)); } @@ -6319,20 +6342,21 @@ c_finish_return (tree retval) tree valtype = TREE_TYPE (TREE_TYPE (current_function_decl)); if (TREE_THIS_VOLATILE (current_function_decl)) - warning ("function declared `noreturn' has a `return' statement"); + warning ("function declared % has a % statement"); if (!retval) { current_function_returns_null = 1; if ((warn_return_type || flag_isoc99) && valtype != 0 && TREE_CODE (valtype) != VOID_TYPE) - pedwarn_c99 ("`return' with no value, in function returning non-void"); + pedwarn_c99 ("% with no value, in " + "function returning non-void"); } else if (valtype == 0 || TREE_CODE (valtype) == VOID_TYPE) { current_function_returns_null = 1; if (pedantic || TREE_CODE (TREE_TYPE (retval)) != VOID_TYPE) - pedwarn ("`return' with a value, in function returning void"); + pedwarn ("% with a value, in function returning void"); } else { @@ -6381,7 +6405,7 @@ c_finish_return (tree retval) case ADDR_EXPR: inner = TREE_OPERAND (inner, 0); - while (TREE_CODE_CLASS (TREE_CODE (inner)) == 'r' + while (REFERENCE_CLASS_P (inner) && TREE_CODE (inner) != INDIRECT_REF) inner = TREE_OPERAND (inner, 0); @@ -6409,7 +6433,7 @@ struct c_switch { /* The SWITCH_STMT being built. */ tree switch_stmt; - /* The original type of the testing expression, ie. before the + /* The original type of the testing expression, i.e. before the default conversion is applied. */ tree orig_type; @@ -6460,7 +6484,8 @@ c_start_case (tree exp) if (warn_traditional && !in_system_header && (type == long_integer_type_node || type == long_unsigned_type_node)) - warning ("`long' switch expression not converted to `int' in ISO C"); + warning ("% switch expression not converted to " + "% in ISO C"); exp = default_conversion (exp); type = TREE_TYPE (exp); @@ -6498,7 +6523,7 @@ do_case (tree low_value, tree high_value) else if (low_value) error ("case label not within a switch statement"); else - error ("`default' label not within a switch statement"); + error ("% label not within a switch statement"); return label; } @@ -6562,7 +6587,7 @@ c_finish_if_stmt (location_t if_locus, tree cond, tree then_block, found: if (COND_EXPR_ELSE (inner_if)) - warning ("%Hsuggest explicit braces to avoid ambiguous `else'", + warning ("%Hsuggest explicit braces to avoid ambiguous %", &if_locus); } @@ -6728,7 +6753,7 @@ c_process_expr_stmt (tree expr) /* If the expression is not of a type to which we cannot assign a line number, wrap the thing in a no-op NOP_EXPR. */ - if (DECL_P (expr) || TREE_CODE_CLASS (TREE_CODE (expr)) == 'c') + if (DECL_P (expr) || CONSTANT_CLASS_P (expr)) expr = build1 (NOP_EXPR, TREE_TYPE (expr), expr); if (EXPR_P (expr)) @@ -7219,13 +7244,15 @@ build_binary_op (enum tree_code code, tree orig_op0, tree orig_op1, whose value is 0 but which isn't a valid null ptr const. */ if (pedantic && (!integer_zerop (op0) || op0 != orig_op0) && TREE_CODE (tt1) == FUNCTION_TYPE) - pedwarn ("ISO C forbids comparison of `void *' with function pointer"); + pedwarn ("ISO C forbids comparison of %" + " with function pointer"); } else if (VOID_TYPE_P (tt1)) { if (pedantic && (!integer_zerop (op1) || op1 != orig_op1) && TREE_CODE (tt0) == FUNCTION_TYPE) - pedwarn ("ISO C forbids comparison of `void *' with function pointer"); + pedwarn ("ISO C forbids comparison of %" + " with function pointer"); } else pedwarn ("comparison of distinct pointer types lacks a cast"); diff --git a/gcc/cfg.c b/gcc/cfg.c index 32daba24088..d2a65e047f9 100644 --- a/gcc/cfg.c +++ b/gcc/cfg.c @@ -252,7 +252,11 @@ expunge_block (basic_block b) unlink_block (b); BASIC_BLOCK (b->index) = NULL; n_basic_blocks--; - ggc_free (b); + /* We should be able to ggc_free here, but we are not. + The dead SSA_NAMES are left pointing to dead statements that are pointing + to dead basic blocks making garbage collector to die. + We should be able to release all dead SSA_NAMES and at the same time we should + clear out BB pointer of dead statements consistently. */ } /* Create an edge connecting SRC and DEST with flags FLAGS. Return newly diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c index 90e666fd8ef..ac4100c846c 100644 --- a/gcc/cfgexpand.c +++ b/gcc/cfgexpand.c @@ -670,12 +670,8 @@ expand_used_vars_for_block (tree block, bool toplevel) resize_stack_vars_conflict (new_sv_num); for (i = old_sv_num; i < new_sv_num; ++i) - for (j = i < this_sv_num ? i : this_sv_num; ; --j) - { - add_stack_var_conflict (i, j); - if (j == old_sv_num) - break; - } + for (j = i < this_sv_num ? i+1 : this_sv_num; j-- > old_sv_num ;) + add_stack_var_conflict (i, j); } } @@ -1083,13 +1079,21 @@ static basic_block construct_init_block (void) { basic_block init_block, first_block; - edge e; + edge e = NULL, e2; edge_iterator ei; - FOR_EACH_EDGE (e, ei, ENTRY_BLOCK_PTR->succs) + FOR_EACH_EDGE (e2, ei, ENTRY_BLOCK_PTR->succs) { - if (e->dest == ENTRY_BLOCK_PTR->next_bb) - break; + /* Clear EDGE_EXECUTABLE. This flag is never used in the backend. + + For all other blocks this edge flag is cleared while expanding + a basic block in expand_gimple_basic_block, but there we never + looked at the successors of the entry block. + This caused PR17513. */ + e2->flags &= ~EDGE_EXECUTABLE; + + if (e2->dest == ENTRY_BLOCK_PTR->next_bb) + e = e2; } init_block = create_basic_block (NEXT_INSN (get_insns ()), diff --git a/gcc/cfgloop.h b/gcc/cfgloop.h index 762c1ff2934..cfa8e100078 100644 --- a/gcc/cfgloop.h +++ b/gcc/cfgloop.h @@ -308,6 +308,8 @@ extern bool can_duplicate_loop_p (struct loop *loop); #define DLTHE_FLAG_UPDATE_FREQ 1 /* Update frequencies in duplicate_loop_to_header_edge. */ +extern struct loop * duplicate_loop (struct loops *, struct loop *, + struct loop *); extern int duplicate_loop_to_header_edge (struct loop *, edge, struct loops *, unsigned, sbitmap, edge, edge *, unsigned *, int); @@ -410,6 +412,7 @@ extern void iv_analysis_loop_init (struct loop *); extern rtx iv_get_reaching_def (rtx, rtx); extern bool iv_analyze (rtx, rtx, struct rtx_iv *); extern rtx get_iv_value (struct rtx_iv *, rtx); +extern bool biv_p (rtx, rtx); extern void find_simple_exit (struct loop *, struct niter_desc *); extern void iv_number_of_iterations (struct loop *, rtx, rtx, struct niter_desc *); @@ -458,4 +461,11 @@ extern void unroll_and_peel_loops (struct loops *, int); extern void doloop_optimize_loops (struct loops *); extern void move_loop_invariants (struct loops *); +/* Old loop optimizer interface. */ + +/* Flags passed to loop_optimize. */ +#define LOOP_PREFETCH 1 + +extern void loop_optimize (rtx, FILE *, int); + #endif /* GCC_CFGLOOP_H */ diff --git a/gcc/cfgloopmanip.c b/gcc/cfgloopmanip.c index d1bd66af617..47ea7a4984b 100644 --- a/gcc/cfgloopmanip.c +++ b/gcc/cfgloopmanip.c @@ -29,8 +29,6 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "cfglayout.h" #include "output.h" -static struct loop * duplicate_loop (struct loops *, struct loop *, - struct loop *); static void duplicate_subloops (struct loops *, struct loop *, struct loop *); static void copy_loops_to (struct loops *, struct loop **, int, struct loop *); @@ -718,7 +716,7 @@ place_new_loop (struct loops *loops, struct loop *loop) /* Copies copy of LOOP as subloop of TARGET loop, placing newly created loop into LOOPS structure. */ -static struct loop * +struct loop * duplicate_loop (struct loops *loops, struct loop *loop, struct loop *target) { struct loop *cloop; @@ -1008,6 +1006,9 @@ duplicate_loop_to_header_edge (struct loop *loop, edge e, struct loops *loops, /* Copy bbs. */ copy_bbs (bbs, n, new_bbs, spec_edges, 2, new_spec_edges, loop); + for (i = 0; i < n; i++) + new_bbs[i]->rbi->copy_number = j + 1; + /* Note whether the blocks and edges belong to an irreducible loop. */ if (add_irreducible_flag) { @@ -1089,6 +1090,8 @@ duplicate_loop_to_header_edge (struct loop *loop, edge e, struct loops *loops, int n_dom_bbs,j; bb = bbs[i]; + bb->rbi->copy_number = 0; + n_dom_bbs = get_dominated_by (CDI_DOMINATORS, bb, &dom_bbs); for (j = 0; j < n_dom_bbs; j++) { diff --git a/gcc/cgraph.c b/gcc/cgraph.c index 6c93ac5f173..f8f0b7cd52a 100644 --- a/gcc/cgraph.c +++ b/gcc/cgraph.c @@ -474,6 +474,12 @@ dump_cgraph_node (FILE *f, struct cgraph_node *node) if (node->local.local) fprintf (f, " local"); + if (node->local.external) + fprintf (f, " external"); + if (node->local.calls_read_all) + fprintf (f, " calls_read_all"); + if (node->local.calls_write_all) + fprintf (f, " calls_write_all"); if (node->local.disregard_inline_limits) fprintf (f, " always_inline"); else if (node->local.inlinable) diff --git a/gcc/cgraph.h b/gcc/cgraph.h index 0c86b76962f..ca355fec94b 100644 --- a/gcc/cgraph.h +++ b/gcc/cgraph.h @@ -22,6 +22,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #ifndef GCC_CGRAPH_H #define GCC_CGRAPH_H #include "hashtab.h" +#include "bitmap.h" +#include "tree.h" /* Information about the function collected locally. Available after function is analyzed. */ @@ -30,19 +32,37 @@ struct cgraph_local_info GTY(()) { /* Size of the function before inlining. */ int self_insns; + /* Set when function function is visible in current compilation unit only and it's address is never taken. */ bool local; + + /* Set when function is defined in another compilation unit. */ + bool external; + + /* Set when this function calls a function external of the + compilation unit. In general, such calls are modeled as reading + and writing all variables (both bits on) but sometime there are + attributes on the called function so we can do better. */ + bool calls_read_all; + bool calls_write_all; + /* Set once it has been finalized so we consider it to be output. */ bool finalized; /* False when there something makes inlining impossible (such as va_arg). */ bool inlinable; + /* True when function should be inlined independently on it's size. */ bool disregard_inline_limits; + /* True when the function has been originally extern inline, but it is redefined now. */ bool redefined_extern_inline; + + /* True if statics_read_for_function and + statics_written_for_function contain valid data. */ + bool for_functions_valid; }; /* Information about the function that needs to be computed globally @@ -70,6 +90,69 @@ struct cgraph_rtl_info GTY(()) bool pure_function; }; +/* FIXME -- PROFILE-RESTRUCTURE: When the next round of the profiling + code gets merged in, it will contain a restructing where ssa form + is built for every function within the compilation unit before the + rest of the compilation continues. When this reorgination is done, + it will no longer be necessary to have the _decl_uid versions of + local_static_vars_info and global_static_vars_info structures. + Having both structures is now required because the _ann_uid values + for static variables are reset as each function is compiled. + Currently, the analysis is done using the _decl_uid versions and + converted to the _var_ann versions on demand. + + Also, the var_anns_valid fields within these structures can also go + away. +*/ + +/* The static variables defined within the compilation unit that are + loaded or stored directly by function that owns this structure. */ + +struct local_static_vars_info_d GTY(()) +{ + bitmap statics_read_by_decl_uid; + bitmap statics_written_by_decl_uid; +}; + +struct global_static_vars_info_d GTY(()) +{ + bitmap statics_read_by_decl_uid; + bitmap statics_written_by_decl_uid; + bitmap statics_read_by_ann_uid; + bitmap statics_written_by_ann_uid; + bitmap statics_not_read_by_decl_uid; + bitmap statics_not_written_by_decl_uid; + bitmap statics_not_read_by_ann_uid; + bitmap statics_not_written_by_ann_uid; + + /* var_anns_valid is reset at the start of compilation for each + function because the indexing that the "_var_anns" is based + on is invalidated between function compilations. This allows for + lazy creation of the "_var_ann" variables. */ + bool var_anns_valid; +}; + +/* Statics that are read and written by some set of functions. The + local ones are based on the loads and stores local to the function. + The global ones are based on the local info as well as the + transitive closure of the functions that are called. The + structures are separated to allow the global structures to be + shared between several functions since every function within a + strongly connected component will have the same information. This + sharing saves both time and space in the computation of the vectors + as well as their translation from decl_uid form to ann_uid + form. */ + +typedef struct local_static_vars_info_d *local_static_vars_info_t; +typedef struct global_static_vars_info_d *global_static_vars_info_t; + +struct static_vars_info_d GTY(()) +{ + local_static_vars_info_t local; + global_static_vars_info_t global; +}; + +typedef struct static_vars_info_d *static_vars_info_t; /* The cgraph data structure. Each function decl has assigned cgraph_node listing callees and callers. */ @@ -91,11 +174,18 @@ struct cgraph_node GTY((chain_next ("%h.next"), chain_prev ("%h.previous"))) struct cgraph_node *next_needed; /* Pointer to the next clone. */ struct cgraph_node *next_clone; + /* Pointer to next node in a recursive call graph cycle; */ + struct cgraph_node *next_cycle; PTR GTY ((skip)) aux; struct cgraph_local_info local; struct cgraph_global_info global; struct cgraph_rtl_info rtl; + + /* Pointer to the structure that contains the sets of global + variables modified by function calls. */ + static_vars_info_t static_vars_info; + /* Unique id of the node. */ int uid; /* Set when function must be output - it is externally visible @@ -147,7 +237,6 @@ extern GTY(()) int cgraph_n_nodes; extern GTY(()) int cgraph_max_uid; extern bool cgraph_global_info_ready; extern GTY(()) struct cgraph_node *cgraph_nodes_queue; -extern FILE *cgraph_dump_file; extern GTY(()) int cgraph_varpool_n_nodes; extern GTY(()) struct cgraph_varpool_node *cgraph_varpool_nodes_queue; @@ -193,5 +282,9 @@ void verify_cgraph_node (struct cgraph_node *); void cgraph_mark_inline_edge (struct cgraph_edge *e); void cgraph_clone_inlined_nodes (struct cgraph_edge *e, bool duplicate); void cgraph_build_static_cdtor (char which, tree body, int priority); +void cgraph_reset_static_var_maps (void); +bitmap get_global_statics_not_read (tree fn); +bitmap get_global_statics_not_written(tree fn); +void init_cgraph (void); #endif /* GCC_CGRAPH_H */ diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c index d0048a83731..e4348ca8b83 100644 --- a/gcc/cgraphunit.c +++ b/gcc/cgraphunit.c @@ -142,7 +142,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA ??? Move this to separate file after tree-ssa merge. We separate inlining decisions from the inliner itself and store it - inside callgraph as so called inline plan. Reffer to cgraph.c + inside callgraph as so called inline plan. Refer to cgraph.c documentation about particular representation of inline plans in the callgraph @@ -163,12 +163,27 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA cgraph_decide_inlining implements heuristics taking whole callgraph into account, while cgraph_decide_inlining_incrementally considers only one function at a time and is used in non-unit-at-a-time mode. */ + + +/* Additionally this file gathers information about how local statics + are used. This is done in cgraph_characterize_statics. After the + call graph has been built, each function is analyzed to determine + which local static variables are either read or written or have + their address taken. Any local static that has its address taken + is removed from consideration. Once the local read and writes + are determined, a transitive closure of this information is + performed over the call graph to determine the worst case set of + side effects of each call. In a later part of the compiler, these + local and global sets are examined to make the call clobbering less + traumatic both with respect to aliasing and to code generation. */ + #include "config.h" #include "system.h" #include "coretypes.h" #include "tm.h" #include "tree.h" #include "rtl.h" +#include "tree-flow.h" #include "tree-inline.h" #include "langhooks.h" #include "hashtab.h" @@ -185,6 +200,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "c-common.h" #include "intl.h" #include "function.h" +#include "tree-gimple.h" #define INSNS_PER_CALL 10 @@ -192,7 +208,7 @@ static void cgraph_expand_all_functions (void); static void cgraph_mark_functions_to_output (void); static void cgraph_expand_function (struct cgraph_node *); static tree record_call_1 (tree *, int *, void *); -static void cgraph_mark_local_functions (void); +static void cgraph_mark_local_and_external_functions (void); static bool cgraph_default_inline_p (struct cgraph_node *n); static void cgraph_analyze_function (struct cgraph_node *node); static void cgraph_decide_inlining_incrementally (struct cgraph_node *); @@ -209,6 +225,36 @@ static int overall_insns; record_calls_1. */ static htab_t visited_nodes; +static FILE *cgraph_dump_file; + +/* These splay trees contain all of the static variables that are + being considered by the compilation level alias analysis. For + module_at_a_time compilation, this is the set of static but not + public variables. Any variables that either have their address + taken or participate in otherwise unsavory operations are deleted + from this list. */ +static GTY((param1_is(tree), param2_is(tree))) + splay_tree static_vars_to_consider_by_tree; + +/* FIXME -- PROFILE-RESTRUCTURE: change comment from DECL_UID to var-ann. */ +/* same as above but indexed by DECL_UID */ +static GTY((param1_is(int), param2_is(tree))) + splay_tree static_vars_to_consider_by_uid; + +/* This bitmap is used to knock out the module static variables whose + addresses have been taken and passed around. This is indexed by + uid. */ +static bitmap module_statics_escape; + +/* FIXME -- PROFILE-RESTRUCTURE: change comment from DECL_UID to var-ann. */ +/* A bit is set for every module static we are considering and is + indexed by DECL_UID. This is ored into the local info when asm + code is found that clobbers all memory. */ +static GTY(()) bitmap all_module_statics; + +/* Holds the value of "memory". */ +static tree memory_identifier; + /* Determine if function DECL is needed. That is, visible to something either outside this translation unit, something magic in the system configury, or (if not doing unit-at-a-time) to something we havn't @@ -274,6 +320,189 @@ decide_is_function_needed (struct cgraph_node *node, tree decl) return false; } +/* Debugging function for postorder and inorder code. NOTE is a string + that is printed before the nodes are printed. ORDER is an array of + cgraph_nodes that has COUNT useful nodes in it. */ + +static void +print_order (const char * note, struct cgraph_node** order, int count) +{ + int i; + fprintf (cgraph_dump_file, "\n\n ordered call graph: %s\n", note); + + for (i = count - 1; i >= 0; i--) + { + struct cgraph_edge *edge; + + fprintf (cgraph_dump_file, "\n %s<-(", cgraph_node_name (order[i])); + + for (edge = order[i]->callers; edge; edge = edge->next_caller) + fprintf (cgraph_dump_file, " %s", cgraph_node_name (edge->caller)); + fprintf (cgraph_dump_file, ")"); + } + fprintf (cgraph_dump_file, "\n"); +} + +/* FIXME -- PROFILE-RESTRUCTURE: Remove this function, it becomes a nop. */ +/* Convert IN_DECL bitmap which is indexed by DECL_UID to IN_ANN, a + bitmap indexed by var_ann (VAR_DECL)->uid. */ + +static void +convert_UIDs_in_bitmap (bitmap in_ann, bitmap in_decl) +{ + int index; + EXECUTE_IF_SET_IN_BITMAP(in_decl, 0, index, + { + splay_tree_node n = + splay_tree_lookup (static_vars_to_consider_by_uid, index); + if (n != NULL) + { + tree t = (tree)n->value; + var_ann_t va = var_ann (t); + if (va) + bitmap_set_bit(in_ann, va->uid); + } + }); +} + +/* FIXME -- PROFILE-RESTRUCTURE: Delete all stmts initing *_decl_uid + variables. Add code to create a var_ann for tree node within the + cgraph_node and have it point to the newly created + static_vars_info. */ +/* Create a new static_vars_info structure and place it into + cgraph_node, NODE. INIT_GLOBAL causes the global part of the + structure to be initialized. */ +static static_vars_info_t +new_static_vars_info(struct cgraph_node* node, + bool init_global) +{ + static_vars_info_t info = ggc_calloc (1, sizeof (struct static_vars_info_d)); + local_static_vars_info_t l + = ggc_calloc (1, sizeof (struct local_static_vars_info_d)); + + /* Add the info to the tree's annotation. */ + var_ann_t var_ann = get_var_ann(node->decl); + node->static_vars_info = info; + var_ann->static_vars_info = info; + + info->local = l; + l->statics_read_by_decl_uid = BITMAP_GGC_ALLOC (); + l->statics_written_by_decl_uid = BITMAP_GGC_ALLOC (); + + if (init_global) + { + global_static_vars_info_t g + = ggc_calloc (1, sizeof (struct global_static_vars_info_d)); + info->global = g; + g->statics_read_by_decl_uid = BITMAP_GGC_ALLOC (); + g->statics_written_by_decl_uid = BITMAP_GGC_ALLOC (); + g->statics_read_by_ann_uid = BITMAP_GGC_ALLOC (); + g->statics_written_by_ann_uid = BITMAP_GGC_ALLOC (); + g->statics_not_read_by_decl_uid = BITMAP_GGC_ALLOC (); + g->statics_not_written_by_decl_uid = BITMAP_GGC_ALLOC (); + g->statics_not_read_by_ann_uid = BITMAP_GGC_ALLOC (); + g->statics_not_written_by_ann_uid = BITMAP_GGC_ALLOC (); + } + return info; +} + + +/* FIXME -- PROFILE-RESTRUCTURE: Remove this function, it becomes a + nop. */ +/* The bitmaps used to represent the static global variables are + indexed by DECL_UID however, this is not used inside of functions + to index the ssa variables. The denser var_ann (VAR_DECL)->uid is + used there. This function is called from + tree_dfa:find_referenced_vars after the denser representation is + built. This function invalidates any cached indexes. */ + +void +cgraph_reset_static_var_maps (void) +{ + struct cgraph_node *node; + + for (node = cgraph_nodes; node; node = node->next) + { + static_vars_info_t info = node->static_vars_info; + if (info) + { + global_static_vars_info_t g = info->global; + if (g->var_anns_valid) + { + bitmap_clear (g->statics_read_by_ann_uid); + bitmap_clear (g->statics_written_by_ann_uid); + bitmap_clear (g->statics_not_read_by_ann_uid); + bitmap_clear (g->statics_not_written_by_ann_uid); + g->var_anns_valid = false; + } + } + else + /* Handle the case where a cgraph node has been inserted + after the analysis. We know nothing. */ + new_static_vars_info(node, true); + } +} + +/* Get the global static_vars_info structure for the function FN and + make sure the ann_uid's bitmaps are properly converted. */ + +static global_static_vars_info_t +get_global_static_vars_info (tree fn) +{ + global_static_vars_info_t g; + + /* Was not compiled -O2 or higher. */ + static_vars_info_t info = get_var_ann(fn)->static_vars_info; + if (!info) + return NULL; + + g = info->global; + if (!g->var_anns_valid) + { + convert_UIDs_in_bitmap (g->statics_read_by_ann_uid, + g->statics_read_by_decl_uid); + convert_UIDs_in_bitmap (g->statics_written_by_ann_uid, + g->statics_written_by_decl_uid); + convert_UIDs_in_bitmap (g->statics_not_read_by_ann_uid, + g->statics_not_read_by_decl_uid); + convert_UIDs_in_bitmap (g->statics_not_written_by_ann_uid, + g->statics_not_written_by_decl_uid); + g->var_anns_valid = true; + } + return g; +} + +/* Return a bitmap indexed by var_ann (VAR_DECL)->uid for the static + variables that are not read during the execution of the function + FN. Returns NULL if no data is available, such as it was not + compiled with -O2 or higher. */ + +bitmap +get_global_statics_not_read (tree fn) +{ + global_static_vars_info_t g = get_global_static_vars_info (fn); + if (g) + return g->statics_not_read_by_ann_uid; + else + return NULL; +} + +/* Return a bitmap indexed by var_ann (VAR_DECL)->uid for the static + variables that are not written during the execution of the function + FN. Note that variables written may or may not be read during the + function call. Returns NULL if no data is available, such as it + was not compiled with -O2 or higher. */ + +bitmap +get_global_statics_not_written (tree fn) +{ + global_static_vars_info_t g = get_global_static_vars_info (fn); + if (g) + return g->statics_not_written_by_ann_uid; + else + return NULL; +} + /* When not doing unit-at-a-time, output all functions enqueued. Return true when such a functions were found. */ @@ -442,7 +671,7 @@ record_call_1 (tree *tp, int *walk_subtrees, void *data) default: /* Save some cycles by not walking types and declaration as we won't find anything useful there anyway. */ - if (DECL_P (*tp) || TYPE_P (*tp)) + if (IS_TYPE_OR_DECL_P (*tp)) { *walk_subtrees = 0; break; @@ -511,7 +740,7 @@ verify_cgraph_node_1 (tree *tp, int *walk_subtrees, void *data) /* Save some cycles by not walking types and declaration as we won't find anything useful there anyway. */ - if (DECL_P (*tp) || TYPE_P (*tp)) + if (IS_TYPE_OR_DECL_P (*tp)) *walk_subtrees = 0; return NULL_TREE; @@ -820,7 +1049,7 @@ cgraph_expand_function (struct cgraph_node *node) DECL_SAVED_TREE (node->decl) = NULL; DECL_STRUCT_FUNCTION (node->decl) = NULL; DECL_INITIAL (node->decl) = error_mark_node; - /* Elliminate all call edges. This is important so the call_expr no longer + /* Eliminate all call edges. This is important so the call_expr no longer points to the dead function body. */ while (node->callees) cgraph_remove_edge (node->callees); @@ -889,6 +1118,150 @@ cgraph_postorder (struct cgraph_node **order) return order_pos; } +struct searchc_env { + struct cgraph_node **stack; + int stack_size; + struct cgraph_node **result; + int order_pos; + splay_tree nodes_marked_new; + bool reduce; + int count; +}; + +struct dfs_info { + int dfn_number; + int low_link; + bool new; + bool on_stack; +}; + +/* This is an implementation of Tarjan's strongly connected region + finder as reprinted in Aho Hopcraft and Ullman's The Design and + Analysis of Computer Programs (1975) pages 192-193. This version + has been customized for cgraph_nodes. The env parameter is because + it is recursive and there are no nested functions here. This + function should only be called from itself or + cgraph_reduced_inorder. ENV is a stack env and would be + unnecessary if C had nested functions. V is the node to start + searching from. */ + +static void +searchc (struct searchc_env* env, struct cgraph_node *v) +{ + struct cgraph_edge *edge; + struct dfs_info *v_info = v->aux; + + /* mark node as old */ + v_info->new = false; + splay_tree_remove (env->nodes_marked_new, v->uid); + + v_info->dfn_number = env->count; + v_info->low_link = env->count; + env->count++; + env->stack[(env->stack_size)++] = v; + v_info->on_stack = true; + + for (edge = v->callers; edge; edge = edge->next_caller) + { + struct dfs_info * w_info; + struct cgraph_node *w = edge->caller; + /* skip the nodes that we are supposed to ignore */ + if (w->aux) + { + w_info = w->aux; + if (w_info->new) + { + searchc (env, w); + v_info->low_link = + (v_info->low_link < w_info->low_link) ? + v_info->low_link : w_info->low_link; + } + else + if ((w_info->dfn_number < v_info->dfn_number) + && (w_info->on_stack)) + v_info->low_link = + (w_info->dfn_number < v_info->low_link) ? + w_info->dfn_number : v_info->low_link; + } + } + + + if (v_info->low_link == v_info->dfn_number) + { + struct cgraph_node *last = NULL; + struct cgraph_node *x; + struct dfs_info *x_info; + do { + x = env->stack[--(env->stack_size)]; + x_info = x->aux; + x_info->on_stack = false; + + if (env->reduce) + { + x->next_cycle = last; + last = x; + } + else + env->result[env->order_pos++] = x; + } + while (v != x); + if (env->reduce) + env->result[env->order_pos++] = v; + } +} + +/* Topsort the call graph by caller relation. Put the result in ORDER. + + The REDUCE flag is true if you want the cycles reduced to single + nodes. Only consider nodes that have the output bit set. */ + +static int +cgraph_reduced_inorder (struct cgraph_node **order, bool reduce) +{ + struct cgraph_node *node; + struct searchc_env env; + splay_tree_node result; + env.stack = xcalloc (cgraph_n_nodes, sizeof (struct cgraph_node *)); + env.stack_size = 0; + env.result = order; + env.order_pos = 0; + env.nodes_marked_new = splay_tree_new (splay_tree_compare_ints, 0, 0); + env.count = 1; + env.reduce = reduce; + + for (node = cgraph_nodes; node; node = node->next) + if (node->output) + { + struct dfs_info *info = xcalloc (1, sizeof (struct dfs_info)); + info->new = true; + info->on_stack = false; + node->aux = info; + node->next_cycle = NULL; + + splay_tree_insert (env.nodes_marked_new, + node->uid, (splay_tree_value)node); + } + else + node->aux = NULL; + result = splay_tree_min (env.nodes_marked_new); + while (result) + { + node = (struct cgraph_node *)result->value; + searchc (&env, node); + result = splay_tree_min (env.nodes_marked_new); + } + splay_tree_delete (env.nodes_marked_new); + free (env.stack); + + for (node = cgraph_nodes; node; node = node->next) + if (node->aux) + { + free (node->aux); + node->aux = NULL; + } + return env.order_pos; +} + /* 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. */ @@ -1637,6 +2010,664 @@ cgraph_inline_p (struct cgraph_edge *e, const char **reason) return !e->inline_failed; } +/* FIXME this needs to be enhanced. If we are compiling a single + module this returns true if the variable is a module level static, + but if we are doing whole program compilation, this could return + true if TREE_PUBLIC is true. */ +/* Return true if the variable T is the right kind of static variable to + perform compilation unit scope escape analysis. */ + +static inline +bool has_proper_scope_for_analysis (tree t) +{ + return (TREE_STATIC(t)) && !(TREE_PUBLIC(t)) && !(TREE_THIS_VOLATILE(t)); +} + +/* Check to see if T is a read or address of operation on a static var + we are interested in analyzing. FN is passed in to get access to + its bit vectors. */ + +static void +check_rhs_var (struct cgraph_node *fn, tree t) +{ + if (TREE_CODE (t) == ADDR_EXPR) + { + tree x = TREE_OPERAND (t, 0); + if ((TREE_CODE (x) == VAR_DECL) && has_proper_scope_for_analysis (x)) + { + if (cgraph_dump_file) + fprintf (cgraph_dump_file, "\nadding address:%s", + lang_hooks.decl_printable_name (x, 2)); + + /* FIXME -- PROFILE-RESTRUCTURE: Change the call from + DECL_UID to get the uid from the var_ann field. */ + bitmap_set_bit (module_statics_escape, DECL_UID (x)); + } + } + t = get_base_address (t); + if (!t) return; + if ((TREE_CODE (t) == VAR_DECL) && has_proper_scope_for_analysis (t)) + { + if (cgraph_dump_file) + fprintf (cgraph_dump_file, "\nadding rhs:%s", + lang_hooks.decl_printable_name (t, 2)); + /* FIXME -- PROFILE-RESTRUCTURE: Change the call from + DECL_UID to get the uid from the var_ann field. */ + bitmap_set_bit (fn->static_vars_info->local->statics_read_by_decl_uid, + DECL_UID (t)); + } +} + +/* Check to see if T is an assignment to a static var we are + interrested in analyzing. FN is passed in to get access to its bit + vectors. +*/ + +static void +check_lhs_var (struct cgraph_node *fn, tree t) +{ + t = get_base_address (t); + if (!t) return; + if ((TREE_CODE (t) == VAR_DECL) && has_proper_scope_for_analysis (t)) + { + if (cgraph_dump_file) + fprintf (cgraph_dump_file, "\nadding lhs:%s", + lang_hooks.decl_printable_name (t, 2)); + + /* FIXME -- PROFILE-RESTRUCTURE: Change the call from + DECL_UID to get the uid from the var_ann field. */ + bitmap_set_bit (fn->static_vars_info->local->statics_written_by_decl_uid, + DECL_UID (t)); + } +} + +/* This is a scaled down version of get_asm_expr_operands from + tree_ssa_operands.c. The version there runs much later and assumes + that aliasing information is already available. Here we are just + trying to find if the set of inputs and outputs contain references + or address of operations to local static variables. FN is the + function being analyzed and STMT is the actual asm statement. */ + +static void +get_asm_expr_operands (struct cgraph_node * fn, tree stmt) +{ + int noutputs = list_length (ASM_OUTPUTS (stmt)); + const char **oconstraints + = (const char **) alloca ((noutputs) * sizeof (const char *)); + int i; + tree link; + const char *constraint; + bool allows_mem, allows_reg, is_inout; + + for (i=0, link = ASM_OUTPUTS (stmt); link; ++i, link = TREE_CHAIN (link)) + { + oconstraints[i] = constraint + = TREE_STRING_POINTER (TREE_VALUE (TREE_PURPOSE (link))); + parse_output_constraint (&constraint, i, 0, 0, + &allows_mem, &allows_reg, &is_inout); + + /* Memory operands are addressable. Note that STMT needs the + address of this operand. */ + if (!allows_reg && allows_mem) + { + check_lhs_var (fn, TREE_VALUE (link)); + } + } + + for (link = ASM_INPUTS (stmt); link; link = TREE_CHAIN (link)) + { + constraint + = TREE_STRING_POINTER (TREE_VALUE (TREE_PURPOSE (link))); + parse_input_constraint (&constraint, 0, 0, noutputs, 0, + oconstraints, &allows_mem, &allows_reg); + + /* Memory operands are addressable. Note that STMT needs the + address of this operand. */ + if (!allows_reg && allows_mem) + { + check_rhs_var (fn, TREE_VALUE (link)); + } + } + + for (link = ASM_CLOBBERS (stmt); link; link = TREE_CHAIN (link)) + if (TREE_VALUE (link) == memory_identifier) + { + /* Abandon all hope, ye who enter here. */ + local_static_vars_info_t l = fn->static_vars_info->local; + bitmap_a_or_b (l->statics_read_by_decl_uid, + l->statics_read_by_decl_uid, + all_module_statics); + bitmap_a_or_b (l->statics_written_by_decl_uid, + l->statics_written_by_decl_uid, + all_module_statics); + + } +} + +/* Check the parameters of a function call from CALLER to CALL_EXPR to + see if any of them are static vars. Also check to see if this is + either an indirect call, a call outside the compilation unit, or + has special attributes that effect the clobbers. The caller + parameter is the tree node for the caller and the second operand is + the tree node for the entire call expression. */ +static void +process_call_for_static_vars(struct cgraph_node * caller, tree call_expr) +{ + int flags = call_expr_flags(call_expr); + tree operandList = TREE_OPERAND (call_expr, 1); + tree operand; + + for (operand = operandList; + operand != NULL_TREE; + operand = TREE_CHAIN (operand)) + { + tree argument = TREE_VALUE (operand); + check_rhs_var (caller, argument); + } + + /* Const and pure functions have less clobber effects than other + functions so we process these first. Otherwise if it is a call + outside the compilation unit or an indirect call we punt. This + leaves local calls which will be processed by following the call + graph. */ + if (flags & ECF_CONST) + return; + else if (flags & ECF_PURE) + caller->local.calls_write_all = true; + else + { + tree callee_t = get_callee_fndecl (call_expr); + if (callee_t == NULL) + { + /* Indirect call. */ + caller->local.calls_read_all = true; + caller->local.calls_write_all = true; + } + else + { + struct cgraph_node* callee = cgraph_node(callee_t); + + if (callee->local.external) + { + caller->local.calls_read_all = true; + caller->local.calls_write_all = true; + } + } + } +} + +/* FIXME -- PROFILE-RESTRUCTURE: Change to walk by explicitly walking + the basic blocks rather than calling walktree. */ + +/* Walk tree and record all calls. Called via walk_tree. FIXME When + this is moved into the tree-profiling-branch, and is dealing with + low GIMPLE, this routine should be changed to use tree iterators + rather than being a walk_tree callback. The data is the function + that is being scanned. */ +/* TP is the part of the tree currently under the + microscope. WALK_SUBTREES is part of the walk_tree api but is + unused here. DATA is cgraph_node of the function being walked. */ + +static tree +scan_for_static_refs (tree *tp, + int *walk_subtrees ATTRIBUTE_UNUSED, + void *data) +{ + struct cgraph_node *fn = data; + tree t = *tp; + + switch (TREE_CODE (t)) + { + case MODIFY_EXPR: + { + /* First look on the lhs and see what variable is stored to */ + tree rhs = TREE_OPERAND (t, 1); + check_lhs_var (fn, TREE_OPERAND (t, 0)); + /* Next check the operands on the rhs to see if they are ok. */ + switch (TREE_CODE_CLASS (TREE_CODE (rhs))) { + case tcc_binary: + check_rhs_var (fn, TREE_OPERAND (rhs, 0)); + check_rhs_var (fn, TREE_OPERAND (rhs, 1)); + break; + case tcc_unary: + case tcc_reference: + check_rhs_var (fn, TREE_OPERAND (rhs, 0)); + break; + case tcc_declaration: + check_rhs_var (fn, rhs); + break; + case tcc_expression: + switch (TREE_CODE (rhs)) { + case ADDR_EXPR: + check_rhs_var (fn, rhs); + break; + case CALL_EXPR: + process_call_for_static_vars (fn, rhs); + break; + default: + break; + } + break; + default: + break; + } + } + break; + + + case CALL_EXPR: + process_call_for_static_vars (fn, t); + break; + + case ASM_EXPR: + get_asm_expr_operands (fn, t); + break; + + default: + break; + } + return NULL; +} + + +/* This is the main routine for finding the reference patterns for + global variables within a function FN */ + static void +cgraph_characterize_statics_local (struct cgraph_node *fn) +{ + tree decl = fn->decl; + static_vars_info_t info = new_static_vars_info(fn, false); + local_static_vars_info_t l = info->local; + + + /* The nodes we're interested in are never shared, so walk + the tree ignoring duplicates. */ + visited_nodes = htab_create (37, htab_hash_pointer, + htab_eq_pointer, NULL); + + /* FIXME -- PROFILE-RESTRUCTURE: Remove creation of _decl_uid vars. */ + l->statics_read_by_decl_uid = BITMAP_GGC_ALLOC (); + l->statics_written_by_decl_uid = BITMAP_GGC_ALLOC (); + + if (cgraph_dump_file) + fprintf (cgraph_dump_file, "\n local analysis of %s", cgraph_node_name (fn)); + + walk_tree (&DECL_SAVED_TREE (decl), scan_for_static_refs, fn, visited_nodes); + htab_delete (visited_nodes); + visited_nodes = NULL; +} + +/* Lookup the tree node for the static variable that has UID and + conver the name to a string for debugging. */ +static const char * +cgraph_get_static_name_by_uid (int index) +{ + splay_tree_node stn = splay_tree_lookup (static_vars_to_consider_by_uid, index); + if (stn) + return lang_hooks.decl_printable_name ((tree)(stn->value), 2); + return NULL; +} + +/* Clear out any the static variable with uid INDEX from further + consideration because it escapes (i.e. has had its address + taken). */ +static void +clear_static_vars_maps (int index) +{ + splay_tree_node stn = splay_tree_lookup (static_vars_to_consider_by_uid, index); + if (stn) + { + splay_tree_remove (static_vars_to_consider_by_tree, stn->value); + splay_tree_remove (static_vars_to_consider_by_uid, index); + } +} + +/* FIXME -- PROFILE-RESTRUCTURE: Change all *_decl_uid to *_ann_uid. */ + +/* Or in all of the bits from every callee into X, the caller's, bit + vector. There are several cases to check to avoid the sparse + bitmap oring. */ +static void +cgraph_propagate_bits (struct cgraph_node *x) +{ + static_vars_info_t x_info = x->static_vars_info; + global_static_vars_info_t x_global = x_info->global; + + struct cgraph_edge *e; + for (e = x->callees; e; e = e->next_callee) + { + struct cgraph_node *y = e->callee; + + /* We are only going to look at edges that point to nodes that + have their output bit set. */ + if (y->output) + { + static_vars_info_t y_info; + global_static_vars_info_t y_global; + y_info = y->static_vars_info; + y_global = y_info->global; + + if (x_global->statics_read_by_decl_uid != all_module_statics) + { + if (y_global->statics_read_by_decl_uid == all_module_statics) + x_global->statics_read_by_decl_uid = all_module_statics; + /* Skip bitmaps that are pointer equal to node's bitmap + (no reason to spin within the cycle). */ + else if (x_global->statics_read_by_decl_uid != y_global->statics_read_by_decl_uid) + bitmap_a_or_b (x_global->statics_read_by_decl_uid, + x_global->statics_read_by_decl_uid, + y_global->statics_read_by_decl_uid); + } + + if (x_global->statics_written_by_decl_uid != all_module_statics) + { + if (y_global->statics_written_by_decl_uid == all_module_statics) + x_global->statics_written_by_decl_uid = all_module_statics; + /* Skip bitmaps that are pointer equal to node's bitmap + (no reason to spin within the cycle). */ + else if (x_global->statics_written_by_decl_uid != y_global->statics_written_by_decl_uid) + bitmap_a_or_b (x_global->statics_written_by_decl_uid, + x_global->statics_written_by_decl_uid, + y_global->statics_written_by_decl_uid); + } + } + } +} + +/* FIXME -- PROFILE-RESTRUCTURE: Change all *_decl_uid to *_ann_uid + except where noted below. */ + +/* The main routine for analyzing global static variable usage. See + comments at top for description. */ + +static void +cgraph_characterize_statics (void) +{ + struct cgraph_node *node; + struct cgraph_node *w; + struct cgraph_node **order = + xcalloc (cgraph_n_nodes, sizeof (struct cgraph_node *)); + int order_pos = 0; + int i; + + struct cgraph_varpool_node *vnode; + tree global; + + /* get rid of the splay trees from the previous compilation unit. */ + + static_vars_to_consider_by_tree = + splay_tree_new_ggc (splay_tree_compare_pointers); + static_vars_to_consider_by_uid = + splay_tree_new_ggc (splay_tree_compare_ints); + + if (module_statics_escape) + { + bitmap_clear (module_statics_escape); + bitmap_clear (all_module_statics); + } + else + { + module_statics_escape = BITMAP_XMALLOC (); + all_module_statics = BITMAP_GGC_ALLOC (); + } + + /* Find all of the global variables that we wish to analyze. */ + for (vnode = cgraph_varpool_nodes_queue; vnode; vnode = vnode->next_needed) + { + global = vnode->decl; + if ((TREE_CODE (global) == VAR_DECL) && + has_proper_scope_for_analysis (global)) + { + splay_tree_insert (static_vars_to_consider_by_tree, + (splay_tree_key) global, + (splay_tree_value) global); + /* FIXME -- PROFILE-RESTRUCTURE: Change the call from + DECL_UID to get the uid from the var_ann field. */ + splay_tree_insert (static_vars_to_consider_by_uid, + DECL_UID (global), (splay_tree_value)global); + + if (cgraph_dump_file) + fprintf (cgraph_dump_file, "\nConsidering global:%s", + lang_hooks.decl_printable_name (global, 2)); + /* FIXME -- PROFILE-RESTRUCTURE: Change the call from + DECL_UID to get the uid from the var_ann field. */ + bitmap_set_bit (all_module_statics, DECL_UID (global)); + } + } + + order_pos = cgraph_reduced_inorder (order, false); + if (cgraph_dump_file) + print_order("new", order, order_pos); + + for (i = order_pos - 1; i >= 0; i--) + { + node = order[i]; + + /* Scan each function to determine the variable usage + patterns. */ + cgraph_characterize_statics_local (node); + } + + /* Prune out the variables that were found to behave badly + (i.e. have there address taken). */ + { + int index; + EXECUTE_IF_SET_IN_BITMAP (module_statics_escape, + 0, index, clear_static_vars_maps (index)); + bitmap_operation (all_module_statics, all_module_statics, + module_statics_escape, BITMAP_AND_COMPL); + + for (i = order_pos - 1; i >= 0; i--) + { + local_static_vars_info_t l; + node = order[i]; + l = node->static_vars_info->local; + + bitmap_operation (l->statics_read_by_decl_uid, + l->statics_read_by_decl_uid, + module_statics_escape, + BITMAP_AND_COMPL); + bitmap_operation (l->statics_written_by_decl_uid, + l->statics_written_by_decl_uid, + module_statics_escape, + BITMAP_AND_COMPL); + } + } + + if (cgraph_dump_file) + { + for (i = order_pos - 1; i >= 0; i--) + { + int index; + local_static_vars_info_t l; + node = order[i]; + l = node->static_vars_info->local; + fprintf (cgraph_dump_file, + "\nFunction name:%s/%i:", + cgraph_node_name (node), node->uid); + fprintf (cgraph_dump_file, "\n locals read: "); + EXECUTE_IF_SET_IN_BITMAP (l->statics_read_by_decl_uid, + 0, index, + fprintf (cgraph_dump_file, "%s ", + cgraph_get_static_name_by_uid (index))); + fprintf (cgraph_dump_file, "\n locals written: "); + EXECUTE_IF_SET_IN_BITMAP (l->statics_written_by_decl_uid, + 0, index, + fprintf(cgraph_dump_file, "%s ", + cgraph_get_static_name_by_uid (index))); + } + } + + /* Propagate the local information thru the call graph to produce + the global information. All the nodes within a cycle will have + the same info so we collapse cycles first. Then we can do the + propagation in one pass from the leaves to the roots. */ + order_pos = cgraph_reduced_inorder (order, true); + for (i = order_pos - 1; i >= 0; i--) + { + static_vars_info_t node_info; + global_static_vars_info_t node_g = + ggc_calloc (1, sizeof (struct global_static_vars_info_d)); + local_static_vars_info_t node_l; + + + bool read_all; + bool write_all; + + node = order[i]; + node_info = node->static_vars_info; + node_info->global = node_g; + node_l = node_info->local; + + read_all = node->local.calls_read_all; + write_all = node->local.calls_write_all; + + /* If any node in a cycle is calls_read_all or calls_write_all + they all are. */ + w = node->next_cycle; + while (w) + { + read_all |= w->local.calls_read_all; + write_all |= w->local.calls_write_all; + w = w->next_cycle; + } + + /* Initialized the bitmaps for the reduced nodes */ + if (read_all) + node_g->statics_read_by_decl_uid = all_module_statics; + else + { + node_g->statics_read_by_decl_uid = BITMAP_GGC_ALLOC (); + bitmap_copy (node_g->statics_read_by_decl_uid, + node_l->statics_read_by_decl_uid); + } + + if (write_all) + node_g->statics_written_by_decl_uid = all_module_statics; + else + { + node_g->statics_written_by_decl_uid = BITMAP_GGC_ALLOC (); + bitmap_copy (node_g->statics_written_by_decl_uid, + node_l->statics_written_by_decl_uid); + } + + w = node->next_cycle; + while (w) + { + /* All nodes within a cycle share the same global info bitmaps. */ + static_vars_info_t w_info = w->static_vars_info; + local_static_vars_info_t w_l; + + w_info->global = node_g; + w_l = w_info->local; + + /* These global bitmaps are initialized from the local info + of all of the nodes in the region. However there is no + need to do any work if the bitmaps were set to + all_module_statics. */ + if (!read_all) + bitmap_a_or_b (node_g->statics_read_by_decl_uid, + node_g->statics_read_by_decl_uid, + w_l->statics_read_by_decl_uid); + if (!write_all) + bitmap_a_or_b (node_g->statics_written_by_decl_uid, + node_g->statics_written_by_decl_uid, + w_l->statics_written_by_decl_uid); + w = w->next_cycle; + } + + cgraph_propagate_bits (node); + + w = node->next_cycle; + while (w) + { + cgraph_propagate_bits (w); + w = w->next_cycle; + } + } + + if (cgraph_dump_file) + { + for (i = order_pos - 1; i >= 0; i--) + { + static_vars_info_t node_info; + global_static_vars_info_t node_g; + int index; + node = order[i]; + node_info = node->static_vars_info; + node_g = node_info->global; + fprintf (cgraph_dump_file, + "\nFunction name:%s/%i:", + cgraph_node_name (node), node->uid); + w = node->next_cycle; + while (w) + { + fprintf (cgraph_dump_file, "\n next cycle: %s/%i ", + cgraph_node_name (w), w->uid); + w = w->next_cycle; + } + fprintf (cgraph_dump_file, "\n globals read: "); + EXECUTE_IF_SET_IN_BITMAP (node_g->statics_read_by_decl_uid, + 0, index, + fprintf (cgraph_dump_file, "%s ", + cgraph_get_static_name_by_uid (index))); + fprintf (cgraph_dump_file, "\n globals written: "); + EXECUTE_IF_SET_IN_BITMAP (node_g->statics_written_by_decl_uid, + 0, index, + fprintf (cgraph_dump_file, "%s ", + cgraph_get_static_name_by_uid (index))); + } + } + + /* Cleanup. */ + for (i = order_pos - 1; i >= 0; i--) + { + static_vars_info_t node_info; + global_static_vars_info_t node_g; + node = order[i]; + node_info = node->static_vars_info; + node_g = node_info->global; + + node_g->var_anns_valid = false; + + /* Create the complimentary sets. These are more useful for + certain apis. */ + node_g->statics_not_read_by_decl_uid = BITMAP_GGC_ALLOC (); + node_g->statics_not_written_by_decl_uid = BITMAP_GGC_ALLOC (); + + /* FIXME -- PROFILE-RESTRUCTURE: Delete next 4 assignments. */ + node_g->statics_read_by_ann_uid = BITMAP_GGC_ALLOC (); + node_g->statics_written_by_ann_uid = BITMAP_GGC_ALLOC (); + node_g->statics_not_read_by_ann_uid = BITMAP_GGC_ALLOC (); + node_g->statics_not_written_by_ann_uid = BITMAP_GGC_ALLOC (); + + if (node_g->statics_read_by_decl_uid != all_module_statics) + { + bitmap_operation (node_g->statics_not_read_by_decl_uid, + all_module_statics, + node_g->statics_read_by_decl_uid, + BITMAP_AND_COMPL); + } + + if (node_g->statics_written_by_decl_uid != all_module_statics) + bitmap_operation (node_g->statics_not_written_by_decl_uid, + all_module_statics, + node_g->statics_written_by_decl_uid, + BITMAP_AND_COMPL); + + w = node->next_cycle; + + while (w) + { + struct cgraph_node * last = w; + w = w->next_cycle; + last->next_cycle = NULL; + } + } + + free (order); +} + /* Expand all functions that must be output. Attempt to topologically sort the nodes so function is output when @@ -1656,8 +2687,6 @@ cgraph_expand_all_functions (void) int order_pos = 0, new_order_pos = 0; int i; - cgraph_mark_functions_to_output (); - order_pos = cgraph_postorder (order); gcc_assert (order_pos == cgraph_n_nodes); @@ -1680,34 +2709,46 @@ cgraph_expand_all_functions (void) free (order); } -/* Mark all local functions. +/* Mark all local and external functions. + + A local function is one whose calls can occur only in the current + compilation unit and all its calls are explicit, so we can change + its calling convention. We simply mark all static functions whose + address is not taken as local. - A local function is one whose calls can occur only in the - current compilation unit and all its calls are explicit, - so we can change its calling convention. - We simply mark all static functions whose address is not taken - as local. */ + An external function is one whose body is outside the current + compilation unit. */ static void -cgraph_mark_local_functions (void) +cgraph_mark_local_and_external_functions (void) { struct cgraph_node *node; - if (cgraph_dump_file) - fprintf (cgraph_dump_file, "\nMarking local functions:"); - /* Figure out functions we want to assemble. */ for (node = cgraph_nodes; node; node = node->next) { node->local.local = (!node->needed && DECL_SAVED_TREE (node->decl) && !TREE_PUBLIC (node->decl)); - if (cgraph_dump_file && node->local.local) - fprintf (cgraph_dump_file, " %s", cgraph_node_name (node)); + node->local.external = (!DECL_SAVED_TREE (node->decl) + && TREE_PUBLIC (node->decl)); } + if (cgraph_dump_file) + { + fprintf (cgraph_dump_file, "\nMarking local functions:"); + for (node = cgraph_nodes; node; node = node->next) + if (node->local.local) + fprintf (cgraph_dump_file, " %s", cgraph_node_name (node)); + fprintf (cgraph_dump_file, "\n\n"); + + fprintf (cgraph_dump_file, "\nMarking external functions:"); + for (node = cgraph_nodes; node; node = node->next) + if (node->local.external) + fprintf (cgraph_dump_file, " %s", cgraph_node_name (node)); fprintf (cgraph_dump_file, "\n\n"); } +} /* Return true when function body of DECL still needs to be kept around for later re-use. */ @@ -1741,7 +2782,7 @@ cgraph_optimize (void) if (!quiet_flag) fprintf (stderr, "Performing intraprocedural optimizations\n"); - cgraph_mark_local_functions (); + cgraph_mark_local_and_external_functions (); if (cgraph_dump_file) { fprintf (cgraph_dump_file, "Marked "); @@ -1764,6 +2805,15 @@ cgraph_optimize (void) #ifdef ENABLE_CHECKING verify_cgraph (); #endif + + /* This call was moved here from cgraph_expand_all_functions so that + cgraph_characterize_statics could use the output flag of the cgraph + node. */ + + cgraph_mark_functions_to_output (); + + cgraph_characterize_statics (); + cgraph_expand_all_functions (); if (cgraph_dump_file) { @@ -1866,3 +2916,11 @@ cgraph_build_static_cdtor (char which, tree body, int priority) fn (XEXP (DECL_RTL (decl), 0), priority); } } + +void +init_cgraph (void) +{ + cgraph_dump_file = dump_begin (TDI_cgraph, NULL); + memory_identifier = get_identifier("memory"); +} +#include "gt-cgraphunit.h" diff --git a/gcc/common.opt b/gcc/common.opt index 619740c24de..5739c1b8c2a 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -523,10 +523,6 @@ fmodulo-sched Common Report Var(flag_modulo_sched) Perform SMS based modulo scheduling before the first scheduling pass -fmove-all-movables -Common Report Var(flag_move_all_movables) -Force all loop invariant computations out of loops - fmove-loop-invariants Common Report Var(flag_move_loop_invariants) Move loop invariant computations out of loops @@ -555,14 +551,6 @@ fnon-call-exceptions Common Report Var(flag_non_call_exceptions) Support synchronous non-call exceptions -fold-unroll-loops -Common Report Var(flag_old_unroll_loops) -Perform loop unrolling when iteration count is known - -fold-unroll-all-loops -Common Report Var(flag_old_unroll_all_loops) -Perform loop unrolling for all loops - fomit-frame-pointer Common Report Var(flag_omit_frame_pointer) When possible do not generate stack frames @@ -646,10 +634,6 @@ frandom-seed= Common Joined RejectNegative -frandom-seed= Make compile reproducible using -freduce-all-givs -Common Report Var(flag_reduce_all_givs) -Strength reduce all loop general induction variables - freg-struct-return Common Report Var(flag_pcc_struct_return,0) VarExists Return small aggregates in registers @@ -760,6 +744,10 @@ fspeculative-prefetching Common Report Var(flag_speculative_prefetching) Use value profiling for speculative prefetching +fsplit-ivs-in-unroller +Common Report Var(flag_split_ivs_in_unroller) Init(1) +Split lifetimes of induction variables when loops are unrolled. + ; Emit code to probe the stack, to help detect stack overflow; also ; may cause large objects to be allocated dynamically. fstack-check diff --git a/gcc/config.gcc b/gcc/config.gcc index 3c5b8458356..3cc6cdd1f8f 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -659,7 +659,7 @@ arm*-*-eabi* | arm*-*-symbianelf* ) need_64bit_hwint=yes default_use_cxa_atexit=yes tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h" - tmake_file="t-slibgcc-elf-ver arm/t-arm arm/t-arm-elf" + tmake_file="arm/t-arm arm/t-arm-elf" case ${target} in arm*-*-eabi*) tmake_file="${tmake_file} arm/t-bpabi" @@ -668,7 +668,7 @@ arm*-*-eabi* | arm*-*-symbianelf* ) tm_file="${tm_file} arm/symbian.h" # We do not include t-bpabi for Symbian OS because the system # provides its own implementation of the BPABI functions. - tmake_file="${tmake_file} arm/t-symbian" + tmake_file="${tmake_file} t-slibgcc-elf-ver arm/t-symbian" ;; esac tm_file="${tm_file} arm/aout.h arm/arm.h" diff --git a/gcc/config.in b/gcc/config.in index 42e5795e6f6..e71ac94de75 100644 --- a/gcc/config.in +++ b/gcc/config.in @@ -139,9 +139,6 @@ /* Define to 1 if you have the `atoq' function. */ #undef HAVE_ATOQ -/* Define if BANSHEE is available */ -#undef HAVE_BANSHEE - /* Define to 1 if you have the `clock' function. */ #undef HAVE_CLOCK @@ -287,6 +284,9 @@ /* Define if your assembler supports .balign and .p2align. */ #undef HAVE_GAS_BALIGN_AND_P2ALIGN +/* Define 0/1 if your assembler supports COMDAT group. */ +#undef HAVE_GAS_COMDAT_GROUP + /* Define if your assembler uses the new HImode fild and fist notation. */ #undef HAVE_GAS_FILDS_FISTS @@ -543,22 +543,22 @@ /* Define to PREFIX/include if cpp should also search that directory. */ #undef PREFIX_INCLUDE_DIR -/* The number of bytes in type int */ +/* The size of a `int', as computed by sizeof. */ #undef SIZEOF_INT -/* The number of bytes in type long */ +/* The size of a `long', as computed by sizeof. */ #undef SIZEOF_LONG -/* The number of bytes in type long long */ +/* The size of a `long long', as computed by sizeof. */ #undef SIZEOF_LONG_LONG -/* The number of bytes in type short */ +/* The size of a `short', as computed by sizeof. */ #undef SIZEOF_SHORT -/* The number of bytes in type void * */ +/* The size of a `void *', as computed by sizeof. */ #undef SIZEOF_VOID_P -/* The number of bytes in type __int64 */ +/* The size of a `__int64', as computed by sizeof. */ #undef SIZEOF___INT64 /* Define to 1 if you have the ANSI C header files. */ diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c index 532fe667c10..21aa3822797 100644 --- a/gcc/config/alpha/alpha.c +++ b/gcc/config/alpha/alpha.c @@ -6179,7 +6179,7 @@ set_frame_related_p (void) #define FRP(exp) (start_sequence (), exp, set_frame_related_p ()) /* Generates a store with the proper unwind info attached. VALUE is - stored at BASE_REG+BASE_OFS. If FRAME_BIAS is non-zero, then BASE_REG + stored at BASE_REG+BASE_OFS. If FRAME_BIAS is nonzero, then BASE_REG contains SP+FRAME_BIAS, and that is the unwind info that should be generated. If FRAME_REG != VALUE, then VALUE is being stored on behalf of FRAME_REG, and FRAME_REG should be present in the unwind. */ @@ -8455,7 +8455,8 @@ vms_section_type_flags (tree decl, const char *name, int reloc) the section; 0 if the default should be used. */ static void -vms_asm_named_section (const char *name, unsigned int flags) +vms_asm_named_section (const char *name, unsigned int flags, + tree decl ATTRIBUTE_UNUSED) { fputc ('\n', asm_out_file); fprintf (asm_out_file, ".section\t%s", name); @@ -8679,7 +8680,8 @@ unicosmk_unique_section (tree decl, int reloc ATTRIBUTE_UNUSED) the section; 0 if the default should be used. */ static void -unicosmk_asm_named_section (const char *name, unsigned int flags) +unicosmk_asm_named_section (const char *name, unsigned int flags, + tree decl ATTRIBUTE_UNUSED) { const char *kind; diff --git a/gcc/config/alpha/alpha.h b/gcc/config/alpha/alpha.h index 3acecb8e574..25327d9e3cb 100644 --- a/gcc/config/alpha/alpha.h +++ b/gcc/config/alpha/alpha.h @@ -476,7 +476,7 @@ extern const char *alpha_tls_size_string; /* For -mtls-size= */ Note that small vector types can get mapped onto integer modes at the whim of not appearing in alpha-modes.def. We never promoted these - values before; don't do so now that we've trimed the set of modes to + values before; don't do so now that we've trimmed the set of modes to those actually implemented in the backend. */ #define PROMOTE_MODE(MODE,UNSIGNEDP,TYPE) \ diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 38ead5d3c35..a838372b486 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -145,9 +145,6 @@ static rtx arm_expand_unop_builtin (enum insn_code, tree, rtx, int); static rtx arm_expand_builtin (tree, rtx, rtx, enum machine_mode, int); static void emit_constant_insn (rtx cond, rtx pattern); -#ifdef OBJECT_FORMAT_ELF -static void arm_elf_asm_named_section (const char *, unsigned int); -#endif #ifndef ARM_PE static void arm_encode_section_info (tree, rtx, int); #endif @@ -634,7 +631,7 @@ bit_count (unsigned long value) return count; } -/* Set up library functions uqniue to ARM. */ +/* Set up library functions unique to ARM. */ static void arm_init_libfuncs (void) @@ -654,7 +651,7 @@ arm_init_libfuncs (void) set_optab_libfunc (neg_optab, DFmode, "__aeabi_dneg"); set_optab_libfunc (sub_optab, DFmode, "__aeabi_dsub"); - /* Double-precision comparisions. Table 3. */ + /* Double-precision comparisons. Table 3. */ set_optab_libfunc (eq_optab, DFmode, "__aeabi_dcmpeq"); set_optab_libfunc (ne_optab, DFmode, NULL); set_optab_libfunc (lt_optab, DFmode, "__aeabi_dcmplt"); @@ -670,7 +667,7 @@ arm_init_libfuncs (void) set_optab_libfunc (neg_optab, SFmode, "__aeabi_fneg"); set_optab_libfunc (sub_optab, SFmode, "__aeabi_fsub"); - /* Single-precision comparisions. Table 5. */ + /* Single-precision comparisons. Table 5. */ set_optab_libfunc (eq_optab, SFmode, "__aeabi_fcmpeq"); set_optab_libfunc (ne_optab, SFmode, NULL); set_optab_libfunc (lt_optab, SFmode, "__aeabi_fcmplt"); @@ -693,7 +690,7 @@ arm_init_libfuncs (void) set_conv_libfunc (trunc_optab, SFmode, DFmode, "__aeabi_d2f"); set_conv_libfunc (sext_optab, DFmode, SFmode, "__aeabi_f2d"); - /* Integer to floating-point converisons. Table 8. */ + /* Integer to floating-point conversions. Table 8. */ set_conv_libfunc (sfloat_optab, DFmode, SImode, "__aeabi_i2d"); set_conv_libfunc (ufloat_optab, DFmode, SImode, "__aeabi_ui2d"); set_conv_libfunc (sfloat_optab, DFmode, DImode, "__aeabi_l2d"); @@ -2823,7 +2820,7 @@ arm_is_longcall_p (rtx sym_ref, int call_cookie, int call_symbol) { if (flag_function_sections || DECL_SECTION_NAME (current_function_decl)) - /* c.3 is handled by the defintion of the + /* c.3 is handled by the definition of the ARM_DECLARE_FUNCTION_SIZE macro. */ return 1; } @@ -9941,7 +9938,7 @@ arm_expand_prologue (void) int fp_offset = 0; int saved_pretend_args = 0; int saved_regs = 0; - unsigned int args_to_push; + unsigned HOST_WIDE_INT args_to_push; arm_stack_offsets *offsets; func_type = arm_current_func_type (); @@ -12900,7 +12897,7 @@ thumb_expand_prologue (void) return; } - /* Load the pic recister before setting the frame pointer, so we can use r7 + /* Load the pic register before setting the frame pointer, so we can use r7 as a temporary work register. */ if (flag_pic) arm_load_pic_register (); @@ -13771,62 +13768,6 @@ aof_file_end (void) } #endif /* AOF_ASSEMBLER */ -#ifdef OBJECT_FORMAT_ELF -/* Switch to an arbitrary section NAME with attributes as specified - by FLAGS. ALIGN specifies any known alignment requirements for - the section; 0 if the default should be used. - - Differs from the default elf version only in the prefix character - used before the section type. */ - -static void -arm_elf_asm_named_section (const char *name, unsigned int flags) -{ - char flagchars[10], *f = flagchars; - - if (! named_section_first_declaration (name)) - { - fprintf (asm_out_file, "\t.section\t%s\n", name); - return; - } - - if (!(flags & SECTION_DEBUG)) - *f++ = 'a'; - if (flags & SECTION_WRITE) - *f++ = 'w'; - if (flags & SECTION_CODE) - *f++ = 'x'; - if (flags & SECTION_SMALL) - *f++ = 's'; - if (flags & SECTION_MERGE) - *f++ = 'M'; - if (flags & SECTION_STRINGS) - *f++ = 'S'; - if (flags & SECTION_TLS) - *f++ = 'T'; - *f = '\0'; - - fprintf (asm_out_file, "\t.section\t%s,\"%s\"", name, flagchars); - - if (!(flags & SECTION_NOTYPE)) - { - const char *type; - - if (flags & SECTION_BSS) - type = "nobits"; - else - type = "progbits"; - - fprintf (asm_out_file, ",%%%s", type); - - if (flags & SECTION_ENTSIZE) - fprintf (asm_out_file, ",%d", flags & SECTION_ENTSIZE); - } - - putc ('\n', asm_out_file); -} -#endif - #ifndef ARM_PE /* Symbols in the text segment can be accessed without indirecting via the constant pool; it may take an extra binary operation, but this is still @@ -13847,7 +13788,7 @@ arm_encode_section_info (tree decl, rtx rtl, int first) /* If we are referencing a function that is weak then encode a long call flag in the function name, otherwise if the function is static or or known to be defined in this file then encode a short call flag. */ - if (first && TREE_CODE_CLASS (TREE_CODE (decl)) == 'd') + if (first && DECL_P (decl)) { if (TREE_CODE (decl) == FUNCTION_DECL && DECL_WEAK (decl)) arm_encode_call_attribute (decl, LONG_CALL_FLAG_CHAR); diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index 735b182c86b..c8f88f02339 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -2059,7 +2059,7 @@ typedef struct /* Set the short-call flag for any function compiled in the current compilation unit. We skip this for functions with the section - attirubte when long-calls are in effect as this tells the compiler + attribute when long-calls are in effect as this tells the compiler that the section might be placed a long way from the caller. See arm_is_longcall_p() for more information. */ #define ARM_DECLARE_FUNCTION_SIZE(STREAM, NAME, DECL) \ diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index 08d62e95a5a..13e81e495ed 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -117,7 +117,7 @@ (VUNSPEC_WCMP_EQ 11) ; Used by the iWMMXt WCMPEQ instructions (VUNSPEC_WCMP_GTU 12) ; Used by the iWMMXt WCMPGTU instructions (VUNSPEC_WCMP_GT 13) ; Used by the iwMMXT WCMPGT instructions - (VUNSPEC_EH_RETURN 20); Use to overrite the return address for exception + (VUNSPEC_EH_RETURN 20); Use to override the return address for exception ; handling. ] ) diff --git a/gcc/config/arm/bpabi.h b/gcc/config/arm/bpabi.h index e2be11446f8..c15257728d4 100644 --- a/gcc/config/arm/bpabi.h +++ b/gcc/config/arm/bpabi.h @@ -33,7 +33,7 @@ calling convention. */ #define FLOAT_LIB_COMPARE_RETURNS_BOOL(MODE, COMPARISON) TARGET_BPABI -/* The BPABI integer comparision routines return { -1, 0, 1 }. */ +/* The BPABI integer comparison routines return { -1, 0, 1 }. */ #define TARGET_LIB_INT_CMP_BIASED !TARGET_BPABI /* Tell the assembler to build BPABI binaries. */ diff --git a/gcc/config/arm/elf.h b/gcc/config/arm/elf.h index dae8acdfdf2..12759566ac4 100644 --- a/gcc/config/arm/elf.h +++ b/gcc/config/arm/elf.h @@ -119,9 +119,6 @@ #define TARGET_ASM_FILE_START_APP_OFF true #define TARGET_ASM_FILE_START_FILE_DIRECTIVE true -#undef TARGET_ASM_NAMED_SECTION -#define TARGET_ASM_NAMED_SECTION arm_elf_asm_named_section - /* For PIC code we need to explicitly specify (PLT) and (GOT) relocs. */ #define NEED_PLT_RELOC flag_pic diff --git a/gcc/config/arm/predicates.md b/gcc/config/arm/predicates.md index 01095a56358..79b28e7ed18 100644 --- a/gcc/config/arm/predicates.md +++ b/gcc/config/arm/predicates.md @@ -171,7 +171,7 @@ (and (match_code "plus,minus,ior,xor,and") (match_test "mode == GET_MODE (op)"))) -;; True for logical binary opertors. +;; True for logical binary operators. (define_special_predicate "logical_binary_operator" (and (match_code "ior,xor,and") (match_test "mode == GET_MODE (op)"))) diff --git a/gcc/config/c4x/c4x.c b/gcc/config/c4x/c4x.c index 5437568f07d..2d6e66006eb 100644 --- a/gcc/config/c4x/c4x.c +++ b/gcc/config/c4x/c4x.c @@ -195,7 +195,7 @@ static int c4x_label_ref_used_p (rtx, rtx); static tree c4x_handle_fntype_attribute (tree *, tree, tree, int, bool *); const struct attribute_spec c4x_attribute_table[]; static void c4x_insert_attributes (tree, tree *); -static void c4x_asm_named_section (const char *, unsigned int); +static void c4x_asm_named_section (const char *, unsigned int, tree); static int c4x_adjust_cost (rtx, rtx, rtx, int); static void c4x_globalize_label (FILE *, const char *); static bool c4x_rtx_costs (rtx, int, int, int *); @@ -4924,7 +4924,8 @@ c4x_init_libfuncs (void) } static void -c4x_asm_named_section (const char *name, unsigned int flags ATTRIBUTE_UNUSED) +c4x_asm_named_section (const char *name, unsigned int flags ATTRIBUTE_UNUSED, + tree decl ATTRIBUTE_UNUSED) { fprintf (asm_out_file, "\t.sect\t\"%s\"\n", name); } diff --git a/gcc/config/cris/cris-protos.h b/gcc/config/cris/cris-protos.h index 15e91df8a59..f085e5d741b 100644 --- a/gcc/config/cris/cris-protos.h +++ b/gcc/config/cris/cris-protos.h @@ -44,8 +44,8 @@ extern int cris_got_symbol (rtx); extern int cris_symbol (rtx); extern void cris_output_addr_const (FILE *, rtx); extern int cris_cfun_uses_pic_table (void); -extern void cris_target_asm_named_section (const char *, unsigned int); #endif /* RTX_CODE */ +extern void cris_target_asm_named_section (const char *, unsigned int, tree); extern int cris_return_address_on_stack (void); diff --git a/gcc/config/cris/cris.c b/gcc/config/cris/cris.c index 468859f9f42..2021c711dca 100644 --- a/gcc/config/cris/cris.c +++ b/gcc/config/cris/cris.c @@ -2450,12 +2450,13 @@ cris_reg_overlap_mentioned_p (rtx x, rtx in) We just dispatch to the functions for ELF and a.out. */ void -cris_target_asm_named_section (const char *name, unsigned int flags) +cris_target_asm_named_section (const char *name, unsigned int flags, + tree decl) { if (! TARGET_ELF) - default_no_named_section (name, flags); + default_no_named_section (name, flags, decl); else - default_elf_asm_named_section (name, flags); + default_elf_asm_named_section (name, flags, decl); } /* The LEGITIMATE_PIC_OPERAND_P worker. */ diff --git a/gcc/config/darwin-c.c b/gcc/config/darwin-c.c index e8b188f5056..d7f3e01016f 100644 --- a/gcc/config/darwin-c.c +++ b/gcc/config/darwin-c.c @@ -30,6 +30,8 @@ Boston, MA 02111-1307, USA. */ #include "c-incpath.h" #include "toplev.h" #include "tm_p.h" +#include "cppdefault.h" +#include "prefix.h" /* Pragmas. */ @@ -419,13 +421,55 @@ static const char *framework_defaults [] = "/Library/Frameworks", }; +/* Register the GNU objective-C runtime include path if STDINC. */ + +void +darwin_register_objc_includes (const char *sysroot, const char *iprefix, + int stdinc) +{ + const char *fname; + size_t len; + /* We do not do anything if we do not want the standard includes. */ + if (!stdinc) + return; + + fname = GCC_INCLUDE_DIR "-gnu-runtime"; + + /* Register the GNU OBJC runtime include path if we are compiling OBJC + with GNU-runtime. */ + + if (c_dialect_objc () && !flag_next_runtime) + { + char *str; + /* See if our directory starts with the standard prefix. + "Translate" them, ie. replace /usr/local/lib/gcc... with + IPREFIX and search them first. */ + if (iprefix && (len = cpp_GCC_INCLUDE_DIR_len) != 0 && !sysroot + && !strncmp (fname, cpp_GCC_INCLUDE_DIR, len)) + { + str = concat (iprefix, fname + len, NULL); + /* FIXME: wrap the headers for C++awareness. */ + add_path (str, SYSTEM, /*c++aware=*/false, false); + } + + /* Should this directory start with the sysroot? */ + if (sysroot) + str = concat (sysroot, fname, NULL); + else + str = update_path (fname, ""); + + add_path (str, SYSTEM, /*c++aware=*/false, false); + } +} + /* Register all the system framework paths if STDINC is true and setup the missing_header callback for subframework searching if any frameworks had been registered. */ void -darwin_register_frameworks (int stdinc) +darwin_register_frameworks (const char *sysroot ATTRIBUTE_UNUSED, + const char *iprefix ATTRIBUTE_UNUSED, int stdinc) { if (stdinc) { @@ -449,7 +493,7 @@ darwin_register_frameworks (int stdinc) fails to find a header. We search each file in the include stack, using FUNC, starting from the most deeply nested include and finishing with the main input file. We stop searching when FUNC - returns non-zero. */ + returns nonzero. */ static const char* find_subframework_header (cpp_reader *pfile, const char *header, cpp_dir **dirp) @@ -476,5 +520,3 @@ find_subframework_header (cpp_reader *pfile, const char *header, cpp_dir **dirp) return 0; } - -struct target_c_incpath_s target_c_incpath = C_INCPATH_INIT; diff --git a/gcc/config/darwin-protos.h b/gcc/config/darwin-protos.h index a5ae08e2499..402311c6bb1 100644 --- a/gcc/config/darwin-protos.h +++ b/gcc/config/darwin-protos.h @@ -69,7 +69,7 @@ extern void machopic_select_rtx_section (enum machine_mode, rtx, unsigned HOST_WIDE_INT); extern void darwin_unique_section (tree decl, int reloc); -extern void darwin_asm_named_section (const char *, unsigned int); +extern void darwin_asm_named_section (const char *, unsigned int, tree); extern unsigned int darwin_section_type_flags (tree, const char *, int); extern void darwin_non_lazy_pcrel (FILE *, rtx); diff --git a/gcc/config/darwin.c b/gcc/config/darwin.c index c2353e30912..249ebab247b 100644 --- a/gcc/config/darwin.c +++ b/gcc/config/darwin.c @@ -40,6 +40,7 @@ Boston, MA 02111-1307, USA. */ #include "function.h" #include "ggc.h" #include "langhooks.h" +#include "target.h" #include "tm_p.h" #include "errors.h" #include "hashtab.h" @@ -62,7 +63,7 @@ Boston, MA 02111-1307, USA. */ are required by consumers of the generated code. Currently, gdb uses this to patch in a jump to the overriding function, this allows all uses of the old name to forward to the replacement, - including existing function poiinters and virtual methods. See + including existing function pointers and virtual methods. See rs6000_emit_prologue for the code that handles the nop insertions. The added indirection allows gdb to redirect accesses to static @@ -245,9 +246,8 @@ typedef struct machopic_indirection GTY (()) { /* The SYMBOL_REF for the entity referenced. */ rtx symbol; - /* The IDENTIFIER_NODE giving the name of the stub or non-lazy - pointer. */ - tree ptr_name; + /* The name of the stub or non-lazy pointer. */ + const char * ptr_name; /* True iff this entry is for a stub (as opposed to a non-lazy pointer). */ bool stub_p; @@ -267,7 +267,7 @@ static hashval_t machopic_indirection_hash (const void *slot) { const machopic_indirection *p = (const machopic_indirection *) slot; - return IDENTIFIER_HASH_VALUE (p->ptr_name); + return htab_hash_string (p->ptr_name); } /* Returns true if the KEY is the same as that associated with @@ -276,7 +276,7 @@ machopic_indirection_hash (const void *slot) static int machopic_indirection_eq (const void *slot, const void *key) { - return ((const machopic_indirection *) slot)->ptr_name == (tree) key; + return strcmp (((const machopic_indirection *) slot)->ptr_name, key) == 0; } /* Return the name of the non-lazy pointer (if STUB_P is false) or @@ -287,9 +287,9 @@ machopic_indirection_name (rtx sym_ref, bool stub_p) { char *buffer; const char *name = XSTR (sym_ref, 0); - int namelen = strlen (name); - tree ptr_name; + size_t namelen = strlen (name); machopic_indirection *p; + void ** slot; /* Construct the name of the non-lazy pointer or stub. */ if (stub_p) @@ -328,32 +328,29 @@ machopic_indirection_name (rtx sym_ref, bool stub_p) user_label_prefix, name); } - /* See if we already have it. */ - ptr_name = maybe_get_identifier (buffer); - /* If not, create a mapping from the non-lazy pointer to the - SYMBOL_REF. */ - if (!ptr_name) + if (!machopic_indirections) + machopic_indirections = htab_create_ggc (37, + machopic_indirection_hash, + machopic_indirection_eq, + /*htab_del=*/NULL); + + slot = htab_find_slot_with_hash (machopic_indirections, buffer, + htab_hash_string (buffer), INSERT); + if (*slot) + { + p = (machopic_indirection *) *slot; + } + else { - void **slot; - ptr_name = get_identifier (buffer); p = (machopic_indirection *) ggc_alloc (sizeof (machopic_indirection)); p->symbol = sym_ref; - p->ptr_name = ptr_name; + p->ptr_name = xstrdup (buffer); p->stub_p = stub_p; - p->used = 0; - if (!machopic_indirections) - machopic_indirections - = htab_create_ggc (37, - machopic_indirection_hash, - machopic_indirection_eq, - /*htab_del=*/NULL); - slot = htab_find_slot_with_hash (machopic_indirections, ptr_name, - IDENTIFIER_HASH_VALUE (ptr_name), - INSERT); - *((machopic_indirection **) slot) = p; + p->used = false; + *slot = p; } - return IDENTIFIER_POINTER (ptr_name); + return p->ptr_name; } /* Return the name of the stub for the mcount function. */ @@ -361,7 +358,8 @@ machopic_indirection_name (rtx sym_ref, bool stub_p) const char* machopic_mcount_stub_name (void) { - return "&L*mcount$stub"; + rtx symbol = gen_rtx_SYMBOL_REF (Pmode, "*mcount"); + return machopic_indirection_name (symbol, /*stub_p=*/true); } /* If NAME is the name of a stub or a non-lazy pointer , mark the stub @@ -372,18 +370,27 @@ machopic_mcount_stub_name (void) void machopic_validate_stub_or_non_lazy_ptr (const char *name) { - tree ident = get_identifier (name); - machopic_indirection *p; p = ((machopic_indirection *) - (htab_find_with_hash (machopic_indirections, ident, - IDENTIFIER_HASH_VALUE (ident)))); - if (p) + (htab_find_with_hash (machopic_indirections, name, + htab_hash_string (name)))); + if (p && ! p->used) { - p->used = 1; - mark_referenced (ident); - mark_referenced (get_identifier (XSTR (p->symbol, 0))); + const char *real_name; + tree id; + + p->used = true; + + /* Do what output_addr_const will do when we actually call it. */ + if (SYMBOL_REF_DECL (p->symbol)) + mark_decl_referenced (SYMBOL_REF_DECL (p->symbol)); + + real_name = targetm.strip_name_encoding (XSTR (p->symbol, 0)); + + id = maybe_get_identifier (real_name); + if (id) + mark_referenced (id); } } @@ -849,7 +856,7 @@ machopic_output_indirection (void **slot, void *data) symbol = p->symbol; sym_name = XSTR (symbol, 0); - ptr_name = IDENTIFIER_POINTER (p->ptr_name); + ptr_name = p->ptr_name; if (p->stub_p) { @@ -870,7 +877,7 @@ machopic_output_indirection (void **slot, void *data) else sprintf (stub, "%s%s", user_label_prefix, ptr_name); - machopic_output_stub (asm_out_file, sym, stub); + machopic_output_stub (asm_out_file, sym, stub); } else if (! indirect_data (symbol) && (machopic_symbol_defined_p (symbol) @@ -1180,7 +1187,9 @@ darwin_globalize_label (FILE *stream, const char *name) } void -darwin_asm_named_section (const char *name, unsigned int flags ATTRIBUTE_UNUSED) +darwin_asm_named_section (const char *name, + unsigned int flags ATTRIBUTE_UNUSED, + tree decl ATTRIBUTE_UNUSED) { fprintf (asm_out_file, ".section %s\n", name); } diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h index a89976e14e9..0fd84739d08 100644 --- a/gcc/config/darwin.h +++ b/gcc/config/darwin.h @@ -238,6 +238,7 @@ extern const char *darwin_fix_and_continue_switch; their names so all of them get passed. */ #define LINK_SPEC \ "%{static}%{!static:-dynamic} \ + %{fgnu-runtime:%:replace-outfile(-lobjc -lobjc-gnu)}\ %{!Zdynamiclib: \ %{Zbundle:-bundle} \ %{Zbundle_loader*:-bundle_loader %*} \ @@ -962,7 +963,9 @@ enum machopic_addr_class { #undef ASM_APP_OFF #define ASM_APP_OFF "" -void darwin_register_frameworks (int); +void darwin_register_frameworks (const char *, const char *, int); +void darwin_register_objc_includes (const char *, const char *, int); +#define TARGET_EXTRA_PRE_INCLUDES darwin_register_objc_includes #define TARGET_EXTRA_INCLUDES darwin_register_frameworks void add_framework_path (char *); diff --git a/gcc/config/frv/frv.c b/gcc/config/frv/frv.c index 42c4956eea7..2a810ead521 100644 --- a/gcc/config/frv/frv.c +++ b/gcc/config/frv/frv.c @@ -8638,7 +8638,7 @@ frv_pack_insn_p (rtx insn) - Conditional instructions are scheduled on the assumption that they will be executed. This is usually a good thing, since it - tends to avoid unncessary stalls in the conditional code. + tends to avoid unnecessary stalls in the conditional code. But we want to pack conditional instructions as tightly as possible, in order to optimize the case where they aren't executed. @@ -9553,7 +9553,7 @@ frv_int_to_acc (enum insn_code icode, int opnum, rtx opval) /* ACCs and ACCGs are implicity global registers if media instrinsics are being used. We set up this lazily to avoid creating lots of - unncessary call_insn rtl in non-media code. */ + unnecessary call_insn rtl in non-media code. */ for (i = 0; i <= ACC_MASK; i++) if ((i & ACC_MASK) == i) global_regs[i + ACC_FIRST] = global_regs[i + ACCG_FIRST] = 1; @@ -9647,7 +9647,7 @@ frv_read_iacc_argument (enum machine_mode mode, tree *arglistptr) } /* IACCs are implicity global registers. We set up this lazily to - avoid creating lots of unncessary call_insn rtl when IACCs aren't + avoid creating lots of unnecessary call_insn rtl when IACCs aren't being used. */ regno = INTVAL (op) + IACC_FIRST; for (i = 0; i < HARD_REGNO_NREGS (regno, mode); i++) diff --git a/gcc/config/frv/frv.md b/gcc/config/frv/frv.md index 02dce0dcfa0..ac51410d71f 100644 --- a/gcc/config/frv/frv.md +++ b/gcc/config/frv/frv.md @@ -477,7 +477,7 @@ ;; X + L when each S''[X] is added. If so, set S to the ;; concatenation of S[0]...S[L-1] and S'', then goto (i). ;; -;; (h) If (g) found no permuation, abort. +;; (h) If (g) found no permutation, abort. ;; ;; (i) S is now the sorted sequence for this group, meaning that S[X] ;; issues to unit X. Trim any unwanted nops from the end of S. @@ -6208,6 +6208,8 @@ (UNSPEC_MQLMTHS 155) (UNSPEC_MQSLLHI 156) (UNSPEC_MQSRAHI 157) + (UNSPEC_MASACCS 158) + (UNSPEC_MDASACCS 159) ]) ;; Logic operations: type "mlogic" @@ -7726,52 +7728,45 @@ ;; Accumulator addition/subtraction: type "maddacc" (define_expand "maddaccs" - [(parallel [(set (match_operand:DI 0 "even_acc_operand" "") - (unspec:DI [(match_dup 0) - (match_operand:DI 1 "even_acc_operand" "")] + [(parallel [(set (match_operand:SI 0 "acc_operand" "") + (unspec:SI [(match_operand:DI 1 "even_acc_operand" "")] UNSPEC_MADDACC)) - (set (match_operand:HI 2 "accg_operand" "") - (unspec:HI [(match_dup 2) - (match_operand:HI 3 "accg_operand" "") + (set (match_operand:QI 2 "accg_operand" "") + (unspec:QI [(match_operand:HI 3 "accg_operand" "") (match_dup 4)] UNSPEC_MADDACC))])] "TARGET_MEDIA_REV2" "operands[4] = GEN_INT (FRV_BUILTIN_MADDACCS);") (define_expand "msubaccs" - [(parallel [(set (match_operand:DI 0 "even_acc_operand" "") - (unspec:DI [(match_dup 0) - (match_operand:DI 1 "even_acc_operand" "")] + [(parallel [(set (match_operand:SI 0 "acc_operand" "") + (unspec:SI [(match_operand:DI 1 "even_acc_operand" "")] UNSPEC_MADDACC)) - (set (match_operand:HI 2 "accg_operand" "") - (unspec:HI [(match_dup 2) - (match_operand:HI 3 "accg_operand" "") + (set (match_operand:QI 2 "accg_operand" "") + (unspec:QI [(match_operand:HI 3 "accg_operand" "") (match_dup 4)] UNSPEC_MADDACC))])] "TARGET_MEDIA_REV2" "operands[4] = GEN_INT (FRV_BUILTIN_MSUBACCS);") -(define_expand "masaccs" - [(parallel [(set (match_operand:DI 0 "even_acc_operand" "") - (unspec:DI [(match_dup 0) - (match_operand:DI 1 "even_acc_operand" "")] - UNSPEC_MADDACC)) - (set (match_operand:HI 2 "accg_operand" "") - (unspec:HI [(match_dup 2) - (match_operand:HI 3 "accg_operand" "") - (match_dup 4)] - UNSPEC_MADDACC))])] +(define_insn "masaccs" + [(set (match_operand:DI 0 "even_acc_operand" "=b") + (unspec:DI [(match_operand:DI 1 "even_acc_operand" "b")] + UNSPEC_MASACCS)) + (set (match_operand:HI 2 "accg_operand" "=B") + (unspec:HI [(match_operand:HI 3 "accg_operand" "B")] + UNSPEC_MASACCS))] "TARGET_MEDIA_REV2" - "operands[4] = GEN_INT (FRV_BUILTIN_MASACCS);") + "masaccs %1, %0" + [(set_attr "length" "4") + (set_attr "type" "maddacc")]) (define_insn "*maddacc" - [(set (match_operand:DI 0 "even_acc_operand" "+b") - (unspec:DI [(match_dup 0) - (match_operand:DI 1 "even_acc_operand" "b")] + [(set (match_operand:SI 0 "acc_operand" "=a") + (unspec:SI [(match_operand:DI 1 "even_acc_operand" "b")] UNSPEC_MADDACC)) - (set (match_operand:HI 2 "accg_operand" "+B") - (unspec:HI [(match_dup 2) - (match_operand:HI 3 "accg_operand" "B") + (set (match_operand:QI 2 "accg_operand" "=B") + (unspec:QI [(match_operand:HI 3 "accg_operand" "B") (match_operand:SI 4 "const_int_operand" "n")] UNSPEC_MADDACC))] "TARGET_MEDIA_REV2" @@ -7782,7 +7777,6 @@ default: break; case FRV_BUILTIN_MADDACCS: return \"maddaccs %1, %0\"; case FRV_BUILTIN_MSUBACCS: return \"msubaccs %1, %0\"; - case FRV_BUILTIN_MASACCS: return \"masaccs %1, %0\"; } fatal_insn (\"Bad media insn, maddacc\", insn); @@ -7793,54 +7787,47 @@ ;; Dual accumulator addition/subtraction: type "mdaddacc" (define_expand "mdaddaccs" - [(parallel [(set (match_operand:V4SI 0 "quad_acc_operand" "") - (unspec:V4SI [(match_dup 0) - (match_operand:V4SI 1 "quad_acc_operand" "")] - UNSPEC_MDADDACC)) - (set (match_operand:V4QI 2 "accg_operand" "") - (unspec:V4QI [(match_dup 2) - (match_operand:V4QI 3 "accg_operand" "") - (match_dup 4)] - UNSPEC_MDADDACC))])] + [(parallel [(set (match_operand:DI 0 "even_acc_operand" "") + (unspec:DI [(match_operand:V4SI 1 "quad_acc_operand" "")] + UNSPEC_MDADDACC)) + (set (match_operand:HI 2 "accg_operand" "") + (unspec:HI [(match_operand:V4QI 3 "accg_operand" "") + (match_dup 4)] + UNSPEC_MDADDACC))])] "TARGET_MEDIA_REV2" "operands[4] = GEN_INT (FRV_BUILTIN_MDADDACCS);") (define_expand "mdsubaccs" - [(parallel [(set (match_operand:V4SI 0 "quad_acc_operand" "") - (unspec:V4SI [(match_dup 0) - (match_operand:V4SI 1 "quad_acc_operand" "")] - UNSPEC_MDADDACC)) - (set (match_operand:V4QI 2 "accg_operand" "") - (unspec:V4QI [(match_dup 2) - (match_operand:V4QI 3 "accg_operand" "") - (match_dup 4)] - UNSPEC_MDADDACC))])] + [(parallel [(set (match_operand:DI 0 "even_acc_operand" "") + (unspec:DI [(match_operand:V4SI 1 "quad_acc_operand" "")] + UNSPEC_MDADDACC)) + (set (match_operand:HI 2 "accg_operand" "") + (unspec:HI [(match_operand:V4QI 3 "accg_operand" "") + (match_dup 4)] + UNSPEC_MDADDACC))])] "TARGET_MEDIA_REV2" "operands[4] = GEN_INT (FRV_BUILTIN_MDSUBACCS);") -(define_expand "mdasaccs" - [(parallel [(set (match_operand:V4SI 0 "quad_acc_operand" "") - (unspec:V4SI [(match_dup 0) - (match_operand:V4SI 1 "quad_acc_operand" "")] - UNSPEC_MDADDACC)) - (set (match_operand:V4QI 2 "accg_operand" "") - (unspec:V4QI [(match_dup 2) - (match_operand:V4QI 3 "accg_operand" "") - (match_dup 4)] - UNSPEC_MDADDACC))])] +(define_insn "mdasaccs" + [(set (match_operand:V4SI 0 "quad_acc_operand" "=A") + (unspec:V4SI [(match_operand:V4SI 1 "quad_acc_operand" "A")] + UNSPEC_MDASACCS)) + (set (match_operand:V4QI 2 "accg_operand" "=B") + (unspec:V4QI [(match_operand:V4QI 3 "accg_operand" "B")] + UNSPEC_MDASACCS))] "TARGET_MEDIA_REV2" - "operands[4] = GEN_INT (FRV_BUILTIN_MDASACCS);") + "mdasaccs %1, %0" + [(set_attr "length" "4") + (set_attr "type" "mdaddacc")]) (define_insn "*mdaddacc" - [(set (match_operand:V4SI 0 "quad_acc_operand" "+A") - (unspec:V4SI [(match_dup 0) - (match_operand:V4SI 1 "quad_acc_operand" "A")] - UNSPEC_MDADDACC)) - (set (match_operand:V4QI 2 "accg_operand" "+B") - (unspec:V4QI [(match_dup 2) - (match_operand:V4QI 3 "accg_operand" "B") - (match_operand:SI 4 "const_int_operand" "n")] - UNSPEC_MDADDACC))] + [(set (match_operand:DI 0 "even_acc_operand" "=b") + (unspec:DI [(match_operand:V4SI 1 "quad_acc_operand" "A")] + UNSPEC_MDADDACC)) + (set (match_operand:HI 2 "accg_operand" "=B") + (unspec:HI [(match_operand:V4QI 3 "accg_operand" "B") + (match_operand:SI 4 "const_int_operand" "n")] + UNSPEC_MDADDACC))] "TARGET_MEDIA_REV2" "* { @@ -7849,7 +7836,6 @@ default: break; case FRV_BUILTIN_MDADDACCS: return \"mdaddaccs %1, %0\"; case FRV_BUILTIN_MDSUBACCS: return \"mdsubaccs %1, %0\"; - case FRV_BUILTIN_MDASACCS: return \"mdasaccs %1, %0\"; } fatal_insn (\"Bad media insn, mdaddacc\", insn); diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c index 6cec395483c..564eecdfca2 100644 --- a/gcc/config/h8300/h8300.c +++ b/gcc/config/h8300/h8300.c @@ -114,7 +114,7 @@ static tree h8300_handle_fndecl_attribute (tree *, tree, tree, int, bool *); static tree h8300_handle_eightbit_data_attribute (tree *, tree, tree, int, bool *); static tree h8300_handle_tiny_data_attribute (tree *, tree, tree, int, bool *); #ifndef OBJECT_FORMAT_ELF -static void h8300_asm_named_section (const char *, unsigned int); +static void h8300_asm_named_section (const char *, unsigned int, tree); #endif static int h8300_and_costs (rtx); static int h8300_shift_costs (rtx); @@ -5889,7 +5889,8 @@ h8300_reorg (void) #ifndef OBJECT_FORMAT_ELF static void -h8300_asm_named_section (const char *name, unsigned int flags ATTRIBUTE_UNUSED) +h8300_asm_named_section (const char *name, unsigned int flags ATTRIBUTE_UNUSED, + tree decl) { /* ??? Perhaps we should be using default_coff_asm_named_section. */ fprintf (asm_out_file, "\t.section %s\n", name); diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md index e718a82e40b..2eec3513c79 100644 --- a/gcc/config/h8300/h8300.md +++ b/gcc/config/h8300/h8300.md @@ -5994,7 +5994,7 @@ (match_operand 3 "h8300_src_operand" "")])) (set (match_operand 4 "memory_operand" "") (match_dup 0))] - "0 /* Disabale because it break compiling fp-bit.c. */ + "0 /* Disable because it breaks compiling fp-bit.c. */ && TARGET_H8300SX && peep2_reg_dead_p (3, operands[0]) && !reg_overlap_mentioned_p (operands[0], operands[3]) @@ -6024,7 +6024,7 @@ (match_operator 3 "h8sx_binary_memory_operator" [(match_operand 4 "h8300_dst_operand" "") (match_dup 0)]))] - "0 /* Disabale because it break compiling fp-bit.c. */ + "0 /* Disable because it breaks compiling fp-bit.c. */ && TARGET_H8300SX && peep2_reg_dead_p (2, operands[0]) && !reg_overlap_mentioned_p (operands[0], operands[4])" diff --git a/gcc/config/i386/gmm_malloc.h b/gcc/config/i386/gmm_malloc.h index c2454cdbfb2..5e626640ae4 100644 --- a/gcc/config/i386/gmm_malloc.h +++ b/gcc/config/i386/gmm_malloc.h @@ -47,7 +47,7 @@ _mm_malloc (size_t size, size_t align) return ((void *) 0); /* Assume malloc'd pointer is aligned at least to sizeof (void*). - If necesary, add another sizeof (void*) to store the value + If necessary, add another sizeof (void*) to store the value returned by malloc. Effectively this enforces a minimum alignment of sizeof double. */ if (align < 2 * sizeof (void *)) diff --git a/gcc/config/i386/i386-protos.h b/gcc/config/i386/i386-protos.h index 1c87da6385d..d663b0938a3 100644 --- a/gcc/config/i386/i386-protos.h +++ b/gcc/config/i386/i386-protos.h @@ -206,7 +206,7 @@ extern int ix86_constant_alignment (tree, int); extern tree ix86_handle_shared_attribute (tree *, tree, tree, int, bool *); extern unsigned int i386_pe_section_type_flags (tree, const char *, int); -extern void i386_pe_asm_named_section (const char *, unsigned int); +extern void i386_pe_asm_named_section (const char *, unsigned int, tree); extern int x86_field_alignment (tree, int); #endif diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 80d9d7e0467..03293d0a7f9 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -578,6 +578,7 @@ const int x86_ext_80387_constants = m_K6 | m_ATHLON | m_PENT4 | m_NOCONA | m_PPR /* Some CPU cores are not able to predict more than 4 branch instructions in the 16 byte window. */ const int x86_four_jump_limit = m_PPRO | m_ATHLON_K8 | m_PENT4 | m_NOCONA; +const int x86_schedule = m_PPRO | m_ATHLON_K8 | m_K8 | m_PENT; /* In case the average insn count for single function invocation is lower than this constant, emit fast (but longer) prologue and @@ -1565,6 +1566,10 @@ override_options (void) internal_label_prefix_len = p - internal_label_prefix; *p = '\0'; } + /* When scheduling description is not available, disable scheduler pass so it + won't slow down the compilation and make x87 code slower. */ + if (!TARGET_SCHEDULE) + flag_schedule_insns_after_reload = flag_schedule_insns = 0; } void @@ -7223,15 +7228,20 @@ const char * output_fp_compare (rtx insn, rtx *operands, int eflags_p, int unordered_p) { int stack_top_dies; - rtx cmp_op0 = operands[0]; - rtx cmp_op1 = operands[1]; + rtx cmp_op0, cmp_op1; int is_sse = SSE_REG_P (operands[0]) | SSE_REG_P (operands[1]); if (eflags_p == 2) { - cmp_op0 = cmp_op1; + cmp_op0 = operands[1]; cmp_op1 = operands[2]; } + else + { + cmp_op0 = operands[0]; + cmp_op1 = operands[1]; + } + if (is_sse) { if (GET_MODE (operands[0]) == SFmode) @@ -7251,6 +7261,17 @@ output_fp_compare (rtx insn, rtx *operands, int eflags_p, int unordered_p) stack_top_dies = find_regno_note (insn, REG_DEAD, FIRST_STACK_REG) != 0; + if (cmp_op1 == CONST0_RTX (GET_MODE (cmp_op1))) + { + if (stack_top_dies) + { + output_asm_insn ("ftst\n\tfnstsw\t%0", operands); + return TARGET_USE_FFREEP ? "ffreep\t%y1" : "fstp\t%y1"; + } + else + return "ftst\n\tfnstsw\t%0"; + } + if (STACK_REG_P (cmp_op1) && stack_top_dies && find_regno_note (insn, REG_DEAD, REGNO (cmp_op1)) @@ -9939,7 +9960,7 @@ ix86_split_long_move (rtx operands[]) } } - /* If optimizing for size, attempt to locally unCSE non-zero constants. */ + /* If optimizing for size, attempt to locally unCSE nonzero constants. */ if (optimize_size) { if (GET_CODE (operands[5]) == CONST_INT @@ -10019,30 +10040,88 @@ ix86_split_ashldi (rtx *operands, rtx scratch) emit_insn (gen_x86_shld_1 (high[0], low[0], GEN_INT (count))); ix86_expand_ashlsi3_const (low[0], count); } + return; } - else + + split_di (operands, 1, low, high); + + if (operands[1] == const1_rtx) { - if (!rtx_equal_p (operands[0], operands[1])) - emit_move_insn (operands[0], operands[1]); + /* Assuming we've chosen a QImode capable registers, then 1LL << N + can be done with two 32-bit shifts, no branches, no cmoves. */ + if (ANY_QI_REG_P (low[0]) && ANY_QI_REG_P (high[0])) + { + rtx s, d, flags = gen_rtx_REG (CCZmode, FLAGS_REG); - split_di (operands, 1, low, high); + ix86_expand_clear (low[0]); + ix86_expand_clear (high[0]); + emit_insn (gen_testqi_ccz_1 (operands[2], GEN_INT (32))); + + d = gen_lowpart (QImode, low[0]); + d = gen_rtx_STRICT_LOW_PART (VOIDmode, d); + s = gen_rtx_EQ (QImode, flags, const0_rtx); + emit_insn (gen_rtx_SET (VOIDmode, d, s)); - emit_insn (gen_x86_shld_1 (high[0], low[0], operands[2])); - emit_insn (gen_ashlsi3 (low[0], low[0], operands[2])); + d = gen_lowpart (QImode, high[0]); + d = gen_rtx_STRICT_LOW_PART (VOIDmode, d); + s = gen_rtx_NE (QImode, flags, const0_rtx); + emit_insn (gen_rtx_SET (VOIDmode, d, s)); + } - if (TARGET_CMOVE && (! no_new_pseudos || scratch)) + /* Otherwise, we can get the same results by manually performing + a bit extract operation on bit 5, and then performing the two + shifts. The two methods of getting 0/1 into low/high are exactly + the same size. Avoiding the shift in the bit extract case helps + pentium4 a bit; no one else seems to care much either way. */ + else { - if (! no_new_pseudos) - scratch = force_reg (SImode, const0_rtx); + rtx x; + + if (TARGET_PARTIAL_REG_STALL && !optimize_size) + x = gen_rtx_ZERO_EXTEND (SImode, operands[2]); else - emit_move_insn (scratch, const0_rtx); + x = gen_lowpart (SImode, operands[2]); + emit_insn (gen_rtx_SET (VOIDmode, high[0], x)); - emit_insn (gen_x86_shift_adj_1 (high[0], low[0], operands[2], - scratch)); + emit_insn (gen_lshrsi3 (high[0], high[0], GEN_INT (5))); + emit_insn (gen_andsi3 (high[0], high[0], GEN_INT (1))); + emit_move_insn (low[0], high[0]); + emit_insn (gen_xorsi3 (low[0], low[0], GEN_INT (1))); } + + emit_insn (gen_ashlsi3 (low[0], low[0], operands[2])); + emit_insn (gen_ashlsi3 (high[0], high[0], operands[2])); + return; + } + + if (operands[1] == constm1_rtx) + { + /* For -1LL << N, we can avoid the shld instruction, because we + know that we're shifting 0...31 ones into a -1. */ + emit_move_insn (low[0], constm1_rtx); + if (optimize_size) + emit_move_insn (high[0], low[0]); else - emit_insn (gen_x86_shift_adj_2 (high[0], low[0], operands[2])); + emit_move_insn (high[0], constm1_rtx); + } + else + { + if (!rtx_equal_p (operands[0], operands[1])) + emit_move_insn (operands[0], operands[1]); + + split_di (operands, 1, low, high); + emit_insn (gen_x86_shld_1 (high[0], low[0], operands[2])); } + + emit_insn (gen_ashlsi3 (low[0], low[0], operands[2])); + + if (TARGET_CMOVE && scratch) + { + ix86_expand_clear (scratch); + emit_insn (gen_x86_shift_adj_1 (high[0], low[0], operands[2], scratch)); + } + else + emit_insn (gen_x86_shift_adj_2 (high[0], low[0], operands[2])); } void @@ -10066,15 +10145,8 @@ ix86_split_ashrdi (rtx *operands, rtx scratch) else if (count >= 32) { emit_move_insn (low[0], high[1]); - - if (! reload_completed) - emit_insn (gen_ashrsi3 (high[0], low[0], GEN_INT (31))); - else - { - emit_move_insn (high[0], low[0]); - emit_insn (gen_ashrsi3 (high[0], high[0], GEN_INT (31))); - } - + emit_move_insn (high[0], low[0]); + emit_insn (gen_ashrsi3 (high[0], high[0], GEN_INT (31))); if (count > 32) emit_insn (gen_ashrsi3 (low[0], low[0], GEN_INT (count - 32))); } @@ -10096,10 +10168,8 @@ ix86_split_ashrdi (rtx *operands, rtx scratch) emit_insn (gen_x86_shrd_1 (low[0], high[0], operands[2])); emit_insn (gen_ashrsi3 (high[0], high[0], operands[2])); - if (TARGET_CMOVE && (! no_new_pseudos || scratch)) + if (TARGET_CMOVE && scratch) { - if (! no_new_pseudos) - scratch = gen_reg_rtx (SImode); emit_move_insn (scratch, high[0]); emit_insn (gen_ashrsi3 (scratch, scratch, GEN_INT (31))); emit_insn (gen_x86_shift_adj_1 (low[0], high[0], operands[2], @@ -10124,7 +10194,7 @@ ix86_split_lshrdi (rtx *operands, rtx scratch) if (count >= 32) { emit_move_insn (low[0], high[1]); - emit_move_insn (high[0], const0_rtx); + ix86_expand_clear (high[0]); if (count > 32) emit_insn (gen_lshrsi3 (low[0], low[0], GEN_INT (count - 32))); @@ -10148,13 +10218,9 @@ ix86_split_lshrdi (rtx *operands, rtx scratch) emit_insn (gen_lshrsi3 (high[0], high[0], operands[2])); /* Heh. By reversing the arguments, we can reuse this pattern. */ - if (TARGET_CMOVE && (! no_new_pseudos || scratch)) + if (TARGET_CMOVE && scratch) { - if (! no_new_pseudos) - scratch = force_reg (SImode, const0_rtx); - else - emit_move_insn (scratch, const0_rtx); - + ix86_expand_clear (scratch); emit_insn (gen_x86_shift_adj_1 (low[0], high[0], operands[2], scratch)); } diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index 4c4ce5843db..e3c6d1b8b22 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -243,7 +243,7 @@ extern const int x86_arch_always_fancy_math_387, x86_shift1; extern const int x86_sse_partial_reg_dependency, x86_sse_partial_regs; extern const int x86_sse_typeless_stores, x86_sse_load0_by_pxor; extern const int x86_use_ffreep, x86_sse_partial_regs_for_cvtsd2ss; -extern const int x86_inter_unit_moves; +extern const int x86_inter_unit_moves, x86_schedule; extern int x86_prefetch_sse; #define TARGET_USE_LEAVE (x86_use_leave & TUNEMASK) @@ -298,6 +298,7 @@ extern int x86_prefetch_sse; #define TARGET_REP_MOVL_OPTIMAL (x86_rep_movl_optimal & TUNEMASK) #define TARGET_INTER_UNIT_MOVES (x86_inter_unit_moves & TUNEMASK) #define TARGET_FOUR_JUMP_LIMIT (x86_four_jump_limit & TUNEMASK) +#define TARGET_SCHEDULE (x86_schedule & TUNEMASK) #define TARGET_STACK_PROBE (target_flags & MASK_STACK_PROBE) @@ -2960,13 +2961,18 @@ extern rtx ix86_compare_op1; /* operand 1 for comparisons */ `OPTIMIZE_MODE_SWITCHING' is defined, you must define this macro to return an integer value not larger than the corresponding element in `NUM_MODES_FOR_MODE_SWITCHING', to denote the mode that ENTITY - must be switched into prior to the execution of INSN. */ + must be switched into prior to the execution of INSN. + + The mode UNINITIALIZED is used to force re-load of possibly previously + stored control word after function call. The mode ANY specify that + function has no requirements on the control word and make no changes + in the bits we are interested in. */ #define MODE_NEEDED(ENTITY, I) \ (GET_CODE (I) == CALL_INSN \ || (GET_CODE (I) == INSN && (asm_noperands (PATTERN (I)) >= 0 \ || GET_CODE (PATTERN (I)) == ASM_INPUT))\ - ? I387_CW_ANY \ + ? I387_CW_UNINITIALIZED \ : recog_memoized (I) < 0 \ ? I387_CW_ANY \ : get_attr_i387_cw (I)) @@ -2981,7 +2987,7 @@ extern rtx ix86_compare_op1; /* operand 1 for comparisons */ are to be inserted. */ #define EMIT_MODE_SET(ENTITY, MODE, HARD_REGS_LIVE) \ - ((MODE) != I387_CW_ANY \ + ((MODE) != I387_CW_ANY && (MODE) != I387_CW_UNINITIALIZED \ ? emit_i387_cw_initialization (assign_386_stack_local (HImode, 1), \ assign_386_stack_local (HImode, 2), \ MODE), 0 \ diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index f08c85a4d44..168f2f37a1b 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -431,7 +431,7 @@ ;; Defines rounding mode of an FP operation. -(define_attr "i387_cw" "floor,ceil,trunc,mask_pm,any" +(define_attr "i387_cw" "floor,ceil,trunc,mask_pm,uninitialized,any" (const_string "any")) ;; Describe a user's asm statement. @@ -805,15 +805,7 @@ (match_operand:SF 2 "const0_operand" "X"))] UNSPEC_FNSTSW))] "TARGET_80387" -{ - if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - { - output_asm_insn ("ftst\;fnstsw\t%0", operands); - return TARGET_USE_FFREEP ? "ffreep\t%y1" : "fstp\t%y1"; - } - else - return "ftst\;fnstsw\t%0"; -} + "* return output_fp_compare (insn, operands, 2, 0);" [(set_attr "type" "multi") (set_attr "mode" "SF")]) @@ -825,15 +817,7 @@ (match_operand:DF 2 "const0_operand" "X"))] UNSPEC_FNSTSW))] "TARGET_80387" -{ - if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - { - output_asm_insn ("ftst\;fnstsw\t%0", operands); - return TARGET_USE_FFREEP ? "ffreep\t%y1" : "fstp\t%y1"; - } - else - return "ftst\;fnstsw\t%0"; -} + "* return output_fp_compare (insn, operands, 2, 0);" [(set_attr "type" "multi") (set_attr "mode" "DF")]) @@ -845,15 +829,7 @@ (match_operand:XF 2 "const0_operand" "X"))] UNSPEC_FNSTSW))] "TARGET_80387" -{ - if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - { - output_asm_insn ("ftst\;fnstsw\t%0", operands); - return TARGET_USE_FFREEP ? "ffreep\t%y1" : "fstp\t%y1"; - } - else - return "ftst\;fnstsw\t%0"; -} + "* return output_fp_compare (insn, operands, 2, 0);" [(set_attr "type" "multi") (set_attr "mode" "XF")]) @@ -1032,7 +1008,7 @@ "TARGET_80387 && TARGET_CMOVE && !SSE_FLOAT_MODE_P (GET_MODE (operands[0])) && FLOAT_MODE_P (GET_MODE (operands[0])) - && GET_MODE (operands[0]) == GET_MODE (operands[0])" + && GET_MODE (operands[0]) == GET_MODE (operands[1])" "* return output_fp_compare (insn, operands, 1, 0);" [(set_attr "type" "fcmp") (set (attr "mode") @@ -1050,7 +1026,7 @@ (match_operand 1 "nonimmediate_operand" "f#x,xm#f")))] "TARGET_80387 && SSE_FLOAT_MODE_P (GET_MODE (operands[0])) - && GET_MODE (operands[0]) == GET_MODE (operands[0])" + && GET_MODE (operands[0]) == GET_MODE (operands[1])" "* return output_fp_compare (insn, operands, 1, 0);" [(set_attr "type" "fcmp,ssecomi") (set (attr "mode") @@ -1064,7 +1040,7 @@ (compare:CCFP (match_operand 0 "register_operand" "x") (match_operand 1 "nonimmediate_operand" "xm")))] "SSE_FLOAT_MODE_P (GET_MODE (operands[0])) - && GET_MODE (operands[0]) == GET_MODE (operands[0])" + && GET_MODE (operands[0]) == GET_MODE (operands[1])" "* return output_fp_compare (insn, operands, 1, 0);" [(set_attr "type" "ssecomi") (set (attr "mode") @@ -1906,7 +1882,7 @@ (define_split [(set (match_operand:DI 0 "push_operand" "") (match_operand:DI 1 "immediate_operand" ""))] - "TARGET_64BIT && (flow2_completed || (reload_completed && !flag_peephole2)) + "TARGET_64BIT && (flag_peephole2 ? flow2_completed : reload_completed) && !symbolic_operand (operands[1], DImode) && !x86_64_immediate_operand (operands[1], DImode)" [(set (match_dup 0) (match_dup 1)) @@ -2168,7 +2144,7 @@ (define_split [(set (match_operand:DI 0 "memory_operand" "") (match_operand:DI 1 "immediate_operand" ""))] - "TARGET_64BIT && (flow2_completed || (reload_completed && !flag_peephole2)) + "TARGET_64BIT && (flag_peephole2 ? flow2_completed : reload_completed) && !symbolic_operand (operands[1], DImode) && !x86_64_immediate_operand (operands[1], DImode)" [(set (match_dup 2) (match_dup 3)) @@ -4161,7 +4137,7 @@ (clobber (match_scratch:DF 4 "=&1f"))] "TARGET_80387 && FLOAT_MODE_P (GET_MODE (operands[1])) && (!SSE_FLOAT_MODE_P (GET_MODE (operands[1])) || !TARGET_64BIT)" - "* operands[5] = operands[4]; return output_fix_trunc (insn, operands);" + "* return output_fix_trunc (insn, operands);" [(set_attr "type" "fistp") (set_attr "i387_cw" "trunc") (set_attr "mode" "DI")]) @@ -7924,7 +7900,7 @@ "") (define_insn "*testqi_1" - [(set (reg 17) + [(set (reg FLAGS_REG) (compare (and:QI (match_operand:QI 0 "nonimmediate_operand" "%!*a,q,qm,r") (match_operand:QI 1 "general_operand" "n,n,qn,n")) (const_int 0)))] @@ -10623,20 +10599,11 @@ ;; than 31. (define_expand "ashldi3" - [(parallel [(set (match_operand:DI 0 "shiftdi_operand" "") - (ashift:DI (match_operand:DI 1 "shiftdi_operand" "") - (match_operand:QI 2 "nonmemory_operand" ""))) - (clobber (reg:CC FLAGS_REG))])] + [(set (match_operand:DI 0 "shiftdi_operand" "") + (ashift:DI (match_operand:DI 1 "ashldi_input_operand" "") + (match_operand:QI 2 "nonmemory_operand" "")))] "" -{ - if (!TARGET_64BIT && TARGET_CMOVE && ! immediate_operand (operands[2], QImode)) - { - emit_insn (gen_ashldi3_1 (operands[0], operands[1], operands[2])); - DONE; - } - ix86_expand_binary_operator (ASHIFT, DImode, operands); - DONE; -}) + "ix86_expand_binary_operator (ASHIFT, DImode, operands); DONE;") (define_insn "*ashldi3_1_rex64" [(set (match_operand:DI 0 "nonimmediate_operand" "=rm,r") @@ -10738,41 +10705,35 @@ (const_string "ishift"))) (set_attr "mode" "DI")]) -(define_insn "ashldi3_1" - [(set (match_operand:DI 0 "register_operand" "=r") - (ashift:DI (match_operand:DI 1 "register_operand" "0") - (match_operand:QI 2 "nonmemory_operand" "Jc"))) - (clobber (match_scratch:SI 3 "=&r")) - (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && TARGET_CMOVE" - "#" - [(set_attr "type" "multi")]) - -(define_insn "*ashldi3_2" - [(set (match_operand:DI 0 "register_operand" "=r") - (ashift:DI (match_operand:DI 1 "register_operand" "0") - (match_operand:QI 2 "nonmemory_operand" "Jc"))) +(define_insn "*ashldi3_1" + [(set (match_operand:DI 0 "register_operand" "=&r,r") + (ashift:DI (match_operand:DI 1 "reg_or_pm1_operand" "n,0") + (match_operand:QI 2 "nonmemory_operand" "Jc,Jc"))) (clobber (reg:CC FLAGS_REG))] "!TARGET_64BIT" "#" [(set_attr "type" "multi")]) -(define_split - [(set (match_operand:DI 0 "register_operand" "") - (ashift:DI (match_operand:DI 1 "register_operand" "") - (match_operand:QI 2 "nonmemory_operand" ""))) - (clobber (match_scratch:SI 3 "")) - (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && TARGET_CMOVE && reload_completed" +;; By default we don't ask for a scratch register, because when DImode +;; values are manipulated, registers are already at a premium. But if +;; we have one handy, we won't turn it away. +(define_peephole2 + [(match_scratch:SI 3 "r") + (parallel [(set (match_operand:DI 0 "register_operand" "") + (ashift:DI (match_operand:DI 1 "nonmemory_operand" "") + (match_operand:QI 2 "nonmemory_operand" ""))) + (clobber (reg:CC FLAGS_REG))]) + (match_dup 3)] + "!TARGET_64BIT && TARGET_CMOVE" [(const_int 0)] "ix86_split_ashldi (operands, operands[3]); DONE;") (define_split [(set (match_operand:DI 0 "register_operand" "") - (ashift:DI (match_operand:DI 1 "register_operand" "") + (ashift:DI (match_operand:DI 1 "nonmemory_operand" "") (match_operand:QI 2 "nonmemory_operand" ""))) (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && reload_completed" + "!TARGET_64BIT && (flag_peephole2 ? flow2_completed : reload_completed)" [(const_int 0)] "ix86_split_ashldi (operands, NULL_RTX); DONE;") @@ -10829,7 +10790,7 @@ JUMP_LABEL (tmp) = label; emit_move_insn (operands[0], operands[1]); - emit_move_insn (operands[1], const0_rtx); + ix86_expand_clear (operands[1]); emit_label (label); LABEL_NUSES (label) = 1; @@ -11346,27 +11307,19 @@ ;; See comment above `ashldi3' about how this works. (define_expand "ashrdi3" - [(parallel [(set (match_operand:DI 0 "shiftdi_operand" "") - (ashiftrt:DI (match_operand:DI 1 "shiftdi_operand" "") - (match_operand:QI 2 "nonmemory_operand" ""))) - (clobber (reg:CC FLAGS_REG))])] + [(set (match_operand:DI 0 "shiftdi_operand" "") + (ashiftrt:DI (match_operand:DI 1 "shiftdi_operand" "") + (match_operand:QI 2 "nonmemory_operand" "")))] "" -{ - if (!TARGET_64BIT && TARGET_CMOVE && ! immediate_operand (operands[2], QImode)) - { - emit_insn (gen_ashrdi3_1 (operands[0], operands[1], operands[2])); - DONE; - } - ix86_expand_binary_operator (ASHIFTRT, DImode, operands); - DONE; -}) + "ix86_expand_binary_operator (ASHIFTRT, DImode, operands); DONE;") -(define_insn "ashrdi3_63_rex64" +(define_insn "*ashrdi3_63_rex64" [(set (match_operand:DI 0 "nonimmediate_operand" "=*d,rm") (ashiftrt:DI (match_operand:DI 1 "nonimmediate_operand" "*a,0") (match_operand:DI 2 "const_int_operand" "i,i"))) (clobber (reg:CC FLAGS_REG))] - "TARGET_64BIT && INTVAL (operands[2]) == 63 && (TARGET_USE_CLTD || optimize_size) + "TARGET_64BIT && INTVAL (operands[2]) == 63 + && (TARGET_USE_CLTD || optimize_size) && ix86_binary_operator_ok (ASHIFTRT, DImode, operands)" "@ {cqto|cqo} @@ -11441,18 +11394,7 @@ [(set_attr "type" "ishift") (set_attr "mode" "DI")]) - -(define_insn "ashrdi3_1" - [(set (match_operand:DI 0 "register_operand" "=r") - (ashiftrt:DI (match_operand:DI 1 "register_operand" "0") - (match_operand:QI 2 "nonmemory_operand" "Jc"))) - (clobber (match_scratch:SI 3 "=&r")) - (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && TARGET_CMOVE" - "#" - [(set_attr "type" "multi")]) - -(define_insn "*ashrdi3_2" +(define_insn "*ashrdi3_1" [(set (match_operand:DI 0 "register_operand" "=r") (ashiftrt:DI (match_operand:DI 1 "register_operand" "0") (match_operand:QI 2 "nonmemory_operand" "Jc"))) @@ -11461,13 +11403,17 @@ "#" [(set_attr "type" "multi")]) -(define_split - [(set (match_operand:DI 0 "register_operand" "") - (ashiftrt:DI (match_operand:DI 1 "register_operand" "") - (match_operand:QI 2 "nonmemory_operand" ""))) - (clobber (match_scratch:SI 3 "")) - (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && TARGET_CMOVE && reload_completed" +;; By default we don't ask for a scratch register, because when DImode +;; values are manipulated, registers are already at a premium. But if +;; we have one handy, we won't turn it away. +(define_peephole2 + [(match_scratch:SI 3 "r") + (parallel [(set (match_operand:DI 0 "register_operand" "") + (ashiftrt:DI (match_operand:DI 1 "register_operand" "") + (match_operand:QI 2 "nonmemory_operand" ""))) + (clobber (reg:CC FLAGS_REG))]) + (match_dup 3)] + "!TARGET_64BIT && TARGET_CMOVE" [(const_int 0)] "ix86_split_ashrdi (operands, operands[3]); DONE;") @@ -11476,7 +11422,7 @@ (ashiftrt:DI (match_operand:DI 1 "register_operand" "") (match_operand:QI 2 "nonmemory_operand" ""))) (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && reload_completed" + "!TARGET_64BIT && (flag_peephole2 ? flow2_completed : reload_completed)" [(const_int 0)] "ix86_split_ashrdi (operands, NULL_RTX); DONE;") @@ -11858,20 +11804,11 @@ ;; See comment above `ashldi3' about how this works. (define_expand "lshrdi3" - [(parallel [(set (match_operand:DI 0 "shiftdi_operand" "") - (lshiftrt:DI (match_operand:DI 1 "shiftdi_operand" "") - (match_operand:QI 2 "nonmemory_operand" ""))) - (clobber (reg:CC FLAGS_REG))])] + [(set (match_operand:DI 0 "shiftdi_operand" "") + (lshiftrt:DI (match_operand:DI 1 "shiftdi_operand" "") + (match_operand:QI 2 "nonmemory_operand" "")))] "" -{ - if (!TARGET_64BIT && TARGET_CMOVE && ! immediate_operand (operands[2], QImode)) - { - emit_insn (gen_lshrdi3_1 (operands[0], operands[1], operands[2])); - DONE; - } - ix86_expand_binary_operator (LSHIFTRT, DImode, operands); - DONE; -}) + "ix86_expand_binary_operator (LSHIFTRT, DImode, operands); DONE;") (define_insn "*lshrdi3_1_one_bit_rex64" [(set (match_operand:DI 0 "nonimmediate_operand" "=rm") @@ -11937,17 +11874,7 @@ [(set_attr "type" "ishift") (set_attr "mode" "DI")]) -(define_insn "lshrdi3_1" - [(set (match_operand:DI 0 "register_operand" "=r") - (lshiftrt:DI (match_operand:DI 1 "register_operand" "0") - (match_operand:QI 2 "nonmemory_operand" "Jc"))) - (clobber (match_scratch:SI 3 "=&r")) - (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && TARGET_CMOVE" - "#" - [(set_attr "type" "multi")]) - -(define_insn "*lshrdi3_2" +(define_insn "*lshrdi3_1" [(set (match_operand:DI 0 "register_operand" "=r") (lshiftrt:DI (match_operand:DI 1 "register_operand" "0") (match_operand:QI 2 "nonmemory_operand" "Jc"))) @@ -11956,13 +11883,17 @@ "#" [(set_attr "type" "multi")]) -(define_split - [(set (match_operand:DI 0 "register_operand" "") - (lshiftrt:DI (match_operand:DI 1 "register_operand" "") - (match_operand:QI 2 "nonmemory_operand" ""))) - (clobber (match_scratch:SI 3 "")) - (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && TARGET_CMOVE && reload_completed" +;; By default we don't ask for a scratch register, because when DImode +;; values are manipulated, registers are already at a premium. But if +;; we have one handy, we won't turn it away. +(define_peephole2 + [(match_scratch:SI 3 "r") + (parallel [(set (match_operand:DI 0 "register_operand" "") + (lshiftrt:DI (match_operand:DI 1 "register_operand" "") + (match_operand:QI 2 "nonmemory_operand" ""))) + (clobber (reg:CC FLAGS_REG))]) + (match_dup 3)] + "!TARGET_64BIT && TARGET_CMOVE" [(const_int 0)] "ix86_split_lshrdi (operands, operands[3]); DONE;") @@ -11971,7 +11902,7 @@ (lshiftrt:DI (match_operand:DI 1 "register_operand" "") (match_operand:QI 2 "nonmemory_operand" ""))) (clobber (reg:CC FLAGS_REG))] - "!TARGET_64BIT && reload_completed" + "!TARGET_64BIT && (flag_peephole2 ? flow2_completed : reload_completed)" [(const_int 0)] "ix86_split_lshrdi (operands, NULL_RTX); DONE;") @@ -12840,7 +12771,7 @@ [(set_attr "type" "setcc") (set_attr "mode" "QI")]) -(define_insn "setcc_2" +(define_insn "*setcc_2" [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+qm")) (match_operator:QI 1 "ix86_comparison_operator" [(reg 17) (const_int 0)]))] diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md index 220b01c81cc..ec747aef20e 100644 --- a/gcc/config/i386/predicates.md +++ b/gcc/config/i386/predicates.md @@ -553,14 +553,25 @@ return op == const1_rtx || op == constm1_rtx; }) +;; True for registers, or 1 or -1. Used to optimize double-word shifts. +(define_predicate "reg_or_pm1_operand" + (ior (match_operand 0 "register_operand") + (and (match_code "const_int") + (match_test "op == const1_rtx || op == constm1_rtx")))) + ;; True if OP is acceptable as operand of DImode shift expander. (define_predicate "shiftdi_operand" (if_then_else (match_test "TARGET_64BIT") (match_operand 0 "nonimmediate_operand") (match_operand 0 "register_operand"))) +(define_predicate "ashldi_input_operand" + (if_then_else (match_test "TARGET_64BIT") + (match_operand 0 "nonimmediate_operand") + (match_operand 0 "reg_or_pm1_operand"))) + ;; Return true if OP is a vector load from the constant pool with just -;; the first element non-zero. +;; the first element nonzero. (define_predicate "zero_extended_scalar_load_operand" (match_code "mem") { diff --git a/gcc/config/i386/winnt.c b/gcc/config/i386/winnt.c index 7e32ca94257..a2a7a3076c6 100644 --- a/gcc/config/i386/winnt.c +++ b/gcc/config/i386/winnt.c @@ -99,8 +99,7 @@ associated_type (tree 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') + else if (DECL_CONTEXT (decl) && TYPE_P (DECL_CONTEXT (decl))) t = DECL_CONTEXT (decl); return t; @@ -622,7 +621,8 @@ i386_pe_section_type_flags (tree decl, const char *name, int reloc) } void -i386_pe_asm_named_section (const char *name, unsigned int flags) +i386_pe_asm_named_section (const char *name, unsigned int flags, + tree decl ATTRIBUTE_UNUSED) { char flagchars[8], *f = flagchars; diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 9ffb2cb8d11..13cd7304487 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -276,6 +276,7 @@ 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); static tree ia64_gimplify_va_arg (tree, tree, tree *, tree *); +static bool ia64_scalar_mode_supported_p (enum machine_mode mode); /* Table of valid machine attributes. */ @@ -416,6 +417,9 @@ static const struct attribute_spec ia64_attribute_table[] = #undef TARGET_UNWIND_EMIT #define TARGET_UNWIND_EMIT process_for_unwind_directive +#undef TARGET_SCALAR_MODE_SUPPORTED_P +#define TARGET_SCALAR_MODE_SUPPORTED_P ia64_scalar_mode_supported_p + struct gcc_target targetm = TARGET_INITIALIZER; typedef enum @@ -3365,6 +3369,12 @@ ia64_pass_by_reference (CUMULATIVE_ARGS *cum ATTRIBUTE_UNUSED, static bool ia64_function_ok_for_sibcall (tree decl, tree exp ATTRIBUTE_UNUSED) { + /* We can't perform a sibcall if the current function has the syscall_linkage + attribute. */ + if (lookup_attribute ("syscall_linkage", + TYPE_ATTRIBUTES (TREE_TYPE (current_function_decl)))) + return false; + /* We must always return with our current GP. This means we can only sibcall to functions defined in the current module. */ return decl && (*targetm.binds_local_p) (decl); @@ -8480,4 +8490,29 @@ ia64_struct_value_rtx (tree fntype, return gen_rtx_REG (Pmode, GR_REG (8)); } +static bool +ia64_scalar_mode_supported_p (enum machine_mode mode) +{ + switch (mode) + { + case QImode: + case HImode: + case SImode: + case DImode: + case TImode: + return true; + + case SFmode: + case DFmode: + case XFmode: + return true; + + case TFmode: + return TARGET_HPUX; + + default: + return false; + } +} + #include "gt-ia64.h" diff --git a/gcc/config/ia64/ia64.md b/gcc/config/ia64/ia64.md index 4b9a4b95b32..31f14bb1765 100644 --- a/gcc/config/ia64/ia64.md +++ b/gcc/config/ia64/ia64.md @@ -345,7 +345,7 @@ (and (match_code "const_int") (match_test "INTVAL (op) >= 0 && INTVAL (op) < 32"))) -;; True if OP is one of the immediate valuse 2, 4, 8, or 16. +;; True if OP is one of the immediate values 2, 4, 8, or 16. (define_predicate "shladd_operand" (and (match_code "const_int") (match_test "INTVAL (op) == 2 || INTVAL (op) == 4 || diff --git a/gcc/config/ip2k/libgcc.S b/gcc/config/ip2k/libgcc.S index 6a0e8c636f2..a01b2f7204a 100644 --- a/gcc/config/ip2k/libgcc.S +++ b/gcc/config/ip2k/libgcc.S @@ -1498,7 +1498,7 @@ _abort: #endif #if defined(Lwrite) - /* Dummy entrypoint to suppress problems with glue code. */ + /* Dummy entry point to suppress problems with glue code. */ .sect .text.libgcc,"ax" .global _write .func write, _write diff --git a/gcc/config/m32r/m32r.md b/gcc/config/m32r/m32r.md index 8cd2679d448..f1236d4dbb2 100644 --- a/gcc/config/m32r/m32r.md +++ b/gcc/config/m32r/m32r.md @@ -169,7 +169,7 @@ ;; Load/store instructions do 6 stages: IF D E MEM1 MEM2 WB. ;; MEM1 may require more than one cycle depending on locality. We -;; optimistically assume all memory is nearby, ie. MEM1 takes only +;; optimistically assume all memory is nearby, i.e. MEM1 takes only ;; one cycle. Hence, ready latency is 3. ;; The M32Rx can do short load/store only on the left pipe. diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c index dd469c3a7df..d85c7c60c09 100644 --- a/gcc/config/m68k/m68k.c +++ b/gcc/config/m68k/m68k.c @@ -108,7 +108,7 @@ static const char *singlemove_string (rtx *); static void m68k_output_function_prologue (FILE *, HOST_WIDE_INT); static void m68k_output_function_epilogue (FILE *, HOST_WIDE_INT); #ifdef M68K_TARGET_COFF -static void m68k_coff_asm_named_section (const char *, unsigned int); +static void m68k_coff_asm_named_section (const char *, unsigned int, tree); #endif /* M68K_TARGET_COFF */ static void m68k_output_mi_thunk (FILE *, tree, HOST_WIDE_INT, HOST_WIDE_INT, tree); @@ -3324,7 +3324,8 @@ output_xorsi3 (rtx *operands) /* Output assembly to switch to section NAME with attribute FLAGS. */ static void -m68k_coff_asm_named_section (const char *name, unsigned int flags) +m68k_coff_asm_named_section (const char *name, unsigned int flags, + tree decl ATTRIBUTE_UNUSED) { char flagchar; diff --git a/gcc/config/m68k/m68kelf.h b/gcc/config/m68k/m68kelf.h index 68218e556d2..51d0641501f 100644 --- a/gcc/config/m68k/m68kelf.h +++ b/gcc/config/m68k/m68kelf.h @@ -159,7 +159,7 @@ do { \ #endif /* The `string' directive on m68k svr4 does not handle string with - escape char (ie., `\') right. Use normal way to output ASCII bytes + escape char (i.e., `\') right. Use normal way to output ASCII bytes seems to be safer. */ #undef ASM_OUTPUT_ASCII #define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \ diff --git a/gcc/config/mcore/mcore.c b/gcc/config/mcore/mcore.c index d121848209a..bdcbde99de5 100644 --- a/gcc/config/mcore/mcore.c +++ b/gcc/config/mcore/mcore.c @@ -138,7 +138,7 @@ const struct attribute_spec mcore_attribute_table[]; static tree mcore_handle_naked_attribute (tree *, tree, tree, int, bool *); #ifdef OBJECT_FORMAT_ELF static void mcore_asm_named_section (const char *, - unsigned int); + unsigned int, tree); #endif static void mcore_unique_section (tree, int); static void mcore_encode_section_info (tree, rtx, int); @@ -3424,7 +3424,9 @@ mcore_naked_function_p (void) #ifdef OBJECT_FORMAT_ELF static void -mcore_asm_named_section (const char *name, unsigned int flags ATTRIBUTE_UNUSED) +mcore_asm_named_section (const char *name, + unsigned int flags ATTRIBUTE_UNUSED, + tree decl ATTRIBUTE_UNUSED) { fprintf (asm_out_file, "\t.section %s\n", name); } diff --git a/gcc/config/mcore/mcore.md b/gcc/config/mcore/mcore.md index b45a3c6c815..ab3ce8aff68 100644 --- a/gcc/config/mcore/mcore.md +++ b/gcc/config/mcore/mcore.md @@ -3157,7 +3157,7 @@ }") ; experimental - do the constant folding ourselves. note that this isn't -; re-applied like we'd really want. ie., four ands collapse into two +; re-applied like we'd really want. i.e., four ands collapse into two ; instead of one. this is because peepholes are applied as a sliding ; window. the peephole does not generate new rtl's, but instead slides ; across the rtl's generating machine instructions. it would be nice diff --git a/gcc/config/mips/mips-ps-3d.md b/gcc/config/mips/mips-ps-3d.md index 766abdc3d64..911c4a4555d 100644 --- a/gcc/config/mips/mips-ps-3d.md +++ b/gcc/config/mips/mips-ps-3d.md @@ -277,7 +277,7 @@ (set_attr "mode" "SF")]) ;---------------------------------------------------------------------------- -; Floating Point Comparisions for Scalars +; Floating Point Comparisons for Scalars ;---------------------------------------------------------------------------- (define_insn "mips_cabs_cond_" @@ -293,7 +293,7 @@ ;---------------------------------------------------------------------------- -; Floating Point Comparisions for Four Singles +; Floating Point Comparisons for Four Singles ;---------------------------------------------------------------------------- (define_insn_and_split "mips_c_cond_4s" @@ -356,7 +356,7 @@ ;---------------------------------------------------------------------------- -; Floating Point Comparisions for Paired Singles +; Floating Point Comparisons for Paired Singles ;---------------------------------------------------------------------------- (define_insn "mips_c_cond_ps" diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index b3be4bb418b..c564f4e7f18 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -1935,7 +1935,7 @@ mips_rtx_costs (rtx x, int code, int outer_code, int *total) Given the choice between "li R1,0...255" and "move R1,R2" (where R2 is a known constant), it is usually better to use "li", - since we do not want to unnessarily extend the lifetime of R2. */ + since we do not want to unnecessarily extend the lifetime of R2. */ if (outer_code == SET && INTVAL (x) >= 0 && INTVAL (x) < 256) @@ -9410,6 +9410,36 @@ static const struct builtin_description mips_bdesc[] = MIPS_FP_CONDITIONS (CMP_BUILTINS) }; +/* Builtin functions for the SB-1 processor. */ + +#define CODE_FOR_mips_sqrt_ps CODE_FOR_sqrtv2sf2 + +static const struct builtin_description sb1_bdesc[] = +{ + DIRECT_BUILTIN (sqrt_ps, MIPS_V2SF_FTYPE_V2SF, MASK_PAIRED_SINGLE) +}; + +/* This helps provide a mapping from builtin function codes to bdesc + arrays. */ + +struct bdesc_map +{ + /* The builtin function table that this entry describes. */ + const struct builtin_description *bdesc; + + /* The number of entries in the builtin function table. */ + unsigned int size; + + /* The target processor that supports these builtin functions. + PROCESSOR_DEFAULT means we enable them for all processors. */ + enum processor_type proc; +}; + +static const struct bdesc_map bdesc_arrays[] = +{ + { mips_bdesc, ARRAY_SIZE (mips_bdesc), PROCESSOR_DEFAULT }, + { sb1_bdesc, ARRAY_SIZE (sb1_bdesc), PROCESSOR_SB1 } +}; /* Take the head of argument list *ARGLIST and convert it into a form suitable for input operand OP of instruction ICODE. Return the value @@ -9457,15 +9487,28 @@ mips_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED, enum mips_builtin_type type; tree fndecl, arglist; unsigned int fcode; + const struct builtin_description *bdesc; + const struct bdesc_map *m; fndecl = TREE_OPERAND (TREE_OPERAND (exp, 0), 0); arglist = TREE_OPERAND (exp, 1); fcode = DECL_FUNCTION_CODE (fndecl); - if (fcode >= ARRAY_SIZE (mips_bdesc)) + + bdesc = NULL; + for (m = bdesc_arrays; m < &bdesc_arrays[ARRAY_SIZE (bdesc_arrays)]; m++) + { + if (fcode < m->size) + { + bdesc = m->bdesc; + icode = bdesc[fcode].icode; + type = bdesc[fcode].builtin_type; + break; + } + fcode -= m->size; + } + if (bdesc == NULL) return 0; - icode = mips_bdesc[fcode].icode; - type = mips_bdesc[fcode].builtin_type; switch (type) { case MIPS_BUILTIN_DIRECT: @@ -9473,7 +9516,7 @@ mips_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED, case MIPS_BUILTIN_MOVT: case MIPS_BUILTIN_MOVF: - return mips_expand_builtin_movtf (type, icode, mips_bdesc[fcode].cond, + return mips_expand_builtin_movtf (type, icode, bdesc[fcode].cond, target, arglist); case MIPS_BUILTIN_CMP_ANY: @@ -9481,7 +9524,7 @@ mips_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED, case MIPS_BUILTIN_CMP_UPPER: case MIPS_BUILTIN_CMP_LOWER: case MIPS_BUILTIN_CMP_SINGLE: - return mips_expand_builtin_compare (type, icode, mips_bdesc[fcode].cond, + return mips_expand_builtin_compare (type, icode, bdesc[fcode].cond, target, arglist); default: @@ -9495,8 +9538,10 @@ void mips_init_builtins (void) { const struct builtin_description *d; + const struct bdesc_map *m; tree types[(int) MIPS_MAX_FTYPE_MAX]; tree V2SF_type_node; + unsigned int offset; /* We have only builtins for -mpaired-single and -mips3d. */ if (!TARGET_PAIRED_SINGLE_FLOAT) @@ -9561,10 +9606,20 @@ mips_init_builtins (void) = build_function_type_list (double_type_node, double_type_node, double_type_node, NULL_TREE); - for (d = mips_bdesc; d < &mips_bdesc[ARRAY_SIZE (mips_bdesc)]; d++) - if ((d->target_flags & target_flags) == d->target_flags) - lang_hooks.builtin_function (d->name, types[d->function_type], - d - mips_bdesc, BUILT_IN_MD, NULL, NULL); + /* Iterate through all of the bdesc arrays, initializing all of the + builtin functions. */ + + offset = 0; + for (m = bdesc_arrays; m < &bdesc_arrays[ARRAY_SIZE (bdesc_arrays)]; m++) + { + if (m->proc == PROCESSOR_DEFAULT || (m->proc == mips_arch)) + for (d = m->bdesc; d < &m->bdesc[m->size]; d++) + if ((d->target_flags & target_flags) == d->target_flags) + lang_hooks.builtin_function (d->name, types[d->function_type], + d - m->bdesc + offset, + BUILT_IN_MD, NULL, NULL); + offset += m->size; + } } /* Expand a MIPS_BUILTIN_DIRECT function. ICODE is the code of the @@ -9604,7 +9659,7 @@ mips_expand_builtin_direct (enum insn_code icode, rtx target, tree arglist) /* Expand a __builtin_mips_movt_*_ps() or __builtin_mips_movf_*_ps() function (TYPE says which). ARGLIST is the list of arguments to the function, ICODE is the instruction that should be used to compare - the first two arguments, and COND is the conditon it should test. + the first two arguments, and COND is the condition it should test. TARGET, if nonnull, suggests a good place to put the result. */ static rtx diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index 3428ac9a4fe..37c82a9e38e 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -302,6 +302,7 @@ extern const struct mips_cpu_info *mips_tune_info; #define TARGET_MIPS5500 (mips_arch == PROCESSOR_R5500) #define TARGET_MIPS7000 (mips_arch == PROCESSOR_R7000) #define TARGET_MIPS9000 (mips_arch == PROCESSOR_R9000) +#define TARGET_SB1 (mips_arch == PROCESSOR_SB1) #define TARGET_SR71K (mips_arch == PROCESSOR_SR71000) /* Scheduling target defines. */ @@ -822,11 +823,6 @@ extern const struct mips_cpu_info *mips_tune_info; #define GENERATE_MULT3_DI ((TARGET_MIPS3900) \ && !TARGET_MIPS16) -/* Macros to decide whether certain features are available or not, - depending on the instruction set architecture level. */ - -#define HAVE_SQRT_P() (!ISA_MIPS1) - /* True if the ABI can only work with 64-bit integer registers. We generally allow ad-hoc variations for TARGET_SINGLE_FLOAT, but otherwise floating-point registers must also be 64-bit. */ @@ -1295,8 +1291,6 @@ extern const struct mips_cpu_info *mips_tune_info; #define POINTER_SIZE ((TARGET_LONG64 && TARGET_64BIT) ? 64 : 32) #endif -#define POINTERS_EXTEND_UNSIGNED 0 - /* Allocation boundary (in *bits*) for storing arguments in argument list. */ #define PARM_BOUNDARY ((mips_abi == ABI_O64 \ || TARGET_NEWABI \ diff --git a/gcc/config/mips/mips.md b/gcc/config/mips/mips.md index 9390ed03b21..fb50b3bdab2 100644 --- a/gcc/config/mips/mips.md +++ b/gcc/config/mips/mips.md @@ -381,7 +381,17 @@ ;; Therefore, we only allow div.s if not working around SB-1 rev2 ;; errata or if a slight loss of precision is OK. (define_mode_attr divide_condition - [DF (SF "!TARGET_FIX_SB1 || flag_unsafe_math_optimizations")]) + [DF (SF "!TARGET_FIX_SB1 || flag_unsafe_math_optimizations") + (V2SF "TARGET_SB1 && (!TARGET_FIX_SB1 || flag_unsafe_math_optimizations)")]) + +; This attribute gives the condition for which sqrt instructions exist. +(define_mode_attr sqrt_condition + [(SF "!ISA_MIPS1") (DF "!ISA_MIPS1") (V2SF "TARGET_SB1")]) + +; This attribute gives the condition for which recip and rsqrt instructions +; exist. +(define_mode_attr recip_condition + [(SF "ISA_HAS_FP4") (DF "ISA_HAS_FP4") (V2SF "TARGET_SB1")]) ;; This code macro allows all branch instructions to be generated from ;; a single define_expand template. @@ -1703,9 +1713,9 @@ ;; (define_expand "div3" - [(set (match_operand:SCALARF 0 "register_operand") - (div:SCALARF (match_operand:SCALARF 1 "reg_or_1_operand") - (match_operand:SCALARF 2 "register_operand")))] + [(set (match_operand:ANYF 0 "register_operand") + (div:ANYF (match_operand:ANYF 1 "reg_or_1_operand") + (match_operand:ANYF 2 "register_operand")))] "" { if (const_1_operand (operands[1], mode)) @@ -1726,9 +1736,9 @@ ;; long latency op destination register. (define_insn "*div3" - [(set (match_operand:SCALARF 0 "register_operand" "=f") - (div:SCALARF (match_operand:SCALARF 1 "register_operand" "f") - (match_operand:SCALARF 2 "register_operand" "f")))] + [(set (match_operand:ANYF 0 "register_operand" "=f") + (div:ANYF (match_operand:ANYF 1 "register_operand" "f") + (match_operand:ANYF 2 "register_operand" "f")))] "" { if (TARGET_FIX_SB1) @@ -1737,17 +1747,17 @@ return "div.\t%0,%1,%2"; } [(set_attr "type" "fdiv") - (set_attr "mode" "") + (set_attr "mode" "") (set (attr "length") (if_then_else (ne (symbol_ref "TARGET_FIX_SB1") (const_int 0)) (const_int 8) (const_int 4)))]) (define_insn "*recip3" - [(set (match_operand:SCALARF 0 "register_operand" "=f") - (div:SCALARF (match_operand:SCALARF 1 "const_1_operand" "") - (match_operand:SCALARF 2 "register_operand" "f")))] - "ISA_HAS_FP4 && flag_unsafe_math_optimizations" + [(set (match_operand:ANYF 0 "register_operand" "=f") + (div:ANYF (match_operand:ANYF 1 "const_1_operand" "") + (match_operand:ANYF 2 "register_operand" "f")))] + " && flag_unsafe_math_optimizations" { if (TARGET_FIX_SB1) return "recip.\t%0,%2\;mov.\t%0,%0"; @@ -1755,7 +1765,7 @@ return "recip.\t%0,%2"; } [(set_attr "type" "frdiv") - (set_attr "mode" "") + (set_attr "mode" "") (set (attr "length") (if_then_else (ne (symbol_ref "TARGET_FIX_SB1") (const_int 0)) (const_int 8) @@ -1798,9 +1808,9 @@ ;; "*div[sd]f3" comment for details). (define_insn "sqrt2" - [(set (match_operand:SCALARF 0 "register_operand" "=f") - (sqrt:SCALARF (match_operand:SCALARF 1 "register_operand" "f")))] - "HAVE_SQRT_P()" + [(set (match_operand:ANYF 0 "register_operand" "=f") + (sqrt:ANYF (match_operand:ANYF 1 "register_operand" "f")))] + "" { if (TARGET_FIX_SB1) return "sqrt.\t%0,%1\;mov.\t%0,%0"; @@ -1808,18 +1818,17 @@ return "sqrt.\t%0,%1"; } [(set_attr "type" "fsqrt") - (set_attr "mode" "") + (set_attr "mode" "") (set (attr "length") (if_then_else (ne (symbol_ref "TARGET_FIX_SB1") (const_int 0)) (const_int 8) (const_int 4)))]) (define_insn "*rsqrta" - [(set (match_operand:SCALARF 0 "register_operand" "=f") - (div:SCALARF - (match_operand:SCALARF 1 "const_1_operand" "") - (sqrt:SCALARF (match_operand:SCALARF 2 "register_operand" "f"))))] - "ISA_HAS_FP4 && flag_unsafe_math_optimizations" + [(set (match_operand:ANYF 0 "register_operand" "=f") + (div:ANYF (match_operand:ANYF 1 "const_1_operand" "") + (sqrt:ANYF (match_operand:ANYF 2 "register_operand" "f"))))] + " && flag_unsafe_math_optimizations" { if (TARGET_FIX_SB1) return "rsqrt.\t%0,%2\;mov.\t%0,%0"; @@ -1827,18 +1836,17 @@ return "rsqrt.\t%0,%2"; } [(set_attr "type" "frsqrt") - (set_attr "mode" "") + (set_attr "mode" "") (set (attr "length") (if_then_else (ne (symbol_ref "TARGET_FIX_SB1") (const_int 0)) (const_int 8) (const_int 4)))]) (define_insn "*rsqrtb" - [(set (match_operand:SCALARF 0 "register_operand" "=f") - (sqrt:SCALARF - (div:SCALARF (match_operand:SCALARF 1 "const_1_operand" "") - (match_operand:SCALARF 2 "register_operand" "f"))))] - "ISA_HAS_FP4 && flag_unsafe_math_optimizations" + [(set (match_operand:ANYF 0 "register_operand" "=f") + (sqrt:ANYF (div:ANYF (match_operand:ANYF 1 "const_1_operand" "") + (match_operand:ANYF 2 "register_operand" "f"))))] + " && flag_unsafe_math_optimizations" { if (TARGET_FIX_SB1) return "rsqrt.\t%0,%2\;mov.\t%0,%0"; @@ -1846,7 +1854,7 @@ return "rsqrt.\t%0,%2"; } [(set_attr "type" "frsqrt") - (set_attr "mode" "") + (set_attr "mode" "") (set (attr "length") (if_then_else (ne (symbol_ref "TARGET_FIX_SB1") (const_int 0)) (const_int 8) diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 7c875817b40..4cefce56b3b 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -9342,8 +9342,7 @@ pa_select_section (tree exp, int reloc, else readonly_data_section (); } - else if (TREE_CODE_CLASS (TREE_CODE (exp)) == 'c' - && !reloc) + else if (CONSTANT_CLASS_P (exp) && !reloc) readonly_data_section (); else if (TARGET_SOM && TREE_CODE (exp) == VAR_DECL diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 7e4e1fd9fcf..5c5d8bf39f0 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1770,7 +1770,7 @@ forget_section (void) \ && TREE_READONLY (DECL) && ! TREE_SIDE_EFFECTS (DECL) \ && (! DECL_INITIAL (DECL) || ! reloc_needed (DECL_INITIAL (DECL))) \ && !flag_pic) \ - || (TREE_CODE_CLASS (TREE_CODE (DECL)) == 'c')) + || CONSTANT_CLASS_P (DECL)) #define FUNCTION_NAME_P(NAME) (*(NAME) == '@') diff --git a/gcc/config/rs6000/aix.h b/gcc/config/rs6000/aix.h index 38196d7f324..cb674c82841 100644 --- a/gcc/config/rs6000/aix.h +++ b/gcc/config/rs6000/aix.h @@ -228,7 +228,7 @@ code that does the save/restore is generated by the linker, so we have no good way to determine at compile time what to do. */ -#ifdef __powerpc64__ +#ifdef __64BIT__ #define MD_FROB_UPDATE_CONTEXT(CTX, FS) \ do { \ if ((FS)->regs.reg[2].how == REG_UNSAVED) \ diff --git a/gcc/config/rs6000/darwin.h b/gcc/config/rs6000/darwin.h index 44ae79ac38c..6e341fde4fb 100644 --- a/gcc/config/rs6000/darwin.h +++ b/gcc/config/rs6000/darwin.h @@ -240,11 +240,14 @@ do { \ symbol. */ /* ? */ #undef ASM_OUTPUT_ALIGNED_COMMON -#define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED) \ - do { fputs (".comm ", (FILE)); \ - RS6000_OUTPUT_BASENAME ((FILE), (NAME)); \ - fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED"\n",\ - (SIZE)); } while (0) +#define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED) \ + do { \ + unsigned HOST_WIDE_INT _new_size = SIZE; \ + fputs (".comm ", (FILE)); \ + RS6000_OUTPUT_BASENAME ((FILE), (NAME)); \ + if (_new_size == 0) _new_size = 1; \ + fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED"\n", _new_size); \ + } while (0) /* Override the standard rs6000 definition. */ diff --git a/gcc/config/rs6000/linux-unwind.h b/gcc/config/rs6000/linux-unwind.h index bb4f0cf90db..4212dfed9aa 100644 --- a/gcc/config/rs6000/linux-unwind.h +++ b/gcc/config/rs6000/linux-unwind.h @@ -32,6 +32,8 @@ struct gcc_pt_regs unsigned long orig_gpr3; unsigned long ctr; unsigned long link; + unsigned long xer; + unsigned long ccr; }; struct gcc_sigcontext @@ -174,6 +176,10 @@ ppc_fallback_frame_state (struct _Unwind_Context *context, = (long)&(sc->regs->gpr[i]) - new_cfa; } + fs->regs.reg[CR2_REGNO].how = REG_SAVED_OFFSET; + fs->regs.reg[CR2_REGNO].loc.offset + = (long)&(sc->regs->ccr) - new_cfa; + fs->regs.reg[LINK_REGISTER_REGNUM].how = REG_SAVED_OFFSET; fs->regs.reg[LINK_REGISTER_REGNUM].loc.offset = (long)&(sc->regs->link) - new_cfa; diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h index 410f31ee49b..68a9955a4fd 100644 --- a/gcc/config/rs6000/linux64.h +++ b/gcc/config/rs6000/linux64.h @@ -258,7 +258,7 @@ extern int dot_symbols; than a doubleword should be padded upward or downward. You could reasonably assume that they follow the normal rules for structure layout treating the parameter area as any other block of memory, - then map the reg param area to registers. ie. pad updard. + then map the reg param area to registers. i.e. pad upward. Setting both of the following defines results in this behavior. Setting just the first one will result in aggregates that fit in a doubleword being padded downward, and others being padded upward. @@ -499,10 +499,9 @@ while (0) fprintf (FILE, "%s%d,0,0,", ASM_STABN_OP, BRAC); \ assemble_name (FILE, NAME); \ putc ('-', FILE); \ - if (current_function_func_begin_label != NULL_TREE) \ + if (current_function_func_begin_label != NULL) \ { \ - s = IDENTIFIER_POINTER (current_function_func_begin_label); \ - assemble_name (FILE, s); \ + assemble_name (FILE, current_function_func_begin_label); \ } \ else \ { \ diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index d1e2298c01e..120fbfdafe3 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -650,7 +650,7 @@ static bool rs6000_elf_in_small_data_p (tree); #endif #if TARGET_XCOFF static void rs6000_xcoff_asm_globalize_label (FILE *, const char *); -static void rs6000_xcoff_asm_named_section (const char *, unsigned int); +static void rs6000_xcoff_asm_named_section (const char *, unsigned int, tree); static void rs6000_xcoff_select_section (tree, int, unsigned HOST_WIDE_INT); static void rs6000_xcoff_unique_section (tree, int); static void rs6000_xcoff_select_rtx_section (enum machine_mode, rtx, @@ -4619,7 +4619,7 @@ function_arg_padding (enum machine_mode mode, tree type) { /* GCC used to pass structures of the same size as integer types as if they were in fact integers, ignoring FUNCTION_ARG_PADDING. - ie. Structures of size 1 or 2 (or 4 when TARGET_64BIT) were + i.e. Structures of size 1 or 2 (or 4 when TARGET_64BIT) were passed padded downward, except that -mstrict-align further muddied the water in that multi-component structures of 2 and 4 bytes in size were passed padded upward. @@ -10062,7 +10062,7 @@ print_operand (FILE *file, rtx x, int code) /* Write second word of DImode or DFmode reference. Works on register or non-indexed memory only. */ if (GET_CODE (x) == REG) - fprintf (file, "%s", reg_names[REGNO (x) + 1]); + fputs (reg_names[REGNO (x) + 1], file); else if (GET_CODE (x) == MEM) { /* Handle possible auto-increment. Since it is pre-increment and @@ -10133,7 +10133,7 @@ print_operand (FILE *file, rtx x, int code) || REGNO (XEXP (x, 0)) >= 32) output_operand_lossage ("invalid %%P value"); else - fprintf (file, "%s", reg_names[REGNO (XEXP (x, 0))]); + fputs (reg_names[REGNO (XEXP (x, 0))], file); return; case 'q': @@ -10368,7 +10368,7 @@ print_operand (FILE *file, rtx x, int code) case 'Y': /* Like 'L', for third word of TImode */ if (GET_CODE (x) == REG) - fprintf (file, "%s", reg_names[REGNO (x) + 2]); + fputs (reg_names[REGNO (x) + 2], file); else if (GET_CODE (x) == MEM) { if (GET_CODE (XEXP (x, 0)) == PRE_INC @@ -10415,7 +10415,7 @@ print_operand (FILE *file, rtx x, int code) case 'Z': /* Like 'L', for last word of TImode. */ if (GET_CODE (x) == REG) - fprintf (file, "%s", reg_names[REGNO (x) + 3]); + fputs (reg_names[REGNO (x) + 3], file); else if (GET_CODE (x) == MEM) { if (GET_CODE (XEXP (x, 0)) == PRE_INC @@ -16932,7 +16932,8 @@ rs6000_xcoff_asm_globalize_label (FILE *stream, const char *name) } static void -rs6000_xcoff_asm_named_section (const char *name, unsigned int flags) +rs6000_xcoff_asm_named_section (const char *name, unsigned int flags, + tree decl ATTRIBUTE_UNUSED) { int smclass; static const char * const suffix[3] = { "PR", "RO", "RW" }; @@ -17188,7 +17189,7 @@ rs6000_rtx_costs (rtx x, int code, int outer_code, int *total) case MEM: /* When optimizing for size, MEM should be slightly more expensive than generating address, e.g., (plus (reg) (const)). - L1 cache latecy is about two instructions. */ + L1 cache latency is about two instructions. */ *total = optimize_size ? COSTS_N_INSNS (1) + 1 : COSTS_N_INSNS (2); return true; diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index f014282f085..f59317a6803 100644 --- a/gcc/config/s390/s390.c +++ b/gcc/config/s390/s390.c @@ -2543,7 +2543,7 @@ legitimate_la_operand_p (register rtx op) return FALSE; } -/* Return 1 if it is valid *and* preferrable to use LA to +/* Return 1 if it is valid *and* preferable to use LA to compute the sum of OP1 and OP2. */ int @@ -6293,11 +6293,13 @@ s390_emit_prologue (void) /* Save call saved gprs. */ if (cfun_frame_layout.first_save_gpr != -1) - insn = save_gprs (stack_pointer_rtx, - cfun_frame_layout.gprs_offset, - cfun_frame_layout.first_save_gpr, - cfun_frame_layout.last_save_gpr); - emit_insn (insn); + { + insn = save_gprs (stack_pointer_rtx, + cfun_frame_layout.gprs_offset, + cfun_frame_layout.first_save_gpr, + cfun_frame_layout.last_save_gpr); + emit_insn (insn); + } /* Dummy insn to mark literal pool slot. */ diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index b58293d8a35..ce4ee857a89 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -6382,7 +6382,7 @@ sh_gimplify_va_arg_expr (tree valist, tree type, tree *pre_p, HOST_WIDE_INT size, rsize; tree tmp, pptr_type_node; tree addr, lab_over, result = NULL; - int pass_by_ref = pass_by_reference (NULL, TYPE_MODE (type), type, false); + int pass_by_ref = targetm.calls.must_pass_in_stack (TYPE_MODE (type), type); if (pass_by_ref) type = build_pointer_type (type); @@ -6604,6 +6604,12 @@ sh_pass_by_reference (CUMULATIVE_ARGS *cum, enum machine_mode mode, if (targetm.calls.must_pass_in_stack (mode, type)) return true; + /* ??? std_gimplify_va_arg_expr passes NULL for cum. That function + wants to know about pass-by-reference semantics for incoming + arguments. */ + if (! cum) + return false; + if (TARGET_SHCOMPACT) { cum->byref = shcompact_byref (cum, mode, type, named); @@ -7059,7 +7065,7 @@ sh_insert_attributes (tree node, tree *attributes) return; /* We are only interested in fields. */ - if (TREE_CODE_CLASS (TREE_CODE (node)) != 'd') + if (!DECL_P (node)) return; /* Add a 'handle_interrupt' attribute. */ diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index 31e05a2fead..5adcac22664 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -5800,11 +5800,19 @@ if (GET_MODE (operands[0]) != DImode) operands[0] = gen_rtx_SUBREG (DImode, operands[0], 0); } - else + else if (TARGET_SHMEDIA64) { operands[0] = shallow_copy_rtx (operands[0]); PUT_MODE (operands[0], DImode); } + else + { + rtx reg = gen_reg_rtx (DImode); + + operands[0] = copy_to_mode_reg (SImode, operands[0]); + emit_insn (gen_extendsidi2 (reg, operands[0])); + operands[0] = reg; + } } if (! target_reg_operand (operands[0], DImode)) operands[0] = copy_to_mode_reg (DImode, operands[0]); @@ -6025,11 +6033,19 @@ if (GET_MODE (operands[1]) != DImode) operands[1] = gen_rtx_SUBREG (DImode, operands[1], 0); } - else + else if (TARGET_SHMEDIA64) { operands[1] = shallow_copy_rtx (operands[1]); PUT_MODE (operands[1], DImode); } + else + { + rtx reg = gen_reg_rtx (DImode); + + operands[1] = copy_to_mode_reg (SImode, operands[1]); + emit_insn (gen_extendsidi2 (reg, operands[1])); + operands[1] = reg; + } } if (! target_reg_operand (operands[1], DImode)) operands[1] = copy_to_mode_reg (DImode, operands[1]); diff --git a/gcc/config/sh/symbian.c b/gcc/config/sh/symbian.c index 0469c54be4f..b729fea4fcc 100644 --- a/gcc/config/sh/symbian.c +++ b/gcc/config/sh/symbian.c @@ -230,8 +230,8 @@ sh_symbian_mark_dllexport (tree decl) /* Remove DLL_IMPORT_PREFIX. Note - we do not issue a warning here. In Symbian's environment it is legitimate for a prototype to be marked as dllimport and the - corresponding defintion to be marked as dllexport. The prototypes - are in headers used everywhere and the defintion is in a translation + corresponding definition to be marked as dllexport. The prototypes + are in headers used everywhere and the definition is in a translation unit which has included the header in order to ensure argument correctness. */ oldname += strlen (DLL_IMPORT_PREFIX); @@ -448,8 +448,8 @@ sh_symbian_handle_dll_attribute (tree *pnode, tree name, tree args, } } - /* If the node is an overloaded constructor or desctructor, then we must - make sure that the attribute is propogated along the overload chain, + /* If the node is an overloaded constructor or destructor, then we must + make sure that the attribute is propagated along the overload chain, as it is these overloaded functions which will be emitted, rather than the user declared constructor itself. */ if (TREE_CODE (TREE_TYPE (node)) == METHOD_TYPE @@ -488,7 +488,7 @@ sh_symbian_handle_dll_attribute (tree *pnode, tree name, tree args, symbian_add_attribute (function, attr); - /* Propogate the attribute to any function thunks as well. */ + /* Propagate the attribute to any function thunks as well. */ for (thunk = DECL_THUNKS (function); thunk; thunk = TREE_CHAIN (thunk)) if (TREE_CODE (thunk) == FUNCTION_DECL) symbian_add_attribute (thunk, attr); @@ -497,7 +497,7 @@ sh_symbian_handle_dll_attribute (tree *pnode, tree name, tree args, if (TREE_CODE (node) == FUNCTION_DECL && DECL_VIRTUAL_P (node)) { - /* Propogate the attribute to any thunks of this function. */ + /* Propagate the attribute to any thunks of this function. */ for (thunk = DECL_THUNKS (node); thunk; thunk = TREE_CHAIN (thunk)) if (TREE_CODE (thunk) == FUNCTION_DECL) symbian_add_attribute (thunk, attr); @@ -879,7 +879,7 @@ symbian_import_export_class (tree ctype, int import_export) return import_export; } -/* Dummy defintion of this array for cc1 building purposes. */ +/* Dummy definition of this array for cc1 building purposes. */ tree cp_global_trees[CPTI_MAX] __attribute__((weak)); #if defined ENABLE_TREE_CHECKING && (GCC_VERSION >= 2007) diff --git a/gcc/config/sh/t-sh b/gcc/config/sh/t-sh index 3660d06aacf..c5eb397b142 100644 --- a/gcc/config/sh/t-sh +++ b/gcc/config/sh/t-sh @@ -22,7 +22,7 @@ fp-bit.c: $(srcdir)/config/fp-bit.c cat $(srcdir)/config/fp-bit.c >> fp-bit.c MULTILIB_ENDIAN = ml/mb -MULTILIB_CPUS= $(ML_sh1)$(ML_sh2a)$(ML_sh2a_nofpu)$(ML_sh2a_single_only)$(ML_sh2a_single)$(ML_sh2e)$(ML_sh2)$(ML_sh3e)$(ML_sh3)$(ML_sh4_nofpu)$(ML_sh4_single_only)$(ML_sh4_single)$(ML_sh4)$(ML_sh4a_nofpu)$(ML_sh4a_single_only)$(ML_sh4a_single)$(ML_sh4a)$(ML_m5_32media)$(ML_m5_32media_nofpu)$(ML_m5_compact)$(ML_m5_compact_nofpu)$(ML_m5_64media)$(ML_m5_64media_nofpu) +MULTILIB_CPUS= $(ML_sh1)$(ML_sh2a)$(ML_sh2a_nofpu)$(ML_sh2a_single_only)$(ML_sh2a_single)$(ML_sh2e)$(ML_sh2)$(ML_sh3e)$(ML_sh3)$(ML_sh4_nofpu)$(ML_sh4_single_only)$(ML_sh4_single)$(ML_sh4)$(ML_sh4a_nofpu)$(ML_sh4a_single_only)$(ML_sh4a_single)$(ML_sh4a)$(ML_sh5_32media)$(ML_sh5_32media_nofpu)$(ML_sh5_compact)$(ML_sh5_compact_nofpu)$(ML_sh5_64media)$(ML_sh5_64media_nofpu) MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) $(MULTILIB_CPUS:/=) MULTILIB_DIRNAMES= diff --git a/gcc/config/sh/t-sh64 b/gcc/config/sh/t-sh64 index 5ee83ba8632..97a13beeb78 100644 --- a/gcc/config/sh/t-sh64 +++ b/gcc/config/sh/t-sh64 @@ -7,7 +7,7 @@ LIB1ASMFUNCS = \ _push_pop_shmedia_regs \ _udivdi3 _divdi3 _umoddi3 _moddi3 -MULTILIB_CPU_DIRS= $(ML_sh1) $(ML_sh2e) $(ML_sh2) $(ML_sh3e) $(ML_sh3) $(ML_sh4_nofpu) $(ML_sh4_single_only) $(ML_sh4_single) $(ML_sh4) $(ML_m5_32media:m5_32media=media32) $(ML_m5_32media_nofpu:m5_32media_nofpu=nofpu/media32) $(ML_m5_compact:m5_compact=compact) $(ML_m5_compact_nofpu:m5_compact_nofpu=nofpu/compact) $(ML_m5_64media:m5_64media=media64) $(ML_m5_64media_nofpu:m5_64media_nofpu=nofpu/media64) +MULTILIB_CPU_DIRS= $(ML_sh1) $(ML_sh2e) $(ML_sh2) $(ML_sh3e) $(ML_sh3) $(ML_sh4_nofpu) $(ML_sh4_single_only) $(ML_sh4_single) $(ML_sh4) $(ML_sh5_32media:m5-32media/=media32) $(ML_sh5_32media_nofpu:m5-32media-nofpu/=nofpu/media32) $(ML_sh5_compact:m5-compact/=compact) $(ML_sh5_compact_nofpu:m5-compact-nofpu/=nofpu/compact) $(ML_sh5_64media:m5-64media/=media64) $(ML_sh5_64media_nofpu:m5-64media-nofpu/=nofpu/media64) MULTILIB_RAW_DIRNAMES= $(MULTILIB_ENDIAN:/mb= mb) $(MULTILIB_CPU_DIRS:/=) -MULTILIB_DIRNAMES= $(MULTILIB_RAW_DIRNAMES:/media32=) +MULTILIB_DIRNAMES= $(MULTILIB_RAW_DIRNAMES) diff --git a/gcc/config/sol2-c.c b/gcc/config/sol2-c.c index ee017ebbd46..17628a03ffa 100644 --- a/gcc/config/sol2-c.c +++ b/gcc/config/sol2-c.c @@ -113,7 +113,7 @@ solaris_pragma_align (cpp_reader *pfile ATTRIBUTE_UNUSED) while (1) { tree decl = identifier_global_value (t); - if (decl && TREE_CODE_CLASS (TREE_CODE (decl)) == 'd') + if (decl && DECL_P (decl)) warning ("%<#pragma align%> must appear before the declaration of " "%D, ignoring", decl); else @@ -168,7 +168,7 @@ solaris_pragma_init (cpp_reader *pfile ATTRIBUTE_UNUSED) while (1) { tree decl = identifier_global_value (t); - if (decl && TREE_CODE_CLASS (TREE_CODE (decl)) == 'd') + if (decl && DECL_P (decl)) { tree init_list = build_tree_list (get_identifier ("init"), NULL); @@ -226,7 +226,7 @@ solaris_pragma_fini (cpp_reader *pfile ATTRIBUTE_UNUSED) while (1) { tree decl = identifier_global_value (t); - if (decl && TREE_CODE_CLASS (TREE_CODE (decl)) == 'd') + if (decl && DECL_P (decl)) { tree fini_list = build_tree_list (get_identifier ("fini"), NULL); diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index 336d832e61a..63d3f01cdca 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -304,7 +304,7 @@ static void emit_restore_regs (void); static void sparc_asm_function_prologue (FILE *, HOST_WIDE_INT); static void sparc_asm_function_epilogue (FILE *, HOST_WIDE_INT); #ifdef OBJECT_FORMAT_ELF -static void sparc_elf_asm_named_section (const char *, unsigned int); +static void sparc_elf_asm_named_section (const char *, unsigned int, tree); #endif static int sparc_adjust_cost (rtx, rtx, rtx, int); @@ -1644,7 +1644,7 @@ sparc_emit_set_const32 (rtx op0, rtx op1) /* Load OP1, a symbolic 64-bit constant, into OP0, a DImode register. - If TEMP is non-zero, we are forbidden to use any other scratch + If TEMP is nonzero, we are forbidden to use any other scratch registers. Otherwise, we are allowed to generate them as needed. Note that TEMP may have TImode if the code model is TARGET_CM_MEDANY @@ -4609,7 +4609,7 @@ sparc_asm_function_epilogue (FILE *file, HOST_WIDE_INT size ATTRIBUTE_UNUSED) /* If code does not drop into the epilogue, we have to still output a dummy nop for the sake of sane backtraces. Otherwise, if the last two instructions of a function were "call foo; dslot;" this - can make the return PC of foo (ie. address of call instruction + can make the return PC of foo (i.e. address of call instruction plus 8) point to the first instruction in the next function. */ rtx insn, last_real_insn; @@ -8060,13 +8060,14 @@ sparc_profile_hook (int labelno) #ifdef OBJECT_FORMAT_ELF static void -sparc_elf_asm_named_section (const char *name, unsigned int flags) +sparc_elf_asm_named_section (const char *name, unsigned int flags, + tree decl) { if (flags & SECTION_MERGE) { /* entsize cannot be expressed in this section attributes encoding style. */ - default_elf_asm_named_section (name, flags); + default_elf_asm_named_section (name, flags, decl); return; } diff --git a/gcc/config/t-darwin b/gcc/config/t-darwin index f5af52eb2e4..ab2e6ae05c1 100644 --- a/gcc/config/t-darwin +++ b/gcc/config/t-darwin @@ -1,13 +1,13 @@ darwin.o: $(srcdir)/config/darwin.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ $(TM_H) $(RTL_H) $(REGS_H) hard-reg-set.h $(REAL_H) insn-config.h \ conditions.h insn-flags.h output.h insn-attr.h flags.h $(TREE_H) expr.h \ - reload.h function.h $(GGC_H) langhooks.h $(TM_P_H) gt-darwin.h + reload.h function.h $(GGC_H) langhooks.h $(TARGET_H) $(TM_P_H) gt-darwin.h $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/config/darwin.c darwin-c.o: $(srcdir)/config/darwin-c.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ $(TM_H) $(CPPLIB_H) tree.h c-pragma.h $(C_TREE_H) toplev.h $(TM_P_H) \ c-incpath.h - $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/config/darwin-c.c + $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/config/darwin-c.c $(PREPROCESSOR_DEFINES) gt-darwin.h : s-gtype ; @true diff --git a/gcc/configure b/gcc/configure index e44ca74819f..e782ec54206 100755 --- a/gcc/configure +++ b/gcc/configure @@ -309,7 +309,7 @@ ac_includes_default="\ # include #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 target_noncanonical build_subdir host_subdir target_subdir GENINSRC CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT NO_MINUS_C_MINUS_O OUTPUT_OPTION CPP strict1_warn warn_cflags WERROR nocommon_flag TREEBROWSER 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_S LN RANLIB ac_ct_RANLIB ranlib_flags INSTALL INSTALL_PROGRAM INSTALL_DATA make_compare_target have_mktemp_command MAKEINFO BUILD_INFO GENERATED_MANPAGES FLEX BISON NM AR stage1_cflags COLLECT2_LIBS GNAT_LIBEXC LDEXP_LIB TARGET_GETGROUPS_T LIBICONV LIBICONV_DEP manext objext gthread_flags extra_modes_file PACKAGE VERSION USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS CROSS ALL SYSTEM_HEADER_DIR inhibit_libc CC_FOR_BUILD BUILD_CFLAGS STMP_FIXINC STMP_FIXPROTO collect2 libgcc_visibility 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 c_target_objs cxx_target_objs target_cpu_default GMPLIBS GMPINC 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 target_noncanonical build_subdir host_subdir target_subdir GENINSRC CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT NO_MINUS_C_MINUS_O OUTPUT_OPTION CPP EGREP strict1_warn warn_cflags WERROR nocommon_flag TREEBROWSER 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_S LN RANLIB ac_ct_RANLIB ranlib_flags INSTALL INSTALL_PROGRAM INSTALL_DATA make_compare_target have_mktemp_command MAKEINFO BUILD_INFO GENERATED_MANPAGES FLEX BISON NM AR stage1_cflags COLLECT2_LIBS GNAT_LIBEXC LDEXP_LIB TARGET_GETGROUPS_T LIBICONV LIBICONV_DEP manext objext gthread_flags extra_modes_file PACKAGE VERSION USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS CROSS ALL SYSTEM_HEADER_DIR inhibit_libc CC_FOR_BUILD BUILD_CFLAGS STMP_FIXINC STMP_FIXPROTO collect2 libgcc_visibility 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 c_target_objs cxx_target_objs target_cpu_default GMPLIBS GMPINC LIBOBJS LTLIBOBJS' ac_subst_files='language_hooks' # Initialize some variables set by options. @@ -3276,26 +3276,42 @@ _ACEOF # sizeof(char) is 1 by definition. -echo "$as_me:$LINENO: checking size of void *" >&5 -echo $ECHO_N "checking size of void *... $ECHO_C" >&6 -if test "${ac_cv_sizeof_void_p+set}" = set; then + +echo "$as_me:$LINENO: checking for egrep" >&5 +echo $ECHO_N "checking for egrep... $ECHO_C" >&6 +if test "${ac_cv_prog_egrep+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if echo a | (grep -E '(a|b)') >/dev/null 2>&1 + then ac_cv_prog_egrep='grep -E' + else ac_cv_prog_egrep='egrep' + fi +fi +echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 +echo "${ECHO_T}$ac_cv_prog_egrep" >&6 + EGREP=$ac_cv_prog_egrep + + +echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 +if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include "confdefs.h" -#include - +#include +#include +#include +#include int main () { -switch (0) case 0: case (sizeof (void *) == $ac_size):; + ; return 0; } @@ -3322,55 +3338,155 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_sizeof_void_p=$ac_size + ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +ac_cv_header_stdc=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - if test x$ac_cv_sizeof_void_p != x ; then break; fi -done +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no fi +rm -f conftest* -if test x$ac_cv_sizeof_void_p = x ; then - { { echo "$as_me:$LINENO: error: cannot determine a size for void *" >&5 -echo "$as_me: error: cannot determine a size for void *" >&2;} - { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof_void_p" >&5 -echo "${ECHO_T}$ac_cv_sizeof_void_p" >&6 -cat >>confdefs.h <<_ACEOF -#define SIZEOF_VOID_P $ac_cv_sizeof_void_p +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + _ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* +fi -echo "$as_me:$LINENO: checking size of short" >&5 -echo $ECHO_N "checking size of short... $ECHO_C" >&6 -if test "${ac_cv_sizeof_short+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then + : else - for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include "confdefs.h" -#include - +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { -switch (0) case 0: case (sizeof (short) == $ac_size):; - ; - return 0; + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + exit(2); + exit (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 + : +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_cv_header_stdc=no +fi +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +echo "${ECHO_T}$ac_cv_header_stdc" >&6 +if test $ac_cv_header_stdc = yes; then + +cat >>confdefs.h <<\_ACEOF +#define STDC_HEADERS 1 +_ACEOF + +fi + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. + + + + + + + + + +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +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 + cat >conftest.$ac_ext <<_ACEOF +/* 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>conftest.er1 @@ -3393,51 +3509,46 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_sizeof_short=$ac_size + eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +eval "$as_ac_Header=no" fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - if test x$ac_cv_sizeof_short != x ; then break; fi -done - fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF -if test x$ac_cv_sizeof_short = x ; then - { { echo "$as_me:$LINENO: error: cannot determine a size for short" >&5 -echo "$as_me: error: cannot determine a size for short" >&2;} - { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof_short" >&5 -echo "${ECHO_T}$ac_cv_sizeof_short" >&6 -cat >>confdefs.h <<_ACEOF -#define SIZEOF_SHORT $ac_cv_sizeof_short -_ACEOF +done -echo "$as_me:$LINENO: checking size of int" >&5 -echo $ECHO_N "checking size of int... $ECHO_C" >&6 -if test "${ac_cv_sizeof_int+set}" = set; then +echo "$as_me:$LINENO: checking for void *" >&5 +echo $ECHO_N "checking for void *... $ECHO_C" >&6 +if test "${ac_cv_type_void_p+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include "confdefs.h" -#include - - +$ac_includes_default int main () { -switch (0) case 0: case (sizeof (int) == $ac_size):; +if ((void * *) 0) + return 0; +if (sizeof (void *)) + return 0; ; return 0; } @@ -3464,51 +3575,43 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_sizeof_int=$ac_size + ac_cv_type_void_p=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +ac_cv_type_void_p=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - if test x$ac_cv_sizeof_int != x ; then break; fi -done - -fi - -if test x$ac_cv_sizeof_int = x ; then - { { echo "$as_me:$LINENO: error: cannot determine a size for int" >&5 -echo "$as_me: error: cannot determine a size for int" >&2;} - { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof_int" >&5 -echo "${ECHO_T}$ac_cv_sizeof_int" >&6 - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_INT $ac_cv_sizeof_int -_ACEOF +echo "$as_me:$LINENO: result: $ac_cv_type_void_p" >&5 +echo "${ECHO_T}$ac_cv_type_void_p" >&6 - -echo "$as_me:$LINENO: checking size of long" >&5 -echo $ECHO_N "checking size of long... $ECHO_C" >&6 -if test "${ac_cv_sizeof_long+set}" = set; then +echo "$as_me:$LINENO: checking size of void *" >&5 +echo $ECHO_N "checking size of void *... $ECHO_C" >&6 +if test "${ac_cv_sizeof_void_p+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. - cat >conftest.$ac_ext <<_ACEOF + if test "$ac_cv_type_void_p" = yes; then + # The cast to unsigned long works around a bug in the HP C Compiler + # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects + # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. + # This bug is HP SR number 8606223364. + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include "confdefs.h" -#include - - +$ac_includes_default int main () { -switch (0) case 0: case (sizeof (long) == $ac_size):; +static int test_array [1 - 2 * !(((long) (sizeof (void *))) >= 0)]; +test_array [0] = 0 + ; return 0; } @@ -3535,52 +3638,21 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_sizeof_long=$ac_size -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - if test x$ac_cv_sizeof_long != x ; then break; fi -done - -fi - -if test x$ac_cv_sizeof_long = x ; then - { { echo "$as_me:$LINENO: error: cannot determine a size for long" >&5 -echo "$as_me: error: cannot determine a size for long" >&2;} - { (exit 1); exit 1; }; } -fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof_long" >&5 -echo "${ECHO_T}$ac_cv_sizeof_long" >&6 - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_LONG $ac_cv_sizeof_long -_ACEOF - - -if test $ac_cv_c_long_long = yes; then - echo "$as_me:$LINENO: checking size of long long" >&5 -echo $ECHO_N "checking size of long long... $ECHO_C" >&6 -if test "${ac_cv_sizeof_long_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. - cat >conftest.$ac_ext <<_ACEOF + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include "confdefs.h" -#include - - +$ac_includes_default int main () { -switch (0) case 0: case (sizeof (long long) == $ac_size):; +static int test_array [1 - 2 * !(((long) (sizeof (void *))) <= $ac_mid)]; +test_array [0] = 0 + ; return 0; } @@ -3607,53 +3679,143 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_sizeof_long_long=$ac_size + ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - if test x$ac_cv_sizeof_long_long != x ; then break; fi -done - -fi + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -if test x$ac_cv_sizeof_long_long = x ; then - { { echo "$as_me:$LINENO: error: cannot determine a size for long long" >&5 -echo "$as_me: error: cannot determine a size for long long" >&2;} - { (exit 1); exit 1; }; } -fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_long" >&5 -echo "${ECHO_T}$ac_cv_sizeof_long_long" >&6 +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (void *))) < 0)]; +test_array [0] = 0 -cat >>confdefs.h <<_ACEOF -#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ _ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (void *))) >= $ac_mid)]; +test_array [0] = 0 + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` fi -if test $ac_cv_c___int64 = yes; then - echo "$as_me:$LINENO: checking size of __int64" >&5 -echo $ECHO_N "checking size of __int64... $ECHO_C" >&6 -if test "${ac_cv_sizeof___int64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done else - for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo= ac_hi= +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include "confdefs.h" -#include - - +$ac_includes_default int main () { -switch (0) case 0: case (sizeof (__int64) == $ac_size):; +static int test_array [1 - 2 * !(((long) (sizeof (void *))) <= $ac_mid)]; +test_array [0] = 0 + ; return 0; } @@ -3680,57 +3842,130 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_sizeof___int64=$ac_size + ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +ac_lo=`expr '(' $ac_mid ')' + 1` fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - if test x$ac_cv_sizeof___int64 != x ; then break; fi done +case $ac_lo in +?*) ac_cv_sizeof_void_p=$ac_lo;; +'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (void *), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (void *), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } ;; +esac +else + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +long longval () { return (long) (sizeof (void *)); } +unsigned long ulongval () { return (long) (sizeof (void *)); } +#include +#include +int +main () +{ -fi + FILE *f = fopen ("conftest.val", "w"); + if (! f) + exit (1); + if (((long) (sizeof (void *))) < 0) + { + long i = longval (); + if (i != ((long) (sizeof (void *)))) + exit (1); + fprintf (f, "%ld\n", i); + } + else + { + unsigned long i = ulongval (); + if (i != ((long) (sizeof (void *)))) + exit (1); + fprintf (f, "%lu\n", i); + } + exit (ferror (f) || fclose (f) != 0); + + ; + 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_cv_sizeof_void_p=`cat conftest.val` +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -if test x$ac_cv_sizeof___int64 = x ; then - { { echo "$as_me:$LINENO: error: cannot determine a size for __int64" >&5 -echo "$as_me: error: cannot determine a size for __int64" >&2;} +( exit $ac_status ) +{ { echo "$as_me:$LINENO: error: cannot compute sizeof (void *), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (void *), 77 +See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof___int64" >&5 -echo "${ECHO_T}$ac_cv_sizeof___int64" >&6 - +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +fi +rm -f conftest.val +else + ac_cv_sizeof_void_p=0 +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_sizeof_void_p" >&5 +echo "${ECHO_T}$ac_cv_sizeof_void_p" >&6 cat >>confdefs.h <<_ACEOF -#define SIZEOF___INT64 $ac_cv_sizeof___int64 +#define SIZEOF_VOID_P $ac_cv_sizeof_void_p _ACEOF -fi - -# --------------------- -# Warnings and checking -# --------------------- - -# Check $CC warning features (if it's GCC). -# We want to use -pedantic, but we don't want warnings about -# * 'long long' -# * variadic macros -# So, we only use -pedantic if we can disable those warnings. - -echo "$as_me:$LINENO: checking whether ${CC} accepts -Wno-long-long" >&5 -echo $ECHO_N "checking whether ${CC} accepts -Wno-long-long... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_w_no_long_long+set}" = set; then +echo "$as_me:$LINENO: checking for short" >&5 +echo $ECHO_N "checking for short... $ECHO_C" >&6 +if test "${ac_cv_type_short+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - save_CFLAGS="$CFLAGS" - CFLAGS="-Wno-long-long" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ - +$ac_includes_default +int +main () +{ +if ((short *) 0) + return 0; +if (sizeof (short)) + return 0; + ; + return 0; +} _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -3754,34 +3989,46 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_prog_cc_w_no_long_long=yes + ac_cv_type_short=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_prog_cc_w_no_long_long=no +ac_cv_type_short=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_w_no_long_long" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_w_no_long_long" >&6 +echo "$as_me:$LINENO: result: $ac_cv_type_short" >&5 +echo "${ECHO_T}$ac_cv_type_short" >&6 -echo "$as_me:$LINENO: checking whether ${CC} accepts -Wno-variadic-macros" >&5 -echo $ECHO_N "checking whether ${CC} accepts -Wno-variadic-macros... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_w_no_variadic_macros+set}" = set; then +echo "$as_me:$LINENO: checking size of short" >&5 +echo $ECHO_N "checking size of short... $ECHO_C" >&6 +if test "${ac_cv_sizeof_short+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - save_CFLAGS="$CFLAGS" - CFLAGS="-Wno-variadic-macros" - cat >conftest.$ac_ext <<_ACEOF + if test "$ac_cv_type_short" = yes; then + # The cast to unsigned long works around a bug in the HP C Compiler + # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects + # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. + # This bug is HP SR number 8606223364. + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (short))) >= 0)]; +test_array [0] = 0 + ; + return 0; +} _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -3805,42 +4052,24 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_prog_cc_w_no_variadic_macros=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cc_w_no_variadic_macros=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_w_no_variadic_macros" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_w_no_variadic_macros" >&6 - -strict1_warn= -if test $ac_cv_prog_cc_w_no_long_long = yes \ - && test $ac_cv_prog_cc_w_no_variadic_macros = yes ; then - strict1_warn="-pedantic -Wno-long-long -Wno-variadic-macros" -fi - - -# Add -Wold-style-definition if it's accepted -echo "$as_me:$LINENO: checking whether ${CC} accepts -Wold-style-definition" >&5 -echo $ECHO_N "checking whether ${CC} accepts -Wold-style-definition... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_w_old_style_definition+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - save_CFLAGS="$CFLAGS" - CFLAGS="-Wold-style-definition" - cat >conftest.$ac_ext <<_ACEOF + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (short))) <= $ac_mid)]; +test_array [0] = 0 + ; + return 0; +} _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -3864,217 +4093,1736 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_prog_cc_w_old_style_definition=yes + ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_prog_cc_w_old_style_definition=no +ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (short))) < 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (short))) >= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo= ac_hi= +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (short))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo=`expr '(' $ac_mid ')' + 1` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_short=$ac_lo;; +'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (short), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (short), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } ;; +esac +else + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +long longval () { return (long) (sizeof (short)); } +unsigned long ulongval () { return (long) (sizeof (short)); } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + exit (1); + if (((long) (sizeof (short))) < 0) + { + long i = longval (); + if (i != ((long) (sizeof (short)))) + exit (1); + fprintf (f, "%ld\n", i); + } + else + { + unsigned long i = ulongval (); + if (i != ((long) (sizeof (short)))) + exit (1); + fprintf (f, "%lu\n", i); + } + exit (ferror (f) || fclose (f) != 0); + + ; + 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_cv_sizeof_short=`cat conftest.val` +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 ) +{ { echo "$as_me:$LINENO: error: cannot compute sizeof (short), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (short), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +fi +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +fi +rm -f conftest.val +else + ac_cv_sizeof_short=0 +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_sizeof_short" >&5 +echo "${ECHO_T}$ac_cv_sizeof_short" >&6 +cat >>confdefs.h <<_ACEOF +#define SIZEOF_SHORT $ac_cv_sizeof_short +_ACEOF + + +echo "$as_me:$LINENO: checking for int" >&5 +echo $ECHO_N "checking for int... $ECHO_C" >&6 +if test "${ac_cv_type_int+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if ((int *) 0) + return 0; +if (sizeof (int)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_cv_type_int=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_type_int=no +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: $ac_cv_type_int" >&5 +echo "${ECHO_T}$ac_cv_type_int" >&6 + +echo "$as_me:$LINENO: checking size of int" >&5 +echo $ECHO_N "checking size of int... $ECHO_C" >&6 +if test "${ac_cv_sizeof_int+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$ac_cv_type_int" = yes; then + # The cast to unsigned long works around a bug in the HP C Compiler + # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects + # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. + # This bug is HP SR number 8606223364. + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (int))) >= 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (int))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (int))) < 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (int))) >= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo= ac_hi= +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (int))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo=`expr '(' $ac_mid ')' + 1` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_int=$ac_lo;; +'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (int), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (int), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } ;; +esac +else + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +long longval () { return (long) (sizeof (int)); } +unsigned long ulongval () { return (long) (sizeof (int)); } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + exit (1); + if (((long) (sizeof (int))) < 0) + { + long i = longval (); + if (i != ((long) (sizeof (int)))) + exit (1); + fprintf (f, "%ld\n", i); + } + else + { + unsigned long i = ulongval (); + if (i != ((long) (sizeof (int)))) + exit (1); + fprintf (f, "%lu\n", i); + } + exit (ferror (f) || fclose (f) != 0); + + ; + 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_cv_sizeof_int=`cat conftest.val` +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 ) +{ { echo "$as_me:$LINENO: error: cannot compute sizeof (int), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (int), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +fi +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +fi +rm -f conftest.val +else + ac_cv_sizeof_int=0 +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_sizeof_int" >&5 +echo "${ECHO_T}$ac_cv_sizeof_int" >&6 +cat >>confdefs.h <<_ACEOF +#define SIZEOF_INT $ac_cv_sizeof_int +_ACEOF + + +echo "$as_me:$LINENO: checking for long" >&5 +echo $ECHO_N "checking for long... $ECHO_C" >&6 +if test "${ac_cv_type_long+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if ((long *) 0) + return 0; +if (sizeof (long)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_cv_type_long=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_type_long=no +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: $ac_cv_type_long" >&5 +echo "${ECHO_T}$ac_cv_type_long" >&6 + +echo "$as_me:$LINENO: checking size of long" >&5 +echo $ECHO_N "checking size of long... $ECHO_C" >&6 +if test "${ac_cv_sizeof_long+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$ac_cv_type_long" = yes; then + # The cast to unsigned long works around a bug in the HP C Compiler + # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects + # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. + # This bug is HP SR number 8606223364. + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long))) >= 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long))) < 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long))) >= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_w_old_style_definition" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_w_old_style_definition" >&6 -if test $ac_cv_prog_cc_w_old_style_definition = yes ; then - strict1_warn="${strict1_warn} -Wold-style-definition" +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo= ac_hi= fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long))) <= $ac_mid)]; +test_array [0] = 0 -# Enable -Werror, period. -# Check whether --enable-werror_always or --disable-werror_always was given. -if test "${enable_werror_always+set}" = set; then - enableval="$enable_werror_always" + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo=`expr '(' $ac_mid ')' + 1` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_long=$ac_lo;; +'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (long), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } ;; +esac +else + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +long longval () { return (long) (sizeof (long)); } +unsigned long ulongval () { return (long) (sizeof (long)); } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + exit (1); + if (((long) (sizeof (long))) < 0) + { + long i = longval (); + if (i != ((long) (sizeof (long)))) + exit (1); + fprintf (f, "%ld\n", i); + } + else + { + unsigned long i = ulongval (); + if (i != ((long) (sizeof (long)))) + exit (1); + fprintf (f, "%lu\n", i); + } + exit (ferror (f) || fclose (f) != 0); + + ; + 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_cv_sizeof_long=`cat conftest.val` +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 ) +{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (long), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +fi +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +fi +rm -f conftest.val +else + ac_cv_sizeof_long=0 +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_sizeof_long" >&5 +echo "${ECHO_T}$ac_cv_sizeof_long" >&6 +cat >>confdefs.h <<_ACEOF +#define SIZEOF_LONG $ac_cv_sizeof_long +_ACEOF + + +if test $ac_cv_c_long_long = yes; then + echo "$as_me:$LINENO: checking for long long" >&5 +echo $ECHO_N "checking for long long... $ECHO_C" >&6 +if test "${ac_cv_type_long_long+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if ((long long *) 0) + return 0; +if (sizeof (long long)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_cv_type_long_long=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_type_long_long=no +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: $ac_cv_type_long_long" >&5 +echo "${ECHO_T}$ac_cv_type_long_long" >&6 + +echo "$as_me:$LINENO: checking size of long long" >&5 +echo $ECHO_N "checking size of long long... $ECHO_C" >&6 +if test "${ac_cv_sizeof_long_long+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$ac_cv_type_long_long" = yes; then + # The cast to unsigned long works around a bug in the HP C Compiler + # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects + # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. + # This bug is HP SR number 8606223364. + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long long))) >= 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long long))) <= $ac_mid)]; +test_array [0] = 0 + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid; break else - enable_werror_always=no -fi; -if test x${enable_werror_always} = xyes ; then - strict1_warn="${strict1_warn} -Werror" - WERROR=-Werror -fi + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -# If the native compiler is GCC, we can enable warnings even in stage1. -# That's useful for people building cross-compilers, or just running a -# quick `make'. -warn_cflags= -if test "x$GCC" = "xyes"; then - warn_cflags='$(GCC_WARN_CFLAGS)' +ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long long))) < 0)]; +test_array [0] = 0 -# Enable -Werror in bootstrap stage2 and later. -# Check whether --enable-werror or --disable-werror was given. -if test "${enable_werror+set}" = set; then - enableval="$enable_werror" + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long long))) >= $ac_mid)]; +test_array [0] = 0 + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=$ac_mid; break else - if test x$is_release = x ; then - # Default to "yes" on development branches. - enable_werror=yes + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done else - # Default to "no" on release branches. - enable_werror=no + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_lo= ac_hi= fi -fi; -if test x$enable_werror = xyes ; then - WERROR=-Werror +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (long long))) <= $ac_mid)]; +test_array [0] = 0 - -# Enable expensive internal checks -# Check whether --enable-checking or --disable-checking was given. -if test "${enable_checking+set}" = set; then - enableval="$enable_checking" - ac_checking_flags="${enableval}" + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -# Determine the default checks. -if test x$is_release = x ; then - ac_checking_flags=yes -else - ac_checking_flags=release +ac_lo=`expr '(' $ac_mid ')' + 1` fi -fi; -ac_assert_checking=1 -ac_checking= -ac_tree_checking= -ac_rtl_checking= -ac_rtlflag_checking= -ac_gc_checking= -ac_gc_always_collect= -ac_fold_checking= -IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS," -for check in $ac_checking_flags -do - case $check in - yes) ac_assert_checking=1 ; ac_checking=1 ; - ac_tree_checking=1 ; ac_gc_checking=1 ; - ac_rtlflag_checking=1 ;; - no) ac_assert_checking= ; ac_checking= ; - ac_tree_checking= ; ac_rtl_checking= ; - ac_rtlflag_checking= ; ac_gc_checking= ; - ac_gc_always_collect= ; ac_fold_checking= ;; - all) ac_assert_checking=1 ; ac_checking=1 ; - ac_tree_checking=1 ; ac_rtl_checking=1 ; - ac_rtlflag_checking=1 ; ac_gc_checking=1 ; - ac_gc_always_collect=1 ; ac_fold_checking=1 ;; - release) ac_assert_checking=1 ;; - assert) ac_assert_checking=1 ;; - fold) ac_fold_checking=1 ;; - gc) ac_gc_checking=1 ;; - gcac) ac_gc_always_collect=1 ;; - misc) ac_checking=1 ;; - rtlflag) ac_rtlflag_checking=1 ;; - rtl) ac_rtl_checking=1 ;; - tree) ac_tree_checking=1 ;; - valgrind) ac_checking_valgrind=1 ;; - *) { { echo "$as_me:$LINENO: error: unknown check category $check" >&5 -echo "$as_me: error: unknown check category $check" >&2;} - { (exit 1); exit 1; }; } ;; - esac +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done -IFS="$ac_save_IFS" - -nocommon_flag="" -if test x$ac_checking != x ; then - -cat >>confdefs.h <<\_ACEOF -#define ENABLE_CHECKING 1 +case $ac_lo in +?*) ac_cv_sizeof_long_long=$ac_lo;; +'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long long), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (long long), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } ;; +esac +else + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ _ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +long longval () { return (long) (sizeof (long long)); } +unsigned long ulongval () { return (long) (sizeof (long long)); } +#include +#include +int +main () +{ - nocommon_flag=-fno-common -fi - -if test x$ac_assert_checking != x ; then + FILE *f = fopen ("conftest.val", "w"); + if (! f) + exit (1); + if (((long) (sizeof (long long))) < 0) + { + long i = longval (); + if (i != ((long) (sizeof (long long)))) + exit (1); + fprintf (f, "%ld\n", i); + } + else + { + unsigned long i = ulongval (); + if (i != ((long) (sizeof (long long)))) + exit (1); + fprintf (f, "%lu\n", i); + } + exit (ferror (f) || fclose (f) != 0); -cat >>confdefs.h <<\_ACEOF -#define ENABLE_ASSERT_CHECKING 1 + ; + 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_cv_sizeof_long_long=`cat conftest.val` +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 ) +{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long long), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (long long), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi -if test x$ac_tree_checking != x ; then - -cat >>confdefs.h <<\_ACEOF -#define ENABLE_TREE_CHECKING 1 -_ACEOF - - TREEBROWSER=tree-browser.o +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi - -if test x$ac_rtl_checking != x ; then - -cat >>confdefs.h <<\_ACEOF -#define ENABLE_RTL_CHECKING 1 -_ACEOF - fi -if test x$ac_rtlflag_checking != x ; then - -cat >>confdefs.h <<\_ACEOF -#define ENABLE_RTL_FLAG_CHECKING 1 +rm -f conftest.val +else + ac_cv_sizeof_long_long=0 +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_long" >&5 +echo "${ECHO_T}$ac_cv_sizeof_long_long" >&6 +cat >>confdefs.h <<_ACEOF +#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long _ACEOF -fi -if test x$ac_gc_checking != x ; then -cat >>confdefs.h <<\_ACEOF -#define ENABLE_GC_CHECKING 1 +fi +if test $ac_cv_c___int64 = yes; then + echo "$as_me:$LINENO: checking for __int64" >&5 +echo $ECHO_N "checking for __int64... $ECHO_C" >&6 +if test "${ac_cv_type___int64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if ((__int64 *) 0) + return 0; +if (sizeof (__int64)) + return 0; + ; + return 0; +} _ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_cv_type___int64=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +ac_cv_type___int64=no fi -if test x$ac_gc_always_collect != x ; then +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: $ac_cv_type___int64" >&5 +echo "${ECHO_T}$ac_cv_type___int64" >&6 -cat >>confdefs.h <<\_ACEOF -#define ENABLE_GC_ALWAYS_COLLECT 1 +echo "$as_me:$LINENO: checking size of __int64" >&5 +echo $ECHO_N "checking size of __int64... $ECHO_C" >&6 +if test "${ac_cv_sizeof___int64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$ac_cv_type___int64" = yes; then + # The cast to unsigned long works around a bug in the HP C Compiler + # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects + # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. + # This bug is HP SR number 8606223364. + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ _ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (__int64))) >= 0)]; +test_array [0] = 0 -fi -if test x$ac_fold_checking != x ; then + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (__int64))) <= $ac_mid)]; +test_array [0] = 0 -cat >>confdefs.h <<\_ACEOF -#define ENABLE_FOLD_CHECKING 1 + ; + return 0; +} _ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` fi -valgrind_path_defines= -valgrind_command= - - -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + done else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (__int64))) < 0)]; +test_array [0] = 0 -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include -#include -#include - +$ac_includes_default int main () { +static int test_array [1 - 2 * !(((long) (sizeof (__int64))) >= $ac_mid)]; +test_array [0] = 0 ; return 0; @@ -4102,61 +5850,95 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_header_stdc=yes + ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_stdc=no +ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : + done else - ac_cv_header_stdc=no -fi -rm -f conftest* + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +ac_lo= ac_hi= fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long) (sizeof (__int64))) <= $ac_mid)]; +test_array [0] = 0 + ; + return 0; +} _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_hi=$ac_mid else - ac_cv_header_stdc=no -fi -rm -f conftest* + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +ac_lo=`expr '(' $ac_mid ')' + 1` fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof___int64=$ac_lo;; +'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (__int64), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (__int64), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } ;; +esac +else if test "$cross_compiling" = yes; then - : + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -4164,28 +5946,36 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +$ac_includes_default +long longval () { return (long) (sizeof (__int64)); } +unsigned long ulongval () { return (long) (sizeof (__int64)); } +#include +#include int main () { - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + exit (1); + if (((long) (sizeof (__int64))) < 0) + { + long i = longval (); + if (i != ((long) (sizeof (__int64)))) + exit (1); + fprintf (f, "%ld\n", i); + } + else + { + unsigned long i = ulongval (); + if (i != ((long) (sizeof (__int64)))) + exit (1); + fprintf (f, "%lu\n", i); + } + exit (ferror (f) || fclose (f) != 0); + + ; + return 0; } _ACEOF rm -f conftest$ac_exeext @@ -4199,57 +5989,170 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - : + ac_cv_sizeof___int64=`cat conftest.val` 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_cv_header_stdc=no +{ { echo "$as_me:$LINENO: error: cannot compute sizeof (__int64), 77 +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (__int64), 77 +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi +rm -f conftest.val +else + ac_cv_sizeof___int64=0 fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 +fi +echo "$as_me:$LINENO: result: $ac_cv_sizeof___int64" >&5 +echo "${ECHO_T}$ac_cv_sizeof___int64" >&6 +cat >>confdefs.h <<_ACEOF +#define SIZEOF___INT64 $ac_cv_sizeof___int64 _ACEOF + fi -# On IRIX 5.3, sys/types and inttypes.h are conflicting. +# --------------------- +# Warnings and checking +# --------------------- + +# Check $CC warning features (if it's GCC). +# We want to use -pedantic, but we don't want warnings about +# * 'long long' +# * variadic macros +# So, we only use -pedantic if we can disable those warnings. + +echo "$as_me:$LINENO: checking whether ${CC} accepts -Wno-long-long" >&5 +echo $ECHO_N "checking whether ${CC} accepts -Wno-long-long... $ECHO_C" >&6 +if test "${ac_cv_prog_cc_w_no_long_long+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + save_CFLAGS="$CFLAGS" + CFLAGS="-Wno-long-long" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_cv_prog_cc_w_no_long_long=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +ac_cv_prog_cc_w_no_long_long=no +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$save_CFLAGS" +fi +echo "$as_me:$LINENO: result: $ac_cv_prog_cc_w_no_long_long" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_w_no_long_long" >&6 +echo "$as_me:$LINENO: checking whether ${CC} accepts -Wno-variadic-macros" >&5 +echo $ECHO_N "checking whether ${CC} accepts -Wno-variadic-macros... $ECHO_C" >&6 +if test "${ac_cv_prog_cc_w_no_variadic_macros+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + save_CFLAGS="$CFLAGS" + CFLAGS="-Wno-variadic-macros" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 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); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (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); }; } && + { 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_cv_prog_cc_w_no_variadic_macros=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 +ac_cv_prog_cc_w_no_variadic_macros=no +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$save_CFLAGS" +fi +echo "$as_me:$LINENO: result: $ac_cv_prog_cc_w_no_variadic_macros" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_w_no_variadic_macros" >&6 +strict1_warn= +if test $ac_cv_prog_cc_w_no_long_long = yes \ + && test $ac_cv_prog_cc_w_no_variadic_macros = yes ; then + strict1_warn="-pedantic -Wno-long-long -Wno-variadic-macros" +fi -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -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 +# Add -Wold-style-definition if it's accepted +echo "$as_me:$LINENO: checking whether ${CC} accepts -Wold-style-definition" >&5 +echo $ECHO_N "checking whether ${CC} accepts -Wold-style-definition... $ECHO_C" >&6 +if test "${ac_cv_prog_cc_w_old_style_definition+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else + save_CFLAGS="$CFLAGS" + CFLAGS="-Wold-style-definition" cat >conftest.$ac_ext <<_ACEOF /* 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 @@ -4273,26 +6176,181 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" + ac_cv_prog_cc_w_old_style_definition=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -eval "$as_ac_Header=no" +ac_cv_prog_cc_w_old_style_definition=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$save_CFLAGS" + fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF +echo "$as_me:$LINENO: result: $ac_cv_prog_cc_w_old_style_definition" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_w_old_style_definition" >&6 +if test $ac_cv_prog_cc_w_old_style_definition = yes ; then + strict1_warn="${strict1_warn} -Wold-style-definition" +fi + +# Enable -Werror, period. +# Check whether --enable-werror_always or --disable-werror_always was given. +if test "${enable_werror_always+set}" = set; then + enableval="$enable_werror_always" + +else + enable_werror_always=no +fi; +if test x${enable_werror_always} = xyes ; then + strict1_warn="${strict1_warn} -Werror" + WERROR=-Werror +fi + +# If the native compiler is GCC, we can enable warnings even in stage1. +# That's useful for people building cross-compilers, or just running a +# quick `make'. +warn_cflags= +if test "x$GCC" = "xyes"; then + warn_cflags='$(GCC_WARN_CFLAGS)' +fi + + +# Enable -Werror in bootstrap stage2 and later. +# Check whether --enable-werror or --disable-werror was given. +if test "${enable_werror+set}" = set; then + enableval="$enable_werror" +else + if test x$is_release = x ; then + # Default to "yes" on development branches. + enable_werror=yes +else + # Default to "no" on release branches. + enable_werror=no +fi +fi; +if test x$enable_werror = xyes ; then + WERROR=-Werror fi + +# Enable expensive internal checks +# Check whether --enable-checking or --disable-checking was given. +if test "${enable_checking+set}" = set; then + enableval="$enable_checking" + ac_checking_flags="${enableval}" +else + +# Determine the default checks. +if test x$is_release = x ; then + ac_checking_flags=yes +else + ac_checking_flags=release +fi +fi; +ac_assert_checking=1 +ac_checking= +ac_tree_checking= +ac_rtl_checking= +ac_rtlflag_checking= +ac_gc_checking= +ac_gc_always_collect= +ac_fold_checking= +IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS," +for check in $ac_checking_flags +do + case $check in + yes) ac_assert_checking=1 ; ac_checking=1 ; + ac_tree_checking=1 ; ac_gc_checking=1 ; + ac_rtlflag_checking=1 ;; + no) ac_assert_checking= ; ac_checking= ; + ac_tree_checking= ; ac_rtl_checking= ; + ac_rtlflag_checking= ; ac_gc_checking= ; + ac_gc_always_collect= ; ac_fold_checking= ;; + all) ac_assert_checking=1 ; ac_checking=1 ; + ac_tree_checking=1 ; ac_rtl_checking=1 ; + ac_rtlflag_checking=1 ; ac_gc_checking=1 ; + ac_gc_always_collect=1 ; ac_fold_checking=1 ;; + release) ac_assert_checking=1 ;; + assert) ac_assert_checking=1 ;; + fold) ac_fold_checking=1 ;; + gc) ac_gc_checking=1 ;; + gcac) ac_gc_always_collect=1 ;; + misc) ac_checking=1 ;; + rtlflag) ac_rtlflag_checking=1 ;; + rtl) ac_rtl_checking=1 ;; + tree) ac_tree_checking=1 ;; + valgrind) ac_checking_valgrind=1 ;; + *) { { echo "$as_me:$LINENO: error: unknown check category $check" >&5 +echo "$as_me: error: unknown check category $check" >&2;} + { (exit 1); exit 1; }; } ;; + esac done +IFS="$ac_save_IFS" + +nocommon_flag="" +if test x$ac_checking != x ; then + +cat >>confdefs.h <<\_ACEOF +#define ENABLE_CHECKING 1 +_ACEOF + + nocommon_flag=-fno-common +fi + +if test x$ac_assert_checking != x ; then + +cat >>confdefs.h <<\_ACEOF +#define ENABLE_ASSERT_CHECKING 1 +_ACEOF +fi +if test x$ac_tree_checking != x ; then + +cat >>confdefs.h <<\_ACEOF +#define ENABLE_TREE_CHECKING 1 +_ACEOF + + TREEBROWSER=tree-browser.o +fi + +if test x$ac_rtl_checking != x ; then + +cat >>confdefs.h <<\_ACEOF +#define ENABLE_RTL_CHECKING 1 +_ACEOF + +fi +if test x$ac_rtlflag_checking != x ; then + +cat >>confdefs.h <<\_ACEOF +#define ENABLE_RTL_FLAG_CHECKING 1 +_ACEOF + +fi +if test x$ac_gc_checking != x ; then + +cat >>confdefs.h <<\_ACEOF +#define ENABLE_GC_CHECKING 1 +_ACEOF + +fi +if test x$ac_gc_always_collect != x ; then + +cat >>confdefs.h <<\_ACEOF +#define ENABLE_GC_ALWAYS_COLLECT 1 +_ACEOF + +fi +if test x$ac_fold_checking != x ; then + +cat >>confdefs.h <<\_ACEOF +#define ENABLE_FOLD_CHECKING 1 +_ACEOF + +fi +valgrind_path_defines= +valgrind_command= if test "${ac_cv_header_valgrind_h+set}" = set; then echo "$as_me:$LINENO: checking for valgrind.h" >&5 @@ -5290,7 +7348,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:5293: version of makeinfo is $ac_prog_version" >&5 + echo "configure:7351: version of makeinfo is $ac_prog_version" >&5 case $ac_prog_version in '') gcc_cv_prog_makeinfo_modern=no;; 4.[2-9]*) @@ -10099,7 +12157,7 @@ for f in $gcc_cv_as_bfd_srcdir/configure \ $gcc_cv_as_gas_srcdir/configure \ $gcc_cv_as_gas_srcdir/configure.in \ $gcc_cv_as_gas_srcdir/Makefile.in ; do - gcc_cv_gas_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f` + gcc_cv_gas_version=`sed -n -e 's/^[ ]*\(VERSION=[0-9]*\.[0-9]*.*\)/\1/p' < $f` if test x$gcc_cv_gas_version != x; then break fi @@ -10228,12 +12286,13 @@ elif test -f $gcc_cv_ld_gld_srcdir/configure.in \ in_tree_ld=yes in_tree_ld_is_elf=no if (grep 'EMUL = .*elf' ../ld/Makefile \ - || grep 'EMUL = .*linux' ../ld/Makefile) > /dev/null; then + || grep 'EMUL = .*linux' ../ld/Makefile \ + || grep 'EMUL = .*lynx' ../ld/Makefile) > /dev/null; then in_tree_ld_is_elf=yes fi for f in $gcc_cv_ld_bfd_srcdir/configure $gcc_cv_ld_gld_srcdir/configure $gcc_cv_ld_gld_srcdir/configure.in $gcc_cv_ld_gld_srcdir/Makefile.in do - gcc_cv_gld_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f` + gcc_cv_gld_version=`sed -n -e 's/^[ ]*\(VERSION=[0-9]*\.[0-9]*.*\)/\1/p' < $f` if test x$gcc_cv_gld_version != x; then break fi @@ -10834,12 +12893,117 @@ fi echo "$as_me:$LINENO: result: $gcc_cv_as_shf_merge" >&5 echo "${ECHO_T}$gcc_cv_as_shf_merge" >&6 +if test $gcc_cv_as_shf_merge = no; then + echo "$as_me:$LINENO: checking assembler for section merging support" >&5 +echo $ECHO_N "checking assembler for section merging support... $ECHO_C" >&6 +if test "${gcc_cv_as_shf_merge+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + gcc_cv_as_shf_merge=no + if test $in_tree_gas = yes; then + if test $in_tree_gas_is_elf = yes \ + && test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 12 \) \* 1000 + 0` + then gcc_cv_as_shf_merge=yes +fi + elif test x$gcc_cv_as != x; then + echo '.section .rodata.str, "aMS", %progbits, 1' > conftest.s + if { ac_try='$gcc_cv_as --fatal-warnings -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_shf_merge=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_shf_merge" >&5 +echo "${ECHO_T}$gcc_cv_as_shf_merge" >&6 + +fi cat >>confdefs.h <<_ACEOF #define HAVE_GAS_SHF_MERGE `if test $gcc_cv_as_shf_merge = yes; then echo 1; else echo 0; fi` _ACEOF +echo "$as_me:$LINENO: checking assembler for COMDAT group support" >&5 +echo $ECHO_N "checking assembler for COMDAT group support... $ECHO_C" >&6 +if test "${gcc_cv_as_comdat_group+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + gcc_cv_as_comdat_group=no + if test $in_tree_gas = yes; then + if test $in_tree_gas_is_elf = yes \ + && test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 15 \) \* 1000 + 91` + then gcc_cv_as_comdat_group=yes +fi + elif test x$gcc_cv_as != x; then + echo '.section .text,"axG",@progbits,.foo,comdat' > conftest.s + if { ac_try='$gcc_cv_as --fatal-warnings -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_comdat_group=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_comdat_group" >&5 +echo "${ECHO_T}$gcc_cv_as_comdat_group" >&6 + +if test $gcc_cv_as_comdat_group = yes; then + gcc_cv_as_comdat_group_percent=no +else + echo "$as_me:$LINENO: checking assembler for COMDAT group support" >&5 +echo $ECHO_N "checking assembler for COMDAT group support... $ECHO_C" >&6 +if test "${gcc_cv_as_comdat_group_percent+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + gcc_cv_as_comdat_group_percent=no + if test $in_tree_gas = yes; then + if test $in_tree_gas_is_elf = yes \ + && test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 15 \) \* 1000 + 91` + then gcc_cv_as_comdat_group_percent=yes +fi + elif test x$gcc_cv_as != x; then + echo '.section .text,"axG",%progbits,.foo,comdat' > conftest.s + if { ac_try='$gcc_cv_as --fatal-warnings -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_comdat_group_percent=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_comdat_group_percent" >&5 +echo "${ECHO_T}$gcc_cv_as_comdat_group_percent" >&6 + +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_GAS_COMDAT_GROUP `if test $gcc_cv_as_comdat_group = yes || test $gcc_cv_as_comdat_group_percent = yes; then echo 1; else echo 0; fi` +_ACEOF + + # Thread-local storage - the check is heavily parametrized. conftest_s= tls_first_major= @@ -13147,12 +15311,12 @@ s,@OBJEXT@,$OBJEXT,;t t s,@NO_MINUS_C_MINUS_O@,$NO_MINUS_C_MINUS_O,;t t s,@OUTPUT_OPTION@,$OUTPUT_OPTION,;t t s,@CPP@,$CPP,;t t +s,@EGREP@,$EGREP,;t t s,@strict1_warn@,$strict1_warn,;t t s,@warn_cflags@,$warn_cflags,;t t s,@WERROR@,$WERROR,;t t s,@nocommon_flag@,$nocommon_flag,;t t s,@TREEBROWSER@,$TREEBROWSER,;t t -s,@EGREP@,$EGREP,;t t s,@valgrind_path@,$valgrind_path,;t t s,@valgrind_path_defines@,$valgrind_path_defines,;t t s,@valgrind_command@,$valgrind_command,;t t diff --git a/gcc/configure.ac b/gcc/configure.ac index 6dbb8021460..a7916591654 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -289,15 +289,15 @@ AC_C_INLINE gcc_AC_C_LONG_LONG # sizeof(char) is 1 by definition. -AC_COMPILE_CHECK_SIZEOF(void *) -AC_COMPILE_CHECK_SIZEOF(short) -AC_COMPILE_CHECK_SIZEOF(int) -AC_COMPILE_CHECK_SIZEOF(long) +AC_CHECK_SIZEOF(void *) +AC_CHECK_SIZEOF(short) +AC_CHECK_SIZEOF(int) +AC_CHECK_SIZEOF(long) if test $ac_cv_c_long_long = yes; then - AC_COMPILE_CHECK_SIZEOF(long long) + AC_CHECK_SIZEOF(long long) fi if test $ac_cv_c___int64 = yes; then - AC_COMPILE_CHECK_SIZEOF(__int64) + AC_CHECK_SIZEOF(__int64) fi # --------------------- @@ -1865,13 +1865,14 @@ elif test -f $gcc_cv_ld_gld_srcdir/configure.in \ in_tree_ld=yes in_tree_ld_is_elf=no if (grep 'EMUL = .*elf' ../ld/Makefile \ - || grep 'EMUL = .*linux' ../ld/Makefile) > /dev/null; then + || grep 'EMUL = .*linux' ../ld/Makefile \ + || grep 'EMUL = .*lynx' ../ld/Makefile) > /dev/null; then in_tree_ld_is_elf=yes fi for f in $gcc_cv_ld_bfd_srcdir/configure $gcc_cv_ld_gld_srcdir/configure $gcc_cv_ld_gld_srcdir/configure.in $gcc_cv_ld_gld_srcdir/Makefile.in do changequote(,)dnl - gcc_cv_gld_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f` + gcc_cv_gld_version=`sed -n -e 's/^[ ]*\(VERSION=[0-9]*\.[0-9]*.*\)/\1/p' < $f` changequote([,])dnl if test x$gcc_cv_gld_version != x; then break @@ -2217,10 +2218,29 @@ fi gcc_GAS_CHECK_FEATURE(section merging support, gcc_cv_as_shf_merge, [elf,2,12,0], [--fatal-warnings], [.section .rodata.str, "aMS", @progbits, 1]) +if test $gcc_cv_as_shf_merge = no; then + gcc_GAS_CHECK_FEATURE(section merging support, gcc_cv_as_shf_merge, + [elf,2,12,0], [--fatal-warnings], + [.section .rodata.str, "aMS", %progbits, 1]) +fi AC_DEFINE_UNQUOTED(HAVE_GAS_SHF_MERGE, [`if test $gcc_cv_as_shf_merge = yes; then echo 1; else echo 0; fi`], [Define 0/1 if your assembler supports marking sections with SHF_MERGE flag.]) +gcc_GAS_CHECK_FEATURE(COMDAT group support, gcc_cv_as_comdat_group, + [elf,2,15,91], [--fatal-warnings], + [.section .text,"axG",@progbits,.foo,comdat]) +if test $gcc_cv_as_comdat_group = yes; then + gcc_cv_as_comdat_group_percent=no +else + gcc_GAS_CHECK_FEATURE(COMDAT group support, gcc_cv_as_comdat_group_percent, + [elf,2,15,91], [--fatal-warnings], + [.section .text,"axG",%progbits,.foo,comdat]) +fi +AC_DEFINE_UNQUOTED(HAVE_GAS_COMDAT_GROUP, + [`if test $gcc_cv_as_comdat_group = yes || test $gcc_cv_as_comdat_group_percent = yes; then echo 1; else echo 0; fi`], +[Define 0/1 if your assembler supports COMDAT group.]) + # Thread-local storage - the check is heavily parametrized. conftest_s= tls_first_major= diff --git a/gcc/convert.c b/gcc/convert.c index ceefbf24906..d9c0c129d7c 100644 --- a/gcc/convert.c +++ b/gcc/convert.c @@ -401,7 +401,7 @@ convert_to_integer (tree type, tree expr) we must also change the types of the operands to maintain type correctness. */ - if (TREE_CODE_CLASS (ex_form) == '<') + if (TREE_CODE_CLASS (ex_form) == tcc_comparison) { expr = copy_node (expr); TREE_TYPE (expr) = type; @@ -761,6 +761,6 @@ convert_to_vector (tree type, tree expr) default: error ("can't convert value to a vector"); - return convert_to_vector (type, integer_zero_node); + return error_mark_node; } } diff --git a/gcc/coverage.c b/gcc/coverage.c index ac2c4802009..a4f4d001c13 100644 --- a/gcc/coverage.c +++ b/gcc/coverage.c @@ -165,7 +165,7 @@ read_counts_file (void) if (!gcov_magic (gcov_read_unsigned (), GCOV_DATA_MAGIC)) { - warning ("`%s' is not a gcov data file", da_file_name); + warning ("%qs is not a gcov data file", da_file_name); gcov_close (); return; } @@ -176,7 +176,7 @@ read_counts_file (void) GCOV_UNSIGNED2STRING (v, tag); GCOV_UNSIGNED2STRING (e, GCOV_VERSION); - warning ("`%s' is version `%.*s', expected version `%.*s'", + warning ("%qs is version %q.*s, expected version %q.*s", da_file_name, 4, v, 4, e); gcov_close (); return; @@ -293,7 +293,7 @@ read_counts_file (void) gcov_sync (offset, length); if ((is_error = gcov_is_error ())) { - error (is_error < 0 ? "`%s' has overflowed" : "`%s' is corrupted", + error (is_error < 0 ? "%qs has overflowed" : "%qs is corrupted", da_file_name); htab_delete (counts_hash); break; @@ -330,7 +330,7 @@ get_coverage_counts (unsigned counter, unsigned expected, entry = htab_find (counts_hash, &elt); if (!entry) { - warning ("no coverage for function '%s' found.", IDENTIFIER_POINTER + warning ("no coverage for function %qs found.", IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (current_function_decl))); return 0; } @@ -338,7 +338,7 @@ get_coverage_counts (unsigned counter, unsigned expected, checksum = compute_checksum (); if (entry->checksum != checksum) { - error ("coverage mismatch for function '%s' while reading counter '%s'.", + error ("coverage mismatch for function %qs while reading counter %qs.", IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (current_function_decl)), ctr_names[counter]); error ("checksum is %x instead of %x", entry->checksum, checksum); @@ -346,7 +346,7 @@ get_coverage_counts (unsigned counter, unsigned expected, } else if (entry->summary.num != expected) { - error ("coverage mismatch for function '%s' while reading counter '%s'.", + error ("coverage mismatch for function %qs while reading counter %qs.", IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (current_function_decl)), ctr_names[counter]); error ("number of counters is %d instead of %d", entry->summary.num, expected); @@ -564,7 +564,7 @@ coverage_end_function (void) if (bbg_file_opened > 1 && gcov_is_error ()) { - warning ("error writing `%s'", bbg_file_name); + warning ("error writing %qs", bbg_file_name); bbg_file_opened = -1; } diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 43c58aa5ed0..be9b0d33688 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,182 @@ +2004-09-17 Jeffrey D. Oldham + Zack Weinberg + + * cp-tree.def: Use tree_code_class enumeration constants + instead of code letters. + * call.c, class.c, cp-gimplify.c, cp-lang.c, cxx-pretty-print.c + * mangle.c, pt.c, semantics.c, tree.c, typeck.c: + Update for new tree-class enumeration constants. + +2004-09-16 Mark Mitchell + + PR c++/16002 + * parser.c (cp_parser_simple_declaration): Commit to tentative + parses after seeing a decl-specifier. + (cp_parser_simple_declaration): Eliminate spurious message. + (cp_parser_init_declarator): Adjust error message. + + PR c++/16029 + * lex.c (unqualified_name_lookup_error): Mark the dummy + declaration as used. + + PR c++/17501 + * parser.c (cp_parser_nested_name_specifier): Do not resolve + typename types if the user explicitly said "typename". + +2004-09-16 Andrew MacLeod + + * error.c (dump_decl): Make sure there is lang_specific info before + checking for DTOR and CTOR decls. + +2004-09-16 Nathan Sidwell + + * class.c (copy_virtuals): Remove. + (build_primary_vtable): Use copy_list directly. + (build_secondary_vtable): Likewise. + (update_vtable_entry_for_fn): Clear BV_CALL_INDEX here. + (create_vtable_ptr): Likewise. + +2004-09-16 Kazu Hirata + + * search.c: Follow spelling conventions. + +2004-09-16 Nathan Sidwell + + * cp-tree.h (struct lang_type_class): Make pure_virtuals a + VEC(tree). + (CLASSTYPE_INLINE_FRIENDS, CLASSTYPE_PURE_VIRTUALS): Update + comments. + * call.c (build_new_method_call): Don't confirm a pure virtual is + in CLASSTYPE_PURE_VIRTUALS. Reorder checks. Make it a warning. + * class.c (check_methods): CLASSTYPE_INLINE_FRIENDS is a VEC(tree). + (fixup_inline_methods, finish_struct): Likewise. + * decl.c (finish_method): Likewise. + * search.c (dfs_get_pure_virtuals, get_pure_virtuals): + CLASSTYPE_PURE_VIRTUALS is a VEC(tree). + * typeck2.c (abstract_virtuals_error): Likewise. Truncate the + vector to avoid repeating the list in error messages. + +2004-09-15 Mark Mitchell + + * cp-objcp-common.h (LANG_HOOKS_COMDAT_GROUP): Define. + * cp-tree.h (cxx_comdat_group): Declare. + * decl.c (cxx_comdat_group): New function. + +2004-09-15 Nathan Sidwell + + * search.c (get_pure_virtuals): Remove unused variables. + + * cp-tree.h (struct lang_decl_flags): Remove + needs_final_overrider. + (DECL_NEEDS_FINAL_OVERRIDER_P): Remove. + * decl.c (duplicate_decls): Do not copy DECL_NEEDS_FINAL_OVERRIDER_P. + * class.c (finish_struct_bits): Correct comment about + CLASSTYPE_PURE_VIRTUALS. + * search.c (get_pure_virtuals): Remove useless loop. + +2004-09-14 Mark Mitchell + + PR c++/17324 + * mangle.c (partially_mangled_name): New variable. + (partially_mangled_name_len): Likewise. + (save_partially_mangled_name): New function. + (restore_partially_mangled_name): Likewise. + (write_encoding): Save and restore partially mangled names around + calls to get_mostly_instantiated_function_type. + (write_unqualified_name): Likewise. + +2004-09-14 Nathan Sidwell + + * pt.c (unify): Replace gcc_unreachable with gcc_assert. + +2004-09-13 Mark Mitchell + + PR c++/16162 + * parser.c (cp_parser_id_expression): Correct value for + is_declarator. + (cp_parser_nested_name_specifier_opt): Look through typenames as + necessary. + (cp_parser_template_name): Honor check_dependency_p. + + PR c++/16716 + * parser.c (cp_parser_parse_and_diagnose_invalid_type_name): + Robustify. + + PR c++/17327 + * pt.c (unify): Add ENUMERAL_TYPE case. Replace sorry with + gcc_unreacable. + +2004-09-12 Richard Henderson + + PR c++/16254 + * semantics.c (maybe_cleanup_point_expr): Don't call fold. + * typeck.c (condition_conversion): Likewise. + +2004-09-11 Richard Henderson + + PR c++/17404 + * pt.c (cur_stmt_expr): Move from tsubst_expr. + (tsubst_expr) : Move ... + (tsubst_copy_and_build): ... here. + +2004-09-10 Zack Weinberg + + * cp-tree.h (interface_only, interface_unknown): Delete declarations; + comment explaining them moved to c-common.h. + * lex.c (interface_only, interface_unknown, extract_interface_info): + Delete definitions. + (cxx_finish): Don't reset interface_unknown. + (handle_pragma_interface): Don't set interface_only and + interface_unknown; just the like-named fields in finfo. + (handle_pragma_implementation): Adjust comment. + * decl2.c (cp_finish_file): Don't reset interface_only and + interface_unknown. + * method.c (synthesize_method): Don't reset interface_unknown or + call extract_interface_info. + * pt.c (pop_tinst_level): Don't call extract_interface_info. + * decl.c (start_cleanup_fn): Don't save or restore interface_only + and interface_unknown. + (make_rtl_for_nonlocal_decl): Call get_fileinfo on input_filename + and use the result instead of the interface_only/interface_unknown + globals. + (start_preparsed_function): Likewise. + * lex.c (cxx_make_type): Likewise. + * semantics.c (begin_class_definition): Likewise. + (expand_body): Don't call extract_interface_info. + +2004-09-10 Ziemowit Laski + + * decl.c (objc_mark_locals_volatile): Make description of + routine more descriptive; only mark VAR_DECLs at each + binding level. + +2004-09-10 Richard Henderson + + PR c++/17386 + * call.c (build_vfield_ref): Move... + * class.c (build_vfield_ref): ... here. Convert datum to the + primary base containing the vptr. + (make_new_vtable): Simplify build_primary_vtable arguments. + (finish_struct_1): Do not duplicate TYPE_VFIELD. + * typeck.c (build_class_member_access_expr): Don't warn for + null object access to base fields. + +2004-09-10 Ziemowit Laski + + * decl.c (objc_get_current_scope, objc_mark_locals_volatile): + New functions, to be called from ObjC++. + +2004-09-10 Kazu Hirata + + * class.c, cp-tree.h, decl.c, decl2.c, mangle.c, + name-lookup.h, parser.c, search.c, semantics.c, typeck2.c: Fix + comment typos. + +2004-09-09 Ziemowit Laski + + * typeck.c (build_c_cast): Preserve the cast if casting + to and from an Objective-C type. + 2004-09-09 Ziemowit Laski * Make-lang.in (cp/typeck.o): Depend on c-common.h. @@ -432,7 +611,6 @@ 2004-08-25 Nathan Sidwell - * call.c (convert_class_to_reference): Adjust build_int_cst calls. (build_user_type_conversion_1, convert_like_real, build_java_interface_fn_ref, build_special_member_call): Likewise. @@ -458,6 +636,7 @@ * repo.c (extract_string): Reset backquote after one character. (get_base_filename): Fix indentation. + 2004-08-24 Nathan Sidwell * decl.c (cxx_init_decl_processing): Adjust diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 4e5b3d590c1..4f2a80c2922 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -191,23 +191,6 @@ static bool magic_varargs_p (tree); static tree build_temp (tree, tree, int, void (**)(const char *, ...)); static void check_constructor_callable (tree, tree); -tree -build_vfield_ref (tree datum, tree type) -{ - if (datum == error_mark_node) - return error_mark_node; - - if (TREE_CODE (TREE_TYPE (datum)) == REFERENCE_TYPE) - datum = convert_from_reference (datum); - - if (TYPE_BASE_CONVS_MAY_REQUIRE_CODE_P (type) - && !same_type_ignoring_top_level_qualifiers_p (TREE_TYPE (datum), type)) - datum = convert_to_base (datum, type, /*check_access=*/false); - - return build3 (COMPONENT_REF, TREE_TYPE (TYPE_VFIELD (type)), - datum, TYPE_VFIELD (type), 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... */ @@ -5329,16 +5312,18 @@ build_new_method_call (tree instance, tree fns, tree args, } else { - if (DECL_PURE_VIRTUAL_P (cand->fn) + if (!(flags & LOOKUP_NONVIRTUAL) + && DECL_PURE_VIRTUAL_P (cand->fn) && instance == current_class_ref && (DECL_CONSTRUCTOR_P (current_function_decl) - || DECL_DESTRUCTOR_P (current_function_decl)) - && ! (flags & LOOKUP_NONVIRTUAL) - && value_member (cand->fn, CLASSTYPE_PURE_VIRTUALS (basetype))) - error ((DECL_CONSTRUCTOR_P (current_function_decl) ? - "abstract virtual `%#D' called from constructor" - : "abstract virtual `%#D' called from destructor"), - cand->fn); + || DECL_DESTRUCTOR_P (current_function_decl))) + /* This is not an error, it is runtime undefined + behaviour. */ + warning ((DECL_CONSTRUCTOR_P (current_function_decl) ? + "abstract virtual `%#D' called from constructor" + : "abstract virtual `%#D' called from destructor"), + cand->fn); + if (TREE_CODE (TREE_TYPE (cand->fn)) == METHOD_TYPE && is_dummy_object (instance_ptr)) { @@ -5882,7 +5867,7 @@ joust (struct z_candidate *cand1, struct z_candidate *cand2, bool warn) /* If we have two pseudo-candidates for conversions to the same type, or two candidates for the same function, arbitrarily pick one. */ if (cand1->fn == cand2->fn - && (TYPE_P (cand1->fn) || DECL_P (cand1->fn))) + && (IS_TYPE_OR_DECL_P (cand1->fn))) return 1; /* a viable function F1 diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 957151d33eb..5a065209849 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -183,7 +183,6 @@ static void build_vcall_and_vbase_vtbl_entries (tree, static void clone_constructors_and_destructors (tree); static tree build_clone (tree, tree); static void update_vtable_entry_for_fn (tree, tree, tree, tree *, unsigned); -static tree copy_virtuals (tree); static void build_ctor_vtbl_group (tree, tree); static void build_vtt (tree); static tree binfo_ctor_vtable (tree); @@ -483,6 +482,38 @@ convert_to_base_statically (tree expr, tree base) } +tree +build_vfield_ref (tree datum, tree type) +{ + tree vfield, vcontext; + + if (datum == error_mark_node) + return error_mark_node; + + if (TREE_CODE (TREE_TYPE (datum)) == REFERENCE_TYPE) + datum = convert_from_reference (datum); + + /* First, convert to the requested type. */ + if (!same_type_ignoring_top_level_qualifiers_p (TREE_TYPE (datum), type)) + datum = convert_to_base (datum, type, /*check_access=*/false); + + /* Second, the requested type may not be the owner of its own vptr. + If not, convert to the base class that owns it. We cannot use + convert_to_base here, because VCONTEXT may appear more than once + in the inheritence hierarchy of TYPE, and thus direct conversion + between the types may be ambiguous. Following the path back up + one step at a time via primary bases avoids the problem. */ + vfield = TYPE_VFIELD (type); + vcontext = DECL_CONTEXT (vfield); + while (!same_type_ignoring_top_level_qualifiers_p (vcontext, type)) + { + datum = build_simple_base_path (datum, CLASSTYPE_PRIMARY_BINFO (type)); + type = TREE_TYPE (datum); + } + + return build3 (COMPONENT_REF, TREE_TYPE (vfield), datum, vfield, NULL_TREE); +} + /* Given an object INSTANCE, return an expression which yields the vtable element corresponding to INDEX. There are many special cases for INSTANCE which we take care of here, mainly to avoid @@ -677,22 +708,6 @@ get_vtable_decl (tree type, int complete) return decl; } -/* Returns a copy of the BINFO_VIRTUALS list in BINFO. The - BV_VCALL_INDEX for each entry is cleared. */ - -static tree -copy_virtuals (tree binfo) -{ - tree copies; - tree t; - - copies = copy_list (BINFO_VIRTUALS (binfo)); - for (t = copies; t; t = TREE_CHAIN (t)) - BV_VCALL_INDEX (t) = NULL_TREE; - - return copies; -} - /* Build the primary virtual function table for TYPE. If BINFO is non-NULL, build the vtable starting with the initial approximation that it is the same as the one which is the head of the association @@ -714,7 +729,7 @@ build_primary_vtable (tree binfo, tree type) no need to do it again. */ return 0; - virtuals = copy_virtuals (binfo); + virtuals = copy_list (BINFO_VIRTUALS (binfo)); TREE_TYPE (decl) = TREE_TYPE (get_vtbl_decl_for_binfo (binfo)); DECL_SIZE (decl) = TYPE_SIZE (TREE_TYPE (decl)); DECL_SIZE_UNIT (decl) = TYPE_SIZE_UNIT (TREE_TYPE (decl)); @@ -765,7 +780,7 @@ build_secondary_vtable (tree binfo) SET_BINFO_NEW_VTABLE_MARKED (binfo); /* Make fresh virtual list, so we can smash it later. */ - BINFO_VIRTUALS (binfo) = copy_virtuals (binfo); + BINFO_VIRTUALS (binfo) = copy_list (BINFO_VIRTUALS (binfo)); /* Secondary vtables are laid out as part of the same structure as the primary vtable. */ @@ -783,10 +798,7 @@ make_new_vtable (tree t, tree binfo) /* In this case, it is *type*'s vtable we are modifying. We start with the approximation that its vtable is that of the immediate base class. */ - /* ??? This actually passes TYPE_BINFO (t), not the primary base binfo, - since we've updated DECL_CONTEXT (TYPE_VFIELD (t)) by now. */ - return build_primary_vtable (TYPE_BINFO (DECL_CONTEXT (TYPE_VFIELD (t))), - t); + return build_primary_vtable (binfo, t); else /* This is our very own copy of `basetype' to play with. Later, we will fill in all the virtual functions that override the @@ -1247,7 +1259,7 @@ check_bases (tree t, /* Determine all the primary bases within T. Sets BINFO_PRIMARY_BASE_P for those that are primaries. Sets BINFO_LOST_PRIMARY_P for those that have had a nearly-empty virtual primary base stolen by some - other base in the heirarchy. Determines CLASSTYPE_PRIMARY_BASE for + other base in the hierarchy. Determines CLASSTYPE_PRIMARY_BASE for T. */ static void @@ -1320,7 +1332,7 @@ determine_primary_bases (tree t) /* A "nearly-empty" virtual base class can be the primary base class, if no non-virtual polymorphic base can be found. Look for a nearly-empty virtual dynamic base that is not already a primary - base of something in the heirarchy. If there is no such base, + base of something in the hierarchy. If there is no such base, just pick the first nearly-empty virtual base. */ for (base_binfo = TREE_CHAIN (type_binfo); base_binfo; @@ -1410,8 +1422,8 @@ finish_struct_bits (tree t) } if (BINFO_N_BASE_BINFOS (TYPE_BINFO (t)) && TYPE_POLYMORPHIC_P (t)) - /* For a class w/o baseclasses, `finish_struct' has set - CLASS_TYPE_ABSTRACT_VIRTUALS correctly (by definition). + /* For a class w/o baseclasses, 'finish_struct' has set + CLASSTYPE_PURE_VIRTUALS correctly (by definition). Similarly for a class whose base classes do not have vtables. When neither of these is true, we might have removed abstract virtuals (by providing a definition), added some (by declaring @@ -1419,7 +1431,7 @@ finish_struct_bits (tree t) recalculate what's really an abstract virtual at this point (by looking in the vtables). */ get_pure_virtuals (t); - + /* If this type has a copy constructor or a destructor, force its mode to be BLKmode, and force its TREE_ADDRESSABLE bit to be nonzero. This will cause it to be passed by invisible reference @@ -2208,6 +2220,8 @@ update_vtable_entry_for_fn (tree t, tree binfo, tree fn, tree* virtuals, if (virtual_base) BV_VCALL_INDEX (*virtuals) = get_vcall_index (overrider_target, BINFO_TYPE (virtual_base)); + else + BV_VCALL_INDEX (*virtuals) = NULL_TREE; } /* Called from modify_all_vtables via dfs_walk. */ @@ -3072,7 +3086,7 @@ check_field_decls (tree t, tree *access_decls, user at least implemented the cleanup correctly, and a destructor is needed to free dynamic memory. - This seems enough for pratical purposes. */ + This seems enough for practical purposes. */ if (warn_ecpp && has_pointers && TYPE_HAS_CONSTRUCTOR (t) @@ -3721,8 +3735,7 @@ check_methods (tree t) { TYPE_POLYMORPHIC_P (t) = 1; if (DECL_PURE_VIRTUAL_P (x)) - CLASSTYPE_PURE_VIRTUALS (t) - = tree_cons (NULL_TREE, x, CLASSTYPE_PURE_VIRTUALS (t)); + VEC_safe_push (tree, CLASSTYPE_PURE_VIRTUALS (t), x); } } } @@ -4171,6 +4184,7 @@ create_vtable_ptr (tree t, tree* virtuals_p) BV_FN (new_virtual) = fn; BV_DELTA (new_virtual) = integer_zero_node; + BV_VCALL_INDEX (new_virtual) = NULL_TREE; TREE_CHAIN (new_virtual) = *virtuals_p; *virtuals_p = new_virtual; @@ -4252,6 +4266,8 @@ static void fixup_inline_methods (tree type) { tree method = TYPE_METHODS (type); + VEC (tree) *friends; + unsigned ix; if (method && TREE_CODE (method) == TREE_VEC) { @@ -4268,11 +4284,10 @@ fixup_inline_methods (tree type) fixup_pending_inline (method); /* Do friends. */ - for (method = CLASSTYPE_INLINE_FRIENDS (type); - method; - method = TREE_CHAIN (method)) - fixup_pending_inline (TREE_VALUE (method)); - CLASSTYPE_INLINE_FRIENDS (type) = NULL_TREE; + for (friends = CLASSTYPE_INLINE_FRIENDS (type), ix = 0; + VEC_iterate (tree, friends, ix, method); ix++) + fixup_pending_inline (method); + CLASSTYPE_INLINE_FRIENDS (type) = NULL; } /* Add OFFSET to all base types of BINFO which is a base in the @@ -4927,7 +4942,6 @@ finish_struct_1 (tree t) /* A TREE_LIST. The TREE_VALUE of each node is a FUNCTION_DECL. */ tree virtuals = NULL_TREE; int n_fields = 0; - tree vfield; if (COMPLETE_TYPE_P (t)) { @@ -4981,25 +4995,6 @@ finish_struct_1 (tree t) needs a mode. */ compute_record_mode (CLASSTYPE_AS_BASE (t)); - /* Make sure that we get our own copy of the vfield FIELD_DECL. */ - vfield = TYPE_VFIELD (t); - if (vfield && CLASSTYPE_HAS_PRIMARY_BASE_P (t)) - { - tree primary = CLASSTYPE_PRIMARY_BINFO (t); - - gcc_assert (same_type_p (DECL_FIELD_CONTEXT (vfield), - BINFO_TYPE (primary))); - /* The vtable better be at the start. */ - gcc_assert (integer_zerop (DECL_FIELD_OFFSET (vfield))); - gcc_assert (integer_zerop (BINFO_OFFSET (primary))); - - vfield = copy_decl (vfield); - DECL_FIELD_CONTEXT (vfield) = t; - TYPE_VFIELD (t) = vfield; - } - else - gcc_assert (!vfield || DECL_FIELD_CONTEXT (vfield) == t); - virtuals = modify_all_vtables (t, nreverse (virtuals)); /* If necessary, create the primary vtable for this class. */ @@ -5174,11 +5169,10 @@ finish_struct (tree t, tree attributes) the PARM_DECLS. Note that while the type is being defined, CLASSTYPE_PURE_VIRTUALS contains the list of the inline friends (see CLASSTYPE_INLINE_FRIENDS) so we need to clear it. */ - CLASSTYPE_PURE_VIRTUALS (t) = NULL_TREE; + CLASSTYPE_PURE_VIRTUALS (t) = NULL; for (x = TYPE_METHODS (t); x; x = TREE_CHAIN (x)) if (DECL_PURE_VIRTUAL_P (x)) - CLASSTYPE_PURE_VIRTUALS (t) - = tree_cons (NULL_TREE, x, CLASSTYPE_PURE_VIRTUALS (t)); + VEC_safe_push (tree, CLASSTYPE_PURE_VIRTUALS (t), x); complete_vars (t); } else @@ -6278,11 +6272,11 @@ get_enclosing_class (tree type) { switch (TREE_CODE_CLASS (TREE_CODE (node))) { - case 'd': + case tcc_declaration: node = DECL_CONTEXT (node); break; - case 't': + case tcc_type: if (node != type) return node; node = TYPE_CONTEXT (node); diff --git a/gcc/cp/cp-gimplify.c b/gcc/cp/cp-gimplify.c index c937a1149d3..d6a2f18ff05 100644 --- a/gcc/cp/cp-gimplify.c +++ b/gcc/cp/cp-gimplify.c @@ -303,7 +303,7 @@ cp_genericize_r (tree *stmt_p, int *walk_subtrees, void *data) && is_invisiref_parm (TREE_OPERAND (stmt, 0))) /* Don't dereference an invisiref RESULT_DECL inside a RETURN_EXPR. */ *walk_subtrees = 0; - else if (DECL_P (stmt) || TYPE_P (stmt)) + else if (IS_TYPE_OR_DECL_P (stmt)) *walk_subtrees = 0; /* Due to the way voidify_wrapper_expr is written, we don't get a chance diff --git a/gcc/cp/cp-lang.c b/gcc/cp/cp-lang.c index ac89be0f682..3b2590cd498 100644 --- a/gcc/cp/cp-lang.c +++ b/gcc/cp/cp-lang.c @@ -57,11 +57,11 @@ const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; #define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE, -const char tree_code_type[] = { +const enum tree_code_class tree_code_type[] = { #include "tree.def" - 'x', + tcc_exceptional, #include "c-common.def" - 'x', + tcc_exceptional, #include "cp-tree.def" }; #undef DEFTREECODE diff --git a/gcc/cp/cp-objcp-common.h b/gcc/cp/cp-objcp-common.h index 1599080e896..a6ab3832a8f 100644 --- a/gcc/cp/cp-objcp-common.h +++ b/gcc/cp/cp-objcp-common.h @@ -92,6 +92,8 @@ extern tree objcp_tsubst_copy_and_build (tree, tree, tsubst_flags_t, #define LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL cxx_warn_unused_global_decl #undef LANG_HOOKS_WRITE_GLOBALS #define LANG_HOOKS_WRITE_GLOBALS lhd_do_nothing +#undef LANG_HOOKS_COMDAT_GROUP +#define LANG_HOOKS_COMDAT_GROUP cxx_comdat_group #undef LANG_HOOKS_FUNCTION_INIT #define LANG_HOOKS_FUNCTION_INIT cxx_push_function_context diff --git a/gcc/cp/cp-tree.def b/gcc/cp/cp-tree.def index 02afea97a50..2335e2f7043 100644 --- a/gcc/cp/cp-tree.def +++ b/gcc/cp/cp-tree.def @@ -42,56 +42,56 @@ Boston, MA 02111-1307, USA. */ 2. An expression of the form `x.*p'. In this case, operand 0 will be an expression corresponding to `x' and operand 1 will be an expression with pointer-to-member type. */ -DEFTREECODE (OFFSET_REF, "offset_ref", 'r', 2) +DEFTREECODE (OFFSET_REF, "offset_ref", tcc_reference, 2) /* A pointer-to-member constant. For a pointer-to-member constant `X::Y' The PTRMEM_CST_CLASS is the RECORD_TYPE for `X' and the PTRMEM_CST_MEMBER is the _DECL for `Y'. */ -DEFTREECODE (PTRMEM_CST, "ptrmem_cst", 'c', 0) +DEFTREECODE (PTRMEM_CST, "ptrmem_cst", tcc_constant, 0) /* For NEW_EXPR, operand 0 is the placement list. Operand 1 is the new-declarator. Operand 2 is the number of elements in the array. Operand 3 is the initializer. */ -DEFTREECODE (NEW_EXPR, "nw_expr", 'e', 4) -DEFTREECODE (VEC_NEW_EXPR, "vec_nw_expr", 'e', 3) +DEFTREECODE (NEW_EXPR, "nw_expr", tcc_expression, 4) +DEFTREECODE (VEC_NEW_EXPR, "vec_nw_expr", tcc_expression, 3) /* For DELETE_EXPR, operand 0 is the store to be destroyed. Operand 1 is the value to pass to the destroying function saying whether the store should be deallocated as well. */ -DEFTREECODE (DELETE_EXPR, "dl_expr", 'e', 2) -DEFTREECODE (VEC_DELETE_EXPR, "vec_dl_expr", 'e', 2) +DEFTREECODE (DELETE_EXPR, "dl_expr", tcc_expression, 2) +DEFTREECODE (VEC_DELETE_EXPR, "vec_dl_expr", tcc_expression, 2) /* Value is reference to particular overloaded class method. Operand 0 is the class, operand 1 is the field The COMPLEXITY field holds the class level (usually 0). */ -DEFTREECODE (SCOPE_REF, "scope_ref", 'r', 2) +DEFTREECODE (SCOPE_REF, "scope_ref", tcc_reference, 2) /* When composing an object with a member, this is the result. Operand 0 is the object. Operand 1 is the member (usually a dereferenced pointer to member). */ -DEFTREECODE (MEMBER_REF, "member_ref", 'r', 2) +DEFTREECODE (MEMBER_REF, "member_ref", tcc_reference, 2) /* Type conversion operator in C++. TREE_TYPE is type that this operator converts to. Operand is expression to be converted. */ -DEFTREECODE (TYPE_EXPR, "type_expr", 'e', 1) +DEFTREECODE (TYPE_EXPR, "type_expr", tcc_expression, 1) /* For AGGR_INIT_EXPR, operand 0 is function which performs initialization, operand 1 is argument list to initialization function, and operand 2 is the slot which was allocated for this expression. */ -DEFTREECODE (AGGR_INIT_EXPR, "aggr_init_expr", 'e', 3) +DEFTREECODE (AGGR_INIT_EXPR, "aggr_init_expr", tcc_expression, 3) /* A throw expression. operand 0 is the expression, if there was one, else it is NULL_TREE. */ -DEFTREECODE (THROW_EXPR, "throw_expr", 'e', 1) +DEFTREECODE (THROW_EXPR, "throw_expr", tcc_expression, 1) /* An empty class object. The TREE_TYPE gives the class type. We use these to avoid actually creating instances of the empty classes. */ -DEFTREECODE (EMPTY_CLASS_EXPR, "empty_class_expr", 'e', 0) +DEFTREECODE (EMPTY_CLASS_EXPR, "empty_class_expr", tcc_expression, 0) /* A DECL which is really just a placeholder for an expression. Used to implement non-class scope anonymous unions. */ -DEFTREECODE (ALIAS_DECL, "alias_decl", 'd', 0) +DEFTREECODE (ALIAS_DECL, "alias_decl", tcc_declaration, 0) /* A reference to a member function or member functions from a base class. BASELINK_FUNCTIONS gives the FUNCTION_DECL, @@ -105,7 +105,7 @@ DEFTREECODE (ALIAS_DECL, "alias_decl", 'd', 0) the type of the expression. This type is either a FUNCTION_TYPE, METHOD_TYPE, or `unknown_type_node' indicating that the function is overloaded. */ -DEFTREECODE (BASELINK, "baselink", 'x', 0) +DEFTREECODE (BASELINK, "baselink", tcc_exceptional, 0) /* Template definition. The following fields have the specified uses, although there are other macros in cp-tree.h that should be used for @@ -122,7 +122,7 @@ DEFTREECODE (BASELINK, "baselink", 'x', 0) DECL_TEMPLATE_RESULT decl for object to be created (e.g., FUNCTION_DECL with tmpl parms used) */ -DEFTREECODE (TEMPLATE_DECL, "template_decl", 'd', 0) +DEFTREECODE (TEMPLATE_DECL, "template_decl", tcc_declaration, 0) /* Index into a template parameter list. The TEMPLATE_PARM_IDX gives the index (from 0) of the parameter, while the TEMPLATE_PARM_LEVEL @@ -157,11 +157,11 @@ DEFTREECODE (TEMPLATE_DECL, "template_decl", 'd', 0) The LEVEL is the level of the parameter when we are worrying about the types of things; the ORIG_LEVEL is the level when we are worrying about instantiating things. */ -DEFTREECODE (TEMPLATE_PARM_INDEX, "template_parm_index", 'x', 0) +DEFTREECODE (TEMPLATE_PARM_INDEX, "template_parm_index", tcc_exceptional, 0) /* Index into a template parameter list. This parameter must be a type. The type.value field will be a TEMPLATE_PARM_INDEX. */ -DEFTREECODE (TEMPLATE_TYPE_PARM, "template_type_parm", 't', 0) +DEFTREECODE (TEMPLATE_TYPE_PARM, "template_type_parm", tcc_type, 0) /* Index into a template parameter list for template template parameters. This parameter must be a type. The TYPE_FIELDS value will be a @@ -170,13 +170,14 @@ DEFTREECODE (TEMPLATE_TYPE_PARM, "template_type_parm", 't', 0) It is used without template arguments like TT in C, TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO is NULL_TREE and TYPE_NAME is a TEMPLATE_DECL. */ -DEFTREECODE (TEMPLATE_TEMPLATE_PARM, "template_template_parm", 't', 0) +DEFTREECODE (TEMPLATE_TEMPLATE_PARM, "template_template_parm", tcc_type, 0) /* Like TEMPLATE_TEMPLATE_PARM it is used with bound template arguments like TT. In this case, TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO contains the template name and its bound arguments. TYPE_NAME is a TYPE_DECL. */ -DEFTREECODE (BOUND_TEMPLATE_TEMPLATE_PARM, "bound_template_template_parm", 't', 0) +DEFTREECODE (BOUND_TEMPLATE_TEMPLATE_PARM, "bound_template_template_parm", + tcc_type, 0) /* A type designated by `typename T::t'. TYPE_CONTEXT is `T', TYPE_NAME is an IDENTIFIER_NODE for `t'. If the type was named via @@ -184,51 +185,51 @@ DEFTREECODE (BOUND_TEMPLATE_TEMPLATE_PARM, "bound_template_template_parm", 't', If TREE_TYPE is present, this type was generated by the implicit typename extension, and the TREE_TYPE is a _TYPE from a baseclass of `T'. */ -DEFTREECODE (TYPENAME_TYPE, "typename_type", 't', 0) +DEFTREECODE (TYPENAME_TYPE, "typename_type", tcc_type, 0) /* For template template argument of the form `T::template C'. TYPE_CONTEXT is `T', the template parameter dependent object. TYPE_NAME is an IDENTIFIER_NODE for `C', the member class template. */ -DEFTREECODE (UNBOUND_CLASS_TEMPLATE, "unbound_class_template", 't', 0) +DEFTREECODE (UNBOUND_CLASS_TEMPLATE, "unbound_class_template", tcc_type, 0) /* A type designated by `__typeof (expr)'. TYPEOF_TYPE_EXPR is the expression in question. */ -DEFTREECODE (TYPEOF_TYPE, "typeof_type", 't', 0) +DEFTREECODE (TYPEOF_TYPE, "typeof_type", tcc_type, 0) /* A using declaration. DECL_INITIAL contains the specified scope. This is not an alias, but is later expanded into multiple aliases. The decl will have a NULL_TYPE iff the scope is a dependent scope, otherwise it will have a void type. */ -DEFTREECODE (USING_DECL, "using_decl", 'd', 0) +DEFTREECODE (USING_DECL, "using_decl", tcc_declaration, 0) /* A using directive. The operand is USING_STMT_NAMESPACE. */ -DEFTREECODE (USING_STMT, "using_directive", 'e', 1) +DEFTREECODE (USING_STMT, "using_directive", tcc_expression, 1) /* An un-parsed default argument. Looks like an IDENTIFIER_NODE. */ -DEFTREECODE (DEFAULT_ARG, "default_arg", 'x', 0) +DEFTREECODE (DEFAULT_ARG, "default_arg", tcc_exceptional, 0) /* A template-id, like foo. The first operand is the template. The second is NULL if there are no explicit arguments, or a TREE_VEC of arguments. The template will be a FUNCTION_DECL, TEMPLATE_DECL, or an OVERLOAD. If the template-id refers to a member template, the template may be an IDENTIFIER_NODE. */ -DEFTREECODE (TEMPLATE_ID_EXPR, "template_id_expr", 'e', 2) +DEFTREECODE (TEMPLATE_ID_EXPR, "template_id_expr", tcc_expression, 2) /* A list-like node for chaining overloading candidates. TREE_TYPE is the original name, and the parameter is the FUNCTION_DECL. */ -DEFTREECODE (OVERLOAD, "overload", 'x', 0) +DEFTREECODE (OVERLOAD, "overload", tcc_exceptional, 0) /* A whole bunch of tree codes for the initial, superficial parsing of templates. */ -DEFTREECODE (MODOP_EXPR, "modop_expr", 'e', 3) -DEFTREECODE (CAST_EXPR, "cast_expr", '1', 1) -DEFTREECODE (REINTERPRET_CAST_EXPR, "reinterpret_cast_expr", '1', 1) -DEFTREECODE (CONST_CAST_EXPR, "const_cast_expr", '1', 1) -DEFTREECODE (STATIC_CAST_EXPR, "static_cast_expr", '1', 1) -DEFTREECODE (DYNAMIC_CAST_EXPR, "dynamic_cast_expr", '1', 1) -DEFTREECODE (DOTSTAR_EXPR, "dotstar_expr", 'e', 2) -DEFTREECODE (TYPEID_EXPR, "typeid_expr", 'e', 1) -DEFTREECODE (PSEUDO_DTOR_EXPR, "pseudo_dtor_expr", 'e', 3) +DEFTREECODE (MODOP_EXPR, "modop_expr", tcc_expression, 3) +DEFTREECODE (CAST_EXPR, "cast_expr", tcc_unary, 1) +DEFTREECODE (REINTERPRET_CAST_EXPR, "reinterpret_cast_expr", tcc_unary, 1) +DEFTREECODE (CONST_CAST_EXPR, "const_cast_expr", tcc_unary, 1) +DEFTREECODE (STATIC_CAST_EXPR, "static_cast_expr", tcc_unary, 1) +DEFTREECODE (DYNAMIC_CAST_EXPR, "dynamic_cast_expr", tcc_unary, 1) +DEFTREECODE (DOTSTAR_EXPR, "dotstar_expr", tcc_expression, 2) +DEFTREECODE (TYPEID_EXPR, "typeid_expr", tcc_expression, 1) +DEFTREECODE (PSEUDO_DTOR_EXPR, "pseudo_dtor_expr", tcc_expression, 3) /* A placeholder for an expression that is not type-dependent, but does occur in a template. When an expression that is not @@ -239,38 +240,38 @@ DEFTREECODE (PSEUDO_DTOR_EXPR, "pseudo_dtor_expr", 'e', 3) that situation, we create a NON_DEPENDENT_EXPR to take the place of the original expression. The expression is the only operand -- it is only needed for diagnostics. */ -DEFTREECODE (NON_DEPENDENT_EXPR, "non_dependent_expr", 'e', 1) +DEFTREECODE (NON_DEPENDENT_EXPR, "non_dependent_expr", tcc_expression, 1) /* CTOR_INITIALIZER is a placeholder in template code for a call to setup_vtbl_pointer (and appears in all functions, not just ctors). */ -DEFTREECODE (CTOR_INITIALIZER, "ctor_initializer", 'e', 1) +DEFTREECODE (CTOR_INITIALIZER, "ctor_initializer", tcc_expression, 1) -DEFTREECODE (TRY_BLOCK, "try_block", 'e', 2) +DEFTREECODE (TRY_BLOCK, "try_block", tcc_expression, 2) -DEFTREECODE (EH_SPEC_BLOCK, "eh_spec_block", 'e', 2) +DEFTREECODE (EH_SPEC_BLOCK, "eh_spec_block", tcc_expression, 2) /* A HANDLER wraps a catch handler for the HANDLER_TYPE. If this is CATCH_ALL_TYPE, then the handler catches all types. The declaration of the catch variable is in HANDLER_PARMS, and the body block in HANDLER_BODY. */ -DEFTREECODE (HANDLER, "handler", 'e', 2) +DEFTREECODE (HANDLER, "handler", tcc_expression, 2) /* A MUST_NOT_THROW_EXPR wraps an expression that may not throw, and must call terminate if it does. */ -DEFTREECODE (MUST_NOT_THROW_EXPR, "must_not_throw_expr", 'e', 1) +DEFTREECODE (MUST_NOT_THROW_EXPR, "must_not_throw_expr", tcc_expression, 1) /* A CLEANUP_STMT marks the point at which a declaration is fully constructed. The CLEANUP_EXPR is run on behalf of CLEANUP_DECL when CLEANUP_BODY completes. */ -DEFTREECODE (CLEANUP_STMT, "cleanup_stmt", 'e', 3) +DEFTREECODE (CLEANUP_STMT, "cleanup_stmt", tcc_expression, 3) /* Represents an 'if' statement. The operands are IF_COND, THEN_CLAUSE, and ELSE_CLAUSE, respectively. */ /* ??? It is currently still necessary to distinguish between IF_STMT and COND_EXPR for the benefit of templates. */ -DEFTREECODE (IF_STMT, "if_stmt", 'e', 3) +DEFTREECODE (IF_STMT, "if_stmt", tcc_expression, 3) -DEFTREECODE (TAG_DEFN, "tag_defn", 'e', 0) +DEFTREECODE (TAG_DEFN, "tag_defn", tcc_expression, 0) /* Template instantiation level node. @@ -280,10 +281,10 @@ DEFTREECODE (TAG_DEFN, "tag_defn", 'e', 0) A stack of template instantiation nodes is kept through the TREE_CHAIN fields of these nodes. */ -DEFTREECODE (TINST_LEVEL, "TINST_LEVEL", 'x', 0) +DEFTREECODE (TINST_LEVEL, "TINST_LEVEL", tcc_exceptional, 0) /* Represents an 'offsetof' expression during template expansion. */ -DEFTREECODE (OFFSETOF_EXPR, "offsetof_expr", 'e', 1) +DEFTREECODE (OFFSETOF_EXPR, "offsetof_expr", tcc_expression, 1) /* Local variables: diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 0555883be1e..433403c77d6 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -313,7 +313,7 @@ struct tree_baselink GTY(()) tree access_binfo; }; -/* The different kinds of ids that we ecounter. */ +/* The different kinds of ids that we encounter. */ typedef enum cp_id_kind { @@ -738,8 +738,8 @@ struct language_function GTY(()) #define cp_function_chain (cfun->language) /* In a constructor destructor, the point at which all derived class - destroying/contruction has been has been done. Ie. just before a - constuctor returns, or before any base class destroying will be done + destroying/construction has been has been done. Ie. just before a + constructor returns, or before any base class destroying will be done in a destructor. */ #define cdtor_label cp_function_chain->x_cdtor_label @@ -813,13 +813,6 @@ struct language_function GTY(()) #define error_operand_p(NODE) \ ((NODE) == error_mark_node \ || ((NODE) && TREE_TYPE ((NODE)) == error_mark_node)) - -/* INTERFACE_ONLY nonzero means that we are in an "interface" - section of the compiler. INTERFACE_UNKNOWN nonzero means - we cannot trust the value of INTERFACE_ONLY. If INTERFACE_UNKNOWN - is zero and INTERFACE_ONLY is zero, it means that we are responsible - for exporting definitions that others might need. */ -extern int interface_only, interface_unknown; /* C++ language-specific tree codes. */ #define DEFTREECODE(SYM, NAME, TYPE, LENGTH) SYM, @@ -1046,7 +1039,7 @@ struct lang_type_class GTY(()) VEC (tree) *vbases; binding_table nested_udts; tree as_base; - tree pure_virtuals; + VEC (tree) *pure_virtuals; tree friend_classes; VEC (tree) * GTY((reorder ("resort_type_method_vec"))) methods; tree key_method; @@ -1103,7 +1096,8 @@ struct lang_type GTY(()) /* Fields used for storing information before the class is defined. After the class is defined, these fields hold other information. */ -/* List of friends which were defined inline in this class definition. */ +/* VEC(tree) of friends which were defined inline in this class + definition. */ #define CLASSTYPE_INLINE_FRIENDS(NODE) CLASSTYPE_PURE_VIRTUALS (NODE) /* Nonzero for _CLASSTYPE means that operator delete is defined. */ @@ -1310,12 +1304,14 @@ struct lang_type GTY(()) /* True if this a Java interface type, declared with '__attribute__ ((java_interface))'. */ -#define TYPE_JAVA_INTERFACE(NODE) (LANG_TYPE_CLASS_CHECK (NODE)->java_interface) +#define TYPE_JAVA_INTERFACE(NODE) \ + (LANG_TYPE_CLASS_CHECK (NODE)->java_interface) -/* A cons list of virtual functions which cannot be inherited by +/* A VEC(tree) of virtual functions which cannot be inherited by derived classes. When deriving from this type, the derived class must provide its own definition for each of these functions. */ -#define CLASSTYPE_PURE_VIRTUALS(NODE) (LANG_TYPE_CLASS_CHECK (NODE)->pure_virtuals) +#define CLASSTYPE_PURE_VIRTUALS(NODE) \ + (LANG_TYPE_CLASS_CHECK (NODE)->pure_virtuals) /* Nonzero means that this type has an X() constructor. */ #define TYPE_HAS_DEFAULT_CONSTRUCTOR(NODE) \ @@ -1529,16 +1525,15 @@ struct lang_decl_flags GTY(()) unsigned use_template : 2; unsigned nonconverting : 1; unsigned not_really_extern : 1; - unsigned needs_final_overrider : 1; unsigned initialized_in_class : 1; unsigned assignment_operator_p : 1; - unsigned u1sel : 1; + unsigned u2sel : 1; unsigned can_be_full : 1; unsigned this_thunk_p : 1; unsigned repo_available_p : 1; - unsigned dummy : 3; + unsigned dummy : 4; union lang_decl_u { /* In a FUNCTION_DECL for which DECL_THUNK_P holds, this is @@ -1890,11 +1885,6 @@ struct lang_decl GTY(()) #define DECL_PURE_VIRTUAL_P(NODE) \ (DECL_LANG_SPECIFIC (NODE)->decl_flags.pure_virtual) -/* Nonzero for FUNCTION_DECL means that this member function - must be overridden by derived classes. */ -#define DECL_NEEDS_FINAL_OVERRIDER_P(NODE) \ - (DECL_LANG_SPECIFIC (NODE)->decl_flags.needs_final_overrider) - /* True (in a FUNCTION_DECL) if NODE is a virtual function that is an invalid overrider for a function from a base class. Once we have complained about an invalid overrider we avoid complaining about it @@ -3802,6 +3792,7 @@ extern tree builtin_function (const char *name, tree type, const char *libname, tree attrs); extern tree check_elaborated_type_specifier (enum tag_types, tree, bool); extern void warn_extern_redeclared_static (tree, tree); +extern const char *cxx_comdat_group (tree); extern bool cp_missing_noreturn_ok_p (tree); extern void initialize_artificial_var (tree, tree); diff --git a/gcc/cp/cxx-pretty-print.c b/gcc/cp/cxx-pretty-print.c index 1c84e161f5d..ca2a29f08b1 100644 --- a/gcc/cp/cxx-pretty-print.c +++ b/gcc/cp/cxx-pretty-print.c @@ -1154,7 +1154,8 @@ static void pp_cxx_parameter_declaration_clause (cxx_pretty_printer *pp, tree t) { tree args = TYPE_P (t) ? NULL : FUNCTION_FIRST_USER_PARM (t); - tree types = TYPE_P (t) ? TYPE_ARG_TYPES (t) : FUNCTION_FIRST_USER_PARMTYPE (t); + tree types = + TYPE_P (t) ? TYPE_ARG_TYPES (t) : FUNCTION_FIRST_USER_PARMTYPE (t); const bool abstract = args == NULL || pp_c_base (pp)->flags & pp_c_flag_abstract; bool first = true; @@ -1441,7 +1442,7 @@ pp_cxx_template_argument_list (cxx_pretty_printer *pp, tree t) if (i != 0) pp_cxx_separate_with (pp, ','); if (TYPE_P (arg) || (TREE_CODE (arg) == TEMPLATE_DECL - && TYPE_P (DECL_TEMPLATE_RESULT (arg)))) + && TYPE_P (DECL_TEMPLATE_RESULT (arg)))) pp_cxx_type_id (pp, arg); else pp_cxx_expression (pp, arg); diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 5cb43d2b370..8047f9e76eb 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -403,6 +403,43 @@ pop_labels (tree block) named_labels = NULL; } +/* The following two routines are used to interface to Objective-C++. + The binding level is purposely treated as an opaque type. */ + +void * +objc_get_current_scope (void) +{ + return current_binding_level; +} + +/* The following routine is used by the NeXT-style SJLJ exceptions; + variables get marked 'volatile' so as to not be clobbered by + _setjmp()/_longjmp() calls. All variables in the current scope, + as well as parent scopes up to (but not including) ENCLOSING_BLK + shall be thusly marked. */ + +void +objc_mark_locals_volatile (void *enclosing_blk) +{ + struct cp_binding_level *scope; + + for (scope = current_binding_level; + scope && scope != enclosing_blk && scope->kind == sk_block; + scope = scope->level_chain) + { + tree decl; + + for (decl = scope->names; decl; decl = TREE_CHAIN (decl)) + { + if (TREE_CODE (decl) == VAR_DECL) + { + DECL_REGISTER (decl) = 0; + TREE_THIS_VOLATILE (decl) = 1; + } + } + } +} + /* Exit a binding level. Pop the level off, and restore the state of the identifier-decl mappings that were in effect when this level was entered. @@ -1427,7 +1464,7 @@ duplicate_decls (tree newdecl, tree olddecl) A namespace-name or namespace-alias shall not be declared as the name of any other entity in the same declarative region. A namespace-name defined at global scope shall not be - declared as the name of any other entity in any glogal scope + declared as the name of any other entity in any global scope of the program. */ error ("declaration of `namespace %D' conflicts with", newdecl); cp_error_at ("previous declaration of `namespace %D' here", olddecl); @@ -1545,7 +1582,6 @@ duplicate_decls (tree newdecl, tree olddecl) DECL_STATIC_DESTRUCTOR (newdecl) |= DECL_STATIC_DESTRUCTOR (olddecl); DECL_PURE_VIRTUAL_P (newdecl) |= DECL_PURE_VIRTUAL_P (olddecl); DECL_VIRTUAL_P (newdecl) |= DECL_VIRTUAL_P (olddecl); - DECL_NEEDS_FINAL_OVERRIDER_P (newdecl) |= DECL_NEEDS_FINAL_OVERRIDER_P (olddecl); DECL_THIS_STATIC (newdecl) |= DECL_THIS_STATIC (olddecl); if (DECL_OVERLOADED_OPERATOR_P (olddecl) != ERROR_MARK) SET_OVERLOADED_OPERATOR_CODE @@ -4562,10 +4598,11 @@ make_rtl_for_nonlocal_decl (tree decl, tree init, const char* asmspec) { /* Fool with the linkage of static consts according to #pragma interface. */ - if (!interface_unknown && !TREE_PUBLIC (decl)) + struct c_fileinfo *finfo = get_fileinfo (input_filename); + if (!finfo->interface_unknown && !TREE_PUBLIC (decl)) { TREE_PUBLIC (decl) = 1; - DECL_EXTERNAL (decl) = interface_only; + DECL_EXTERNAL (decl) = finfo->interface_only; } defer_p = 1; @@ -5023,8 +5060,6 @@ static GTY(()) int start_cleanup_cnt; static tree start_cleanup_fn (void) { - int old_interface_only = interface_only; - int old_interface_unknown = interface_unknown; char name[32]; tree parmtypes; tree fntype; @@ -5035,9 +5070,6 @@ start_cleanup_fn (void) /* No need to mangle this. */ push_lang_context (lang_name_c); - interface_only = 0; - interface_unknown = 1; - /* Build the parameter-types. */ parmtypes = void_list_node; /* Functions passed to __cxa_atexit take an additional parameter. @@ -5077,9 +5109,6 @@ start_cleanup_fn (void) pushdecl (fndecl); start_preparsed_function (fndecl, NULL_TREE, SF_PRE_PARSED); - interface_unknown = old_interface_unknown; - interface_only = old_interface_only; - pop_lang_context (); return current_function_decl; @@ -5763,7 +5792,7 @@ set_linkage_for_static_data_member (tree decl) TREE_STATIC (decl) = 1; /* For non-template classes, static data members are always put out in exactly those files where they are defined, just as - with ordinarly namespace-scope variables. */ + with ordinary namespace-scope variables. */ if (!processing_template_decl) DECL_INTERFACE_KNOWN (decl) = 1; } @@ -6145,7 +6174,7 @@ get_scope_of_declarator (const cp_declarator *declarator) && TREE_CODE (declarator->u.id.name) == SCOPE_REF) return TREE_OPERAND (declarator->u.id.name, 0); - /* Otherwise, the declarator is not a quablified name; the entity will + /* Otherwise, the declarator is not a qualified name; the entity will be declared in the current scope. */ return NULL_TREE; } @@ -6257,7 +6286,7 @@ check_special_function_return_type (special_function_kind sfk, if (type) error ("return type specification for destructor invalid"); /* We can't use the proper return type here because we run into - problems with abiguous bases and covariant returns. + problems with ambiguous bases and covariant returns. Java classes are left unchanged because (void *) isn't a valid Java type, and we don't want to change the Java ABI. */ if (targetm.cxx.cdtor_returns_this () && !TYPE_FOR_JAVA (optype)) @@ -9109,8 +9138,8 @@ xref_basetypes (tree ref, tree base_list) { tree *basep; tree binfo, base_binfo; - unsigned max_vbases = 0; /* Maxium direct & indirect virtual bases. */ - unsigned max_bases = 0; /* Maxium direct bases. */ + unsigned max_vbases = 0; /* Maximum direct & indirect virtual bases. */ + unsigned max_bases = 0; /* Maximum direct bases. */ int i; tree default_access; tree igo_prev; /* Track Inheritance Graph Order. */ @@ -9232,7 +9261,7 @@ xref_basetypes (tree ref, tree base_list) if (CLASS_TYPE_P (basetype) && !dependent_type_p (basetype)) { base_binfo = TYPE_BINFO (basetype); - /* The orignal basetype could have been a typedef'd type. */ + /* The original basetype could have been a typedef'd type. */ basetype = BINFO_TYPE (base_binfo); /* Inherit flags from the base. */ @@ -9431,7 +9460,7 @@ finish_enum (tree enumtype) narrower than their underlying type are suitably zero or sign extended to fill their mode. g++ doesn't make these guarantees. Until the middle-end can represent such paradoxical types, we - set the TYPE_PRECISON to the width of the underlying type. */ + set the TYPE_PRECISION to the width of the underlying type. */ TYPE_PRECISION (enumtype) = TYPE_PRECISION (underlying_type); set_min_and_max_values_for_integral_type (enumtype, precision, unsignedp); @@ -9661,6 +9690,7 @@ start_preparsed_function (tree decl1, tree attrs, int flags) int doing_friend = 0; struct cp_binding_level *bl; tree current_function_parms; + struct c_fileinfo *finfo = get_fileinfo (input_filename); /* Sanity check. */ gcc_assert (TREE_CODE (TREE_VALUE (void_list_node)) == VOID_TYPE); @@ -9887,7 +9917,7 @@ start_preparsed_function (tree decl1, tree attrs, int flags) /* If this function belongs to an interface, it is public. If it belongs to someone else's interface, it is also external. This only affects inlines and template instantiations. */ - else if (interface_unknown == 0 + else if (finfo->interface_unknown == 0 && ! DECL_TEMPLATE_INSTANTIATION (decl1)) { if (DECL_DECLARED_INLINE_P (decl1) @@ -9895,7 +9925,7 @@ start_preparsed_function (tree decl1, tree attrs, int flags) || processing_template_decl) { DECL_EXTERNAL (decl1) - = (interface_only + = (finfo->interface_only || (DECL_DECLARED_INLINE_P (decl1) && ! flag_implement_inlines && !DECL_VINDEX (decl1))); @@ -9913,14 +9943,15 @@ start_preparsed_function (tree decl1, tree attrs, int flags) if (!DECL_EXTERNAL (decl1)) mark_needed (decl1); } - else if (interface_unknown && interface_only + else if (finfo->interface_unknown && finfo->interface_only && ! DECL_TEMPLATE_INSTANTIATION (decl1)) { /* If MULTIPLE_SYMBOL_SPACES is defined and we saw a #pragma - interface, we will have interface_only set but not - interface_known. In that case, we don't want to use the normal - heuristics because someone will supply a #pragma implementation - elsewhere, and deducing it here would produce a conflict. */ + interface, we will have both finfo->interface_unknown and + finfo->interface_only set. In that case, we don't want to + use the normal heuristics because someone will supply a + #pragma implementation elsewhere, and deducing it here would + produce a conflict. */ comdat_linkage (decl1); DECL_EXTERNAL (decl1) = 0; DECL_INTERFACE_KNOWN (decl1) = 1; @@ -10642,8 +10673,8 @@ finish_method (tree decl) for String.cc in libg++. */ if (DECL_FRIEND_P (fndecl)) { - CLASSTYPE_INLINE_FRIENDS (current_class_type) - = tree_cons (NULL_TREE, fndecl, CLASSTYPE_INLINE_FRIENDS (current_class_type)); + VEC_safe_push (tree, CLASSTYPE_INLINE_FRIENDS (current_class_type), + fndecl); decl = void_type_node; } @@ -10852,4 +10883,24 @@ cp_missing_noreturn_ok_p (tree decl) return DECL_MAIN_P (decl); } +/* Return the COMDAT group into which DECL should be placed. */ + +const char * +cxx_comdat_group (tree decl) +{ + tree name; + + /* Virtual tables, construction virtual tables, and virtual table + tables all go in a single COMDAT group, named after the primary + virtual table. */ + if (TREE_CODE (decl) == VAR_DECL && DECL_VTABLE_OR_VTT_P (decl)) + name = DECL_ASSEMBLER_NAME (CLASSTYPE_VTABLES (DECL_CONTEXT (decl))); + /* For all other DECLs, the COMDAT group is the mangled name of the + declaration itself. */ + else + name = DECL_ASSEMBLER_NAME (decl); + + return IDENTIFIER_POINTER (name); +} + #include "gt-cp-decl.h" diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c index bb3e4e89def..92233c7cd28 100644 --- a/gcc/cp/decl2.c +++ b/gcc/cp/decl2.c @@ -578,7 +578,7 @@ check_java_method (tree method) /* Sanity check: report error if this function FUNCTION is not really a member of the class (CTYPE) it is supposed to belong to. - TEMPLATE_PARMS is used to specifiy the template parameters of a member + TEMPLATE_PARMS is used to specify the template parameters of a member template passed as FUNCTION_DECL. If the member template is passed as a TEMPLATE_DECL, it can be NULL since the parameters can be extracted from the declaration. If the function is not a function template, it @@ -2750,9 +2750,6 @@ cp_finish_file (void) input_line -= 1; #endif - interface_unknown = 1; - interface_only = 0; - /* We now have to write out all the stuff we put off writing out. These include: @@ -2998,7 +2995,7 @@ cp_finish_file (void) reconsider = true; /* Ask the back end to emit functions and variables that are - enqued. These emissions may result in marking more entities + enqueued. These emissions may result in marking more entities as needed. */ if (cgraph_assemble_pending_functions ()) reconsider = true; diff --git a/gcc/cp/error.c b/gcc/cp/error.c index 03feaf3b7da..dd6affa3f83 100644 --- a/gcc/cp/error.c +++ b/gcc/cp/error.c @@ -831,10 +831,10 @@ dump_decl (tree t, int flags) /* Fall through. */ case FUNCTION_DECL: - if (DECL_GLOBAL_CTOR_P (t) || DECL_GLOBAL_DTOR_P (t)) - dump_global_iord (t); - else if (! DECL_LANG_SPECIFIC (t)) + if (! DECL_LANG_SPECIFIC (t)) pp_identifier (cxx_pp, ""); + else if (DECL_GLOBAL_CTOR_P (t) || DECL_GLOBAL_DTOR_P (t)) + dump_global_iord (t); else dump_function_decl (t, flags); break; diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c index 2a48d995a0e..4fa1645d6a2 100644 --- a/gcc/cp/lex.c +++ b/gcc/cp/lex.c @@ -82,12 +82,6 @@ struct impl_files static struct impl_files *impl_file_chain; -int interface_only; /* whether or not current file is only for - interface definitions. */ -int interface_unknown; /* whether or not we know this class - to behave according to #pragma interface. */ - - void cxx_finish (void) { @@ -360,8 +354,6 @@ cxx_init (void) TREE_TYPE (null_node) = c_common_type_for_size (POINTER_SIZE, 0); ridpointers[RID_NULL] = null_node; - interface_unknown = 1; - /* The fact that G++ uses COMDAT for many entities (inline functions, template instantiations, virtual tables, etc.) mean that it is fundamentally unreliable to try to make decisions @@ -387,19 +379,6 @@ cxx_init (void) return true; } -/* Helper function to load global variables with interface - information. */ - -void -extract_interface_info (void) -{ - struct c_fileinfo *finfo; - - finfo = get_fileinfo (input_filename); - interface_only = finfo->interface_only; - interface_unknown = finfo->interface_unknown; -} - /* Return nonzero if S is not considered part of an INTERFACE/IMPLEMENTATION pair. Otherwise, return 0. */ @@ -504,14 +483,11 @@ handle_pragma_interface (cpp_reader* dfile ATTRIBUTE_UNUSED ) main_input_filename = input_filename; } - interface_only = interface_strcmp (main_filename); + finfo->interface_only = interface_strcmp (main_filename); /* If MULTIPLE_SYMBOL_SPACES is set, we cannot assume that we can see a definition in another file. */ - if (!MULTIPLE_SYMBOL_SPACES || !interface_only) - interface_unknown = 0; - - finfo->interface_only = interface_only; - finfo->interface_unknown = interface_unknown; + if (!MULTIPLE_SYMBOL_SPACES || !finfo->interface_only) + finfo->interface_unknown = 0; } /* Note that we have seen a #pragma implementation for the key MAIN_FILENAME. @@ -519,8 +495,9 @@ handle_pragma_interface (cpp_reader* dfile ATTRIBUTE_UNUSED ) in older compilers and it seems reasonable to allow it in the headers themselves, too. It only needs to precede the matching #p interface. - We don't touch interface_only or interface_unknown; the user must specify - a matching #p interface for this to have any effect. */ + We don't touch finfo->interface_only or finfo->interface_unknown; + the user must specify a matching #p interface for this to have + any effect. */ static void handle_pragma_implementation (cpp_reader* dfile ATTRIBUTE_UNUSED ) @@ -595,6 +572,9 @@ unqualified_name_lookup_error (tree name) decl = build_decl (VAR_DECL, name, error_mark_node); DECL_CONTEXT (decl) = current_function_decl; push_local_binding (name, decl, 0); + /* Mark the variable as used so that we do not get warnings + about it being unused later. */ + TREE_USED (decl) = 1; } } @@ -791,8 +771,9 @@ cxx_make_type (enum tree_code code) /* Set up some flags that give proper default behavior. */ if (IS_AGGR_TYPE_CODE (code)) { - SET_CLASSTYPE_INTERFACE_UNKNOWN_X (t, interface_unknown); - CLASSTYPE_INTERFACE_ONLY (t) = interface_only; + struct c_fileinfo *finfo = get_fileinfo (input_filename); + SET_CLASSTYPE_INTERFACE_UNKNOWN_X (t, finfo->interface_unknown); + CLASSTYPE_INTERFACE_ONLY (t) = finfo->interface_only; } else /* We use TYPE_ALIAS_SET for the CLASSTYPE_MARKED bits. But, diff --git a/gcc/cp/mangle.c b/gcc/cp/mangle.c index b6253b27b88..5d9995faa32 100644 --- a/gcc/cp/mangle.c +++ b/gcc/cp/mangle.c @@ -115,10 +115,17 @@ static struct obstack *mangle_obstack; be IDENTIFIER_NODEs. */ static struct obstack name_obstack; - /* The first object on the name_obstack; we use this to free memory - allocated on the name_obstack. */ +/* The first object on the name_obstack; we use this to free memory + allocated on the name_obstack. */ static void *name_base; +/* An incomplete mangled name. There will be no NUL terminator. If + there is no incomplete mangled name, this variable is NULL. */ +static char *partially_mangled_name; + +/* The number of characters in the PARTIALLY_MANGLED_NAME. */ +static size_t partially_mangled_name_len; + /* Indices into subst_identifiers. These are identifiers used in special substitution rules. */ typedef enum @@ -254,6 +261,42 @@ static void write_java_integer_type_codes (const tree); #define write_unsigned_number(NUMBER) \ write_number ((NUMBER), /*unsigned_p=*/1, 10) +/* Save the current (incomplete) mangled name and release the obstack + storage holding it. This function should be used during mangling + when making a call that could result in a call to get_identifier, + as such a call will clobber the same obstack being used for + mangling. This function may not be called twice without an + intervening call to restore_partially_mangled_name. */ + +static void +save_partially_mangled_name (void) +{ + if (mangle_obstack == &ident_hash->stack) + { + gcc_assert (!partially_mangled_name); + partially_mangled_name_len = obstack_object_size (mangle_obstack); + partially_mangled_name = xmalloc (partially_mangled_name_len); + memcpy (partially_mangled_name, obstack_base (mangle_obstack), + partially_mangled_name_len); + obstack_free (mangle_obstack, obstack_finish (mangle_obstack)); + } +} + +/* Restore the incomplete mangled name saved with + save_partially_mangled_name. */ + +static void +restore_partially_mangled_name (void) +{ + if (partially_mangled_name) + { + obstack_grow (mangle_obstack, partially_mangled_name, + partially_mangled_name_len); + free (partially_mangled_name); + partially_mangled_name = NULL; + } +} + /* If DECL is a template instance, return nonzero and, if TEMPLATE_INFO is non-NULL, set *TEMPLATE_INFO to its template info. Otherwise return zero. */ @@ -702,7 +745,9 @@ write_encoding (const tree decl) if (decl_is_template_id (decl, NULL)) { + save_partially_mangled_name (); fn_type = get_mostly_instantiated_function_type (decl); + restore_partially_mangled_name (); /* FN_TYPE will not have parameter types for in-charge or VTT parameters. Therefore, we pass NULL_TREE to write_bare_function_type -- otherwise, it will get @@ -1063,7 +1108,10 @@ write_unqualified_name (const tree decl) tree type; if (decl_is_template_id (decl, NULL)) { - tree fn_type = get_mostly_instantiated_function_type (decl); + tree fn_type; + save_partially_mangled_name (); + fn_type = get_mostly_instantiated_function_type (decl); + restore_partially_mangled_name (); type = TREE_TYPE (fn_type); } else @@ -1949,7 +1997,7 @@ write_expression (tree expr) || code == TEMPLATE_PARM_INDEX) write_template_param (expr); /* Handle literals. */ - else if (TREE_CODE_CLASS (code) == 'c' + else if (TREE_CODE_CLASS (code) == tcc_constant || (abi_version_at_least (2) && code == CONST_DECL)) write_template_arg_literal (expr); else if (DECL_P (expr)) @@ -2167,7 +2215,7 @@ write_template_arg_literal (const tree value) write_char ('E'); } -/* Non-terminal . +/* Non-terminal . ::= # type ::= L E # literal @@ -2212,7 +2260,7 @@ write_template_arg (tree node) else if (code == TEMPLATE_DECL) /* A template appearing as a template arg is a template template arg. */ write_template_template_arg (node); - else if ((TREE_CODE_CLASS (code) == 'c' && code != PTRMEM_CST) + else if ((TREE_CODE_CLASS (code) == tcc_constant && code != PTRMEM_CST) || (abi_version_at_least (2) && code == CONST_DECL)) write_template_arg_literal (node); else if (DECL_P (node)) diff --git a/gcc/cp/method.c b/gcc/cp/method.c index fe4cb1f0d1d..b28746b6dfc 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -725,7 +725,6 @@ synthesize_method (tree fndecl) function. */ DECL_SOURCE_LOCATION (fndecl) = input_location; - interface_unknown = 1; start_preparsed_function (fndecl, NULL_TREE, SF_DEFAULT | SF_PRE_PARSED); stmt = begin_function_body (); @@ -755,7 +754,6 @@ synthesize_method (tree fndecl) finish_function_body (stmt); expand_or_defer_fn (finish_function (0)); - extract_interface_info (); if (! context) pop_from_top_level (); else if (nested) diff --git a/gcc/cp/name-lookup.h b/gcc/cp/name-lookup.h index e03f8ec9339..7c73f3f1d72 100644 --- a/gcc/cp/name-lookup.h +++ b/gcc/cp/name-lookup.h @@ -231,7 +231,7 @@ struct cp_binding_level GTY(()) /* The kind of scope that this object represents. However, a SK_TEMPLATE_SPEC scope is represented with KIND set to - SK_TEMPALTE_PARMS and EXPLICIT_SPEC_P set to true. */ + SK_TEMPLATE_PARMS and EXPLICIT_SPEC_P set to true. */ ENUM_BITFIELD (scope_kind) kind : 4; /* True if this scope is an SK_TEMPLATE_SPEC scope. This field is diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c index 6d56f976c62..d4b12aadfd6 100644 --- a/gcc/cp/parser.c +++ b/gcc/cp/parser.c @@ -2286,13 +2286,10 @@ cp_parser_parse_and_diagnose_invalid_type_name (cp_parser *parser) cp_parser_abort_tentative_parse (parser); return false; } - if (!cp_parser_parse_definitely (parser)) + if (!cp_parser_parse_definitely (parser) + || TREE_CODE (id) != IDENTIFIER_NODE) return false; - /* If we got here, this cannot be a valid variable declaration, thus - the cp_parser_id_expression must have resolved to a plain identifier - node (not a TYPE_DECL or TEMPLATE_ID_EXPR). */ - gcc_assert (TREE_CODE (id) == IDENTIFIER_NODE); /* Emit a diagnostic for the invalid type. */ cp_parser_diagnose_invalid_type_name (parser, parser->scope, id); /* Skip to the end of the declaration; there's no point in @@ -3056,7 +3053,7 @@ cp_parser_id_expression (cp_parser *parser, /*typename_keyword_p=*/false, check_dependency_p, /*type_p=*/false, - /*is_declarator=*/false) + declarator_p) != NULL_TREE); /* If there is a nested-name-specifier, then we are looking at the first qualified-id production. */ @@ -3496,6 +3493,16 @@ cp_parser_nested_name_specifier_opt (cp_parser *parser, might destroy it. */ old_scope = parser->scope; saved_qualifying_scope = parser->qualifying_scope; + /* In a declarator-id like "X::I::Y" we must be able to + look up names in "X::I" in order to determine that "Y" is + a template. So, if we have a typename at this point, we make + an effort to look through it. */ + if (is_declaration + && !typename_keyword_p + && parser->scope + && TREE_CODE (parser->scope) == TYPENAME_TYPE) + parser->scope = resolve_typename_type (parser->scope, + /*only_current_p=*/false); /* Parse the qualifying entity. */ new_scope = cp_parser_class_or_namespace_name (parser, @@ -4226,7 +4233,7 @@ cp_parser_postfix_open_square_expression (cp_parser *parser, If we are in an integral constant expression context, then we might could accept any constant expression; hard to say without analysis. Rather than open the barn door too wide right away, allow only integer - constant expresions here. */ + constant expressions here. */ if (for_offsetof) index = cp_parser_constant_expression (parser, false, NULL); else @@ -7019,6 +7026,13 @@ cp_parser_simple_declaration (cp_parser* parser, /* Give up. */ goto done; } + + /* If we have seen at least one decl-specifier, and the next token + is not a parenthesis, then we must be looking at a declaration. + (After "int (" we might be looking at a functional cast.) */ + if (decl_specifiers.any_specifiers_p + && cp_lexer_next_token_is_not (parser->lexer, CPP_OPEN_PAREN)) + cp_parser_commit_to_tentative_parse (parser); /* Keep going until we hit the `;' at the end of the simple declaration. */ @@ -7072,7 +7086,12 @@ cp_parser_simple_declaration (cp_parser* parser, /* Anything else is an error. */ else { - cp_parser_error (parser, "expected `,' or `;'"); + /* If we have already issued an error message we don't need + to issue another one. */ + if (decl != error_mark_node + || (cp_parser_parsing_tentatively (parser) + && !cp_parser_committed_to_tentative_parse (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. */ @@ -8674,6 +8693,7 @@ cp_parser_template_name (cp_parser* parser, if (is_declaration && !template_keyword_p && parser->scope && TYPE_P (parser->scope) + && check_dependency_p && dependent_type_p (parser->scope) /* Do not do this for dtors (or ctors), since they never need the template keyword before their name. */ @@ -10633,7 +10653,7 @@ cp_parser_init_declarator (cp_parser* parser, && token->type != CPP_COMMA && token->type != CPP_SEMICOLON) { - cp_parser_error (parser, "expected init-declarator"); + cp_parser_error (parser, "expected initializer"); return error_mark_node; } diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 18f15a890f3..d7e59039ce4 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -67,6 +67,11 @@ static GTY(()) tree current_tinst_level; static GTY(()) tree saved_access_scope; +/* Live only within one (recursive) call to tsubst_expr. We use + this to pass the statement expression node from the STMT_EXPR + to the EXPR_STMT that is its result. */ +static tree cur_stmt_expr; + /* A map from local variable declarations in the body of the template presently being instantiated to the corresponding instantiated local variables. */ @@ -4886,7 +4891,7 @@ uses_template_parms (tree t) || TREE_CODE (t) == TEMPLATE_PARM_INDEX || TREE_CODE (t) == OVERLOAD || TREE_CODE (t) == BASELINK - || TREE_CODE_CLASS (TREE_CODE (t)) == 'c') + || CONSTANT_CLASS_P (t)) dependent_p = (type_dependent_expression_p (t) || value_dependent_expression_p (t)); else @@ -4966,8 +4971,6 @@ pop_tinst_level (void) /* Restore the filename and line number stashed away when we started this instantiation. */ input_location = TINST_LOCATION (old); - extract_interface_info (); - current_tinst_level = TREE_CHAIN (old); --tinst_depth; ++tinst_level_tick; @@ -7792,11 +7795,6 @@ tsubst_copy (tree t, tree args, tsubst_flags_t complain, tree in_decl) static tree tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl) { - /* Live only within one (recursive) call to tsubst_expr. We use - this to pass the statement expression node from the STMT_EXPR - to the EXPR_STMT that is its result. */ - static tree cur_stmt_expr; - tree stmt, tmp; if (t == NULL_TREE || t == error_mark_node) @@ -7827,19 +7825,6 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl) args, complain, in_decl)); break; - case STMT_EXPR: - { - tree old_stmt_expr = cur_stmt_expr; - tree stmt_expr = begin_stmt_expr (); - - cur_stmt_expr = stmt_expr; - tsubst_expr (STMT_EXPR_STMT (t), args, complain, in_decl); - stmt_expr = finish_stmt_expr (stmt_expr, false); - cur_stmt_expr = old_stmt_expr; - - return stmt_expr; - } - case EXPR_STMT: tmp = tsubst_expr (EXPR_STMT_EXPR (t), args, complain, in_decl); if (EXPR_STMT_STMT_EXPR_RESULT (t)) @@ -8628,6 +8613,19 @@ tsubst_copy_and_build (tree t, case OFFSETOF_EXPR: return fold_offsetof (RECUR (TREE_OPERAND (t, 0))); + case STMT_EXPR: + { + tree old_stmt_expr = cur_stmt_expr; + tree stmt_expr = begin_stmt_expr (); + + cur_stmt_expr = stmt_expr; + tsubst_expr (STMT_EXPR_STMT (t), args, complain, in_decl); + stmt_expr = finish_stmt_expr (stmt_expr, false); + cur_stmt_expr = old_stmt_expr; + + return stmt_expr; + } + default: return tsubst_copy (t, args, complain, in_decl); } @@ -9977,6 +9975,7 @@ unify (tree tparms, tree targs, tree parm, tree arg, int strict) case VECTOR_TYPE: case INTEGER_TYPE: case BOOLEAN_TYPE: + case ENUMERAL_TYPE: case VOID_TYPE: if (TREE_CODE (arg) != TREE_CODE (parm)) return 1; @@ -10110,39 +10109,32 @@ unify (tree tparms, tree targs, tree parm, tree arg, int strict) return 1; default: - if (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (parm)))) - { - - /* We're looking at an expression. This can happen with - something like: + gcc_assert (EXPR_P (parm)); + + /* We must be looking at an expression. This can happen with + something like: - template - void foo(S, S); + template + void foo(S, S); - This is a "nondeduced context": + This is a "nondeduced context": - [deduct.type] + [deduct.type] - The nondeduced contexts are: + The nondeduced contexts are: - --A type that is a template-id in which one or more of - the template-arguments is an expression that references - a template-parameter. + --A type that is a template-id in which one or more of + the template-arguments is an expression that references + a template-parameter. - In these cases, we assume deduction succeeded, but don't - actually infer any unifications. */ + In these cases, we assume deduction succeeded, but don't + actually infer any unifications. */ - if (!uses_template_parms (parm) - && !template_args_equal (parm, arg)) - return 1; - else - return 0; - } + if (!uses_template_parms (parm) + && !template_args_equal (parm, arg)) + return 1; else - sorry ("use of `%s' in template type unification", - tree_code_name [(int) TREE_CODE (parm)]); - - return 1; + return 0; } } @@ -11594,9 +11586,9 @@ dependent_type_p_r (tree type) A type is dependent if it is: - -- a template parameter. Template template parameters are - types for us (since TYPE_P holds true for them) so we - handle them here. */ + -- 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; @@ -11827,20 +11819,20 @@ value_dependent_expression_p (tree expression) || value_dependent_expression_p (TREE_OPERAND (expression, 1))); /* A constant expression is value-dependent if any subexpression is value-dependent. */ - if (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (expression)))) + if (EXPR_P (expression)) { switch (TREE_CODE_CLASS (TREE_CODE (expression))) { - case '1': + case tcc_unary: return (value_dependent_expression_p (TREE_OPERAND (expression, 0))); - case '<': - case '2': + case tcc_comparison: + case tcc_binary: return ((value_dependent_expression_p (TREE_OPERAND (expression, 0))) || (value_dependent_expression_p (TREE_OPERAND (expression, 1)))); - case 'e': + case tcc_expression: { int i; for (i = 0; i < first_rtl_op (TREE_CODE (expression)); ++i) @@ -11854,6 +11846,13 @@ value_dependent_expression_p (tree expression) return true; return false; } + case tcc_reference: + case tcc_statement: + /* These cannot be value dependent. */ + return false; + + default: + gcc_unreachable (); } } diff --git a/gcc/cp/search.c b/gcc/cp/search.c index d2b29f8977b..42adbec324c 100644 --- a/gcc/cp/search.c +++ b/gcc/cp/search.c @@ -1875,9 +1875,8 @@ dfs_get_pure_virtuals (tree binfo, void *data) virtuals; virtuals = TREE_CHAIN (virtuals)) if (DECL_PURE_VIRTUAL_P (BV_FN (virtuals))) - CLASSTYPE_PURE_VIRTUALS (type) - = tree_cons (NULL_TREE, BV_FN (virtuals), - CLASSTYPE_PURE_VIRTUALS (type)); + VEC_safe_push (tree, CLASSTYPE_PURE_VIRTUALS (type), + BV_FN (virtuals)); } BINFO_MARKED (binfo) = 1; @@ -1890,13 +1889,9 @@ dfs_get_pure_virtuals (tree binfo, void *data) void get_pure_virtuals (tree type) { - unsigned ix; - tree binfo; - VEC (tree) *vbases; - /* Clear the CLASSTYPE_PURE_VIRTUALS list; whatever is already there is going to be overridden. */ - CLASSTYPE_PURE_VIRTUALS (type) = NULL_TREE; + CLASSTYPE_PURE_VIRTUALS (type) = NULL; /* Now, run through all the bases which are not primary bases, and collect the pure virtual functions. We look at the vtable in each class to determine what pure virtual functions are present. @@ -1905,23 +1900,6 @@ get_pure_virtuals (tree type) pure virtuals in the base class. */ dfs_walk (TYPE_BINFO (type), dfs_get_pure_virtuals, unmarkedp, type); dfs_walk (TYPE_BINFO (type), dfs_unmark, markedp, type); - - /* Put the pure virtuals in dfs order. */ - CLASSTYPE_PURE_VIRTUALS (type) = nreverse (CLASSTYPE_PURE_VIRTUALS (type)); - - for (vbases = CLASSTYPE_VBASECLASSES (type), ix = 0; - VEC_iterate (tree, vbases, ix, binfo); ix++) - { - tree virtuals; - - for (virtuals = BINFO_VIRTUALS (binfo); virtuals; - virtuals = TREE_CHAIN (virtuals)) - { - tree base_fndecl = BV_FN (virtuals); - if (DECL_NEEDS_FINAL_OVERRIDER_P (base_fndecl)) - error ("`%#D' needs a final overrider", base_fndecl); - } - } } /* DEPTH-FIRST SEARCH ROUTINES. */ @@ -2064,15 +2042,15 @@ reinit_search_statistics (void) } /* Helper for lookup_conversions_r. TO_TYPE is the type converted to - by a conversion op in base BINFO. VIRTUAL_DEPTH is non-zero if - BINFO is morally virtual, and VIRTUALNESS is non-zero if virtual + by a conversion op in base BINFO. VIRTUAL_DEPTH is nonzero if + BINFO is morally virtual, and VIRTUALNESS is nonzero if virtual bases have been encountered already in the tree walk. PARENT_CONVS is the list of lists of conversion functions that could hide CONV and OTHER_CONVS is the list of lists of conversion functions that could hide or be hidden by CONV, should virtualness be involved in the hierarchy. Merely checking the conversion op's name is not enough because two conversion operators to the same type can have - different names. Return non-zero if we are visible. */ + different names. Return nonzero if we are visible. */ static int check_hidden_convs (tree binfo, int virtual_depth, int virtualness, @@ -2140,8 +2118,8 @@ check_hidden_convs (tree binfo, int virtual_depth, int virtualness, /* Helper for lookup_conversions_r. PARENT_CONVS is a list of lists of conversion functions, the first slot will be for the current binfo, if MY_CONVS is non-NULL. CHILD_CONVS is the list of lists - of conversion functions from childen of the current binfo, - concatenated with conversions from elsewhere in the heirarchy -- + of conversion functions from children of the current binfo, + concatenated with conversions from elsewhere in the hierarchy -- that list begins with OTHER_CONVS. Return a single list of lists containing only conversions from the current binfo and its children. */ @@ -2176,13 +2154,13 @@ split_conversions (tree my_convs, tree parent_convs, } /* Worker for lookup_conversions. Lookup conversion functions in - BINFO and its children. VIRTUAL_DEPTH is non-zero, if BINFO is in - a morally virtual base, and VIRTUALNESS is non-zero, if we've + BINFO and its children. VIRTUAL_DEPTH is nonzero, if BINFO is in + a morally virtual base, and VIRTUALNESS is nonzero, if we've encountered virtual bases already in the tree walk. PARENT_CONVS & PARENT_TPL_CONVS are lists of list of conversions within parent binfos. OTHER_CONVS and OTHER_TPL_CONVS are conversions found elsewhere in the tree. Return the conversions found within this - portion of the graph in CONVS and TPL_CONVS. Return non-zero is we + portion of the graph in CONVS and TPL_CONVS. Return nonzero is we encountered virtualness. We keep template and non-template conversions separate, to avoid unnecessary type comparisons. diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index 5d50ea687eb..2f1d0e8f3da 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -358,7 +358,7 @@ static tree maybe_cleanup_point_expr (tree expr) { if (!processing_template_decl && stmts_are_full_exprs_p ()) - expr = fold (build1 (CLEANUP_POINT_EXPR, TREE_TYPE (expr), expr)); + expr = build1 (CLEANUP_POINT_EXPR, TREE_TYPE (expr), expr); return expr; } @@ -1239,7 +1239,7 @@ finish_mem_initializers (tree mem_inits) tree finish_parenthesized_expr (tree expr) { - if (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (expr)))) + if (EXPR_P (expr)) /* This inhibits warnings in c_common_truthvalue_conversion. */ TREE_NO_WARNING (expr) = 1; @@ -1348,7 +1348,7 @@ check_accessibility_of_qualified_id (tree decl, tree scope; tree qualifying_type = NULL_TREE; - /* If we're not checking, return imediately. */ + /* If we're not checking, return immediately. */ if (deferred_access_no_check) return; @@ -2106,9 +2106,10 @@ begin_class_definition (tree t) before. */ if (! TYPE_ANONYMOUS_P (t)) { - CLASSTYPE_INTERFACE_ONLY (t) = interface_only; + struct c_fileinfo *finfo = get_fileinfo (input_filename); + CLASSTYPE_INTERFACE_ONLY (t) = finfo->interface_only; SET_CLASSTYPE_INTERFACE_UNKNOWN_X - (t, interface_unknown); + (t, finfo->interface_unknown); } reset_specialization(); @@ -2897,8 +2898,6 @@ expand_body (tree fn) current_function_decl = saved_function; - extract_interface_info (); - if (DECL_CLONED_FUNCTION_P (fn)) { /* If this is a clone, go through the other clones now and mark diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index 2038b058aca..28bb512da75 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. @@ -1554,12 +1554,12 @@ cp_tree_equal (tree t1, tree t2) switch (TREE_CODE_CLASS (code1)) { - case '1': - case '2': - case '<': - case 'e': - case 'r': - case 's': + case tcc_unary: + case tcc_binary: + case tcc_comparison: + case tcc_expression: + case tcc_reference: + case tcc_statement: { int i; @@ -1570,11 +1570,12 @@ cp_tree_equal (tree t1, tree t2) return true; } - case 't': + case tcc_type: return same_type_p (t1, t2); + default: + gcc_unreachable (); } - - gcc_unreachable (); + /* We can get here with --disable-checking. */ return false; } diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c index 94e903db1c8..990352d492d 100644 --- a/gcc/cp/typeck.c +++ b/gcc/cp/typeck.c @@ -1711,9 +1711,14 @@ build_class_member_access_expr (tree object, tree member, give the right answer. Note that we complain whether or not they actually used the offsetof macro, since there's no way to know at this point. So we just give a warning, instead of a pedwarn. */ + /* Do not produce this warning for base class field references, because + we know for a fact that didn't come from offsetof. This does occur + in various testsuite cases where a null object is passed where a + vtable access is required. */ if (null_object_p && warn_invalid_offsetof && CLASSTYPE_NON_POD_P (object_type) - && ! skip_evaluation) + && !DECL_FIELD_IS_BASE (member) + && !skip_evaluation) { warning ("invalid access to non-static data member `%D' of NULL object", member); @@ -3654,7 +3659,7 @@ condition_conversion (tree expr) if (processing_template_decl) return expr; t = perform_implicit_conversion (boolean_type_node, expr); - t = fold (build1 (CLEANUP_POINT_EXPR, boolean_type_node, t)); + t = build1 (CLEANUP_POINT_EXPR, boolean_type_node, t); return t; } @@ -4829,6 +4834,13 @@ build_c_cast (tree type, tree expr) return t; } + /* Casts to a (pointer to a) specific ObjC class (or 'id' or + 'Class') should always be retained, because this information aids + in method lookup. */ + if (objc_is_object_ptr (type) + && objc_is_object_ptr (TREE_TYPE (expr))) + return build_nop (type, expr); + /* build_c_cast puts on a NOP_EXPR to make the result not an lvalue. Strip such NOP_EXPRs if VALUE is being used in non-lvalue context. */ if (TREE_CODE (type) != REFERENCE_TYPE @@ -4944,7 +4956,7 @@ build_c_cast (tree type, tree expr) { TREE_OVERFLOW (value) = TREE_OVERFLOW (ovalue); - if (TREE_CODE_CLASS (TREE_CODE (ovalue)) == 'c') + if (CONSTANT_CLASS_P (ovalue)) TREE_CONSTANT_OVERFLOW (value) = TREE_CONSTANT_OVERFLOW (ovalue); } } diff --git a/gcc/cp/typeck2.c b/gcc/cp/typeck2.c index 0a8ac753e6c..44f648360b1 100644 --- a/gcc/cp/typeck2.c +++ b/gcc/cp/typeck2.c @@ -207,7 +207,7 @@ complete_type_check_abstract (tree type) pat = prev; /* Go through the list, and call abstract_virtuals_error for each - element: it will issue a diagostic if the type is abstract. */ + element: it will issue a diagnostic if the type is abstract. */ while (pat) { gcc_assert (type == pat->type); @@ -235,9 +235,8 @@ complete_type_check_abstract (tree type) int abstract_virtuals_error (tree decl, tree type) { - tree u; - tree tu; - + VEC (tree) *pure; + /* This function applies only to classes. Any other entity can never be abstract. */ if (!CLASS_TYPE_P (type)) @@ -275,15 +274,15 @@ abstract_virtuals_error (tree decl, tree type) return 0; } - if (!CLASSTYPE_PURE_VIRTUALS (type)) - return 0; - if (!TYPE_SIZE (type)) /* TYPE is being defined, and during that time CLASSTYPE_PURE_VIRTUALS holds the inline friends. */ return 0; - u = CLASSTYPE_PURE_VIRTUALS (type); + pure = CLASSTYPE_PURE_VIRTUALS (type); + if (!pure) + return 0; + if (decl) { if (TREE_CODE (decl) == RESULT_DECL) @@ -316,15 +315,20 @@ abstract_virtuals_error (tree decl, tree type) error ("cannot allocate an object of abstract type `%T'", type); /* Only go through this once. */ - if (TREE_PURPOSE (u) == NULL_TREE) + if (VEC_length (tree, pure)) { - TREE_PURPOSE (u) = error_mark_node; - + unsigned ix; + tree fn; + inform ("%J because the following virtual functions are pure " "within `%T':", TYPE_MAIN_DECL (type), type); - for (tu = u; tu; tu = TREE_CHAIN (tu)) - inform ("%J\t%#D", TREE_VALUE (tu), TREE_VALUE (tu)); + for (ix = 0; VEC_iterate (tree, pure, ix, fn); ix++) + inform ("%J\t%#D", fn, fn); + /* Now truncate the vector. This leaves it non-null, so we know + there are pure virtuals, but empty so we don't list them out + again. */ + VEC_truncate (tree, pure, 0); } else inform ("%J since type `%T' has pure virtual functions", diff --git a/gcc/cselib.c b/gcc/cselib.c index aa9224892d9..e58f2541d4d 100644 --- a/gcc/cselib.c +++ b/gcc/cselib.c @@ -61,7 +61,6 @@ static void add_mem_for_addr (cselib_val *, cselib_val *, rtx); static cselib_val *cselib_lookup_mem (rtx, int); static void cselib_invalidate_regno (unsigned int, enum machine_mode); static void cselib_invalidate_mem (rtx); -static void cselib_invalidate_rtx (rtx, rtx, void *); static void cselib_record_set (rtx, cselib_val *, cselib_val *); static void cselib_record_sets (rtx); @@ -1141,13 +1140,10 @@ cselib_invalidate_mem (rtx mem_rtx) *vp = &dummy_val; } -/* Invalidate DEST, which is being assigned to or clobbered. The second and - the third parameter exist so that this function can be passed to - note_stores; they are ignored. */ +/* Invalidate DEST, which is being assigned to or clobbered. */ -static void -cselib_invalidate_rtx (rtx dest, rtx ignore ATTRIBUTE_UNUSED, - void *data ATTRIBUTE_UNUSED) +void +cselib_invalidate_rtx (rtx dest) { while (GET_CODE (dest) == STRICT_LOW_PART || GET_CODE (dest) == SIGN_EXTRACT || GET_CODE (dest) == ZERO_EXTRACT || GET_CODE (dest) == SUBREG) @@ -1163,7 +1159,16 @@ cselib_invalidate_rtx (rtx dest, rtx ignore ATTRIBUTE_UNUSED, invalidate the stack pointer correctly. Note that invalidating the stack pointer is different from invalidating DEST. */ if (push_operand (dest, GET_MODE (dest))) - cselib_invalidate_rtx (stack_pointer_rtx, NULL_RTX, NULL); + cselib_invalidate_rtx (stack_pointer_rtx); +} + +/* A wrapper for cselib_invalidate_rtx to be called via note_stores. */ + +static void +cselib_invalidate_rtx_note_stores (rtx dest, rtx ignore ATTRIBUTE_UNUSED, + void *data ATTRIBUTE_UNUSED) +{ + cselib_invalidate_rtx (dest); } /* Record the result of a SET instruction. DEST is being set; the source @@ -1296,7 +1301,7 @@ cselib_record_sets (rtx insn) /* Invalidate all locations written by this insn. Note that the elts we looked up in the previous loop aren't affected, just some of their locations may go away. */ - note_stores (body, cselib_invalidate_rtx, NULL); + note_stores (body, cselib_invalidate_rtx_note_stores, 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 @@ -1384,7 +1389,7 @@ cselib_process_insn (rtx insn) unlikely to help. */ for (x = REG_NOTES (insn); x; x = XEXP (x, 1)) if (REG_NOTE_KIND (x) == REG_INC) - cselib_invalidate_rtx (XEXP (x, 0), NULL_RTX, NULL); + cselib_invalidate_rtx (XEXP (x, 0)); #endif /* Look for any CLOBBERs in CALL_INSN_FUNCTION_USAGE, but only @@ -1392,7 +1397,7 @@ cselib_process_insn (rtx insn) if (CALL_P (insn)) for (x = CALL_INSN_FUNCTION_USAGE (insn); x; x = XEXP (x, 1)) if (GET_CODE (XEXP (x, 0)) == CLOBBER) - cselib_invalidate_rtx (XEXP (XEXP (x, 0), 0), NULL_RTX, NULL); + cselib_invalidate_rtx (XEXP (XEXP (x, 0), 0)); cselib_current_insn = 0; diff --git a/gcc/cselib.h b/gcc/cselib.h index b529060dcd6..1aff2514f30 100644 --- a/gcc/cselib.h +++ b/gcc/cselib.h @@ -70,3 +70,4 @@ extern enum machine_mode cselib_reg_set_mode (rtx); extern int rtx_equal_for_cselib_p (rtx, rtx); extern int references_value_p (rtx, int); extern rtx cselib_subst_to_values (rtx); +extern void cselib_invalidate_rtx (rtx); diff --git a/gcc/dbxout.c b/gcc/dbxout.c index 110ed6b3543..62f3102fd1d 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -343,6 +343,7 @@ static void emit_pending_bincls (void); static inline void emit_pending_bincls_if_required (void); static void dbxout_init (const char *); +static unsigned int get_lang_number (void); static void dbxout_finish (const char *); static void dbxout_start_source_file (unsigned, const char *); static void dbxout_end_source_file (unsigned); @@ -489,6 +490,30 @@ dbxout_function_end (void) } #endif /* DBX_DEBUGGING_INFO */ +/* Get lang description for N_SO stab. */ + +static unsigned int +get_lang_number (void) +{ + const char *language_string = lang_hooks.name; + + if (strcmp (language_string, "GNU C") == 0) + return N_SO_C; + else if (strcmp (language_string, "GNU C++") == 0) + return N_SO_CC; + else if (strcmp (language_string, "GNU F77") == 0) + return N_SO_FORTRAN; + else if (strcmp (language_string, "GNU F95") == 0) + return N_SO_FORTRAN90; /* CHECKME */ + else if (strcmp (language_string, "GNU Pascal") == 0) + return N_SO_PASCAL; + else if (strcmp (language_string, "GNU Objective-C") == 0) + return N_SO_OBJC; + else + return 0; + +} + /* At the beginning of compilation, start writing the symbol table. Initialize `typevec' and output the standard data types of C. */ @@ -521,7 +546,7 @@ dbxout_init (const char *input_file_name) #else /* no DBX_OUTPUT_MAIN_SOURCE_DIRECTORY */ fprintf (asmfile, "%s", ASM_STABS_OP); output_quoted_string (asmfile, cwd); - fprintf (asmfile, ",%d,0,0,", N_SO); + fprintf (asmfile, ",%d,0,%d,", N_SO, get_lang_number ()); assemble_name (asmfile, ltext_label_name); fputc ('\n', asmfile); #endif /* no DBX_OUTPUT_MAIN_SOURCE_DIRECTORY */ @@ -536,7 +561,7 @@ dbxout_init (const char *input_file_name) /* Used to put `Ltext:' before the reference, but that loses on sun 4. */ fprintf (asmfile, "%s", ASM_STABS_OP); output_quoted_string (asmfile, input_file_name); - fprintf (asmfile, ",%d,0,0,", N_SO); + fprintf (asmfile, ",%d,0,%d,", N_SO, get_lang_number ()); assemble_name (asmfile, ltext_label_name); fputc ('\n', asmfile); text_section (); @@ -1293,7 +1318,7 @@ dbxout_type (tree type, int full) || TREE_CODE (type) == QUAL_UNION_TYPE || TREE_CODE (type) == ENUMERAL_TYPE) && TYPE_STUB_DECL (type) - && TREE_CODE_CLASS (TREE_CODE (TYPE_STUB_DECL (type))) == 'd' + && DECL_P (TYPE_STUB_DECL (type)) && ! DECL_IGNORED_P (TYPE_STUB_DECL (type))) debug_queue_symbol (TYPE_STUB_DECL (type)); else if (TYPE_NAME (type) @@ -2154,19 +2179,19 @@ dbxout_symbol (tree decl, int local ATTRIBUTE_UNUSED) || TREE_CODE (t) == ENUMERAL_TYPE) && TYPE_STUB_DECL (t) && TYPE_STUB_DECL (t) != decl - && TREE_CODE_CLASS (TREE_CODE (TYPE_STUB_DECL (t))) == 'd' + && DECL_P (TYPE_STUB_DECL (t)) && ! DECL_IGNORED_P (TYPE_STUB_DECL (t))) { debug_queue_symbol (TYPE_STUB_DECL (t)); if (TYPE_NAME (t) && TYPE_NAME (t) != TYPE_STUB_DECL (t) && TYPE_NAME (t) != decl - && TREE_CODE_CLASS (TREE_CODE (TYPE_NAME (t))) == 'd') + && DECL_P (TYPE_NAME (t))) debug_queue_symbol (TYPE_NAME (t)); } else if (TYPE_NAME (t) && TYPE_NAME (t) != decl - && TREE_CODE_CLASS (TREE_CODE (TYPE_NAME (t))) == 'd') + && DECL_P (TYPE_NAME (t))) debug_queue_symbol (TYPE_NAME (t)); } @@ -3174,8 +3199,8 @@ static void dbxout_block (tree block, int depth, tree args) { const char *begin_label; - if (current_function_func_begin_label != NULL_TREE) - begin_label = IDENTIFIER_POINTER (current_function_func_begin_label); + if (current_function_func_begin_label != NULL) + begin_label = current_function_func_begin_label; else begin_label = XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0); diff --git a/gcc/dbxout.h b/gcc/dbxout.h index 1d3a2927cea..dcbd01112bf 100644 --- a/gcc/dbxout.h +++ b/gcc/dbxout.h @@ -27,4 +27,15 @@ extern void dbxout_parms (tree); extern void dbxout_reg_parms (tree); extern int dbxout_syms (tree); +/* Language description for N_SO stabs. */ +#define N_SO_AS 1 +#define N_SO_C 2 +#define N_SO_ANSI_C 3 +#define N_SO_CC 4 /* c++*/ +#define N_SO_FORTRAN 5 +#define N_SO_PASCAL 6 +#define N_SO_FORTRAN90 7 +#define N_SO_OBJC 50 +#define N_SO_OBJCPLUS 51 + #endif /* GCC_DBXOUT_H */ diff --git a/gcc/ddg.c b/gcc/ddg.c index 3cd9c6b78f5..15bfc3c67a8 100644 --- a/gcc/ddg.c +++ b/gcc/ddg.c @@ -894,7 +894,7 @@ free_ddg_all_sccs (ddg_all_sccs_ptr all_sccs) /* Given FROM - a bitmap of source nodes - and TO - a bitmap of destination nodes - find all nodes that lie on paths from FROM to TO (not excluding - nodes from FROM and TO). Return non zero if nodes exist. */ + nodes from FROM and TO). Return nonzero if nodes exist. */ int find_nodes_on_paths (sbitmap result, ddg_ptr g, sbitmap from, sbitmap to) { diff --git a/gcc/defaults.h b/gcc/defaults.h index 849e5a96b50..013a74ca37e 100644 --- a/gcc/defaults.h +++ b/gcc/defaults.h @@ -632,7 +632,7 @@ do { fputs (integer_asm_op (POINTER_SIZE / BITS_PER_UNIT, TRUE), FILE); \ #define FLOAT_LIB_COMPARE_RETURNS_BOOL(MODE, COMPARISON) false #endif -/* True if the targets integer-comparision functions return { 0, 1, 2 +/* True if the targets integer-comparison functions return { 0, 1, 2 } to indicate { <, ==, > }. False if { -1, 0, 1 } is used instead. The libgcc routines are biased. */ #ifndef TARGET_LIB_INT_CMP_BIASED diff --git a/gcc/doc/c-tree.texi b/gcc/doc/c-tree.texi index 6295d0e627a..3a9a7bcfc99 100644 --- a/gcc/doc/c-tree.texi +++ b/gcc/doc/c-tree.texi @@ -703,9 +703,6 @@ This function cannot be used with namespaces that have @findex CLASSTYPE_DECLARED_CLASS @findex TYPE_BINFO @findex BINFO_TYPE -@findex TREE_VIA_PUBLIC -@findex TREE_VIA_PROTECTED -@findex TREE_VIA_PRIVATE @findex TYPE_FIELDS @findex TYPE_VFIELD @findex TYPE_METHODS diff --git a/gcc/doc/cfg.texi b/gcc/doc/cfg.texi index caf8c4fc58b..2b3aec61630 100644 --- a/gcc/doc/cfg.texi +++ b/gcc/doc/cfg.texi @@ -120,7 +120,7 @@ in the various @file{tree-*} files. The following snippet will pretty-print all the statements of the program in the GIMPLE representation. -@example +@smallexample FOR_EACH_BB (bb) @{ block_stmt_iterator si; @@ -131,7 +131,7 @@ FOR_EACH_BB (bb) print_generic_stmt (stderr, stmt, 0); @} @} -@end example +@end smallexample @node Edges @@ -231,7 +231,7 @@ stages of the compilation process, GCC tries to avoid such dense flow graphs by factoring computed jumps. For example, given the following series of jumps, -@example +@smallexample goto *x; [ ... ] @@ -240,13 +240,13 @@ series of jumps, goto *x; [ ... ] -@end example +@end smallexample @noindent factoring the computed jumps results in the following code sequence which has a much simpler flow graph: -@example +@smallexample goto y; [ ... ] @@ -258,7 +258,7 @@ which has a much simpler flow graph: y: goto *x; -@end example +@end smallexample However, the classic problem with this transformation is that it has a runtime cost in there resulting code: An extra jump. Therefore, the @@ -364,7 +364,7 @@ accumulate into quite large errors. Each edge also contains a branch probability field: an integer in the range from 0 to @code{REG_BR_PROB_BASE}. It represents probability of passing control from the end of the @code{src} basic block to the -@code{dest} basic block, i.e. the probability that control will flow +@code{dest} basic block, i.e.@: the probability that control will flow along this edge. The @code{EDGE_FREQUENCY} macro is available to compute how frequently a given edge is taken. There is a @code{count} field for each edge as well, representing same information as for a @@ -533,7 +533,7 @@ the complete API required for manipulating and maintaining the CFG. It is also possible that a pass has to insert control flow instruction into the middle of a basic block, thus creating an entry point in the middle of the basic block, which is impossible by definition: The -block must be split to make sure it only has one entry point, i.e. the +block must be split to make sure it only has one entry point, i.e.@: the head of the basic block. In the RTL representation, the @code{find_sub_basic_blocks} may be used to split existing basic block and add necessary edges. The CFG hook @code{split_block} may be used @@ -570,7 +570,7 @@ RTL representation along with the function @code{tree} itself. @section Liveness information @cindex Liveness representation Liveness information is useful to determine whether some register is -``live'' at given point of program, i.e. that it contains a value that +``live'' at given point of program, i.e.@: that it contains a value that may be used at a later point in the program. This information is used, for instance, during register allocation, as the pseudo registers only need to be assigned to a unique hard register or to a diff --git a/gcc/doc/compat.texi b/gcc/doc/compat.texi index 5b02ebcac71..4e65b4582bd 100644 --- a/gcc/doc/compat.texi +++ b/gcc/doc/compat.texi @@ -111,7 +111,7 @@ future GCC releases, but it is possible that we will encounter problems that make this difficult. Such problems could include different interpretations of the C++ ABI by different vendors, bugs in the ABI, or bugs in the implementation of the ABI in different compilers. -GCC's @code{-Wabi} switch warns when G++ generates code that is +GCC's @option{-Wabi} switch warns when G++ generates code that is probably not compatible with the C++ ABI@. The C++ library used with a C++ compiler includes the Standard C++ diff --git a/gcc/doc/cpp.texi b/gcc/doc/cpp.texi index c047c570f71..d3e7c9e956c 100644 --- a/gcc/doc/cpp.texi +++ b/gcc/doc/cpp.texi @@ -3760,7 +3760,7 @@ execution character set. Currently, CPP requires its input to be ASCII or UTF-8. The execution character set may be controlled by the user, with the -@code{-ftarget-charset} and @code{-ftarget-wide-charset} options. +@option{-ftarget-charset} and @option{-ftarget-wide-charset} options. @item Identifier characters. @anchor{Identifier characters} diff --git a/gcc/doc/cppopts.texi b/gcc/doc/cppopts.texi index a6b7eb44fbb..e98f8d8e947 100644 --- a/gcc/doc/cppopts.texi +++ b/gcc/doc/cppopts.texi @@ -332,7 +332,7 @@ This option allows use of a precompiled header (@pxref{Precompiled Headers}) together with @option{-E}. It inserts a special @code{#pragma}, @code{#pragma GCC pch_preprocess ""} in the output to mark the place where the precompiled header was found, and its filename. When -@code{-fpreprocessed} is in use, GCC recognizes this @code{#pragma} and +@option{-fpreprocessed} is in use, GCC recognizes this @code{#pragma} and loads the PCH. This option is off by default, because the resulting preprocessed output diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index a511101d12c..af5b9d17755 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -2128,7 +2128,7 @@ __attribute__ ((sentinel(0))) The attribute is automatically set with a position of 0 for the built-in functions @code{execl} and @code{execlp}. The built-in function -@code{execle} has the attribute set set with a position of 1. +@code{execle} has the attribute set with a position of 1. A valid @code{NULL} in this context is defined as zero with any pointer type. If your system defines the @code{NULL} macro with an integer type @@ -2903,7 +2903,7 @@ The @code{shared} attribute is only available on Microsoft Windows@. @cindex @code{tls_model} attribute The @code{tls_model} attribute sets thread-local storage model (@pxref{Thread-Local}) of a particular @code{__thread} variable, -overriding @code{-ftls-model=} command line switch on a per-variable +overriding @option{-ftls-model=} command line switch on a per-variable basis. The @var{tls_model} argument should be one of @code{global-dynamic}, @code{local-dynamic}, @code{initial-exec} or @code{local-exec}. @@ -3610,13 +3610,13 @@ 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 +@smallexample @{"m"( (@{ struct @{ char x[10]; @} *p = (void *)ptr ; *p; @}) )@}. -@end example +@end smallexample Note that in the following example the memory input is necessary, otherwise GCC might optimize the store to @code{x} away: -@example +@smallexample int foo () @{ int x = 42; @@ -3626,7 +3626,7 @@ int foo () "=&d" (r) : "a" (y), "m" (*y)); return result; @} -@end example +@end smallexample You can put multiple assembler instructions together in a single @code{asm} template, separated by the characters normally used in assembly @@ -5293,6 +5293,7 @@ instructions, but allow the compiler to schedule those calls. @menu * Alpha Built-in Functions:: * ARM Built-in Functions:: +* FR-V Built-in Functions:: * X86 Built-in Functions:: * PowerPC AltiVec Built-in Functions:: @end menu @@ -5526,6 +5527,410 @@ long long __builtin_arm_wxor (long long, long long) long long __builtin_arm_wzero () @end smallexample +@node FR-V Built-in Functions +@subsection FR-V Built-in Functions + +GCC provides many FR-V-specific built-in functions. In general, +these functions are intended to be compatible with those described +by @cite{FR-V Family, Softune C/C++ Compiler Manual (V6), Fujitsu +Semiconductor}. The two exceptions are @code{__MDUNPACKH} and +@code{__MBTOHE}, the gcc forms of which pass 128-bit values by +pointer rather than by value. + +Most of the functions are named after specific FR-V instructions. +Such functions are said to be ``directly mapped'' and are summarized +here in tabular form. + +@menu +* Argument Types:: +* Directly-mapped Integer Functions:: +* Directly-mapped Media Functions:: +* Other Built-in Functions:: +@end menu + +@node Argument Types +@subsubsection Argument Types + +The arguments to the built-in functions can be divided into three groups: +register numbers, compile-time constants and run-time values. In order +to make this classification clear at a glance, the arguments and return +values are given the following pseudo types: + +@multitable @columnfractions .20 .30 .15 .35 +@item Pseudo type @tab Real C type @tab Constant? @tab Description +@item @code{uh} @tab @code{unsigned short} @tab No @tab an unsigned halfword +@item @code{uw1} @tab @code{unsigned int} @tab No @tab an unsigned word +@item @code{sw1} @tab @code{int} @tab No @tab a signed word +@item @code{uw2} @tab @code{unsigned long long} @tab No +@tab an unsigned doubleword +@item @code{sw2} @tab @code{long long} @tab No @tab a signed doubleword +@item @code{const} @tab @code{int} @tab Yes @tab an integer constant +@item @code{acc} @tab @code{int} @tab Yes @tab an ACC register number +@item @code{iacc} @tab @code{int} @tab Yes @tab an IACC register number +@end multitable + +These pseudo types are not defined by GCC, they are simply a notational +convenience used in this manual. + +Arguments of type @code{uh}, @code{uw1}, @code{sw1}, @code{uw2} +and @code{sw2} are evaluated at run time. They correspond to +register operands in the underlying FR-V instructions. + +@code{const} arguments represent immediate operands in the underlying +FR-V instructions. They must be compile-time constants. + +@code{acc} arguments are evaluated at compile time and specify the number +of an accumulator register. For example, an @code{acc} argument of 2 +will select the ACC2 register. + +@code{iacc} arguments are similar to @code{acc} arguments but specify the +number of an IACC register. See @pxref{Other Built-in Functions} +for more details. + +@node Directly-mapped Integer Functions +@subsubsection Directly-mapped Integer Functions + +The functions listed below map directly to FR-V I-type instructions. + +@multitable @columnfractions .45 .32 .23 +@item Function prototype @tab Example usage @tab Assembly output +@item @code{sw1 __ADDSS (sw1, sw1)} +@tab @code{@var{c} = __ADDSS (@var{a}, @var{b})} +@tab @code{ADDSS @var{a},@var{b},@var{c}} +@item @code{sw1 __SCAN (sw1, sw1)} +@tab @code{@var{c} = __SCAN (@var{a}, @var{b})} +@tab @code{SCAN @var{a},@var{b},@var{c}} +@item @code{sw1 __SCUTSS (sw1)} +@tab @code{@var{b} = __SCUTSS (@var{a})} +@tab @code{SCUTSS @var{a},@var{b}} +@item @code{sw1 __SLASS (sw1, sw1)} +@tab @code{@var{c} = __SLASS (@var{a}, @var{b})} +@tab @code{SLASS @var{a},@var{b},@var{c}} +@item @code{void __SMASS (sw1, sw1)} +@tab @code{__SMASS (@var{a}, @var{b})} +@tab @code{SMASS @var{a},@var{b}} +@item @code{void __SMSSS (sw1, sw1)} +@tab @code{__SMSSS (@var{a}, @var{b})} +@tab @code{SMSSS @var{a},@var{b}} +@item @code{void __SMU (sw1, sw1)} +@tab @code{__SMU (@var{a}, @var{b})} +@tab @code{SMU @var{a},@var{b}} +@item @code{sw2 __SMUL (sw1, sw1)} +@tab @code{@var{c} = __SMUL (@var{a}, @var{b})} +@tab @code{SMUL @var{a},@var{b},@var{c}} +@item @code{sw1 __SUBSS (sw1, sw1)} +@tab @code{@var{c} = __SUBSS (@var{a}, @var{b})} +@tab @code{SUBSS @var{a},@var{b},@var{c}} +@item @code{uw2 __UMUL (uw1, uw1)} +@tab @code{@var{c} = __UMUL (@var{a}, @var{b})} +@tab @code{UMUL @var{a},@var{b},@var{c}} +@end multitable + +@node Directly-mapped Media Functions +@subsubsection Directly-mapped Media Functions + +The functions listed below map directly to FR-V M-type instructions. + +@multitable @columnfractions .45 .32 .23 +@item Function prototype @tab Example usage @tab Assembly output +@item @code{uw1 __MABSHS (sw1)} +@tab @code{@var{b} = __MABSHS (@var{a})} +@tab @code{MABSHS @var{a},@var{b}} +@item @code{void __MADDACCS (acc, acc)} +@tab @code{__MADDACCS (@var{b}, @var{a})} +@tab @code{MADDACCS @var{a},@var{b}} +@item @code{sw1 __MADDHSS (sw1, sw1)} +@tab @code{@var{c} = __MADDHSS (@var{a}, @var{b})} +@tab @code{MADDHSS @var{a},@var{b},@var{c}} +@item @code{uw1 __MADDHUS (uw1, uw1)} +@tab @code{@var{c} = __MADDHUS (@var{a}, @var{b})} +@tab @code{MADDHUS @var{a},@var{b},@var{c}} +@item @code{uw1 __MAND (uw1, uw1)} +@tab @code{@var{c} = __MAND (@var{a}, @var{b})} +@tab @code{MAND @var{a},@var{b},@var{c}} +@item @code{void __MASACCS (acc, acc)} +@tab @code{__MASACCS (@var{b}, @var{a})} +@tab @code{MASACCS @var{a},@var{b}} +@item @code{uw1 __MAVEH (uw1, uw1)} +@tab @code{@var{c} = __MAVEH (@var{a}, @var{b})} +@tab @code{MAVEH @var{a},@var{b},@var{c}} +@item @code{uw2 __MBTOH (uw1)} +@tab @code{@var{b} = __MBTOH (@var{a})} +@tab @code{MBTOH @var{a},@var{b}} +@item @code{void __MBTOHE (uw1 *, uw1)} +@tab @code{__MBTOHE (&@var{b}, @var{a})} +@tab @code{MBTOHE @var{a},@var{b}} +@item @code{void __MCLRACC (acc)} +@tab @code{__MCLRACC (@var{a})} +@tab @code{MCLRACC @var{a}} +@item @code{void __MCLRACCA (void)} +@tab @code{__MCLRACCA ()} +@tab @code{MCLRACCA} +@item @code{uw1 __Mcop1 (uw1, uw1)} +@tab @code{@var{c} = __Mcop1 (@var{a}, @var{b})} +@tab @code{Mcop1 @var{a},@var{b},@var{c}} +@item @code{uw1 __Mcop2 (uw1, uw1)} +@tab @code{@var{c} = __Mcop2 (@var{a}, @var{b})} +@tab @code{Mcop2 @var{a},@var{b},@var{c}} +@item @code{uw1 __MCPLHI (uw2, const)} +@tab @code{@var{c} = __MCPLHI (@var{a}, @var{b})} +@tab @code{MCPLHI @var{a},#@var{b},@var{c}} +@item @code{uw1 __MCPLI (uw2, const)} +@tab @code{@var{c} = __MCPLI (@var{a}, @var{b})} +@tab @code{MCPLI @var{a},#@var{b},@var{c}} +@item @code{void __MCPXIS (acc, sw1, sw1)} +@tab @code{__MCPXIS (@var{c}, @var{a}, @var{b})} +@tab @code{MCPXIS @var{a},@var{b},@var{c}} +@item @code{void __MCPXIU (acc, uw1, uw1)} +@tab @code{__MCPXIU (@var{c}, @var{a}, @var{b})} +@tab @code{MCPXIU @var{a},@var{b},@var{c}} +@item @code{void __MCPXRS (acc, sw1, sw1)} +@tab @code{__MCPXRS (@var{c}, @var{a}, @var{b})} +@tab @code{MCPXRS @var{a},@var{b},@var{c}} +@item @code{void __MCPXRU (acc, uw1, uw1)} +@tab @code{__MCPXRU (@var{c}, @var{a}, @var{b})} +@tab @code{MCPXRU @var{a},@var{b},@var{c}} +@item @code{uw1 __MCUT (acc, uw1)} +@tab @code{@var{c} = __MCUT (@var{a}, @var{b})} +@tab @code{MCUT @var{a},@var{b},@var{c}} +@item @code{uw1 __MCUTSS (acc, sw1)} +@tab @code{@var{c} = __MCUTSS (@var{a}, @var{b})} +@tab @code{MCUTSS @var{a},@var{b},@var{c}} +@item @code{void __MDADDACCS (acc, acc)} +@tab @code{__MDADDACCS (@var{b}, @var{a})} +@tab @code{MDADDACCS @var{a},@var{b}} +@item @code{void __MDASACCS (acc, acc)} +@tab @code{__MDASACCS (@var{b}, @var{a})} +@tab @code{MDASACCS @var{a},@var{b}} +@item @code{uw2 __MDCUTSSI (acc, const)} +@tab @code{@var{c} = __MDCUTSSI (@var{a}, @var{b})} +@tab @code{MDCUTSSI @var{a},#@var{b},@var{c}} +@item @code{uw2 __MDPACKH (uw2, uw2)} +@tab @code{@var{c} = __MDPACKH (@var{a}, @var{b})} +@tab @code{MDPACKH @var{a},@var{b},@var{c}} +@item @code{uw2 __MDROTLI (uw2, const)} +@tab @code{@var{c} = __MDROTLI (@var{a}, @var{b})} +@tab @code{MDROTLI @var{a},#@var{b},@var{c}} +@item @code{void __MDSUBACCS (acc, acc)} +@tab @code{__MDSUBACCS (@var{b}, @var{a})} +@tab @code{MDSUBACCS @var{a},@var{b}} +@item @code{void __MDUNPACKH (uw1 *, uw2)} +@tab @code{__MDUNPACKH (&@var{b}, @var{a})} +@tab @code{MDUNPACKH @var{a},@var{b}} +@item @code{uw2 __MEXPDHD (uw1, const)} +@tab @code{@var{c} = __MEXPDHD (@var{a}, @var{b})} +@tab @code{MEXPDHD @var{a},#@var{b},@var{c}} +@item @code{uw1 __MEXPDHW (uw1, const)} +@tab @code{@var{c} = __MEXPDHW (@var{a}, @var{b})} +@tab @code{MEXPDHW @var{a},#@var{b},@var{c}} +@item @code{uw1 __MHDSETH (uw1, const)} +@tab @code{@var{c} = __MHDSETH (@var{a}, @var{b})} +@tab @code{MHDSETH @var{a},#@var{b},@var{c}} +@item @code{sw1 __MHDSETS (const)} +@tab @code{@var{b} = __MHDSETS (@var{a})} +@tab @code{MHDSETS #@var{a},@var{b}} +@item @code{uw1 __MHSETHIH (uw1, const)} +@tab @code{@var{b} = __MHSETHIH (@var{b}, @var{a})} +@tab @code{MHSETHIH #@var{a},@var{b}} +@item @code{sw1 __MHSETHIS (sw1, const)} +@tab @code{@var{b} = __MHSETHIS (@var{b}, @var{a})} +@tab @code{MHSETHIS #@var{a},@var{b}} +@item @code{uw1 __MHSETLOH (uw1, const)} +@tab @code{@var{b} = __MHSETLOH (@var{b}, @var{a})} +@tab @code{MHSETLOH #@var{a},@var{b}} +@item @code{sw1 __MHSETLOS (sw1, const)} +@tab @code{@var{b} = __MHSETLOS (@var{b}, @var{a})} +@tab @code{MHSETLOS #@var{a},@var{b}} +@item @code{uw1 __MHTOB (uw2)} +@tab @code{@var{b} = __MHTOB (@var{a})} +@tab @code{MHTOB @var{a},@var{b}} +@item @code{void __MMACHS (acc, sw1, sw1)} +@tab @code{__MMACHS (@var{c}, @var{a}, @var{b})} +@tab @code{MMACHS @var{a},@var{b},@var{c}} +@item @code{void __MMACHU (acc, uw1, uw1)} +@tab @code{__MMACHU (@var{c}, @var{a}, @var{b})} +@tab @code{MMACHU @var{a},@var{b},@var{c}} +@item @code{void __MMRDHS (acc, sw1, sw1)} +@tab @code{__MMRDHS (@var{c}, @var{a}, @var{b})} +@tab @code{MMRDHS @var{a},@var{b},@var{c}} +@item @code{void __MMRDHU (acc, uw1, uw1)} +@tab @code{__MMRDHU (@var{c}, @var{a}, @var{b})} +@tab @code{MMRDHU @var{a},@var{b},@var{c}} +@item @code{void __MMULHS (acc, sw1, sw1)} +@tab @code{__MMULHS (@var{c}, @var{a}, @var{b})} +@tab @code{MMULHS @var{a},@var{b},@var{c}} +@item @code{void __MMULHU (acc, uw1, uw1)} +@tab @code{__MMULHU (@var{c}, @var{a}, @var{b})} +@tab @code{MMULHU @var{a},@var{b},@var{c}} +@item @code{void __MMULXHS (acc, sw1, sw1)} +@tab @code{__MMULXHS (@var{c}, @var{a}, @var{b})} +@tab @code{MMULXHS @var{a},@var{b},@var{c}} +@item @code{void __MMULXHU (acc, uw1, uw1)} +@tab @code{__MMULXHU (@var{c}, @var{a}, @var{b})} +@tab @code{MMULXHU @var{a},@var{b},@var{c}} +@item @code{uw1 __MNOT (uw1)} +@tab @code{@var{b} = __MNOT (@var{a})} +@tab @code{MNOT @var{a},@var{b}} +@item @code{uw1 __MOR (uw1, uw1)} +@tab @code{@var{c} = __MOR (@var{a}, @var{b})} +@tab @code{MOR @var{a},@var{b},@var{c}} +@item @code{uw1 __MPACKH (uh, uh)} +@tab @code{@var{c} = __MPACKH (@var{a}, @var{b})} +@tab @code{MPACKH @var{a},@var{b},@var{c}} +@item @code{sw2 __MQADDHSS (sw2, sw2)} +@tab @code{@var{c} = __MQADDHSS (@var{a}, @var{b})} +@tab @code{MQADDHSS @var{a},@var{b},@var{c}} +@item @code{uw2 __MQADDHUS (uw2, uw2)} +@tab @code{@var{c} = __MQADDHUS (@var{a}, @var{b})} +@tab @code{MQADDHUS @var{a},@var{b},@var{c}} +@item @code{void __MQCPXIS (acc, sw2, sw2)} +@tab @code{__MQCPXIS (@var{c}, @var{a}, @var{b})} +@tab @code{MQCPXIS @var{a},@var{b},@var{c}} +@item @code{void __MQCPXIU (acc, uw2, uw2)} +@tab @code{__MQCPXIU (@var{c}, @var{a}, @var{b})} +@tab @code{MQCPXIU @var{a},@var{b},@var{c}} +@item @code{void __MQCPXRS (acc, sw2, sw2)} +@tab @code{__MQCPXRS (@var{c}, @var{a}, @var{b})} +@tab @code{MQCPXRS @var{a},@var{b},@var{c}} +@item @code{void __MQCPXRU (acc, uw2, uw2)} +@tab @code{__MQCPXRU (@var{c}, @var{a}, @var{b})} +@tab @code{MQCPXRU @var{a},@var{b},@var{c}} +@item @code{sw2 __MQLCLRHS (sw2, sw2)} +@tab @code{@var{c} = __MQLCLRHS (@var{a}, @var{b})} +@tab @code{MQLCLRHS @var{a},@var{b},@var{c}} +@item @code{sw2 __MQLMTHS (sw2, sw2)} +@tab @code{@var{c} = __MQLMTHS (@var{a}, @var{b})} +@tab @code{MQLMTHS @var{a},@var{b},@var{c}} +@item @code{void __MQMACHS (acc, sw2, sw2)} +@tab @code{__MQMACHS (@var{c}, @var{a}, @var{b})} +@tab @code{MQMACHS @var{a},@var{b},@var{c}} +@item @code{void __MQMACHU (acc, uw2, uw2)} +@tab @code{__MQMACHU (@var{c}, @var{a}, @var{b})} +@tab @code{MQMACHU @var{a},@var{b},@var{c}} +@item @code{void __MQMACXHS (acc, sw2, sw2)} +@tab @code{__MQMACXHS (@var{c}, @var{a}, @var{b})} +@tab @code{MQMACXHS @var{a},@var{b},@var{c}} +@item @code{void __MQMULHS (acc, sw2, sw2)} +@tab @code{__MQMULHS (@var{c}, @var{a}, @var{b})} +@tab @code{MQMULHS @var{a},@var{b},@var{c}} +@item @code{void __MQMULHU (acc, uw2, uw2)} +@tab @code{__MQMULHU (@var{c}, @var{a}, @var{b})} +@tab @code{MQMULHU @var{a},@var{b},@var{c}} +@item @code{void __MQMULXHS (acc, sw2, sw2)} +@tab @code{__MQMULXHS (@var{c}, @var{a}, @var{b})} +@tab @code{MQMULXHS @var{a},@var{b},@var{c}} +@item @code{void __MQMULXHU (acc, uw2, uw2)} +@tab @code{__MQMULXHU (@var{c}, @var{a}, @var{b})} +@tab @code{MQMULXHU @var{a},@var{b},@var{c}} +@item @code{sw2 __MQSATHS (sw2, sw2)} +@tab @code{@var{c} = __MQSATHS (@var{a}, @var{b})} +@tab @code{MQSATHS @var{a},@var{b},@var{c}} +@item @code{uw2 __MQSLLHI (uw2, int)} +@tab @code{@var{c} = __MQSLLHI (@var{a}, @var{b})} +@tab @code{MQSLLHI @var{a},@var{b},@var{c}} +@item @code{sw2 __MQSRAHI (sw2, int)} +@tab @code{@var{c} = __MQSRAHI (@var{a}, @var{b})} +@tab @code{MQSRAHI @var{a},@var{b},@var{c}} +@item @code{sw2 __MQSUBHSS (sw2, sw2)} +@tab @code{@var{c} = __MQSUBHSS (@var{a}, @var{b})} +@tab @code{MQSUBHSS @var{a},@var{b},@var{c}} +@item @code{uw2 __MQSUBHUS (uw2, uw2)} +@tab @code{@var{c} = __MQSUBHUS (@var{a}, @var{b})} +@tab @code{MQSUBHUS @var{a},@var{b},@var{c}} +@item @code{void __MQXMACHS (acc, sw2, sw2)} +@tab @code{__MQXMACHS (@var{c}, @var{a}, @var{b})} +@tab @code{MQXMACHS @var{a},@var{b},@var{c}} +@item @code{void __MQXMACXHS (acc, sw2, sw2)} +@tab @code{__MQXMACXHS (@var{c}, @var{a}, @var{b})} +@tab @code{MQXMACXHS @var{a},@var{b},@var{c}} +@item @code{uw1 __MRDACC (acc)} +@tab @code{@var{b} = __MRDACC (@var{a})} +@tab @code{MRDACC @var{a},@var{b}} +@item @code{uw1 __MRDACCG (acc)} +@tab @code{@var{b} = __MRDACCG (@var{a})} +@tab @code{MRDACCG @var{a},@var{b}} +@item @code{uw1 __MROTLI (uw1, const)} +@tab @code{@var{c} = __MROTLI (@var{a}, @var{b})} +@tab @code{MROTLI @var{a},#@var{b},@var{c}} +@item @code{uw1 __MROTRI (uw1, const)} +@tab @code{@var{c} = __MROTRI (@var{a}, @var{b})} +@tab @code{MROTRI @var{a},#@var{b},@var{c}} +@item @code{sw1 __MSATHS (sw1, sw1)} +@tab @code{@var{c} = __MSATHS (@var{a}, @var{b})} +@tab @code{MSATHS @var{a},@var{b},@var{c}} +@item @code{uw1 __MSATHU (uw1, uw1)} +@tab @code{@var{c} = __MSATHU (@var{a}, @var{b})} +@tab @code{MSATHU @var{a},@var{b},@var{c}} +@item @code{uw1 __MSLLHI (uw1, const)} +@tab @code{@var{c} = __MSLLHI (@var{a}, @var{b})} +@tab @code{MSLLHI @var{a},#@var{b},@var{c}} +@item @code{sw1 __MSRAHI (sw1, const)} +@tab @code{@var{c} = __MSRAHI (@var{a}, @var{b})} +@tab @code{MSRAHI @var{a},#@var{b},@var{c}} +@item @code{uw1 __MSRLHI (uw1, const)} +@tab @code{@var{c} = __MSRLHI (@var{a}, @var{b})} +@tab @code{MSRLHI @var{a},#@var{b},@var{c}} +@item @code{void __MSUBACCS (acc, acc)} +@tab @code{__MSUBACCS (@var{b}, @var{a})} +@tab @code{MSUBACCS @var{a},@var{b}} +@item @code{sw1 __MSUBHSS (sw1, sw1)} +@tab @code{@var{c} = __MSUBHSS (@var{a}, @var{b})} +@tab @code{MSUBHSS @var{a},@var{b},@var{c}} +@item @code{uw1 __MSUBHUS (uw1, uw1)} +@tab @code{@var{c} = __MSUBHUS (@var{a}, @var{b})} +@tab @code{MSUBHUS @var{a},@var{b},@var{c}} +@item @code{void __MTRAP (void)} +@tab @code{__MTRAP ()} +@tab @code{MTRAP} +@item @code{uw2 __MUNPACKH (uw1)} +@tab @code{@var{b} = __MUNPACKH (@var{a})} +@tab @code{MUNPACKH @var{a},@var{b}} +@item @code{uw1 __MWCUT (uw2, uw1)} +@tab @code{@var{c} = __MWCUT (@var{a}, @var{b})} +@tab @code{MWCUT @var{a},@var{b},@var{c}} +@item @code{void __MWTACC (acc, uw1)} +@tab @code{__MWTACC (@var{b}, @var{a})} +@tab @code{MWTACC @var{a},@var{b}} +@item @code{void __MWTACCG (acc, uw1)} +@tab @code{__MWTACCG (@var{b}, @var{a})} +@tab @code{MWTACCG @var{a},@var{b}} +@item @code{uw1 __MXOR (uw1, uw1)} +@tab @code{@var{c} = __MXOR (@var{a}, @var{b})} +@tab @code{MXOR @var{a},@var{b},@var{c}} +@end multitable + +@node Other Built-in Functions +@subsubsection Other Built-in Functions + +This section describes built-in functions that are not named after +a specific FR-V instruction. + +@table @code +@item sw2 __IACCreadll (iacc @var{reg}) +Return the full 64-bit value of IACC0@. The @var{reg} argument is reserved +for future expansion and must be 0. + +@item sw1 __IACCreadl (iacc @var{reg}) +Return the value of IACC0H if @var{reg} is 0 and IACC0L if @var{reg} is 1. +Other values of @var{reg} are rejected as invalid. + +@item void __IACCsetll (iacc @var{reg}, sw2 @var{x}) +Set the full 64-bit value of IACC0 to @var{x}. The @var{reg} argument +is reserved for future expansion and must be 0. + +@item void __IACCsetl (iacc @var{reg}, sw1 @var{x}) +Set IACC0H to @var{x} if @var{reg} is 0 and IACC0L to @var{x} if @var{reg} +is 1. Other values of @var{reg} are rejected as invalid. + +@item void __data_prefetch0 (const void *@var{x}) +Use the @code{dcpl} instruction to load the contents of address @var{x} +into the data cache. + +@item void __data_prefetch (const void *@var{x}) +Use the @code{nldub} instruction to load the contents of address @var{x} +into the data cache. The instruction will be issued in slot I1@. +@end table + @node X86 Built-in Functions @subsection X86 Built-in Functions @@ -8499,7 +8904,7 @@ translation unit. @emph{Note:} As of GCC 2.7.2, these @code{#pragma}s are not useful in most cases, because of COMDAT support and the ``key method'' heuristic mentioned in @ref{Vague Linkage}. Using them can actually cause your -program to grow due to unnecesary out-of-line copies of inline +program to grow due to unnecessary out-of-line copies of inline functions. Currently (3.4) the only benefit of these @code{#pragma}s is reduced duplication of debugging information, and that should be addressed soon on DWARF 2 targets with the use of @@ -8841,14 +9246,14 @@ namespace std @{ template struct A @{ @}; @} using namespace debug __attribute ((__strong__)); - template <> struct A @{ @}; // ok to specialize + template <> struct A @{ @}; // @r{ok to specialize} template void f (A); @} int main() @{ - f (std::A()); // lookup finds std::f + f (std::A()); // @r{lookup finds} std::f f (std::A()); @} @end smallexample @@ -8865,7 +9270,7 @@ Sample problematic code is: @smallexample struct S @{ ~S(); @}; - extern void bar(); // is written in Java, and may throw exceptions + extern void bar(); // @r{is written in Java, and may throw exceptions} void foo() @{ S s; diff --git a/gcc/doc/hostconfig.texi b/gcc/doc/hostconfig.texi index dc52b85c5fd..4201522c712 100644 --- a/gcc/doc/hostconfig.texi +++ b/gcc/doc/hostconfig.texi @@ -150,7 +150,7 @@ constructing the index part of debugging dump file names. The resultant string must fit in fifteen bytes. The full filename will be the concatenation of: the prefix of the assembler file name, the string resulting from applying this format to an index number, and a string -unique to each dump file kind, e.g. @samp{rtl}. +unique to each dump file kind, e.g.@: @samp{rtl}. If you do not define this macro, GCC will use @samp{.%02d.}. You should define this macro if using the default will create an invalid file name. diff --git a/gcc/doc/include/texinfo.tex b/gcc/doc/include/texinfo.tex index 9500f1867b4..49747b0e517 100644 --- a/gcc/doc/include/texinfo.tex +++ b/gcc/doc/include/texinfo.tex @@ -403,7 +403,7 @@ \def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm} \def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm} -% Each occurence of `\^^M' or `\^^M' is replaced by a single space. +% Each occurrence of `\^^M' or `\^^M' is replaced by a single space. % % \argremovec might leave us with trailing space, e.g., % @end itemize @c foo diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index 01cbb47c25b..d2d3e3bcee3 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -1355,7 +1355,7 @@ 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}). +comma (i.e.@: @option{--enable-java-awt=gtk,xlib}). @item --enable-gtk-cairo Build the cairo Graphics2D implementation on GTK. @@ -1501,7 +1501,7 @@ bootstrap4} to increase the number of stages of bootstrap. Note that using non-standard @code{CFLAGS} can cause bootstrap to fail in @file{libiberty}, if these trigger a warning with the new compiler. For example using @samp{-O2 -g -mcpu=i686} on @code{i686-pc-linux-gnu} will -cause bootstrap failure as @code{-mcpu=} is deprecated in 3.4.0 and above. +cause bootstrap failure as @option{-mcpu=} is deprecated in 3.4.0 and above. If you used the flag @option{--enable-languages=@dots{}} to restrict @@ -3534,7 +3534,7 @@ GCC 3.3 and GCC 3.4 trigger code generation bugs in earlier versions of the GNU compiler (especially GCC 3.0.x versions), which lead to the miscompilation of the stage1 compiler and the subsequent failure of the bootstrap process. A workaround is to use GCC 3.2.3 as an intermediary -stage, i.e. to bootstrap that compiler with the base compiler and then +stage, i.e.@: to bootstrap that compiler with the base compiler and then use it to bootstrap the final compiler. GCC 3.4 triggers a code generation bug in versions 5.4 (Sun ONE Studio 7) @@ -3547,11 +3547,16 @@ GCC 3.4 changed the default debugging format from STABS to DWARF-2 for assembler, this change apparently runs afoul of Sun bug 4910101, for which (as of 2004-05-23) there is no fix. A symptom of the problem is that you cannot compile C++ programs like @command{groff} 1.19.1 -without getting messages like @samp{ld: warning: relocation error: -R_SPARC_UA32 @dots{} external symbolic relocation against -non-allocatable section .debug_info; cannot be processed at runtime: -relocation ignored}. To work around this problem, compile with -@option{-gstabs+} instead of plain @option{-g}. +without getting messages similar to the following: + +@smallexample +ld: warning: relocation error: R_SPARC_UA32: @dots{} + external symbolic relocation against non-allocatable section + .debug_info cannot be processed at runtime: relocation ignored. +@end smallexample + +To work around this problem, compile with @option{-gstabs+} instead of +plain @option{-g}. @html
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index bee642c8323..fae30188b20 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -249,6 +249,7 @@ Objective-C and Objective-C++ Dialects}. @gccoptlist{-d@var{letters} -dumpspecs -dumpmachine -dumpversion @gol -fdump-unnumbered -fdump-translation-unit@r{[}-@var{n}@r{]} @gol -fdump-class-hierarchy@r{[}-@var{n}@r{]} @gol +-fdump-ipa-all -fdump-ipa-cgraph @gol -fdump-tree-all @gol -fdump-tree-original@r{[}-@var{n}@r{]} @gol -fdump-tree-optimized@r{[}-@var{n}@r{]} @gol @@ -293,7 +294,7 @@ Objective-C and Objective-C++ Dialects}. -floop-optimize -fcrossjumping -fif-conversion -fif-conversion2 @gol -finline-functions -finline-limit=@var{n} -fkeep-inline-functions @gol -fkeep-static-consts -fmerge-constants -fmerge-all-constants @gol --fmodulo-sched -fmove-all-movables -fnew-ra -fno-branch-count-reg @gol +-fmodulo-sched -fnew-ra -fno-branch-count-reg @gol -fno-default-inline -fno-defer-pop -floop-optimize2 -fmove-loop-invariants @gol -fno-function-cse -fno-guess-branch-probability @gol -fno-inline -fno-math-errno -fno-peephole -fno-peephole2 @gol @@ -302,7 +303,7 @@ Objective-C and Objective-C++ Dialects}. -fomit-frame-pointer -foptimize-register-move @gol -foptimize-sibling-calls -fprefetch-loop-arrays @gol -fprofile-generate -fprofile-use @gol --freduce-all-givs -fregmove -frename-registers @gol +-fregmove -frename-registers @gol -freorder-blocks -freorder-blocks-and-partition -freorder-functions @gol -frerun-cse-after-loop -frerun-loop-opt @gol -frounding-math -fschedule-insns -fschedule-insns2 @gol @@ -314,7 +315,7 @@ Objective-C and Objective-C++ Dialects}. -fsignaling-nans -fsingle-precision-constant -fspeculative-prefetching @gol -fstrength-reduce -fstrict-aliasing -ftracer -fthread-jumps @gol -funroll-all-loops -funroll-loops -fpeel-loops @gol --funswitch-loops -fold-unroll-loops -fold-unroll-all-loops @gol +-fsplit-ivs-in-unroller -funswitch-loops @gol -ftree-pre -ftree-ccp -ftree-dce -ftree-loop-optimize @gol -ftree-loop-linear -ftree-loop-im -ftree-loop-ivcanon -fivopts @gol -ftree-dominator-opts -ftree-dse -ftree-copyrename @gol @@ -1501,7 +1502,7 @@ it can cause bloating through duplication of code within each DSO where it is used, often the wastage is less than the considerable space occupied by a long symbol name in the export table which is typical when using templates and namespaces. For even more savings, combine with the -@code{-fvisibility=hidden} switch. +@option{-fvisibility=hidden} switch. @item -fno-weak @opindex fno-weak @@ -1981,7 +1982,7 @@ If a class is declared to implement a protocol, a warning is issued for every method in the protocol that is not implemented by the class. The default behavior is to issue a warning for every method not explicitly implemented in the class, even if a method implementation is inherited -from the superclass. If you use the @code{-Wno-protocol} option, then +from the superclass. If you use the @option{-Wno-protocol} option, then methods inherited from the superclass are considered to be implemented, and no warning is issued for them. @@ -1995,7 +1996,7 @@ expression, and a corresponding method for that selector has been found during compilation. Because these checks scan the method table only at the end of compilation, these warnings are not produced if the final stage of compilation is not reached, for example because an error is -found during compilation, or because the @code{-fsyntax-only} option is +found during compilation, or because the @option{-fsyntax-only} option is being used. @item -Wundeclared-selector @@ -2007,7 +2008,7 @@ method with that name has been declared before the @code{@@interface} or @code{@@protocol} declaration, or implicitly in an @code{@@implementation} section. This option always performs its checks as soon as a @code{@@selector(@dots{})} expression is found, -while @code{-Wselector} only performs its checks in the final stage of +while @option{-Wselector} only performs its checks in the final stage of compilation. This also enforces the coding style convention that methods and selectors must be declared before being used. @@ -3285,7 +3286,7 @@ test coverage analysis (@option{-ftest-coverage}). Each object file's @var{auxname} is generated from the name of the output file, if explicitly specified and it is not the final executable, otherwise it is the basename of the source file. In both cases any suffix is removed -(e.g. @file{foo.gcda} for input file @file{dir/foo.c}, or +(e.g.@: @file{foo.gcda} for input file @file{dir/foo.c}, or @file{dir/foo.gcda} for output file specified as @option{-o dir/foo.o}). @itemize @@ -3655,6 +3656,22 @@ to the source file name. If the @samp{-@var{options}} form is used, @var{options} controls the details of the dump as described for the @option{-fdump-tree} options. +@item -fdump-ipa-@var{switch} +@opindex fdump-ipa +Control the dumping at various stages of inter-procedural analysis +language tree to a file. The file name is generated by appending a switch +specific suffix to the source file name. The following dumps are possible: + +@table @samp +@item all +Enables all inter-procedural analysis dumps; currently the only produced +dump is the @samp{cgraph} dump. + +@item cgraph +Dumps information about call-graph optimization, unused function removal, +and inlining decisions. +@end table + @item -fdump-tree-@var{switch} @r{(C and C++ only)} @itemx -fdump-tree-@var{switch}-@var{options} @r{(C and C++ only)} @opindex fdump-tree @@ -4222,7 +4239,7 @@ Enabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}. Attempt to merge identical constants and identical variables. This option implies @option{-fmerge-constants}. In addition to -@option{-fmerge-constants} this considers e.g. even constant initialized +@option{-fmerge-constants} this considers e.g.@: even constant initialized arrays or initialized constant variables with integral or floating point types. Languages like C or C++ require each non-automatic variable to have distinct location, so using this option will result in non-conforming @@ -4406,8 +4423,7 @@ redundant spilling. @item -floop-optimize @opindex floop-optimize Perform loop optimizations: move constant expressions out of loops, simplify -exit test conditions and optionally do strength-reduction and loop unrolling as -well. +exit test conditions and optionally do strength-reduction as well. Enabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}. @@ -4556,8 +4572,8 @@ size of superblocks using tracer pass. See @option{-ftracer} for details on trace formation. This mode should produce faster but significantly longer programs. Also -without @code{-fbranch-probabilities} the traces constructed may not match the -reality and hurt the performance. This only makes +without @option{-fbranch-probabilities} the traces constructed may not +match the reality and hurt the performance. This only makes sense when scheduling after register allocation, i.e.@: with @option{-fschedule-insns2} or at @option{-O2} or higher. @@ -4581,36 +4597,36 @@ Enabled at levels @option{-O2}, @option{-O3}, @option{-Os}. @item -ftree-pre Perform Partial Redundancy Elimination (PRE) on trees. This flag is -enabled by default at -O and higher. +enabled by default at @option{-O} and higher. @item -ftree-fre Perform Full Redundancy Elimination (FRE) on trees. The difference between FRE and PRE is that FRE only considers expressions that are computed on all paths leading to the redundant computation. This analysis faster than PRE, though it exposes fewer redundancies. -This flag is enabled by default at -O and higher. +This flag is enabled by default at @option{-O} and higher. @item -ftree-ccp Perform sparse conditional constant propagation (CCP) on trees. This flag -is enabled by default at -O and higher. +is enabled by default at @option{-O} and higher. @item -ftree-dce Perform dead code elimination (DCE) on trees. This flag is enabled by -default at -O and higher. +default at @option{-O} and higher. @item -ftree-dominator-opts Perform dead code elimination (DCE) on trees. This flag is enabled by -default at -O and higher. +default at @option{-O} and higher. @item -ftree-ch Perform loop header copying on trees. This is beneficial since it increases -effectivity of code motion optimizations. It also saves one jump. This flag -is enabled by default at -O and higher. It is not enabled for -Os, since it -usually increases code size. +effectiveness of code motion optimizations. It also saves one jump. This flag +is enabled by default at @option{-O} and higher. It is not enabled +for @option{-Os}, since it usually increases code size. @item -ftree-loop-optimize -Perform loop optimizations on trees. This flag is enabled by default at -O -and higher. +Perform loop optimizations on trees. This flag is enabled by default +at @option{-O} and higher. @item -ftree-loop-linear Perform linear loop transformations on tree. This flag can improve cache @@ -4637,25 +4653,25 @@ variable merging and induction variable elimination) on trees. @item -ftree-sra Perform scalar replacement of aggregates. This pass replaces structure references with scalars to prevent committing structures to memory too -early. This flag is enabled by default at -O and higher. +early. This flag is enabled by default at @option{-O} and higher. @item -ftree-copyrename Perform copy renaming on trees. This pass attempts to rename compiler temporaries to other variables at copy locations, usually resulting in variable names which more closely resemble the original variables. This flag -is enabled by default at -O and higher. +is enabled by default at @option{-O} and higher. @item -ftree-ter Perform temporary expression replacement during the SSA->normal phase. Single use/single def temporaries are replaced at their use location with their defining expression. This results in non-GIMPLE code, but gives the expanders much more complex trees to work on resulting in better RTL generation. This is -enabled by default at -O and higher. +enabled by default at @option{-O} and higher. @item -ftree-lrs Perform live range splitting during the SSA->normal phase. Distinct live ranges of a variable are split into unique variables, allowing for better -optimization later. This is enabled by default at -O and higher. +optimization later. This is enabled by default at @option{-O} and higher. @item -ftree-vectorize Perform loop vectorization on trees. @@ -4680,37 +4696,28 @@ the loop is entered. This usually makes programs run more slowly. @option{-funroll-all-loops} implies the same options as @option{-funroll-loops}, +@item -fsplit-ivs-in-unroller +@opindex -fsplit-ivs-in-unroller +Enables expressing of values of induction variables in later iterations +of the unrolled loop using the value in the first iteration. This breaks +long dependency chains, thus improving efficiency of the scheduling passes +(for best results, @option{-fweb} should be used as well). + +Combination of @option{-fweb} and CSE is often sufficient to obtain the +same effect. However in cases the loop body is more complicated than +a single basic block, this is not reliable. It also does not work at all +on some of the architectures due to restrictions in the CSE pass. + +This optimization is enabled by default. + @item -fprefetch-loop-arrays @opindex fprefetch-loop-arrays If supported by the target machine, generate instructions to prefetch memory to improve the performance of loops that access large arrays. -@item -fmove-all-movables -@opindex fmove-all-movables -Forces all invariant computations in loops to be moved -outside the loop. - -@item -freduce-all-givs -@opindex freduce-all-givs -Forces all general-induction variables in loops to be -strength-reduced. - -@emph{Note:} When compiling programs written in Fortran, -@option{-fmove-all-movables} and @option{-freduce-all-givs} are enabled -by default when you use the optimizer. - These options may generate better or worse code; results are highly dependent on the structure of loops within the source code. -These two options are intended to be removed someday, once -they have helped determine the efficacy of various -approaches to improving loop optimizations. - -Please contact @w{@email{gcc@@gcc.gnu.org}}, and describe how use of -these options affects the performance of your production code. -Examples of code that runs @emph{slower} when these options are -@emph{enabled} are very valuable. - @item -fno-peephole @itemx -fno-peephole2 @opindex fno-peephole @@ -4950,7 +4957,7 @@ Disabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}. 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 +optimization. You must use @option{-fprofile-generate} both when compiling and when linking your program. The following options are enabled: @code{-fprofile-arcs}, @code{-fprofile-values}, @code{-fvpt}. @@ -5189,7 +5196,7 @@ Enabled with @option{-fprofile-use}. Unroll loops whose number of iterations can be determined at compile time or upon entry to the loop. @option{-funroll-loops} implies @option{-frerun-cse-after-loop}. It also turns on complete loop peeling -(i.e. complete removal of loops with small constant number of iterations). +(i.e.@: complete removal of loops with small constant number of iterations). This option makes code larger, and may or may not make it run faster. Enabled with @option{-fprofile-use}. @@ -5205,7 +5212,7 @@ the loop is entered. This usually makes programs run more slowly. @opindex fpeel-loops Peels the loops for that there is enough information that they do not roll much (from profile feedback). It also turns on complete loop peeling -(i.e. complete removal of loops with small constant number of iterations). +(i.e.@: complete removal of loops with small constant number of iterations). Enabled with @option{-fprofile-use}. @@ -5219,22 +5226,6 @@ at level @option{-O1} Move branches with loop invariant conditions out of the loop, with duplicates of the loop on both branches (modified according to result of the condition). -@item -fold-unroll-loops -@opindex fold-unroll-loops -Unroll loops whose number of iterations can be determined at compile -time or upon entry to the loop, using the old loop unroller whose loop -recognition is based on notes from frontend. @option{-fold-unroll-loops} implies -both @option{-fstrength-reduce} and @option{-frerun-cse-after-loop}. This -option makes code larger, and may or may not make it run faster. - -@item -fold-unroll-all-loops -@opindex fold-unroll-all-loops -Unroll all loops, even if their number of iterations is uncertain when -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 -fprefetch-loop-arrays @opindex fprefetch-loop-arrays If supported by the target machine, generate instructions to prefetch @@ -5510,7 +5501,7 @@ variable will then be made to alias every call-clobbered variable. @item max-aliased-vops -Maxiumum number of virtual operands allowed to represent aliases +Maximum number of virtual operands allowed to represent aliases before triggering the alias grouping heuristic. Alias grouping reduces compile times and memory consumption needed for aliasing at the expense of precision loss in alias information. @@ -6361,6 +6352,16 @@ based on the existence of the first. Here is a small example of its usage: crt0%O%s %:if-exists(crti%O%s) \ %:if-exists-else(crtbeginT%O%s crtbegin%O%s) @end smallexample + +@item @code{replace-outfile} +The @code{replace-outfile} spec function takes two arguments. It looks for the +first argument in the outfiles array and replaces it with the second argument. Here +is a small example of its usage: + +@smallexample +%@{fgnu-runtime:%:replace-outfile(-lobjc -lobjc-gnu)@} +@end smallexample + @end table @item %@{@code{S}@} @@ -8001,7 +8002,7 @@ Generate code for the H8S@. @item -mn @opindex mn Generate code for the H8S and H8/300H in the normal mode. This switch -must be used either with -mh or -ms. +must be used either with @option{-mh} or @option{-ms}. @item -ms2600 @opindex ms2600 @@ -9095,7 +9096,8 @@ the system. @item -msep-data Generate code that allows the data segment to be located in a different area of memory from the text segment. This allows for execute in place in -an environment without virtual memory management. This option implies -fPIC. +an environment without virtual memory management. This option implies +@option{-fPIC}. @item -mno-sep-data Generate code that assumes that the data segment follows the text segment. @@ -9104,7 +9106,7 @@ This is the default. @item -mid-shared-library Generate code that supports shared libraries via the library ID method. This allows for execute in place and shared libraries in an environment -without virtual memory management. This option implies -fPIC. +without virtual memory management. This option implies @option{-fPIC}. @item -mno-id-shared-library Generate code that doesn't assume ID based shared libraries are being used. @@ -10762,7 +10764,7 @@ the bottom (@option{-mbackchain}). Beside the different backchain location @option{-mkernel-backchain} also changes stack frame layout breaking the ABI. This option is intended to be used for code which internally needs a backchain but has -to get by with a limited stack size e.g. the linux kernel. +to get by with a limited stack size e.g.@: the linux kernel. Internal unwinding code not using DWARF-2 info has to be able to locate the return address of a function. That will be eased be the fact that the return address of a function is placed two words below the backchain @@ -10855,7 +10857,7 @@ Emit a warning if the current function exceeds the given frame size. Because this is a compile time check it doesn't need to be a real problem when the program runs. It is intended to identify functions which most probably cause a stack overflow. It is useful to be used in an environment with limited stack -size e.g. the linux kernel. +size e.g.@: the linux kernel. @item -mwarn-dynamicstack @opindex mwarn-dynamicstack @@ -12092,9 +12094,9 @@ The default without @option{-fpic} is @code{initial-exec}; with @item -fvisibility=@var{default|internal|hidden|protected} @opindex fvisibility Set the default ELF image symbol visibility to the specified option - all -symbols will be marked with this unless overrided within the code. +symbols will be marked with this unless overridden within the code. Using this feature can very substantially improve linking and -load times of shared object libraries, produce more optimised +load times of shared object libraries, produce more optimized code, provide near-perfect API export and prevent symbol clashes. It is @strong{strongly} recommended that you use this in any shared objects you distribute. @@ -12104,7 +12106,7 @@ available to be linked against from outside the shared object. @code{protected} and @code{internal} are pretty useless in real-world usage so the only other commonly used option will be @code{hidden}. The default if -fvisibility isn't specified is @code{default} ie; make every -symbol public - this causes the same behaviour as previous versions of +symbol public - this causes the same behavior as previous versions of GCC. A good explanation of the benefits offered by ensuring ELF @@ -12180,8 +12182,8 @@ localization information that allow GCC to work with different national conventions. GCC inspects the locale categories @env{LC_CTYPE} and @env{LC_MESSAGES} if it has been configured to do so. These locale categories can be set to any value supported by your -installation. A typical value is @samp{en_UK} for English in the United -Kingdom. +installation. A typical value is @samp{en_GB.UTF-8} for English in the United +Kingdom encoded in UTF-8. The @env{LC_CTYPE} environment variable specifies character classification. GCC uses it to determine the character boundaries in @@ -12420,8 +12422,8 @@ precompiled header to be ignored, please consider filing a bug report, see @ref{Bugs}. If you do use differing options when generating and using the -precompiled header, the actual behaviour will be a mixture of the -behaviour for the options. For instance, if you use @option{-g} to +precompiled header, the actual behavior will be a mixture of the +behavior for the options. For instance, if you use @option{-g} to generate the precompiled header but not when using it, you may or may not get debugging information for routines in the precompiled header. diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi index 0fe7c50eb8d..02bc0a6c3b2 100644 --- a/gcc/doc/md.texi +++ b/gcc/doc/md.texi @@ -771,16 +771,16 @@ instruction operands on a RISC machine. This is a slight variant on @code{register_operand} which works around a limitation in the machine-description reader. -@example +@smallexample (match_operand @var{n} "pmode_register_operand" @var{constraint}) -@end example +@end smallexample @noindent means exactly what -@example +@smallexample (match_operand:P @var{n} "register_operand" @var{constraint}) -@end example +@end smallexample @noindent would mean, if the machine-description reader accepted @samp{:P} @@ -5825,7 +5825,7 @@ instructions can be executed simultaneously. An instruction starts execution if its issue conditions are satisfied. If not, the instruction is stalled until its conditions are satisfied. Such @dfn{interlock (pipeline) delay} causes interruption of the fetching -of successor instructions (or demands nop instructions, e.g. for some +of successor instructions (or demands nop instructions, e.g.@: for some MIPS processors). There are two major kinds of interlock delays in modern processors. @@ -5840,7 +5840,7 @@ anti-dependence) delay between two instructions is given by a constant. In most cases this approach is adequate. The second kind of interlock delays is a reservation delay. The reservation delay means that two instructions under execution will be in need of shared -processors resources, i.e. buses, internal registers, and/or +processors resources, i.e.@: buses, internal registers, and/or functional units, which are reserved for some time. Taking this kind of delay into account is complex especially for modern @acronym{RISC} processors. @@ -5926,7 +5926,7 @@ to @code{define_cpu_unit}. The reservation of such units can be queried for an automaton state. The instruction scheduler never queries reservation of functional units for given automaton state. So as a rule, you don't need this construction. This construction could -be used for future code generation goals (e.g. to generate +be used for future code generation goals (e.g.@: to generate @acronym{VLIW} insn templates). @smallexample @@ -6071,7 +6071,7 @@ the string are separated by commas. defines an additional guard for the bypass. The function will get the two insns as parameters. If the function returns zero the bypass will be ignored for this case. The additional guard is necessary to -recognize complicated bypasses, e.g. when the consumer is only an address +recognize complicated bypasses, e.g.@: when the consumer is only an address of insn @samp{store} (not a stored value). @findex exclusion_set @@ -6105,7 +6105,7 @@ The first construction (@samp{exclusion_set}) means that each functional unit in the first string can not be reserved simultaneously with a unit whose name is in the second string and vice versa. For example, the construction is useful for describing processors -(e.g. some SPARC processors) with a fully pipelined floating point +(e.g.@: some SPARC processors) with a fully pipelined floating point functional unit which can execute simultaneously only single floating point insns or only double floating point insns. @@ -6248,7 +6248,7 @@ issued into the first pipeline unless it is reserved, otherwise they are issued into the second pipeline. Integer division and multiplication insns can be executed only in the second integer pipeline and their results are ready correspondingly in 8 and 4 -cycles. The integer division is not pipelined, i.e. the subsequent +cycles. The integer division is not pipelined, i.e.@: the subsequent integer division insn can not be issued until the current division insn finished. Floating point insns are fully pipelined and their results are ready in 3 cycles. Where the result of a floating point diff --git a/gcc/doc/passes.texi b/gcc/doc/passes.texi index 0ffeae757e9..00a53978a7d 100644 --- a/gcc/doc/passes.texi +++ b/gcc/doc/passes.texi @@ -79,7 +79,7 @@ usually most convenient to do this as each top level declaration or definition is seen. There is also a distinction to be made between generating functional code and generating complete debug information. The only thing that is absolutely required for functional code is that -function and data @emph{defintions} be passed to the middle-end. For +function and data @emph{definitions} be passed to the middle-end. For complete debug information, function, data and type declarations should all be passed as well. @@ -244,7 +244,7 @@ and is described by @code{pass_referenced_vars}. This pass rewrites the function such that it is in SSA form. After this pass, all @code{is_gimple_reg} variables will be referenced by -@code{SSA_NAME}, and all occurences of other variables will be +@code{SSA_NAME}, and all occurrences of other variables will be annotated with @code{VDEFS} and @code{VUSES}; phi nodes will have been inserted as necessary for each basic block. This pass is located in @file{tree-ssa.c} and is described by @code{pass_build_ssa}. @@ -540,11 +540,8 @@ are in @file{lcm.c}. @item Loop optimization -This pass moves constant expressions out of loops, -and optionally does strength-reduction and loop unrolling as well. -Its source files are @file{loop.c} and @file{unroll.c}, plus the header -@file{loop.h} used for communication between them. Loop unrolling uses -some functions in @file{integrate.c} and the header @file{integrate.h}. +This pass moves constant expressions out of loops, and optionally does +strength-reduction as well. The pass is located in @file{loop.c}. Loop dependency analysis routines are contained in @file{dependence.c}. This pass is seriously out-of-date and is supposed to be replaced by a new one described below in near future. diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi index 172ffd1a36e..8314bf65b50 100644 --- a/gcc/doc/sourcebuild.texi +++ b/gcc/doc/sourcebuild.texi @@ -1084,7 +1084,7 @@ Commands to check line counts are processed by default. Commands to check branch percentages and call return percentages are processed if the @command{run-gcov} command has arguments @code{branches} or @code{calls}, respectively. For example, the following specifies -checking both, as well as passing @code{-b} to @command{gcov}: +checking both, as well as passing @option{-b} to @command{gcov}: @smallexample @{ dg-final @{ run-gcov branches calls @{ -b sourcefile @} @} @} @@ -1216,10 +1216,10 @@ where @var{tsti} and @var{alti} are lists of options, with @var{tsti} used by the compiler under test and @var{alti} used by the alternate compiler. For example, with @code{[list [list @{-g -O0@} @{-O3@}] [list @{-fpic@} @{-fPIC -O2@}]]}, -the test is first built with @code{-g -O0} by the compiler under -test and with @code{-O3} by the alternate compiler. The test is -built a second time using @code{-fpic} by the compiler under test -and @code{-fPIC -O2} by the alternate compiler. +the test is first built with @option{-g -O0} by the compiler under +test and with @option{-O3} by the alternate compiler. The test is +built a second time using @option{-fpic} by the compiler under test +and @option{-fPIC -O2} by the alternate compiler. An alternate compiler is specified by defining an environment variable to be the full pathname of an installed compiler; for C diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index df72053313d..5d777c48229 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -154,8 +154,8 @@ are valid. Replacement options may not be the @code{--opt} style, they must be the @code{-opt} style. It is the intention of this macro to provide a mechanism for substitution that affects the multilibs chosen, such as one option that enables many options, some of which select -multilibs. Example nonsensical definition, where @code{-malt-abi}, -@code{-EB}, and @code{-mspoo} cause different multilibs to be chosen: +multilibs. Example nonsensical definition, where @option{-malt-abi}, +@option{-EB}, and @option{-mspoo} cause different multilibs to be chosen: @smallexample #define TARGET_OPTION_TRANSLATE_TABLE \ @@ -298,8 +298,8 @@ passes the string @option{-lgcc} to the linker. By default, if @code{ENABLE_SHARED_LIBGCC} is defined, the @code{LIBGCC_SPEC} is not directly used by the driver program but is instead modified to refer to different versions of @file{libgcc.a} -depending on the values of the command line flags @code{-static}, -@code{-shared}, @code{-static-libgcc}, and @code{-shared-libgcc}. On +depending on the values of the command line flags @option{-static}, +@option{-shared}, @option{-static-libgcc}, and @option{-shared-libgcc}. On targets where these modifications are inappropriate, define @code{REAL_LIBGCC_SPEC} instead. @code{REAL_LIBGCC_SPEC} tells the driver how to place a reference to @file{libgcc} on the link command @@ -4720,7 +4720,7 @@ the following macro. @defmac ENABLE_EXECUTE_STACK Define this macro if certain operations must be performed before executing code located on the stack. The macro should expand to a series of C -file-scope constructs (e.g. functions) and provide a unique entry point +file-scope constructs (e.g.@: functions) and provide a unique entry point named @code{__enable_execute_stack}. The target is responsible for emitting calls to the entry point in the code, for example from the @code{INITIALIZE_TRAMPOLINE} macro. @@ -5512,7 +5512,7 @@ for multiplications, @code{COSTS_N_INSNS (7)} for division and modulus operations, and @code{COSTS_N_INSNS (1)} for all other operations. When optimizing for code size, i.e@. when @code{optimize_size} is -non-zero, this target hook should be used to estimate the relative +nonzero, this target hook should be used to estimate the relative size cost of an expression, again relative to @code{COSTS_N_INSNS}. The hook returns true when all subexpressions of @var{x} have been @@ -5659,7 +5659,7 @@ pointer, or a stdio stream to write any debug output to. @var{verbose} is the verbose level provided by @option{-fsched-verbose-@var{n}}. @var{max_ready} is the maximum number of insns in the current scheduling region that can be live at the same time. This can be used to allocate -scratch space if it is needed, e.g. by @samp{TARGET_SCHED_REORDER}. +scratch space if it is needed, e.g.@: by @samp{TARGET_SCHED_REORDER}. @end deftypefn @deftypefn {Target Hook} void TARGET_SCHED_FINISH (FILE *@var{file}, int @var{verbose}) @@ -8398,7 +8398,7 @@ to perform initial processing of the @samp{dllimport} and @end deftypefn @defmac TARGET_DECLSPEC -Define this macro to a non-zero value if you want to treat +Define this macro to a nonzero value if you want to treat @code{__declspec(X)} as equivalent to @code{__attribute((X))}. By default, this behavior is enabled only for targets that define @code{TARGET_DLLIMPORT_DECL_ATTRIBUTES}. The current implementation @@ -9026,7 +9026,7 @@ within a structure, in much the same way as the @samp{__aligned__} and the behavior to the default. A subtlety for Microsoft Visual C/C++ style bit-field packing -(e.g. -mms-bitfields) for targets that support it: +(e.g.@: -mms-bitfields) for targets that support it: When a bit-field is inserted into a packed record, the whole size of the underlying type is used by one or more same-size adjacent bit-fields (that is, if its long:3, 32 bits is used in the record, @@ -9370,10 +9370,19 @@ system library's @code{pow}, @code{powf} or @code{powl} routines. The default value places no upper bound on the multiplication count. @end defmac -@deftypefn Macro void TARGET_EXTRA_INCLUDES (int @var{stdinc}) +@deftypefn Macro void TARGET_EXTRA_INCLUDES (const char *@var{sysroot}, const char *@var{iprefix}, int @var{stdinc}) This target hook should register any extra include files for the target. The parameter @var{stdinc} indicates if normal include files -are present. +are present. The parameter @var{sysroot} is the system root directory. +The parameter @var{iprefix} is the prefix for the gcc directory. +@end deftypefn + +@deftypefn Macro void TARGET_EXTRA_PRE_INCLUDES (const char *@var{sysroot}, const char *@var{iprefix}, int @var{stdinc}) +This target hook should register any extra include files for the +target before any standard headers. The parameter @var{stdinc} +indicates if normal include files are present. The parameter +@var{sysroot} is the system root directory. The parameter +@var{iprefix} is the prefix for the gcc directory. @end deftypefn @deftypefn Macro void TARGET_OPTF (char *@var{path}) @@ -9387,7 +9396,7 @@ that are different from @option{-I}. This target hook returns @code{true} if it is safe to use a local alias for a virtual function @var{fndecl} when constructing thunks, @code{false} otherwise. By default, the hook returns @code{true} for all -functions, if a target supports aliases (ie. defines +functions, if a target supports aliases (i.e.@: defines @code{ASM_OUTPUT_DEF}), @code{false} otherwise, @end deftypefn diff --git a/gcc/doc/tree-ssa.texi b/gcc/doc/tree-ssa.texi index 1c88e9f021c..311006d4c0f 100644 --- a/gcc/doc/tree-ssa.texi +++ b/gcc/doc/tree-ssa.texi @@ -152,7 +152,7 @@ a definition of @code{LANG_HOOKS_GIMPLIFY_EXPR}, call @code{tree_rest_of_compilation} to compile and output the function. You can tell the compiler to dump a C-like representation of the GIMPLE -form with the flag @code{-fdump-tree-gimple}. +form with the flag @option{-fdump-tree-gimple}. @node Temporaries @subsection Temporaries @@ -190,7 +190,7 @@ temporary. In general, expressions in GIMPLE consist of an operation and the appropriate number of simple operands; these operands must either be a -GIMPLE rvalue (@code{is_gimple_val}), i.e. a constant or a register +GIMPLE rvalue (@code{is_gimple_val}), i.e.@: a constant or a register variable. More complex operands are factored out into temporaries, so that @smallexample @@ -709,7 +709,7 @@ definitions. For globals, structures, and arrays, we can determine from a statement whether a variable of these types has a killing definition. If the variable does, then the statement is marked as having a @dfn{must definition} of that variable. However, if a statement is only -defining a part of the variable (ie. a field in a structure), or if we +defining a part of the variable (i.e.@: a field in a structure), or if we know that a statement might define the variable but we cannot say for sure, then we mark that statement as having a @dfn{may definition}. For instance, given @@ -1193,7 +1193,7 @@ marked as an alias tag and added to the alias set of TMT@. For instance, consider the following function: -@example +@smallexample foo (int i) @{ int *p, *q, a, b; @@ -1208,7 +1208,7 @@ foo (int i) a = b + 2; return *p; @} -@end example +@end smallexample After aliasing analysis has finished, the type memory tag for pointer @code{p} will have two aliases, namely variables @code{a} and @@ -1216,7 +1216,7 @@ pointer @code{p} will have two aliases, namely variables @code{a} and Every time pointer @code{p} is dereferenced, we want to mark the operation as a potential reference to @code{a} and @code{b}. -@example +@smallexample foo (int i) @{ int *p, a, b; @@ -1239,7 +1239,7 @@ foo (int i) # VUSE ; return *p_1; @} -@end example +@end smallexample In certain cases, the list of may aliases for a pointer may grow too large. This may cause an explosion in the number of virtual diff --git a/gcc/doc/trouble.texi b/gcc/doc/trouble.texi index a546183737c..90c4daacc5d 100644 --- a/gcc/doc/trouble.texi +++ b/gcc/doc/trouble.texi @@ -910,11 +910,11 @@ of instantiation. For example, consider struct A @{ template void f () @{ - foo (1); // 1 - int i = N; // 2 + foo (1); // @r{1} + int i = N; // @r{2} T t; - t.bar(); // 3 - foo (t); // 4 + t.bar(); // @r{3} + foo (t); // @r{4} @} static const int N; @@ -998,11 +998,11 @@ compiler will consequently produce the following error message: @end smallexample To make the code valid either use @code{this->f()}, or -@code{Base::f()}. Using the @code{-fpermissive} flag will also let +@code{Base::f()}. Using the @option{-fpermissive} flag will also let the compiler accept the code, by marking all function calls for which no declaration is visible at the time of definition of the template for later lookup at instantiation time, as if it were a dependent call. -We do not recommend using @code{-fpermissive} to work around invalid +We do not recommend using @option{-fpermissive} to work around invalid code, and it will also only catch cases where functions in base classes are called, not where variables in base classes are used (as in the example above). diff --git a/gcc/dominance.c b/gcc/dominance.c index 29232f99d3e..9ec9b3555cf 100644 --- a/gcc/dominance.c +++ b/gcc/dominance.c @@ -735,6 +735,32 @@ get_dominated_by (enum cdi_direction dir, basic_block bb, basic_block **bbs) return n; } +/* Find all basic blocks that are immediately dominated (in direction DIR) + by some block between N_REGION ones stored in REGION, except for blocks + in the REGION itself. The found blocks are stored to DOMS and their number + is returned. */ + +unsigned +get_dominated_by_region (enum cdi_direction dir, basic_block *region, + unsigned n_region, basic_block *doms) +{ + unsigned n_doms = 0, i; + basic_block dom; + + for (i = 0; i < n_region; i++) + region[i]->rbi->duplicated = 1; + for (i = 0; i < n_region; i++) + for (dom = first_dom_son (dir, region[i]); + dom; + dom = next_dom_son (dir, dom)) + if (!dom->rbi->duplicated) + doms[n_doms++] = dom; + for (i = 0; i < n_region; i++) + region[i]->rbi->duplicated = 0; + + return n_doms; +} + /* Redirect all edges pointing to BB to TO. */ void redirect_immediate_dominators (enum cdi_direction dir, basic_block bb, diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 8b60c26c17a..51b3681a0bf 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -2334,9 +2334,10 @@ dwarf2out_begin_prologue (unsigned int line ATTRIBUTE_UNUSED, const char *file ATTRIBUTE_UNUSED) { char label[MAX_ARTIFICIAL_LABEL_BYTES]; + char * dup_label; dw_fde_ref fde; - current_function_func_begin_label = 0; + current_function_func_begin_label = NULL; #ifdef TARGET_UNWIND_INFO /* ??? current_function_func_begin_label is also used by except.c @@ -2355,7 +2356,8 @@ dwarf2out_begin_prologue (unsigned int line ATTRIBUTE_UNUSED, current_function_funcdef_no); ASM_OUTPUT_DEBUG_LABEL (asm_out_file, FUNC_BEGIN_LABEL, current_function_funcdef_no); - current_function_func_begin_label = get_identifier (label); + dup_label = xstrdup (label); + current_function_func_begin_label = dup_label; #ifdef TARGET_UNWIND_INFO /* We can elide the fde allocation if we're not emitting debug info. */ @@ -2379,7 +2381,7 @@ dwarf2out_begin_prologue (unsigned int line ATTRIBUTE_UNUSED, /* Add the new FDE at the end of the fde_table. */ fde = &fde_table[fde_table_in_use++]; fde->decl = current_function_decl; - fde->dw_fde_begin = xstrdup (label); + fde->dw_fde_begin = dup_label; fde->dw_fde_current_label = NULL; fde->dw_fde_end = NULL; fde->dw_fde_cfi = NULL; @@ -10916,7 +10918,7 @@ gen_formal_parameter_die (tree node, dw_die_ref context_die) switch (TREE_CODE_CLASS (TREE_CODE (node))) { - case 'd': + case tcc_declaration: origin = decl_ultimate_origin (node); if (origin != NULL) add_abstract_origin_attribute (parm_die, origin); @@ -10937,7 +10939,7 @@ gen_formal_parameter_die (tree node, dw_die_ref context_die) break; - case 't': + case tcc_type: /* We were called with some kind of a ..._TYPE node. */ add_type_attribute (parm_die, node, 0, 0, context_die); break; @@ -12415,7 +12417,8 @@ force_type_die (tree type) static dw_die_ref setup_namespace_context (tree thing, dw_die_ref context_die) { - tree context = DECL_P (thing) ? DECL_CONTEXT (thing) : TYPE_CONTEXT (thing); + tree context = (DECL_P (thing) + ? DECL_CONTEXT (thing) : TYPE_CONTEXT (thing)); if (context && TREE_CODE (context) == NAMESPACE_DECL) /* Force out the namespace. */ context_die = force_decl_die (context); diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index ab721fe8aa7..ce597b086e6 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -194,7 +194,7 @@ static hashval_t reg_attrs_htab_hash (const void *); static int reg_attrs_htab_eq (const void *, const void *); static reg_attrs *get_reg_attrs (tree, int); static tree component_ref_for_mem_expr (tree); -static rtx gen_const_vector_0 (enum machine_mode); +static rtx gen_const_vector (enum machine_mode, int); static rtx gen_complex_constant_part (enum machine_mode, rtx, int); static void copy_rtx_if_shared_1 (rtx *orig); @@ -1592,7 +1592,7 @@ set_mem_attributes_minus_bitpos (rtx ref, tree t, int objectp, } /* If this is a constant, we know the alignment. */ - else if (TREE_CODE_CLASS (TREE_CODE (t)) == 'c') + else if (CONSTANT_CLASS_P (t)) { align = TYPE_ALIGN (type); #ifdef CONSTANT_ALIGNMENT @@ -5162,10 +5162,10 @@ init_emit (void) #endif } -/* Generate the constant 0. */ +/* Generate a vector constant for mode MODE and constant value CONSTANT. */ static rtx -gen_const_vector_0 (enum machine_mode mode) +gen_const_vector (enum machine_mode mode, int constant) { rtx tem; rtvec v; @@ -5177,28 +5177,44 @@ gen_const_vector_0 (enum machine_mode mode) v = rtvec_alloc (units); - /* We need to call this function after we to set CONST0_RTX first. */ - gcc_assert (CONST0_RTX (inner)); + /* We need to call this function after we set the scalar const_tiny_rtx + entries. */ + gcc_assert (const_tiny_rtx[constant][(int) inner]); for (i = 0; i < units; ++i) - RTVEC_ELT (v, i) = CONST0_RTX (inner); + RTVEC_ELT (v, i) = const_tiny_rtx[constant][(int) inner]; tem = gen_rtx_raw_CONST_VECTOR (mode, v); return tem; } /* Generate a vector like gen_rtx_raw_CONST_VEC, but use the zero vector when - all elements are zero. */ + all elements are zero, and the one vector when all elements are one. */ rtx gen_rtx_CONST_VECTOR (enum machine_mode mode, rtvec v) { - rtx inner_zero = CONST0_RTX (GET_MODE_INNER (mode)); + enum machine_mode inner = GET_MODE_INNER (mode); + int nunits = GET_MODE_NUNITS (mode); + rtx x; int i; - for (i = GET_MODE_NUNITS (mode) - 1; i >= 0; i--) - if (RTVEC_ELT (v, i) != inner_zero) - return gen_rtx_raw_CONST_VECTOR (mode, v); - return CONST0_RTX (mode); + /* Check to see if all of the elements have the same value. */ + x = RTVEC_ELT (v, nunits - 1); + for (i = nunits - 2; i >= 0; i--) + if (RTVEC_ELT (v, i) != x) + break; + + /* If the values are all the same, check to see if we can use one of the + standard constant vectors. */ + if (i == -1) + { + if (x == CONST0_RTX (inner)) + return CONST0_RTX (mode); + else if (x == CONST1_RTX (inner)) + return CONST1_RTX (mode); + } + + return gen_rtx_raw_CONST_VECTOR (mode, v); } /* Create some permanent unique rtl objects shared between all functions. @@ -5352,12 +5368,18 @@ init_emit_once (int line_numbers) for (mode = GET_CLASS_NARROWEST_MODE (MODE_VECTOR_INT); mode != VOIDmode; mode = GET_MODE_WIDER_MODE (mode)) - const_tiny_rtx[0][(int) mode] = gen_const_vector_0 (mode); + { + const_tiny_rtx[0][(int) mode] = gen_const_vector (mode, 0); + const_tiny_rtx[1][(int) mode] = gen_const_vector (mode, 1); + } for (mode = GET_CLASS_NARROWEST_MODE (MODE_VECTOR_FLOAT); mode != VOIDmode; mode = GET_MODE_WIDER_MODE (mode)) - const_tiny_rtx[0][(int) mode] = gen_const_vector_0 (mode); + { + const_tiny_rtx[0][(int) mode] = gen_const_vector (mode, 0); + const_tiny_rtx[1][(int) mode] = gen_const_vector (mode, 1); + } for (i = (int) CCmode; i < (int) MAX_MACHINE_MODE; ++i) if (GET_MODE_CLASS ((enum machine_mode) i) == MODE_CC) diff --git a/gcc/except.c b/gcc/except.c index 33344160338..e71fae2180d 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -2050,18 +2050,19 @@ sjlj_emit_function_exit (void) is inside the last basic block or after it. In the other case we need to emit to edge. */ gcc_assert (e->src->next_bb == EXIT_BLOCK_PTR); - for (insn = NEXT_INSN (BB_END (e->src)); insn; insn = NEXT_INSN (insn)) - if (insn == cfun->eh->sjlj_exit_after) - break; - if (insn) - insert_insn_on_edge (seq, e); - else + for (insn = BB_HEAD (e->src); ; insn = NEXT_INSN (insn)) { - insn = cfun->eh->sjlj_exit_after; - if (LABEL_P (insn)) - insn = NEXT_INSN (insn); - emit_insn_after (seq, insn); + if (insn == cfun->eh->sjlj_exit_after) + { + if (LABEL_P (insn)) + insn = NEXT_INSN (insn); + emit_insn_after (seq, insn); + return; + } + if (insn == BB_END (e->src)) + break; } + insert_insn_on_edge (seq, e); } } @@ -2931,7 +2932,7 @@ expand_builtin_eh_return_data_regno (tree arglist) if (TREE_CODE (which) != INTEGER_CST) { - error ("argument of `__builtin_eh_return_regno' must be constant"); + error ("argument of %<__builtin_eh_return_regno%> must be constant"); return constm1_rtx; } @@ -3487,8 +3488,6 @@ sjlj_size_of_call_site_table (void) static void dw2_output_call_site_table (void) { - const char *const function_start_lab - = IDENTIFIER_POINTER (current_function_func_begin_label); int n = cfun->eh->call_site_data_used; int i; @@ -3511,21 +3510,25 @@ dw2_output_call_site_table (void) /* ??? Perhaps use attr_length to choose data1 or data2 instead of data4 if the function is small enough. */ #ifdef HAVE_AS_LEB128 - dw2_asm_output_delta_uleb128 (reg_start_lab, function_start_lab, + dw2_asm_output_delta_uleb128 (reg_start_lab, + current_function_func_begin_label, "region %d start", i); dw2_asm_output_delta_uleb128 (reg_end_lab, reg_start_lab, "length"); if (cs->landing_pad) - dw2_asm_output_delta_uleb128 (landing_pad_lab, function_start_lab, + dw2_asm_output_delta_uleb128 (landing_pad_lab, + current_function_func_begin_label, "landing pad"); else dw2_asm_output_data_uleb128 (0, "landing pad"); #else - dw2_asm_output_delta (4, reg_start_lab, function_start_lab, + dw2_asm_output_delta (4, reg_start_lab, + current_function_func_begin_label, "region %d start", i); dw2_asm_output_delta (4, reg_end_lab, reg_start_lab, "length"); if (cs->landing_pad) - dw2_asm_output_delta (4, landing_pad_lab, function_start_lab, + dw2_asm_output_delta (4, landing_pad_lab, + current_function_func_begin_label, "landing pad"); else dw2_asm_output_data (4, 0, "landing pad"); diff --git a/gcc/expmed.c b/gcc/expmed.c index fe9aeb5c4c9..232381f2c5a 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -2247,6 +2247,7 @@ synth_mult (struct algorithm *alg_out, unsigned HOST_WIDE_INT t, /* Indicate that no algorithm is yet found. If no algorithm is found, this value will be returned and indicate failure. */ alg_out->cost.cost = cost_limit->cost + 1; + alg_out->cost.latency = cost_limit->latency + 1; if (cost_limit->cost < 0 || (cost_limit->cost == 0 && cost_limit->latency <= 0)) @@ -2516,15 +2517,15 @@ synth_mult (struct algorithm *alg_out, unsigned HOST_WIDE_INT t, } } + /* If best_cost has not decreased, we have not found any algorithm. */ + if (!CHEAPER_MULT_COST (&best_cost, cost_limit)) + return; + /* If we are getting a too long sequence for `struct algorithm' to record, make this search fail. */ if (best_alg->ops == MAX_BITS_PER_WORD) return; - /* If best_cost has not decreased, we have not found any algorithm. */ - if (!CHEAPER_MULT_COST (&best_cost, cost_limit)) - return; - /* Copy the algorithm from temporary space to the space at alg_out. We avoid using structure assignment because the majority of best_alg is normally undefined, and this is a critical function. */ @@ -3764,7 +3765,19 @@ expand_divmod (int rem_flag, enum tree_code code, enum machine_mode mode, if (remainder) return gen_lowpart (mode, remainder); } - quotient = expand_sdiv_pow2 (compute_mode, op0, abs_d); + + if (sdiv_pow2_cheap[compute_mode] + && ((sdiv_optab->handlers[compute_mode].insn_code + != CODE_FOR_nothing) + || (sdivmod_optab->handlers[compute_mode].insn_code + != CODE_FOR_nothing))) + quotient = expand_divmod (0, TRUNC_DIV_EXPR, + compute_mode, op0, + gen_int_mode (abs_d, + compute_mode), + NULL_RTX, 0); + else + quotient = expand_sdiv_pow2 (compute_mode, op0, abs_d); /* We have computed OP0 / abs(OP1). If OP1 is negative, negate the quotient. */ diff --git a/gcc/expr.c b/gcc/expr.c index 40beef3413e..da8304a9708 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -3527,7 +3527,7 @@ expand_assignment (tree to, tree from, int want_value) src = from; STRIP_NOPS (src); if (TREE_CODE (TREE_TYPE (src)) != INTEGER_TYPE - || TREE_CODE_CLASS (TREE_CODE (src)) != '2') + || !BINARY_CLASS_P (src)) break; op0 = TREE_OPERAND (src, 0); @@ -5755,14 +5755,14 @@ safe_from_p (rtx x, tree exp, int top_p) /* Now look at our tree code and possibly recurse. */ switch (TREE_CODE_CLASS (TREE_CODE (exp))) { - case 'd': + case tcc_declaration: exp_rtl = DECL_RTL_IF_SET (exp); break; - case 'c': + case tcc_constant: return 1; - case 'x': + case tcc_exceptional: if (TREE_CODE (exp) == TREE_LIST) { while (1) @@ -5781,7 +5781,7 @@ safe_from_p (rtx x, tree exp, int top_p) else return 0; - case 's': + case tcc_statement: /* The only case we look at here is the DECL_INITIAL inside a DECL_EXPR. */ return (TREE_CODE (exp) != DECL_EXPR @@ -5789,17 +5789,17 @@ safe_from_p (rtx x, tree exp, int top_p) || !DECL_INITIAL (DECL_EXPR_DECL (exp)) || safe_from_p (x, DECL_INITIAL (DECL_EXPR_DECL (exp)), 0)); - case '2': - case '<': + case tcc_binary: + case tcc_comparison: if (!safe_from_p (x, TREE_OPERAND (exp, 1), 0)) return 0; /* Fall through. */ - case '1': + case tcc_unary: return safe_from_p (x, TREE_OPERAND (exp, 0), 0); - case 'e': - case 'r': + case tcc_expression: + case tcc_reference: /* Now do code-specific tests. EXP_RTL is set to any rtx we find in the expression. If it is set, we conflict iff we are that rtx or both are in memory. Otherwise, we check all operands of the @@ -5872,6 +5872,11 @@ safe_from_p (rtx x, tree exp, int top_p) >= (unsigned int) LAST_AND_UNUSED_TREE_CODE && !lang_hooks.safe_from_p (x, exp)) return 0; + break; + + case tcc_type: + /* Should never get a type here. */ + gcc_unreachable (); } /* If we have an rtl, find any enclosed object. Then see if we conflict @@ -6048,12 +6053,12 @@ expand_operands (tree exp0, tree exp1, rtx target, rtx *op0, rtx *op1, } -/* A subroutine of expand_expr. Evaluate the address of EXP. +/* A subroutine of expand_expr_addr_expr. Evaluate the address of EXP. The TARGET, TMODE and MODIFIER arguments are as for expand_expr. */ static rtx -expand_expr_addr_expr (tree exp, rtx target, enum machine_mode tmode, - enum expand_modifier modifier) +expand_expr_addr_expr_1 (tree exp, rtx target, enum machine_mode tmode, + enum expand_modifier modifier) { rtx result, subtarget; tree inner, offset; @@ -6068,7 +6073,7 @@ expand_expr_addr_expr (tree exp, rtx target, enum machine_mode tmode, generating ADDR_EXPR of something that isn't an LVALUE. The only exception here is STRING_CST. */ if (TREE_CODE (exp) == CONSTRUCTOR - || TREE_CODE_CLASS (TREE_CODE (exp)) == 'c') + || CONSTANT_CLASS_P (exp)) return XEXP (output_constant_def (exp, 0), 0); /* Everything must be something allowed by is_gimple_addressable. */ @@ -6080,7 +6085,7 @@ expand_expr_addr_expr (tree exp, rtx target, enum machine_mode tmode, case CONST_DECL: /* Recurse and make the output_constant_def clause above handle this. */ - return expand_expr_addr_expr (DECL_INITIAL (exp), target, + return expand_expr_addr_expr_1 (DECL_INITIAL (exp), target, tmode, modifier); case REALPART_EXPR: @@ -6140,7 +6145,7 @@ expand_expr_addr_expr (tree exp, rtx target, enum machine_mode tmode, gcc_assert (inner != exp); subtarget = offset || bitpos ? NULL_RTX : target; - result = expand_expr_addr_expr (inner, subtarget, tmode, modifier); + result = expand_expr_addr_expr_1 (inner, subtarget, tmode, modifier); if (tmode == VOIDmode) { @@ -6181,6 +6186,33 @@ expand_expr_addr_expr (tree exp, rtx target, enum machine_mode tmode, return result; } +/* A subroutine of expand_expr. Evaluate EXP, which is an ADDR_EXPR. + The TARGET, TMODE and MODIFIER arguments are as for expand_expr. */ + +static rtx +expand_expr_addr_expr (tree exp, rtx target, enum machine_mode tmode, + enum expand_modifier modifier) +{ + enum machine_mode rmode; + rtx result; + + result = expand_expr_addr_expr_1 (TREE_OPERAND (exp, 0), target, + tmode, modifier); + + /* Despite expand_expr claims concerning ignoring TMODE when not + strictly convenient, stuff breaks if we don't honor it. */ + if (tmode == VOIDmode) + tmode = TYPE_MODE (TREE_TYPE (exp)); + rmode = GET_MODE (result); + if (rmode == VOIDmode) + rmode = tmode; + if (rmode != tmode) + result = convert_memory_address (tmode, result); + + return result; +} + + /* expand_expr: generate code for computing expression EXP. An rtx for the computed value is returned. The value is never null. In the case of a void EXP, const0_rtx is returned. @@ -6373,12 +6405,13 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, return const0_rtx; } - if (TREE_CODE_CLASS (code) == '1' || code == COMPONENT_REF - || code == INDIRECT_REF) + if (TREE_CODE_CLASS (code) == tcc_unary + || code == COMPONENT_REF || code == INDIRECT_REF) return expand_expr (TREE_OPERAND (exp, 0), const0_rtx, VOIDmode, modifier); - else if (TREE_CODE_CLASS (code) == '2' || TREE_CODE_CLASS (code) == '<' + else if (TREE_CODE_CLASS (code) == tcc_binary + || TREE_CODE_CLASS (code) == tcc_comparison || code == ARRAY_REF || code == ARRAY_RANGE_REF) { expand_expr (TREE_OPERAND (exp, 0), const0_rtx, VOIDmode, modifier); @@ -8064,8 +8097,7 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, return const0_rtx; case ADDR_EXPR: - return expand_expr_addr_expr (TREE_OPERAND (exp, 0), target, - tmode, modifier); + return expand_expr_addr_expr (exp, target, tmode, modifier); /* COMPLEX type for Extended Pascal & Fortran */ case COMPLEX_EXPR: @@ -8273,20 +8305,31 @@ is_aligning_offset (tree offset, tree exp) tree string_constant (tree arg, tree *ptr_offset) { + tree array, offset; STRIP_NOPS (arg); - if (TREE_CODE (arg) == ADDR_EXPR - && TREE_CODE (TREE_OPERAND (arg, 0)) == STRING_CST) - { - *ptr_offset = size_zero_node; - return TREE_OPERAND (arg, 0); - } - if (TREE_CODE (arg) == ADDR_EXPR - && TREE_CODE (TREE_OPERAND (arg, 0)) == ARRAY_REF - && TREE_CODE (TREE_OPERAND (TREE_OPERAND (arg, 0), 0)) == STRING_CST) + if (TREE_CODE (arg) == ADDR_EXPR) { - *ptr_offset = convert (sizetype, TREE_OPERAND (TREE_OPERAND (arg, 0), 1)); - return TREE_OPERAND (TREE_OPERAND (arg, 0), 0); + if (TREE_CODE (TREE_OPERAND (arg, 0)) == STRING_CST) + { + *ptr_offset = size_zero_node; + return TREE_OPERAND (arg, 0); + } + else if (TREE_CODE (TREE_OPERAND (arg, 0)) == VAR_DECL) + { + array = TREE_OPERAND (arg, 0); + offset = size_zero_node; + } + else if (TREE_CODE (TREE_OPERAND (arg, 0)) == ARRAY_REF) + { + array = TREE_OPERAND (TREE_OPERAND (arg, 0), 0); + offset = TREE_OPERAND (TREE_OPERAND (arg, 0), 1); + if (TREE_CODE (array) != STRING_CST + && TREE_CODE (array) != VAR_DECL) + return 0; + } + else + return 0; } else if (TREE_CODE (arg) == PLUS_EXPR) { @@ -8297,17 +8340,62 @@ string_constant (tree arg, tree *ptr_offset) STRIP_NOPS (arg1); if (TREE_CODE (arg0) == ADDR_EXPR - && TREE_CODE (TREE_OPERAND (arg0, 0)) == STRING_CST) + && (TREE_CODE (TREE_OPERAND (arg0, 0)) == STRING_CST + || TREE_CODE (TREE_OPERAND (arg0, 0)) == VAR_DECL)) { - *ptr_offset = convert (sizetype, arg1); - return TREE_OPERAND (arg0, 0); + array = TREE_OPERAND (arg0, 0); + offset = arg1; } else if (TREE_CODE (arg1) == ADDR_EXPR - && TREE_CODE (TREE_OPERAND (arg1, 0)) == STRING_CST) + && (TREE_CODE (TREE_OPERAND (arg1, 0)) == STRING_CST + || TREE_CODE (TREE_OPERAND (arg1, 0)) == VAR_DECL)) { - *ptr_offset = convert (sizetype, arg0); - return TREE_OPERAND (arg1, 0); + array = TREE_OPERAND (arg1, 0); + offset = arg0; } + else + return 0; + } + else + return 0; + + if (TREE_CODE (array) == STRING_CST) + { + *ptr_offset = convert (sizetype, offset); + return array; + } + else if (TREE_CODE (array) == VAR_DECL) + { + int length; + + /* Variables initialized to string literals can be handled too. */ + if (DECL_INITIAL (array) == NULL_TREE + || TREE_CODE (DECL_INITIAL (array)) != STRING_CST) + return 0; + + /* If they are read-only, non-volatile and bind locally. */ + if (! TREE_READONLY (array) + || TREE_SIDE_EFFECTS (array) + || ! targetm.binds_local_p (array)) + return 0; + + /* Avoid const char foo[4] = "abcde"; */ + if (DECL_SIZE_UNIT (array) == NULL_TREE + || TREE_CODE (DECL_SIZE_UNIT (array)) != INTEGER_CST + || (length = TREE_STRING_LENGTH (DECL_INITIAL (array))) <= 0 + || compare_tree_int (DECL_SIZE_UNIT (array), length) < 0) + return 0; + + /* If variable is bigger than the string literal, OFFSET must be constant + and inside of the bounds of the string literal. */ + offset = convert (sizetype, offset); + if (compare_tree_int (DECL_SIZE_UNIT (array), length) > 0 + && (! host_integerp (offset, 1) + || compare_tree_int (offset, length) >= 0)) + return 0; + + *ptr_offset = offset; + return DECL_INITIAL (array); } return 0; @@ -8822,6 +8910,6 @@ const_vector_from_tree (tree exp) for (; i < units; ++i) RTVEC_ELT (v, i) = CONST0_RTX (inner); - return gen_rtx_raw_CONST_VECTOR (mode, v); + return gen_rtx_CONST_VECTOR (mode, v); } #include "gt-expr.h" diff --git a/gcc/final.c b/gcc/final.c index 3893c8f47b9..9b87e8f82f2 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -3085,61 +3085,66 @@ output_asm_insn (const char *template, rtx *operands) else if (ISALPHA (*p)) { int letter = *p++; - c = atoi (p); - - if (! ISDIGIT (*p)) - output_operand_lossage ("operand number missing after %%-letter"); - else if (this_is_asm_operands - && (c < 0 || (unsigned int) c >= insn_noperands)) + unsigned long opnum; + char *endptr; + + opnum = strtoul (p, &endptr, 10); + + if (endptr == p) + output_operand_lossage ("operand number missing " + "after %%-letter"); + else if (this_is_asm_operands && opnum >= insn_noperands) output_operand_lossage ("operand number out of range"); else if (letter == 'l') - output_asm_label (operands[c]); + output_asm_label (operands[opnum]); else if (letter == 'a') - output_address (operands[c]); + output_address (operands[opnum]); else if (letter == 'c') { - if (CONSTANT_ADDRESS_P (operands[c])) - output_addr_const (asm_out_file, operands[c]); + if (CONSTANT_ADDRESS_P (operands[opnum])) + output_addr_const (asm_out_file, operands[opnum]); else - output_operand (operands[c], 'c'); + output_operand (operands[opnum], 'c'); } else if (letter == 'n') { - if (GET_CODE (operands[c]) == CONST_INT) + if (GET_CODE (operands[opnum]) == CONST_INT) fprintf (asm_out_file, HOST_WIDE_INT_PRINT_DEC, - - INTVAL (operands[c])); + - INTVAL (operands[opnum])); else { putc ('-', asm_out_file); - output_addr_const (asm_out_file, operands[c]); + output_addr_const (asm_out_file, operands[opnum]); } } else - output_operand (operands[c], letter); + output_operand (operands[opnum], letter); - if (!opoutput[c]) - oporder[ops++] = c; - opoutput[c] = 1; + if (!opoutput[opnum]) + oporder[ops++] = opnum; + opoutput[opnum] = 1; - while (ISDIGIT (c = *p)) - p++; + p = endptr; + c = *p; } /* % followed by a digit outputs an operand the default way. */ else if (ISDIGIT (*p)) { - c = atoi (p); - if (this_is_asm_operands - && (c < 0 || (unsigned int) c >= insn_noperands)) + unsigned long opnum; + char *endptr; + + opnum = strtoul (p, &endptr, 10); + if (this_is_asm_operands && opnum >= insn_noperands) output_operand_lossage ("operand number out of range"); else - output_operand (operands[c], 0); + output_operand (operands[opnum], 0); - if (!opoutput[c]) - oporder[ops++] = c; - opoutput[c] = 1; + if (!opoutput[opnum]) + oporder[ops++] = opnum; + opoutput[opnum] = 1; - while (ISDIGIT (c = *p)) - p++; + p = endptr; + c = *p; } /* % followed by punctuation: output something for that punctuation character alone, with no operand. diff --git a/gcc/fix-header.c b/gcc/fix-header.c index 9bd79d404ce..4e4c8dc9692 100644 --- a/gcc/fix-header.c +++ b/gcc/fix-header.c @@ -82,9 +82,19 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "errors.h" #ifdef TARGET_EXTRA_INCLUDES -static void hook_void_int(int u ATTRIBUTE_UNUSED) { } +void TARGET_EXTRA_INCLUDES (const char *sysroot ATTRIBUTE_UNUSED, + const char *iprefix ATTRIBUTE_UNUSED, + int stdinc ATTRIBUTE_UNUSED) +{ +} +#endif -struct target_c_incpath_s target_c_incpath = { hook_void_int }; +#ifdef TARGET_EXTRA_PRE_INCLUDES +void TARGET_EXTRA_PRE_INCLUDES (const char *sysroot ATTRIBUTE_UNUSED, + const char *iprefix ATTRIBUTE_UNUSED, + int stdinc ATTRIBUTE_UNUSED) +{ +} #endif struct line_maps line_table; diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 10cdb69b487..25c84a45914 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -191,11 +191,11 @@ decode (HOST_WIDE_INT *words, unsigned HOST_WIDE_INT *low, indicates whether constant overflow has already occurred. We force T's value to be within range of T's type (by setting to 0 or 1 all the bits outside the type's range). We set TREE_OVERFLOWED if, - OVERFLOWED is non-zero, + OVERFLOWED is nonzero, or OVERFLOWABLE is >0 and signed overflow occurs or OVERFLOWABLE is <0 and any overflow occurs We set TREE_CONSTANT_OVERFLOWED if, - CONST_OVERFLOWED is non-zero + CONST_OVERFLOWED is nonzero or we set TREE_OVERFLOWED. We return either the original T, or a copy. */ @@ -2281,7 +2281,7 @@ combine_comparisons (enum tree_code code, enum tree_code lcode, static int truth_value_p (enum tree_code code) { - return (TREE_CODE_CLASS (code) == '<' + return (TREE_CODE_CLASS (code) == tcc_comparison || code == TRUTH_AND_EXPR || code == TRUTH_ANDIF_EXPR || code == TRUTH_OR_EXPR || code == TRUTH_ORIF_EXPR || code == TRUTH_XOR_EXPR || code == TRUTH_NOT_EXPR); @@ -2420,7 +2420,7 @@ operand_equal_p (tree arg0, tree arg1, unsigned int flags) switch (TREE_CODE_CLASS (TREE_CODE (arg0))) { - case '1': + case tcc_unary: /* Two conversions are equal only if signedness and modes match. */ switch (TREE_CODE (arg0)) { @@ -2441,8 +2441,8 @@ operand_equal_p (tree arg0, tree arg1, unsigned int flags) return operand_equal_p (TREE_OPERAND (arg0, 0), TREE_OPERAND (arg1, 0), flags); - case '<': - case '2': + case tcc_comparison: + case tcc_binary: if (operand_equal_p (TREE_OPERAND (arg0, 0), TREE_OPERAND (arg1, 0), flags) && operand_equal_p (TREE_OPERAND (arg0, 1), @@ -2456,7 +2456,7 @@ operand_equal_p (tree arg0, tree arg1, unsigned int flags) && operand_equal_p (TREE_OPERAND (arg0, 1), TREE_OPERAND (arg1, 0), flags)); - case 'r': + case tcc_reference: /* If either of the pointer (or reference) expressions we are dereferencing contain a side effect, these cannot be equal. */ if (TREE_SIDE_EFFECTS (arg0) @@ -2503,7 +2503,7 @@ operand_equal_p (tree arg0, tree arg1, unsigned int flags) return 0; } - case 'e': + case tcc_expression: switch (TREE_CODE (arg0)) { case ADDR_EXPR: @@ -2570,7 +2570,7 @@ operand_equal_p (tree arg0, tree arg1, unsigned int flags) return 0; } - case 'd': + case tcc_declaration: /* Consider __builtin_sqrt equal to sqrt. */ return (TREE_CODE (arg0) == FUNCTION_DECL && DECL_BUILT_IN (arg0) && DECL_BUILT_IN (arg1) @@ -2652,17 +2652,17 @@ static int twoval_comparison_p (tree arg, tree *cval1, tree *cval2, int *save_p) { enum tree_code code = TREE_CODE (arg); - char class = TREE_CODE_CLASS (code); + enum tree_code_class class = TREE_CODE_CLASS (code); - /* We can handle some of the 'e' cases here. */ - if (class == 'e' && code == TRUTH_NOT_EXPR) - class = '1'; - else if (class == 'e' + /* We can handle some of the tcc_expression cases here. */ + if (class == tcc_expression && code == TRUTH_NOT_EXPR) + class = tcc_unary; + else if (class == tcc_expression && (code == TRUTH_ANDIF_EXPR || code == TRUTH_ORIF_EXPR || code == COMPOUND_EXPR)) - class = '2'; + class = tcc_binary; - else if (class == 'e' && code == SAVE_EXPR + else if (class == tcc_expression && code == SAVE_EXPR && ! TREE_SIDE_EFFECTS (TREE_OPERAND (arg, 0))) { /* If we've already found a CVAL1 or CVAL2, this expression is @@ -2670,24 +2670,24 @@ twoval_comparison_p (tree arg, tree *cval1, tree *cval2, int *save_p) if (*cval1 || *cval2) return 0; - class = '1'; + class = tcc_unary; *save_p = 1; } switch (class) { - case '1': + case tcc_unary: return twoval_comparison_p (TREE_OPERAND (arg, 0), cval1, cval2, save_p); - case '2': + case tcc_binary: return (twoval_comparison_p (TREE_OPERAND (arg, 0), cval1, cval2, save_p) && twoval_comparison_p (TREE_OPERAND (arg, 1), cval1, cval2, save_p)); - case 'c': + case tcc_constant: return 1; - case 'e': + case tcc_expression: if (code == COND_EXPR) return (twoval_comparison_p (TREE_OPERAND (arg, 0), cval1, cval2, save_p) @@ -2697,7 +2697,7 @@ twoval_comparison_p (tree arg, tree *cval1, tree *cval2, int *save_p) cval1, cval2, save_p)); return 0; - case '<': + case tcc_comparison: /* First see if we can handle the first operand, then the second. For the second operand, we know *CVAL1 can't be zero. It must be that one side of the comparison is each of the values; test for the @@ -2745,30 +2745,30 @@ eval_subst (tree arg, tree old0, tree new0, tree old1, tree new1) { tree type = TREE_TYPE (arg); enum tree_code code = TREE_CODE (arg); - char class = TREE_CODE_CLASS (code); + enum tree_code_class class = TREE_CODE_CLASS (code); - /* We can handle some of the 'e' cases here. */ - if (class == 'e' && code == TRUTH_NOT_EXPR) - class = '1'; - else if (class == 'e' + /* We can handle some of the tcc_expression cases here. */ + if (class == tcc_expression && code == TRUTH_NOT_EXPR) + class = tcc_unary; + else if (class == tcc_expression && (code == TRUTH_ANDIF_EXPR || code == TRUTH_ORIF_EXPR)) - class = '2'; + class = tcc_binary; switch (class) { - case '1': + case tcc_unary: return fold (build1 (code, type, eval_subst (TREE_OPERAND (arg, 0), old0, new0, old1, new1))); - case '2': + case tcc_binary: return fold (build2 (code, type, eval_subst (TREE_OPERAND (arg, 0), old0, new0, old1, new1), eval_subst (TREE_OPERAND (arg, 1), old0, new0, old1, new1))); - case 'e': + case tcc_expression: switch (code) { case SAVE_EXPR: @@ -2790,7 +2790,7 @@ eval_subst (tree arg, tree old0, tree new0, tree old1, tree new1) } /* Fall through - ??? */ - case '<': + case tcc_comparison: { tree arg0 = TREE_OPERAND (arg, 0); tree arg1 = TREE_OPERAND (arg, 1); @@ -2890,7 +2890,7 @@ invert_truthvalue (tree arg) floating-point non-equality comparisons, in which case we just enclose a TRUTH_NOT_EXPR around what we have. */ - if (TREE_CODE_CLASS (code) == '<') + if (TREE_CODE_CLASS (code) == tcc_comparison) { tree op_type = TREE_TYPE (TREE_OPERAND (arg, 0)); if (FLOAT_TYPE_P (op_type) @@ -3413,7 +3413,7 @@ simple_operand_p (tree exp) == TYPE_MODE (TREE_TYPE (TREE_OPERAND (exp, 0))))) exp = TREE_OPERAND (exp, 0); - return (TREE_CODE_CLASS (TREE_CODE (exp)) == 'c' + return (CONSTANT_CLASS_P (exp) || (DECL_P (exp) && ! TREE_ADDRESSABLE (exp) && ! TREE_THIS_VOLATILE (exp) @@ -3484,7 +3484,7 @@ range_binop (enum tree_code code, tree type, tree arg0, int upper0_p, return TREE_CODE (tem) == INTEGER_CST ? tem : 0; } - if (TREE_CODE_CLASS (code) != '<') + if (TREE_CODE_CLASS (code) != tcc_comparison) return 0; /* Set SGN[01] to -1 if ARG[01] is a lower bound, 1 for upper, and 0 @@ -3555,13 +3555,13 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh) { if (first_rtl_op (code) > 0) arg0 = TREE_OPERAND (exp, 0); - if (TREE_CODE_CLASS (code) == '<' - || TREE_CODE_CLASS (code) == '1' - || TREE_CODE_CLASS (code) == '2') + if (TREE_CODE_CLASS (code) == tcc_comparison + || TREE_CODE_CLASS (code) == tcc_unary + || TREE_CODE_CLASS (code) == tcc_binary) arg0_type = TREE_TYPE (arg0); - if (TREE_CODE_CLASS (code) == '2' - || TREE_CODE_CLASS (code) == '<' - || (TREE_CODE_CLASS (code) == 'e' + if (TREE_CODE_CLASS (code) == tcc_binary + || TREE_CODE_CLASS (code) == tcc_comparison + || (TREE_CODE_CLASS (code) == tcc_expression && TREE_CODE_LENGTH (code) > 1)) arg1 = TREE_OPERAND (exp, 1); } @@ -4162,10 +4162,17 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2) switch (comp_code) { case EQ_EXPR: + case UNEQ_EXPR: tem = fold_convert (arg1_type, arg1); return pedantic_non_lvalue (fold_convert (type, negate_expr (tem))); case NE_EXPR: + case LTGT_EXPR: return pedantic_non_lvalue (fold_convert (type, arg1)); + case UNGE_EXPR: + case UNGT_EXPR: + if (flag_trapping_math) + break; + /* Fall through. */ case GE_EXPR: case GT_EXPR: if (TYPE_UNSIGNED (TREE_TYPE (arg1))) @@ -4173,6 +4180,10 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2) (TREE_TYPE (arg1)), arg1); tem = fold (build1 (ABS_EXPR, TREE_TYPE (arg1), arg1)); return pedantic_non_lvalue (fold_convert (type, tem)); + case UNLE_EXPR: + case UNLT_EXPR: + if (flag_trapping_math) + break; case LE_EXPR: case LT_EXPR: if (TYPE_UNSIGNED (TREE_TYPE (arg1))) @@ -4181,7 +4192,8 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2) tem = fold (build1 (ABS_EXPR, TREE_TYPE (arg1), arg1)); return negate_expr (fold_convert (type, tem)); default: - gcc_unreachable (); + gcc_assert (TREE_CODE_CLASS (comp_code) == tcc_comparison); + break; } /* A != 0 ? A : 0 is simply A, unless A is -0. Likewise @@ -4245,6 +4257,8 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2) return pedantic_non_lvalue (fold_convert (type, arg1)); case LE_EXPR: case LT_EXPR: + case UNLE_EXPR: + case UNLT_EXPR: /* In C++ a ?: expression can be an lvalue, so put the operand which will be used if they are equal first so that we can convert this back to the @@ -4253,31 +4267,37 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2) { comp_op0 = fold_convert (comp_type, comp_op0); comp_op1 = fold_convert (comp_type, comp_op1); - tem = fold (build2 (MIN_EXPR, comp_type, - (comp_code == LE_EXPR - ? comp_op0 : comp_op1), - (comp_code == LE_EXPR - ? comp_op1 : comp_op0))); + tem = (comp_code == LE_EXPR || comp_code == UNLE_EXPR) + ? fold (build2 (MIN_EXPR, comp_type, comp_op0, comp_op1)) + : fold (build2 (MIN_EXPR, comp_type, comp_op1, comp_op0)); return pedantic_non_lvalue (fold_convert (type, tem)); } break; case GE_EXPR: case GT_EXPR: + case UNGE_EXPR: + case UNGT_EXPR: if (!HONOR_NANS (TYPE_MODE (TREE_TYPE (arg1)))) { comp_op0 = fold_convert (comp_type, comp_op0); comp_op1 = fold_convert (comp_type, comp_op1); - tem = fold (build2 (MAX_EXPR, comp_type, - (comp_code == GE_EXPR - ? comp_op0 : comp_op1), - (comp_code == GE_EXPR - ? comp_op1 : comp_op0))); - tem = fold (build2 (MAX_EXPR, comp_type, comp_op0, comp_op1)); + tem = (comp_code == GE_EXPR || comp_code == UNGE_EXPR) + ? fold (build2 (MAX_EXPR, comp_type, comp_op0, comp_op1)) + : fold (build2 (MAX_EXPR, comp_type, comp_op1, comp_op0)); return pedantic_non_lvalue (fold_convert (type, tem)); } break; + case UNEQ_EXPR: + if (!HONOR_NANS (TYPE_MODE (TREE_TYPE (arg1)))) + return pedantic_non_lvalue (fold_convert (type, arg2)); + break; + case LTGT_EXPR: + if (!HONOR_NANS (TYPE_MODE (TREE_TYPE (arg1)))) + return pedantic_non_lvalue (fold_convert (type, arg1)); + break; default: - gcc_unreachable (); + gcc_assert (TREE_CODE_CLASS (comp_code) == tcc_comparison); + break; } } @@ -4549,7 +4569,8 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs) rcode = NE_EXPR; } - if (TREE_CODE_CLASS (lcode) != '<' || TREE_CODE_CLASS (rcode) != '<') + if (TREE_CODE_CLASS (lcode) != tcc_comparison + || TREE_CODE_CLASS (rcode) != tcc_comparison) return 0; ll_arg = TREE_OPERAND (lhs, 0); @@ -4877,12 +4898,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"); + warning ("% of unmatched not-equal tests is always 1"); return constant_boolean_node (true, truth_type); } else { - warning ("`and' of mutually exclusive equal-tests is always 0"); + warning ("% of mutually exclusive equal-tests is always 0"); return constant_boolean_node (false, truth_type); } } @@ -5053,10 +5074,10 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type) if (integer_zerop (c)) return NULL_TREE; - if (TREE_CODE_CLASS (tcode) == '1') + if (TREE_CODE_CLASS (tcode) == tcc_unary) op0 = TREE_OPERAND (t, 0); - if (TREE_CODE_CLASS (tcode) == '2') + if (TREE_CODE_CLASS (tcode) == tcc_binary) op0 = TREE_OPERAND (t, 0), op1 = TREE_OPERAND (t, 1); /* Note that we need not handle conditional operations here since fold @@ -5074,10 +5095,10 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type) case CONVERT_EXPR: case NON_LVALUE_EXPR: case NOP_EXPR: /* If op0 is an expression ... */ - if ((TREE_CODE_CLASS (TREE_CODE (op0)) == '<' - || TREE_CODE_CLASS (TREE_CODE (op0)) == '1' - || TREE_CODE_CLASS (TREE_CODE (op0)) == '2' - || TREE_CODE_CLASS (TREE_CODE (op0)) == 'e') + if ((COMPARISON_CLASS_P (op0) + || UNARY_CLASS_P (op0) + || BINARY_CLASS_P (op0) + || EXPRESSION_CLASS_P (op0)) /* ... and is unsigned, and its type is smaller than ctype, then we cannot pass through as widening. */ && ((TYPE_UNSIGNED (TREE_TYPE (op0)) @@ -5970,14 +5991,14 @@ fold (tree expr) tree tem; tree arg0 = NULL_TREE, arg1 = NULL_TREE; enum tree_code code = TREE_CODE (t); - int kind = TREE_CODE_CLASS (code); + enum tree_code_class kind = TREE_CODE_CLASS (code); /* WINS will be nonzero when the switch is done if all operands are constant. */ int wins = 1; /* Return right away if a constant. */ - if (kind == 'c') + if (kind == tcc_constant) return t; if (code == NOP_EXPR || code == FLOAT_EXPR || code == CONVERT_EXPR) @@ -6026,7 +6047,7 @@ fold (tree expr) of the arguments so that their form can be studied. In any cases, the appropriate type conversions should be put back in the tree that will get out of the constant folder. */ - if (kind == '<') + if (kind == tcc_comparison) STRIP_SIGN_NOPS (op); else STRIP_NOPS (op); @@ -6098,7 +6119,7 @@ fold (tree expr) return tem; } - if (TREE_CODE_CLASS (code) == '1') + if (TREE_CODE_CLASS (code) == tcc_unary) { if (TREE_CODE (arg0) == COMPOUND_EXPR) return build2 (COMPOUND_EXPR, type, TREE_OPERAND (arg0, 0), @@ -6145,7 +6166,7 @@ fold (tree expr) TREE_OPERAND (TREE_OPERAND (tem, 2), 0))); return tem; } - else if (TREE_CODE_CLASS (TREE_CODE (arg0)) == '<') + else if (COMPARISON_CLASS_P (arg0)) { if (TREE_CODE (type) == BOOLEAN_TYPE) { @@ -6161,16 +6182,16 @@ fold (tree expr) integer_zero_node)))); } } - else if (TREE_CODE_CLASS (code) == '<' + else if (TREE_CODE_CLASS (code) == tcc_comparison && TREE_CODE (arg0) == COMPOUND_EXPR) return build2 (COMPOUND_EXPR, type, TREE_OPERAND (arg0, 0), fold (build2 (code, type, TREE_OPERAND (arg0, 1), arg1))); - else if (TREE_CODE_CLASS (code) == '<' + else if (TREE_CODE_CLASS (code) == tcc_comparison && TREE_CODE (arg1) == COMPOUND_EXPR) return build2 (COMPOUND_EXPR, type, TREE_OPERAND (arg1, 0), fold (build2 (code, type, arg0, TREE_OPERAND (arg1, 1)))); - else if (TREE_CODE_CLASS (code) == '2' - || TREE_CODE_CLASS (code) == '<') + else if (TREE_CODE_CLASS (code) == tcc_binary + || TREE_CODE_CLASS (code) == tcc_comparison) { if (TREE_CODE (arg0) == COMPOUND_EXPR) return build2 (COMPOUND_EXPR, type, TREE_OPERAND (arg0, 0), @@ -6182,8 +6203,7 @@ fold (tree expr) fold (build2 (code, type, arg0, TREE_OPERAND (arg1, 1)))); - if (TREE_CODE (arg0) == COND_EXPR - || TREE_CODE_CLASS (TREE_CODE (arg0)) == '<') + if (TREE_CODE (arg0) == COND_EXPR || COMPARISON_CLASS_P (arg0)) { tem = fold_binary_op_with_conditional_arg (code, type, arg0, arg1, /*cond_first_p=*/1); @@ -6191,8 +6211,7 @@ fold (tree expr) return tem; } - if (TREE_CODE (arg1) == COND_EXPR - || TREE_CODE_CLASS (TREE_CODE (arg1)) == '<') + if (TREE_CODE (arg1) == COND_EXPR || COMPARISON_CLASS_P (arg1)) { tem = fold_binary_op_with_conditional_arg (code, type, arg1, arg0, /*cond_first_p=*/0); @@ -6362,7 +6381,7 @@ fold (tree expr) /* Convert (T1)((T2)X op Y) into (T1)X op Y, for pointer types T1 and T2 being pointers to types of the same size. */ if (POINTER_TYPE_P (TREE_TYPE (t)) - && TREE_CODE_CLASS (TREE_CODE (arg0)) == '2' + && BINARY_CLASS_P (arg0) && TREE_CODE (TREE_OPERAND (arg0, 0)) == NOP_EXPR && POINTER_TYPE_P (TREE_TYPE (TREE_OPERAND (arg0, 0)))) { @@ -6946,6 +6965,18 @@ fold (tree expr) || (INTEGRAL_TYPE_P (type) && flag_wrapv && !flag_trapv))) return fold (build2 (PLUS_EXPR, type, arg0, negate_expr (arg1))); + /* Try folding difference of addresses. */ + { + HOST_WIDE_INT diff; + + if (TREE_CODE (arg0) == ADDR_EXPR + && TREE_CODE (arg1) == ADDR_EXPR + && ptr_difference_const (TREE_OPERAND (arg0, 0), + TREE_OPERAND (arg1, 0), + &diff)) + return build_int_cst_type (type, diff); + } + if (TREE_CODE (arg0) == MULT_EXPR && TREE_CODE (arg1) == MULT_EXPR && (INTEGRAL_TYPE_P (type) || flag_unsafe_math_optimizations)) @@ -8740,7 +8771,7 @@ fold (tree expr) for reasons given above each one. Also try swapping the arguments and inverting the conditional. */ - if (TREE_CODE_CLASS (TREE_CODE (arg0)) == '<' + if (COMPARISON_CLASS_P (arg0) && operand_equal_for_comparison_p (TREE_OPERAND (arg0, 0), arg1, TREE_OPERAND (arg0, 1)) && !HONOR_SIGNED_ZEROS (TYPE_MODE (TREE_TYPE (arg1)))) @@ -8752,14 +8783,14 @@ fold (tree expr) return tem; } - if (TREE_CODE_CLASS (TREE_CODE (arg0)) == '<' + if (COMPARISON_CLASS_P (arg0) && operand_equal_for_comparison_p (TREE_OPERAND (arg0, 0), TREE_OPERAND (t, 2), TREE_OPERAND (arg0, 1)) && !HONOR_SIGNED_ZEROS (TYPE_MODE (TREE_TYPE (TREE_OPERAND (t, 2))))) { tem = invert_truthvalue (arg0); - if (TREE_CODE_CLASS (TREE_CODE (tem)) == '<') + if (COMPARISON_CLASS_P (tem)) { tem = fold_cond_expr_with_comparison (type, tem, TREE_OPERAND (t, 2), @@ -8926,47 +8957,6 @@ fold (tree expr) TREE_OPERAND (arg0, 1))))); return t; - /* Pull arithmetic ops out of the CLEANUP_POINT_EXPR where - appropriate. */ - case CLEANUP_POINT_EXPR: - if (! has_cleanups (arg0)) - return TREE_OPERAND (t, 0); - - { - enum tree_code code0 = TREE_CODE (arg0); - int kind0 = TREE_CODE_CLASS (code0); - tree arg00 = TREE_OPERAND (arg0, 0); - tree arg01; - - if (kind0 == '1' || code0 == TRUTH_NOT_EXPR) - return fold (build1 (code0, type, - fold (build1 (CLEANUP_POINT_EXPR, - TREE_TYPE (arg00), arg00)))); - - if (kind0 == '<' || kind0 == '2' - || code0 == TRUTH_ANDIF_EXPR || code0 == TRUTH_ORIF_EXPR - || code0 == TRUTH_AND_EXPR || code0 == TRUTH_OR_EXPR - || code0 == TRUTH_XOR_EXPR) - { - arg01 = TREE_OPERAND (arg0, 1); - - if (TREE_CONSTANT (arg00) - || ((code0 == TRUTH_ANDIF_EXPR || code0 == TRUTH_ORIF_EXPR) - && ! has_cleanups (arg00))) - return fold (build2 (code0, type, arg00, - fold (build1 (CLEANUP_POINT_EXPR, - TREE_TYPE (arg01), arg01)))); - - if (TREE_CONSTANT (arg01)) - return fold (build2 (code0, type, - fold (build1 (CLEANUP_POINT_EXPR, - TREE_TYPE (arg00), arg00)), - arg01)); - } - - return t; - } - case CALL_EXPR: /* Check for a built-in function. */ if (TREE_CODE (TREE_OPERAND (t, 0)) == ADDR_EXPR @@ -9064,29 +9054,34 @@ fold_checksum_tree (tree expr, struct md5_ctx *ctx, htab_t ht) return; *slot = expr; code = TREE_CODE (expr); - if (TREE_CODE_CLASS (code) == 'd' && DECL_ASSEMBLER_NAME_SET_P (expr)) + if (TREE_CODE_CLASS (code) == tcc_declaration + && DECL_ASSEMBLER_NAME_SET_P (expr)) { /* Allow DECL_ASSEMBLER_NAME to be modified. */ memcpy (buf, expr, tree_size (expr)); expr = (tree) buf; SET_DECL_ASSEMBLER_NAME (expr, NULL); } - else if (TREE_CODE_CLASS (code) == 't' - && (TYPE_POINTER_TO (expr) || TYPE_REFERENCE_TO (expr))) + else if (TREE_CODE_CLASS (code) == tcc_type + && (TYPE_POINTER_TO (expr) || TYPE_REFERENCE_TO (expr) + || TYPE_CACHED_VALUES_P (expr))) { - /* Allow TYPE_POINTER_TO and TYPE_REFERENCE_TO to be modified. */ + /* Allow these fields to be modified. */ memcpy (buf, expr, tree_size (expr)); expr = (tree) buf; TYPE_POINTER_TO (expr) = NULL; TYPE_REFERENCE_TO (expr) = NULL; + TYPE_CACHED_VALUES_P (expr) = 0; + TYPE_CACHED_VALUES (expr) = NULL; } md5_process_bytes (expr, tree_size (expr), ctx); fold_checksum_tree (TREE_TYPE (expr), ctx, ht); - if (TREE_CODE_CLASS (code) != 't' && TREE_CODE_CLASS (code) != 'd') + if (TREE_CODE_CLASS (code) != tcc_type + && TREE_CODE_CLASS (code) != tcc_declaration) fold_checksum_tree (TREE_CHAIN (expr), ctx, ht); switch (TREE_CODE_CLASS (code)) { - case 'c': + case tcc_constant: switch (code) { case STRING_CST: @@ -9104,7 +9099,7 @@ fold_checksum_tree (tree expr, struct md5_ctx *ctx, htab_t ht) break; } break; - case 'x': + case tcc_exceptional: switch (code) { case TREE_LIST: @@ -9119,17 +9114,17 @@ fold_checksum_tree (tree expr, struct md5_ctx *ctx, htab_t ht) break; } break; - case 'e': - case 'r': - case '<': - case '1': - case '2': - case 's': + case tcc_expression: + case tcc_reference: + case tcc_comparison: + case tcc_unary: + case tcc_binary: + case tcc_statement: len = first_rtl_op (code); for (i = 0; i < len; ++i) fold_checksum_tree (TREE_OPERAND (expr, i), ctx, ht); break; - case 'd': + case tcc_declaration: fold_checksum_tree (DECL_SIZE (expr), ctx, ht); fold_checksum_tree (DECL_SIZE_UNIT (expr), ctx, ht); fold_checksum_tree (DECL_NAME (expr), ctx, ht); @@ -9142,7 +9137,7 @@ fold_checksum_tree (tree expr, struct md5_ctx *ctx, htab_t ht) fold_checksum_tree (DECL_ATTRIBUTES (expr), ctx, ht); fold_checksum_tree (DECL_VINDEX (expr), ctx, ht); break; - case 't': + case tcc_type: if (TREE_CODE (expr) == ENUMERAL_TYPE) fold_checksum_tree (TYPE_VALUES (expr), ctx, ht); fold_checksum_tree (TYPE_SIZE (expr), ctx, ht); @@ -9156,7 +9151,10 @@ fold_checksum_tree (tree expr, struct md5_ctx *ctx, htab_t ht) fold_checksum_tree (TYPE_MAX_VALUE (expr), ctx, ht); } fold_checksum_tree (TYPE_MAIN_VARIANT (expr), ctx, ht); - fold_checksum_tree (TYPE_BINFO (expr), ctx, ht); + if (TREE_CODE (expr) == RECORD_TYPE + || TREE_CODE (expr) == UNION_TYPE + || TREE_CODE (expr) == QUAL_UNION_TYPE) + fold_checksum_tree (TYPE_BINFO (expr), ctx, ht); fold_checksum_tree (TYPE_CONTEXT (expr), ctx, ht); break; default: @@ -9633,7 +9631,7 @@ tree_expr_nonzero_p (tree t) return !DECL_WEAK (base); /* Constants are never weak. */ - if (TREE_CODE_CLASS (TREE_CODE (base)) == 'c') + if (CONSTANT_CLASS_P (base)) return true; return false; @@ -10557,12 +10555,12 @@ fold_ignored_result (tree t) for (;;) switch (TREE_CODE_CLASS (TREE_CODE (t))) { - case '1': + case tcc_unary: t = TREE_OPERAND (t, 0); break; - case '2': - case '<': + case tcc_binary: + case tcc_comparison: if (!TREE_SIDE_EFFECTS (TREE_OPERAND (t, 1))) t = TREE_OPERAND (t, 0); else if (!TREE_SIDE_EFFECTS (TREE_OPERAND (t, 0))) @@ -10571,7 +10569,7 @@ fold_ignored_result (tree t) return t; break; - case 'e': + case tcc_expression: switch (TREE_CODE (t)) { case COMPOUND_EXPR: @@ -10683,3 +10681,51 @@ round_down (tree value, int divisor) return value; } + +/* Returns true if addresses of E1 and E2 differ by a constant, false + otherwise. If they do, &E1 - &E2 is stored in *DIFF. */ + +bool +ptr_difference_const (tree e1, tree e2, HOST_WIDE_INT *diff) +{ + tree core1, core2; + HOST_WIDE_INT bitsize1, bitsize2; + HOST_WIDE_INT bitpos1, bitpos2; + tree toffset1, toffset2, tdiff, type; + enum machine_mode mode1, mode2; + int unsignedp1, unsignedp2, volatilep1, volatilep2; + + core1 = get_inner_reference (e1, &bitsize1, &bitpos1, &toffset1, &mode1, + &unsignedp1, &volatilep1); + core2 = get_inner_reference (e2, &bitsize2, &bitpos2, &toffset2, &mode2, + &unsignedp2, &volatilep2); + + if (bitpos1 % BITS_PER_UNIT != 0 + || bitpos2 % BITS_PER_UNIT != 0 + || !operand_equal_p (core1, core2, 0)) + return false; + + if (toffset1 && toffset2) + { + type = TREE_TYPE (toffset1); + if (type != TREE_TYPE (toffset2)) + toffset2 = fold_convert (type, toffset2); + + tdiff = fold (build2 (MINUS_EXPR, type, toffset1, toffset2)); + if (!host_integerp (tdiff, 0)) + return false; + + *diff = tree_low_cst (tdiff, 0); + } + else if (toffset1 || toffset2) + { + /* If only one of the offsets is non-constant, the difference cannot + be a constant. */ + return false; + } + else + *diff = 0; + + *diff += (bitpos1 - bitpos2) / BITS_PER_UNIT; + return true; +} diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 092cfe2ee04..9053f3652d1 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,65 @@ +2004-09-17 Jeffrey D. Oldham + Zack Weinberg + + * f95-lang.c, trans-expr.c, trans.c: Update for new tree-class + enumeration constants. + +2004-09-17 Paul Brook + + * gfortran.h (struct gfc_linebuf): Don't use C99 empty arrays. + (gfc_linebuf_header_size): Define. + * scanner.c (load_file): Use it. + +2004-09-16 Kazu Hirata + + * array.c, data.c, decl.c, dependency.c, error.c, f95-lang.c, + interface.c, intrinsic.c, io.c, misc.c, module.c, parse.h, + resolve.c, scanner.c, trans-array.c, trans-array.h, + trans-common.c, trans-const.h, trans-decl.c, trans-expr.c, + trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.c, + trans.h: Fix comment typos. Follow spelling conventions. + +2004-09-16 Victor Leikehman + + PR/15364 + * trans-io.c (transfer_array_component): New function. + (transfer_expr): For array fields, call transfer_array_component. + +2004-09-16 Kazu Hirata + + * gfortran.texi: Fix a typo. + +2004-09-15 Aaron W. LaFramboise + + * parse.c (eof_buf): Rename eof to eof_buf. + (unexpected_eof): Same. + (gfc_parse_file): Same. + +2004-09-15 Steven G. Kargl + + * check.c (gfc_check_getcwd_sub): New function. + * gfortran.h (GFC_ISYM_GETCWD): New symbol. + * intrinsic.c (add_functions): Add function definition; + Use symbol. + * intrinsic.c (add_subroutines): Add subroutine definitions. + * intrinsic.h: Add prototypes. + * iresolve.c (gfc_resolve_getcwd, gfc_resolve_getcwd_sub): + New functions. + * trans-intrinsic.c (gfc_conv_intrinsic_function): Use symbol. + +2004-09-15 Tobias Schlueter + + PR fortran/16485 + * module.c (write_symbol): Don't fill in module name here. + (write_symbol0): Fill in here instead. + +2004-09-14 Kazu Hirata + + * data.c, decl.c, f95-lang.c, gfortran.h, match.c, + trans-array.c, trans-common.c, trans-expr.c, + trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.h: Fix + comment typos. Follow spelling conventions. + 2004-09-09 Paul Brook * scanner.c (get_file): Add ATTRIBUTE_UNUSED. @@ -256,30 +318,30 @@ 2004-08-26 Richard Henderson - * arith.c: Include system.h, not real system headers. - (MPZ_NULL, MPF_NULL, DEF_GFC_INTEGER_KIND, DEF_GFC_LOGICAL_KIND, - DEF_GFC_REAL_KIND, GFC_SP_KIND, GFC_SP_PREC, GFC_SP_EMIN, GFC_SP_EMAX, - GFC_DP_KIND, GFC_DP_PREC, GFC_DP_EMIN, GFC_DP_EMAX, GFC_QP_KIND, - GFC_QP_PREC, GFC_QP_EMIN, GFC_QP_EMAX): Remove. - (gfc_integer_kinds, gfc_logical_kinds, gfc_real_kinds, - gfc_index_integer_kind, gfc_default_integer_kind, - gfc_default_real_kind,gfc_default_double_kind, - gfc_default_character_kind, gfc_default_logical_kind, - gfc_default_complex_kind, validate_integer, validate_real, - validate_logical, validate_character, - gfc_validate_kind): Move to trans-types.c. - (gfc_set_model_kind): Use gfc_validate_kind. - (gfc_set_model): Just copy the current precision to default. - (gfc_arith_init_1): Use mpfr precision 128 for integer setup. - * f95-lang.c (gfc_init_decl_processing): Invoke gfc_init_kinds. - * gfortran.h: Update file commentary. - * trans-types.c (MAX_INT_KINDS, MAX_REAL_KINDS): New. - (gfc_default_integer_kind_1, gfc_default_real_kind_1, - gfc_default_double_kind_1, gfc_default_character_kind_1, - gfc_default_logical_kind_1, gfc_default_complex_kind_1): New. - (gfc_init_kinds): New. - (gfc_init_types): Don't set gfc_index_integer_kind here. - * trans-types.h (gfc_init_kinds): Declare. + * arith.c: Include system.h, not real system headers. + (MPZ_NULL, MPF_NULL, DEF_GFC_INTEGER_KIND, DEF_GFC_LOGICAL_KIND, + DEF_GFC_REAL_KIND, GFC_SP_KIND, GFC_SP_PREC, GFC_SP_EMIN, GFC_SP_EMAX, + GFC_DP_KIND, GFC_DP_PREC, GFC_DP_EMIN, GFC_DP_EMAX, GFC_QP_KIND, + GFC_QP_PREC, GFC_QP_EMIN, GFC_QP_EMAX): Remove. + (gfc_integer_kinds, gfc_logical_kinds, gfc_real_kinds, + gfc_index_integer_kind, gfc_default_integer_kind, + gfc_default_real_kind,gfc_default_double_kind, + gfc_default_character_kind, gfc_default_logical_kind, + gfc_default_complex_kind, validate_integer, validate_real, + validate_logical, validate_character, + gfc_validate_kind): Move to trans-types.c. + (gfc_set_model_kind): Use gfc_validate_kind. + (gfc_set_model): Just copy the current precision to default. + (gfc_arith_init_1): Use mpfr precision 128 for integer setup. + * f95-lang.c (gfc_init_decl_processing): Invoke gfc_init_kinds. + * gfortran.h: Update file commentary. + * trans-types.c (MAX_INT_KINDS, MAX_REAL_KINDS): New. + (gfc_default_integer_kind_1, gfc_default_real_kind_1, + gfc_default_double_kind_1, gfc_default_character_kind_1, + gfc_default_logical_kind_1, gfc_default_complex_kind_1): New. + (gfc_init_kinds): New. + (gfc_init_types): Don't set gfc_index_integer_kind here. + * trans-types.h (gfc_init_kinds): Declare. * doc/invoke.texi: Clarify DOUBLE PRECISION behaviour wrt -r8. 2004-08-26 Tobias Schlueter @@ -366,7 +428,7 @@ build. * trans-array.c (gfc_conv_descriptor_data, gfc_conv_descriptor_offset, gfc_conv_descriptor_dimension, - gfc_conv_descriptor_stride, gfc_conv_descriptor_lbound, + gfc_conv_descriptor_stride, gfc_conv_descriptor_lbound, gfc_conv_descriptor_ubound, gfc_trans_allocate_array_storage, gfc_trans_allocate_temp_array, gfc_trans_array_constructor_subarray, @@ -424,7 +486,7 @@ 2004-08-25 Tobias Schlueter - * trans-const.c (gfc_conv_mpz_to_tree): Change call to + * trans-const.c (gfc_conv_mpz_to_tree): Change call to build_int_cst to build_int_cst_wide in accordance to Nathan's previous patch. @@ -447,7 +509,7 @@ 2004-08-24 Tobias Schlueter - * trans-decl.c, trans-types.c: Add and remove blank lines as + * trans-decl.c, trans-types.c: Add and remove blank lines as required. 2004-08-24 Richard Henderson @@ -456,9 +518,9 @@ 2004-08-24 Tobias Schlueter - * resolve.c (merge_argument_lists): Revert unintentionally + * resolve.c (merge_argument_lists): Revert unintentionally committed change. - + 2004-08-24 Tobias Schlueter * trans-decl.c (build_function_decl): Fix spelling in comment. @@ -489,15 +551,15 @@ 2004-08-22 Richard Henderson PR 13465 - * data.c (find_con_by_offset): Search ordered list; handle - elements with repeat counts. - (gfc_assign_data_value_range): New. - * gfortran.h (struct gfc_data_value): Make repeat unsigned. - (gfc_assign_data_value_range): Declare. - * match.c (top_val_list): Extract repeat count into a temporary. - * resolve.c (values): Make left unsigned. - (next_data_value): Don't decrement left. - (check_data_variable): Use gfc_assign_data_value_range. + * data.c (find_con_by_offset): Search ordered list; handle + elements with repeat counts. + (gfc_assign_data_value_range): New. + * gfortran.h (struct gfc_data_value): Make repeat unsigned. + (gfc_assign_data_value_range): Declare. + * match.c (top_val_list): Extract repeat count into a temporary. + * resolve.c (values): Make left unsigned. + (next_data_value): Don't decrement left. + (check_data_variable): Use gfc_assign_data_value_range. 2004-08-22 Tobias Schlueter @@ -1360,7 +1422,7 @@ unused variables if they're use associated. 2004-06-14 Tobias Schlueter - Andrew Vaught + Andrew Vaught PR fortran/14928 * gfortran.h (gfc_check_f): Add new field f3ml. @@ -1713,7 +1775,7 @@ 2004-05-17 Steve Kargl * arith.c (gfc_real2complex): Range checking wrong part of complex - number. + number. 2004-05-16 Paul Brook @@ -1855,15 +1917,15 @@ 2004-05-14 Tobias Schlueter - PR fortran/14066 + PR fortran/14066 * match.c (gfc_match_do): Allow infinite loops with label-do-stmt. Do not enforce space after comma. 2004-05-14 Tobias Schlueter - PR fortran/15051 + PR fortran/15051 * parse.c (parse_interface): Allow empty INTERFACE, remove - seen_body. + seen_body. 2004-05-14 Tobias Schlueter @@ -1885,7 +1947,7 @@ PR fortran/14568 * trans-decl.c (generate_local_decl): Don't warn for unused - variables which are in common blocks. + variables which are in common blocks. 2004-05-13 Diego Novillo @@ -2110,9 +2172,9 @@ 2004-03-24 Bud Davis - PR 14055 + PR 14055 * arith.c (gfc_convert_integer,gfc_convert_real): Removed leading '+' - before conversion by gmp library call. + before conversion by gmp library call. 2004-03-24 Bud Davis @@ -3047,8 +3109,8 @@ * lang-options.h: Remove. 2003-07-23 Arnaud Desitter - * iresolve.c (g95_resolve_transpose): Proper variable in switch. - * simplify.c (g95_simplify_nearest): Fix typo and use a correct test + * iresolve.c (g95_resolve_transpose): Proper variable in switch. + * simplify.c (g95_simplify_nearest): Fix typo and use a correct test on kind. 2003-07-22 Steven Bosscher @@ -3693,21 +3755,21 @@ 2003-04-10 Canqun Yang - * trans-stmt.c (g95_trans_forall): Implement WHERE inside FORALL. - (g95_trans_forall_body): New function. + * trans-stmt.c (g95_trans_forall): Implement WHERE inside FORALL. + (g95_trans_forall_body): New function. 2003-04-10 Canqun Yang - * resolve.c (resove_where): New function. - (resolve_where_shape): New function. - (resolve_code): Add call to 'resolve_where' - * trans-stmt.c (g95_trans_where): Modified. - (g95_trans_where_2): New function. - (g95_trans_where_assign): New function. - (g95_evaluate_where_mask): New function. - (g95_add_to_stmt_list): New function. - (g95_get_temp_expr): New function. - * trans.h (where_stmt_list): New structure. + * resolve.c (resove_where): New function. + (resolve_where_shape): New function. + (resolve_code): Add call to 'resolve_where' + * trans-stmt.c (g95_trans_where): Modified. + (g95_trans_where_2): New function. + (g95_trans_where_assign): New function. + (g95_evaluate_where_mask): New function. + (g95_add_to_stmt_list): New function. + (g95_get_temp_expr): New function. + * trans.h (where_stmt_list): New structure. 2003-04-10 Paul Brook @@ -3795,7 +3857,7 @@ * arith.c (validate_logical), g95.h, options.c (g95_init_options): Remove option l1. - * g95.h, intrinsic.c(g95_get_intrinsic_sub_symbol): Add const. + * g95.h, intrinsic.c(g95_get_intrinsic_sub_symbol): Add const. * iresolve.c(g95_resolve_cpu_time, g95_resolve_random_number): Add const. * lang-options.h: Remove -finline-repack-arrays. Add -fg77-calls. @@ -4036,7 +4098,7 @@ 2003-02-05 Toon Moene * lang-options.h: Fix warning involving C90 concatenated - strings. + strings. 2003-02-06 Steven Bosscher Arnaud Desitter @@ -4122,7 +4184,7 @@ 2003-01-28 Steven Bosscher - * Make-lang.in: Don't build with broken tree-ssa-pre. + * Make-lang.in: Don't build with broken tree-ssa-pre. 2003-01-28 Steven Bosscher @@ -4459,7 +4521,7 @@ 2003-01-10 Steven Bosscher - * dump-parse-tree.c (g95_show_namespace): Fixed another + * dump-parse-tree.c (g95_show_namespace): Fixed another typo. Sorry, it's Friday... 2003-01-10 Steven Bosscher @@ -4962,7 +5024,7 @@ 2002-09-01 Toon Moene * g95_conv_mpz_to_tree: Free storage pointed to by q, - not by buff. + not by buff. 2002-08-30 Paul Brook diff --git a/gcc/fortran/array.c b/gcc/fortran/array.c index 37747a62c83..ac1ea6f9f92 100644 --- a/gcc/fortran/array.c +++ b/gcc/fortran/array.c @@ -941,7 +941,7 @@ check_element_type (gfc_expr * expr) { if (cons_state == CONS_BAD) - return 0; /* Supress further errors */ + return 0; /* Suppress further errors */ if (cons_state == CONS_START) { @@ -1607,7 +1607,7 @@ gfc_get_array_element (gfc_expr * array, int element) /********* Subroutines for determining the size of an array *********/ -/* These are needed just to accomodate RESHAPE(). There are no +/* These are needed just to accommodate RESHAPE(). There are no diagnostics here, we just return a negative number if something goes wrong. */ diff --git a/gcc/fortran/check.c b/gcc/fortran/check.c index 6bc9e09f203..fc5390c6679 100644 --- a/gcc/fortran/check.c +++ b/gcc/fortran/check.c @@ -2093,3 +2093,20 @@ gfc_check_etime_sub (gfc_expr * values, gfc_expr * time) return SUCCESS; } + + +try +gfc_check_getcwd_sub (gfc_expr * cwd, gfc_expr * status) +{ + + if (type_check (cwd, 0, BT_CHARACTER) == FAILURE) + return FAILURE; + + if (scalar_check (status, 1) == FAILURE) + return FAILURE; + + if (type_check (status, 1, BT_INTEGER) == FAILURE) + return FAILURE; + + return SUCCESS; +} diff --git a/gcc/fortran/data.c b/gcc/fortran/data.c index ceb6f318667..0c4429a6c15 100644 --- a/gcc/fortran/data.c +++ b/gcc/fortran/data.c @@ -329,7 +329,7 @@ gfc_assign_data_value (gfc_expr * lvalue, gfc_expr * rvalue, mpz_t index) last_con->expr = expr; } -/* Similarly, but initialize REPEAT consectutive values in LVALUE the same +/* Similarly, but initialize REPEAT consecutive values in LVALUE the same value in RVALUE. For the nonce, LVALUE must refer to a full array, not an array section. */ @@ -542,7 +542,7 @@ gfc_advance_section (mpz_t *section_index, gfc_array_ref *ar, /* Rearrange a structure constructor so the elements are in the specified - order. Also insert NULL entries if neccessary. */ + order. Also insert NULL entries if necessary. */ static void formalize_structure_cons (gfc_expr * expr) diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c index a3aa28b06df..44cd2fdbe79 100644 --- a/gcc/fortran/decl.c +++ b/gcc/fortran/decl.c @@ -399,7 +399,7 @@ match_old_style_init (const char *name) } /* Match the stuff following a DATA statement. If ERROR_FLAG is set, - we are matching a DATA stement and are therefore issuing an error + we are matching a DATA statement and are therefore issuing an error if we encounter something unexpected, if not, we're trying to match an old-style intialization expression of the form INTEGER I /2/. */ @@ -2444,7 +2444,7 @@ gfc_match_subroutine (void) } -/* Return nonzero if we're currenly compiling a contained procedure. */ +/* Return nonzero if we're currently compiling a contained procedure. */ static int contained_procedure (void) diff --git a/gcc/fortran/dependency.c b/gcc/fortran/dependency.c index 28b786f5bb3..a89e96504da 100644 --- a/gcc/fortran/dependency.c +++ b/gcc/fortran/dependency.c @@ -306,7 +306,7 @@ gfc_check_dependency (gfc_expr * expr1, gfc_expr * expr2, gfc_expr ** vars, return 1; case EXPR_FUNCTION: - /* Remember possible differences betweeen elemental and + /* Remember possible differences between elemental and transformational functions. All functions inside a FORALL will be pure. */ for (actual = expr2->value.function.actual; diff --git a/gcc/fortran/error.c b/gcc/fortran/error.c index 3c0d5c891ee..084f0ef474e 100644 --- a/gcc/fortran/error.c +++ b/gcc/fortran/error.c @@ -741,7 +741,7 @@ gfc_status_char (char c) } -/* Report the number of warnings and errors that occured to the caller. */ +/* Report the number of warnings and errors that occurred to the caller. */ void gfc_get_errors (int *w, int *e) diff --git a/gcc/fortran/f95-lang.c b/gcc/fortran/f95-lang.c index 69b22dfc2e7..8edf5692bb0 100644 --- a/gcc/fortran/f95-lang.c +++ b/gcc/fortran/f95-lang.c @@ -153,7 +153,7 @@ const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; #define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE, -const char tree_code_type[] = { +const enum tree_code_class tree_code_type[] = { #include "tree.def" }; #undef DEFTREECODE @@ -221,7 +221,7 @@ gfc_truthvalue_conversion (tree expr) case BOOLEAN_TYPE: if (TREE_TYPE (expr) == boolean_type_node) return expr; - else if (TREE_CODE_CLASS (TREE_CODE (expr)) == '<') + else if (COMPARISON_CLASS_P (expr)) { TREE_TYPE (expr) = boolean_type_node; return expr; @@ -354,7 +354,7 @@ static GTY(()) struct binding_level *global_binding_level; /* Binding level structures are initialized by copying this one. */ static struct binding_level clear_binding_level = { NULL, NULL, NULL }; -/* Return non-zero if we are currently in the global binding level. */ +/* Return nonzero if we are currently in the global binding level. */ int global_bindings_p (void) @@ -403,7 +403,7 @@ pushlevel (int ignore ATTRIBUTE_UNUSED) tree poplevel (int keep, int reverse, int functionbody) { - /* Points to a BLOCK tree node. This is the BLOCK node construted for the + /* Points to a BLOCK tree node. This is the BLOCK node constructed for the binding level that we are about to exit and which is returned by this routine. */ tree block_node = NULL_TREE; @@ -413,7 +413,7 @@ poplevel (int keep, int reverse, int functionbody) /* Reverse the list of XXXX_DECL nodes if desired. Note that the ..._DECL nodes chained through the `names' field of current_binding_level are in - reverse order except for PARM_DECL node, which are explicitely stored in + reverse order except for PARM_DECL node, which are explicitly stored in the right order. */ decl_chain = (reverse) ? nreverse (current_binding_level->names) : current_binding_level->names; @@ -665,7 +665,7 @@ gfc_mark_addressable (tree exp) int ggc_p = 1; -/* Builtin function initialisation. */ +/* Builtin function initialization. */ /* Return a definition for a builtin function named NAME and whose data type is TYPE. TYPE should be a function type with argument types. @@ -752,7 +752,7 @@ build_builtin_fntypes (tree * fntype, tree type) } -/* Initialisation of builtin function nodes. */ +/* Initialization of builtin function nodes. */ static void gfc_init_builtin_functions (void) diff --git a/gcc/fortran/gfortran.h b/gcc/fortran/gfortran.h index 0e152526395..94d5374e8a3 100644 --- a/gcc/fortran/gfortran.h +++ b/gcc/fortran/gfortran.h @@ -315,6 +315,7 @@ enum gfc_generic_isym_id GFC_ISYM_EXPONENT, GFC_ISYM_FLOOR, GFC_ISYM_FRACTION, + GFC_ISYM_GETCWD, GFC_ISYM_GETGID, GFC_ISYM_GETPID, GFC_ISYM_GETUID, @@ -468,9 +469,11 @@ typedef struct gfc_linebuf struct gfc_file *file; struct gfc_linebuf *next; - char line[]; + char line[1]; } gfc_linebuf; - + +#define gfc_linebuf_header_size (offsetof (gfc_linebuf, line)) + typedef struct { char *nextc; @@ -974,7 +977,7 @@ typedef union gfc_simplify_f; /* Again like gfc_check_f, these specify the type of the resolution - function associated with an intrinsic. The fX are juse like in + function associated with an intrinsic. The fX are just like in gfc_check_f. f1m is used for MIN and MAX, s1 is used for abort(). */ diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi index 8f6c0e6ecf4..3c51f085699 100644 --- a/gcc/fortran/gfortran.texi +++ b/gcc/fortran/gfortran.texi @@ -131,7 +131,7 @@ not accurately reflect the status of the most recent @command{gfortran}. * Project Status:: Status of @command{gfortran}, Roadmap, proposed extensions. * Contributing:: Helping you can help. * Standards:: Standards supported by @command{gfortran} -* Extensions:: Laguage extensions implemented by @command{gfortran} +* Extensions:: Language extensions implemented by @command{gfortran} * Index:: Index of this documentation. @end menu diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c index abff6a1d715..72d2e5ce441 100644 --- a/gcc/fortran/interface.c +++ b/gcc/fortran/interface.c @@ -1623,7 +1623,7 @@ find_sym_in_symtree (gfc_symbol * sym) /* This subroutine is called when an expression is being resolved. The expression node in question is either a user defined operator - or an instrinsic operator with arguments that aren't compatible + or an intrinsic operator with arguments that aren't compatible with the operator. This subroutine builds an actual argument list corresponding to the operands, then searches for a compatible interface. If one is found, the expression node is replaced with diff --git a/gcc/fortran/intrinsic.c b/gcc/fortran/intrinsic.c index 414cc1a5913..949f399dda6 100644 --- a/gcc/fortran/intrinsic.c +++ b/gcc/fortran/intrinsic.c @@ -35,7 +35,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "intrinsic.h" -/* Nanespace to hold the resolved symbols for intrinsic subroutines. */ +/* Namespace to hold the resolved symbols for intrinsic subroutines. */ static gfc_namespace *gfc_intrinsic_namespace; int gfc_init_expr = 0; @@ -1241,6 +1241,10 @@ add_functions (void) make_generic ("fraction", GFC_ISYM_FRACTION); /* Unix IDs (g77 compatibility) */ + add_sym_1 ("getcwd", 0, 1, BT_INTEGER, di, NULL, NULL, gfc_resolve_getcwd, + c, BT_CHARACTER, dc, 0); + make_generic ("getcwd", GFC_ISYM_GETCWD); + add_sym_0 ("getgid", 1, 0, BT_INTEGER, di, NULL, NULL, gfc_resolve_getgid); make_generic ("getgid", GFC_ISYM_GETGID); @@ -1914,6 +1918,11 @@ add_subroutines (void) gfc_check_etime_sub, NULL, gfc_resolve_etime_sub, vl, BT_REAL, 4, 0, tm, BT_REAL, 4, 0); + add_sym_2s ("getcwd", 0, 1, BT_UNKNOWN, 0, + gfc_check_getcwd_sub, NULL, gfc_resolve_getcwd_sub, + c, BT_CHARACTER, dc, 0, + st, BT_INTEGER, di, 1); + add_sym_2s ("getenv", 0, 1, BT_UNKNOWN, 0, NULL, NULL, NULL, name, BT_CHARACTER, dc, 0, @@ -1923,6 +1932,7 @@ add_subroutines (void) NULL, NULL, gfc_resolve_getarg, c, BT_INTEGER, di, 0, vl, BT_CHARACTER, dc, 0); + /* F2003 commandline routines. */ add_sym_3s ("get_command", 0, 1, BT_UNKNOWN, 0, diff --git a/gcc/fortran/intrinsic.h b/gcc/fortran/intrinsic.h index b2ffb155a85..f1b11b04264 100644 --- a/gcc/fortran/intrinsic.h +++ b/gcc/fortran/intrinsic.h @@ -48,6 +48,7 @@ try gfc_check_dot_product (gfc_expr *, gfc_expr *); try gfc_check_eoshift (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *); try gfc_check_etime (gfc_expr *); try gfc_check_etime_sub (gfc_expr *, gfc_expr *); +try gfc_check_getcwd_sub (gfc_expr *, gfc_expr *); try gfc_check_g77_math1 (gfc_expr *); try gfc_check_huge (gfc_expr *); try gfc_check_i (gfc_expr *); @@ -256,6 +257,7 @@ void gfc_resolve_exponent (gfc_expr *, gfc_expr *); void gfc_resolve_floor (gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_fraction (gfc_expr *, gfc_expr *); void gfc_resolve_g77_math1 (gfc_expr *, gfc_expr *); +void gfc_resolve_getcwd (gfc_expr *); void gfc_resolve_getgid (gfc_expr *); void gfc_resolve_getpid (gfc_expr *); void gfc_resolve_getuid (gfc_expr *); @@ -324,6 +326,7 @@ void gfc_resolve_cpu_time (gfc_code *); void gfc_resolve_system_clock(gfc_code *); void gfc_resolve_random_number (gfc_code *); void gfc_resolve_getarg (gfc_code *); +void gfc_resolve_getcwd_sub (gfc_code *); void gfc_resolve_get_command (gfc_code *); void gfc_resolve_get_command_argument (gfc_code *); void gfc_resolve_get_environment_variable (gfc_code *); diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c index f383e406907..73bb06b86f0 100644 --- a/gcc/fortran/io.c +++ b/gcc/fortran/io.c @@ -1773,7 +1773,7 @@ gfc_resolve_dt (gfc_dt * dt) if (gfc_reference_st_label (dt->eor, ST_LABEL_TARGET) == FAILURE) return FAILURE; - /* Check the format label ectually exists. */ + /* Check the format label actually exists. */ if (dt->format_label && dt->format_label != &format_asterisk && dt->format_label->defined == ST_LABEL_UNKNOWN) { diff --git a/gcc/fortran/iresolve.c b/gcc/fortran/iresolve.c index 713d81f20ff..ed8bc569bcf 100644 --- a/gcc/fortran/iresolve.c +++ b/gcc/fortran/iresolve.c @@ -572,6 +572,15 @@ gfc_resolve_g77_math1 (gfc_expr * f, gfc_expr * x) void +gfc_resolve_getcwd (gfc_expr * f) +{ + f->ts.type = BT_INTEGER; + f->ts.kind = 4; + f->value.function.name = gfc_get_string (PREFIX("getcwd")); +} + + +void gfc_resolve_getgid (gfc_expr * f) { f->ts.type = BT_INTEGER; @@ -1499,6 +1508,23 @@ gfc_resolve_getarg (gfc_code * c) c->resolved_sym = gfc_get_intrinsic_sub_symbol (name); } +/* Resolve the getcwd intrinsic subroutine. */ + +void +gfc_resolve_getcwd_sub (gfc_code * c) +{ + const char *name; + int kind; + + if (c->ext.actual->next->expr != NULL) + kind = c->ext.actual->next->expr->ts.kind; + else + kind = gfc_default_integer_kind; + + name = gfc_get_string (PREFIX("getcwd_i%d_sub"), kind); + c->resolved_sym = gfc_get_intrinsic_sub_symbol (name); +} + /* Resolve the get_command intrinsic subroutine. */ diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c index f9628e8164f..b468c8e4be6 100644 --- a/gcc/fortran/match.c +++ b/gcc/fortran/match.c @@ -2102,7 +2102,7 @@ cleanup: /* Given a name, return a pointer to the common head structure, - creating it if it does not exist. If FROM_MODULE is non-zero, we + creating it if it does not exist. If FROM_MODULE is nonzero, we mangle the name so that it doesn't interfere with commons defined in the using namespace. TODO: Add to global symbol tree. */ diff --git a/gcc/fortran/misc.c b/gcc/fortran/misc.c index 159a42150dd..431284ca7d4 100644 --- a/gcc/fortran/misc.c +++ b/gcc/fortran/misc.c @@ -178,7 +178,7 @@ gfc_basic_typename (bt type) } -/* Return a string descibing the type and kind of a typespec. Because +/* Return a string describing the type and kind of a typespec. Because we return alternating buffers, this subroutine can appear twice in the argument list of a single statement. */ diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c index 5fabcb0564c..5eaf8fb2a64 100644 --- a/gcc/fortran/module.c +++ b/gcc/fortran/module.c @@ -78,7 +78,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #define MODULE_EXTENSION ".mod" -/* Structure that descibes a position within a module file */ +/* Structure that describes a position within a module file */ typedef struct { @@ -1706,7 +1706,7 @@ done: gfc_ref structure), find the corresponding array specification structure. Storing the pointer in the ref structure doesn't quite work when loading from a module. Generating code for an array - reference also needs more infomation than just the array spec. */ + reference also needs more information than just the array spec. */ static const mstring array_ref_types[] = { minit ("FULL", AR_FULL), @@ -3198,9 +3198,6 @@ write_symbol (int n, gfc_symbol * sym) mio_integer (&n); mio_internal_string (sym->name); - if (sym->module[0] == '\0') - strcpy (sym->module, module_name); - mio_internal_string (sym->module); mio_pointer_ref (&sym->ns); @@ -3226,6 +3223,8 @@ write_symbol0 (gfc_symtree * st) write_symbol0 (st->right); sym = st->n.sym; + if (sym->module[0] == '\0') + strcpy (sym->module, module_name); if (sym->attr.flavor == FL_PROCEDURE && sym->attr.generic && !sym->attr.subroutine && !sym->attr.function) diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c index b940fd3a8a4..cfcbee901f7 100644 --- a/gcc/fortran/parse.c +++ b/gcc/fortran/parse.c @@ -36,7 +36,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA gfc_st_label *gfc_statement_label; static locus label_locus; -static jmp_buf eof; +static jmp_buf eof_buf; gfc_state_data *gfc_state_stack; @@ -1252,7 +1252,7 @@ unexpected_eof (void) gfc_current_ns->code = (p && p->previous) ? p->head : NULL; gfc_done_2 (); - longjmp (eof, 1); + longjmp (eof_buf, 1); } @@ -2536,7 +2536,7 @@ gfc_parse_file (void) gfc_statement_label = NULL; - if (setjmp (eof)) + if (setjmp (eof_buf)) return FAILURE; /* Come here on unexpected EOF */ seen_program = 0; diff --git a/gcc/fortran/parse.h b/gcc/fortran/parse.h index c0c09654751..0d6130eb0fb 100644 --- a/gcc/fortran/parse.h +++ b/gcc/fortran/parse.h @@ -1,5 +1,5 @@ /* Parser header - Copyright (C) 2003 Free Software Foundaton, Inc. + Copyright (C) 2003 Free Software Foundation, Inc. Contributed by Steven Bosscher This file is part of GCC. diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index ec808a392b6..5169f5e8b0f 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -2735,7 +2735,7 @@ validate_case_label_expr (gfc_expr * e, gfc_expr * case_expr) because they are illegal and we never even try to generate code. We have the additional caveat that a SELECT construct could have - been a computed GOTO in the source code. Furtunately we can fairly + been a computed GOTO in the source code. Fortunately we can fairly easily work around that here: The case_expr for a "real" SELECT CASE is in code->expr1, but for a computed GOTO it is in code->expr2. All we have to do is make sure that the case_expr is a scalar integer @@ -4160,7 +4160,7 @@ check_data_variable (gfc_data_variable * var, locus * where) } gcc_assert (ref); - /* Set marks asscording to the reference pattern. */ + /* Set marks according to the reference pattern. */ switch (ref->u.ar.type) { case AR_FULL: diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c index f6bff59c5e1..3c6ca19abd9 100644 --- a/gcc/fortran/scanner.c +++ b/gcc/fortran/scanner.c @@ -689,7 +689,7 @@ load_line (FILE * input, char **pbuf, char *filename, int linenum) static int buflen = 0; char *buffer; - /* Detemine the maximum allowed line length. */ + /* Determine the maximum allowed line length. */ if (gfc_current_form == FORM_FREE) maxlen = GFC_MAX_LINE; else @@ -739,7 +739,7 @@ load_line (FILE * input, char **pbuf, char *filename, int linenum) } if (gfc_current_form == FORM_FIXED && c == '\t' && i <= 6) - { /* Tab expandsion. */ + { /* Tab expansion. */ while (i <= 6) { *buffer++ = ' '; @@ -1034,7 +1034,7 @@ load_file (char *filename, bool initial) /* Add line. */ - b = gfc_getmem (sizeof (gfc_linebuf) + len + 1); + b = gfc_getmem (gfc_linebuf_header_size + len + 1); #ifdef USE_MAPPED_LOCATION b->location diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c index a8e6dcfeefd..9fe35139fae 100644 --- a/gcc/fortran/trans-array.c +++ b/gcc/fortran/trans-array.c @@ -60,7 +60,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA The scalar gfc_conv_* functions are then used to build the main body of the scalarization loop. Scalarization loop variables and precalculated scalar - values are automaticaly substituted. Note that gfc_advance_se_ss_chain + values are automatically substituted. Note that gfc_advance_se_ss_chain must be used, rather than changing the se->ss directly. For assignment expressions requiring a temporary two sub loops are @@ -1289,7 +1289,7 @@ gfc_conv_ss_descriptor (stmtblock_t * block, gfc_ss * ss, int base) } -/* Initialise a gfc_loopinfo structure. */ +/* Initialize a gfc_loopinfo structure. */ void gfc_init_loopinfo (gfc_loopinfo * loop) @@ -1670,7 +1670,7 @@ gfc_conv_array_ref (gfc_se * se, gfc_array_ref * ar) /* Calculate the offsets from all the dimensions. */ for (n = 0; n < ar->dimen; n++) { - /* Calculate the index for this demension. */ + /* Calculate the index for this dimension. */ gfc_init_se (&indexse, NULL); gfc_conv_expr_type (&indexse, ar->start[n], gfc_array_index_type); gfc_add_block_to_block (&se->pre, &indexse.pre); @@ -2245,7 +2245,7 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop) } -/* Return true if the two SS could be aliased, ie. both point to the same data +/* Return true if the two SS could be aliased, i.e. both point to the same data object. */ /* TODO: resolve aliases based on frontend expressions. */ @@ -2392,7 +2392,7 @@ gfc_conv_resolve_dependencies (gfc_loopinfo * loop, gfc_ss * dest, } -/* Initialise the scalarization loop. Creates the loop variables. Determines +/* Initialize the scalarization loop. Creates the loop variables. Determines the range of the loop variables. Creates a temporary if required. Calculates how to transform from loop variables to array indices for each expression. Also generates code for scalar expressions which have been @@ -2619,7 +2619,7 @@ gfc_conv_loop_setup (gfc_loopinfo * loop) /* Fills in an array descriptor, and returns the size of the array. The size will be a simple_val, ie a variable or a constant. Also calculates the - offset of the base. Returns the size of the arrary. + offset of the base. Returns the size of the array. { stride = 1; offset = 0; @@ -2735,7 +2735,7 @@ gfc_array_init_size (tree descriptor, int rank, tree * poffset, } -/* Initialises the descriptor and generates a call to _gfor_allocate. Does +/* Initializes the descriptor and generates a call to _gfor_allocate. Does the work for an ALLOCATE statement. */ /*GCC ARRAYS*/ @@ -3060,7 +3060,7 @@ gfc_trans_auto_array_allocation (tree decl, gfc_symbol * sym, tree fnbody) gfc_trans_init_string_length (sym->ts.cl, &block); /* Emit a DECL_EXPR for this variable, which will cause the - gimplifier to allocate stoage, and all that good stuff. */ + gimplifier to allocate storage, and all that good stuff. */ tmp = build1 (DECL_EXPR, TREE_TYPE (decl), decl); gfc_add_expr_to_block (&block, tmp); } @@ -3154,7 +3154,7 @@ gfc_trans_g77_array (gfc_symbol * sym, tree body) if (TREE_CODE (GFC_TYPE_ARRAY_OFFSET (type)) == VAR_DECL) gfc_add_modify_expr (&block, GFC_TYPE_ARRAY_OFFSET (type), offset); - /* Set the pointer itself if we aren't using the parameter dirtectly. */ + /* Set the pointer itself if we aren't using the parameter directly. */ if (TREE_CODE (parm) != PARM_DECL) { tmp = convert (TREE_TYPE (parm), GFC_DECL_SAVED_DESCRIPTOR (parm)); @@ -3272,7 +3272,7 @@ gfc_trans_dummy_array_bias (gfc_symbol * sym, tree tmpdesc, tree body) else { gcc_assert (integer_onep (GFC_TYPE_ARRAY_STRIDE (type, 0))); - /* A library call to repack the array if neccessary. */ + /* A library call to repack the array if necessary. */ tmp = GFC_DECL_SAVED_DESCRIPTOR (tmpdesc); tmp = gfc_chainon_list (NULL_TREE, tmp); stmt_unpacked = gfc_build_function_call (gfor_fndecl_in_pack, tmp); @@ -3572,7 +3572,7 @@ gfc_conv_expr_descriptor (gfc_se * se, gfc_expr * expr, gfc_ss * ss) /* A transformational function return value will be a temporary array descriptor. We still need to go through the scalarizer to create the descriptor. Elemental functions ar handled as - arbitary expressions, ie. copy to a temporary. */ + arbitary expressions, i.e. copy to a temporary. */ secss = ss; /* Look for the SS for this function. */ while (secss != gfc_ss_terminator @@ -4268,7 +4268,7 @@ gfc_walk_elemental_function_args (gfc_ss * ss, gfc_expr * expr, newss = gfc_walk_subexpr (head, arg->expr); if (newss == head) { - /* Scalar argumet. */ + /* Scalar argument. */ newss = gfc_get_ss (); newss->type = type; newss->expr = arg->expr; @@ -4365,7 +4365,7 @@ gfc_walk_array_constructor (gfc_ss * ss, gfc_expr * expr) } -/* Walk an expresson. Add walked expressions to the head of the SS chain. +/* Walk an expression. Add walked expressions to the head of the SS chain. A wholy scalar expression will not be added. */ static gfc_ss * @@ -4412,7 +4412,7 @@ gfc_walk_subexpr (gfc_ss * ss, gfc_expr * expr) /* Entry point for expression walking. A return value equal to the passed chain means this is a scalar expression. It is up to the caller to take whatever action is - neccessary to translate these. */ + necessary to translate these. */ gfc_ss * gfc_walk_expr (gfc_expr * expr) diff --git a/gcc/fortran/trans-array.h b/gcc/fortran/trans-array.h index 9cd0fcecd78..7a0240350d6 100644 --- a/gcc/fortran/trans-array.h +++ b/gcc/fortran/trans-array.h @@ -22,7 +22,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA /* Generate code to free an array. */ tree gfc_array_deallocate (tree); -/* Generate code to initialise an allocate an array. Statements are added to +/* Generate code to initialize an allocate an array. Statements are added to se, which should contain an expression for the array descriptor. */ void gfc_array_allocate (gfc_se *, gfc_ref *, tree); @@ -36,7 +36,7 @@ tree gfc_trans_auto_array_allocation (tree, gfc_symbol *, tree); tree gfc_trans_dummy_array_bias (gfc_symbol *, tree, tree); /* Generate entry and exit code for g77 calling convention arrays. */ tree gfc_trans_g77_array (gfc_symbol *, tree); -/* Add initialisation for deferred arrays. */ +/* Add initialization for deferred arrays. */ tree gfc_trans_deferred_array (gfc_symbol *, tree); /* Generate an initializer for a static pointer or allocatable array. */ void gfc_trans_static_array_pointer (gfc_symbol *); @@ -49,7 +49,7 @@ gfc_ss *gfc_walk_elemental_function_args (gfc_ss *, gfc_expr *, gfc_ss_type); gfc_ss *gfc_walk_intrinsic_function (gfc_ss *, gfc_expr *, gfc_intrinsic_sym *); -/* Free the SS assocuated with a loop. */ +/* Free the SS associated with a loop. */ void gfc_cleanup_loop (gfc_loopinfo *); /* Associate a SS chain with a loop. */ void gfc_add_ss_to_loop (gfc_loopinfo *, gfc_ss *); @@ -68,7 +68,7 @@ void gfc_start_scalarized_body (gfc_loopinfo *, stmtblock_t *); void gfc_trans_scalarizing_loops (gfc_loopinfo *, stmtblock_t *); /* Mark the end of the main loop body and the start of the copying loop. */ void gfc_trans_scalarized_loop_boundary (gfc_loopinfo *, stmtblock_t *); -/* Initialise the scalarization loop parameters. */ +/* Initialize the scalarization loop parameters. */ void gfc_conv_loop_setup (gfc_loopinfo *); /* Resolve array assignment dependencies. */ void gfc_conv_resolve_dependencies (gfc_loopinfo *, gfc_ss *, gfc_ss *); diff --git a/gcc/fortran/trans-common.c b/gcc/fortran/trans-common.c index f692f3eee22..38e813ec567 100644 --- a/gcc/fortran/trans-common.c +++ b/gcc/fortran/trans-common.c @@ -23,7 +23,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA way to build UNION_TYPE is borrowed from Richard Henderson. Transform common blocks. An integral part of this is processing - equvalence variables. Equivalenced variables that are not in a + equivalence variables. Equivalenced variables that are not in a common block end up in a private block of their own. Each common block or local equivalence list is declared as a union. @@ -136,7 +136,7 @@ get_segment_info (gfc_symbol * sym, HOST_WIDE_INT offset) /* Create the segment_info and fill it in. */ s = (segment_info *) gfc_getmem (sizeof (segment_info)); s->sym = sym; - /* We will use this type when building the segment aggreagate type. */ + /* We will use this type when building the segment aggregate type. */ s->field = gfc_sym_type (sym); s->length = int_size_in_bytes (s->field); s->offset = offset; @@ -400,7 +400,7 @@ create_common (gfc_common_head *com) if (s->offset < offset) { /* We have overlapping initializers. It could either be - partially initilalized arrays (legal), or the user + partially initialized arrays (legal), or the user specified multiple initial values (illegal). We don't implement this yet, so bail out. */ gfc_todo_error ("Initialization of overlapping variables"); @@ -743,7 +743,7 @@ finish_equivalences (gfc_namespace *ns) sym = z->expr->symtree->n.sym; current_segment = get_segment_info (sym, 0); - /* All objects directly or indrectly equivalenced with this symbol. */ + /* All objects directly or indirectly equivalenced with this symbol. */ add_equivalences (); /* Calculate the minimal offset. */ diff --git a/gcc/fortran/trans-const.h b/gcc/fortran/trans-const.h index 7a36e9a5bcb..0fe2d3ac2fd 100644 --- a/gcc/fortran/trans-const.h +++ b/gcc/fortran/trans-const.h @@ -42,7 +42,7 @@ tree gfc_conv_string_init (tree, gfc_expr *); /* Create a tree node for the string length if it is constant. */ void gfc_conv_const_charlen (gfc_charlen *); -/* Initialise the nodes for constants. */ +/* Initialize the nodes for constants. */ void gfc_init_constants (void); /* Build a constant with given type from an int_cst. */ diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c index de319c70993..8cb308d37b2 100644 --- a/gcc/fortran/trans-decl.c +++ b/gcc/fortran/trans-decl.c @@ -1079,7 +1079,7 @@ build_function_decl (gfc_symbol * sym) { /* TODO: check if a pure SUBROUTINE has no INTENT(OUT) arguments including a alternate return. In that case it can also be - marked as PURE. See also in gfc_get_extern_fucntion_decl(). */ + marked as PURE. See also in gfc_get_extern_function_decl(). */ if (attr.function) DECL_IS_PURE (fndecl) = 1; TREE_SIDE_EFFECTS (fndecl) = 0; @@ -1844,7 +1844,7 @@ gfc_build_builtin_function_decls (void) } -/* Exaluate the length of dummy character variables. */ +/* Evaluate the length of dummy character variables. */ static tree gfc_trans_dummy_character (gfc_charlen * cl, tree fnbody) diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c index 52d6969c4f6..29550b715e6 100644 --- a/gcc/fortran/trans-expr.c +++ b/gcc/fortran/trans-expr.c @@ -107,7 +107,7 @@ gfc_make_safe_expr (gfc_se * se) { tree var; - if (TREE_CODE_CLASS (TREE_CODE (se->expr)) == 'c') + if (CONSTANT_CLASS_P (se->expr)) return; /* We need a temporary for this result. */ @@ -1133,7 +1133,7 @@ gfc_conv_function_call (gfc_se * se, gfc_symbol * sym, actual argument is passed according to the corresponding formal argument. If the corresponding formal argument is a POINTER or assumed shape, we do - not use g77's calling aonvention, and pass the + not use g77's calling convention, and pass the address of the array descriptor instead. Otherwise we use g77's calling convention. */ int f; @@ -1581,7 +1581,7 @@ gfc_trans_subcomponent_assign (tree dest, gfc_component * cm, gfc_expr * expr) } else if (expr->ts.type == BT_DERIVED) { - /* Nested dervived type. */ + /* Nested derived type. */ tmp = gfc_trans_structure_assign (dest, expr); gfc_add_expr_to_block (&block, tmp); } @@ -1603,7 +1603,7 @@ gfc_trans_subcomponent_assign (tree dest, gfc_component * cm, gfc_expr * expr) return gfc_finish_block (&block); } -/* Assign a derived type contructor to a variable. */ +/* Assign a derived type constructor to a variable. */ static tree gfc_trans_structure_assign (tree dest, gfc_expr * expr) diff --git a/gcc/fortran/trans-intrinsic.c b/gcc/fortran/trans-intrinsic.c index e986b5c1a0a..d76619a9944 100644 --- a/gcc/fortran/trans-intrinsic.c +++ b/gcc/fortran/trans-intrinsic.c @@ -619,7 +619,7 @@ gfc_conv_intrinsic_exponent (gfc_se * se, gfc_expr * expr) } /* Evaluate a single upper or lower bound. */ -/* TODO: bound intrinsic generates way too much unneccessary code. */ +/* TODO: bound intrinsic generates way too much unnecessary code. */ static void gfc_conv_intrinsic_bound (gfc_se * se, gfc_expr * expr, int upper) @@ -1466,7 +1466,7 @@ gfc_conv_intrinsic_minmaxloc (gfc_se * se, gfc_expr * expr, int op) /* Initialize the position to the first element. If the array has zero size we need to return zero. Otherwise use the first element of the array, in case all elements are equal to the limit. - ie. pos = (ubound >= lbound) ? lbound, lbound - 1; */ + i.e. pos = (ubound >= lbound) ? lbound, lbound - 1; */ tmp = fold (build2 (MINUS_EXPR, gfc_array_index_type, loop.from[0], gfc_index_one_node)); cond = fold (build2 (GE_EXPR, boolean_type_node, @@ -2286,7 +2286,7 @@ gfc_conv_intrinsic_scan (gfc_se * se, gfc_expr * expr) /* Verify that a set of characters contains all the characters in a string - by indentifying the position of the first character in a string of + by identifying the position of the first character in a string of characters that does not appear in a given set of characters. */ static void @@ -2952,6 +2952,7 @@ gfc_conv_intrinsic_function (gfc_se * se, gfc_expr * expr) case GFC_ISYM_RAND: case GFC_ISYM_ETIME: case GFC_ISYM_SECOND: + case GFC_ISYM_GETCWD: case GFC_ISYM_GETGID: case GFC_ISYM_GETPID: case GFC_ISYM_GETUID: diff --git a/gcc/fortran/trans-io.c b/gcc/fortran/trans-io.c index 66d25b22db3..c67422876de 100644 --- a/gcc/fortran/trans-io.c +++ b/gcc/fortran/trans-io.c @@ -1140,6 +1140,96 @@ gfc_trans_dt_end (gfc_code * code) return gfc_finish_block (&block); } +static void +transfer_expr (gfc_se * se, gfc_typespec * ts, tree addr_expr); + +/* Given an array field in a derived type variable, generate the code + for the loop that iterates over array elements, and the code that + accesses those array elements. Use transfer_expr to generate code + for transferring that element. Because elements may also be + derived types, transfer_expr and transfer_array_component are mutually + recursive. */ + +static tree +transfer_array_component (tree expr, gfc_component * cm) +{ + tree tmp; + stmtblock_t body; + stmtblock_t block; + gfc_loopinfo loop; + int n; + gfc_ss *ss; + gfc_se se; + + gfc_start_block (&block); + gfc_init_se (&se, NULL); + + /* Create and initialize Scalarization Status. Unlike in + gfc_trans_transfer, we can't simply use gfc_walk_expr to take + care of this task, because we don't have a gfc_expr at hand. + Build one manually, as in gfc_trans_subarray_assign. */ + + ss = gfc_get_ss (); + ss->type = GFC_SS_COMPONENT; + ss->expr = NULL; + ss->shape = gfc_get_shape (cm->as->rank); + ss->next = gfc_ss_terminator; + ss->data.info.dimen = cm->as->rank; + ss->data.info.descriptor = expr; + ss->data.info.data = gfc_conv_array_data (expr); + ss->data.info.offset = gfc_conv_array_offset (expr); + for (n = 0; n < cm->as->rank; n++) + { + ss->data.info.dim[n] = n; + ss->data.info.start[n] = gfc_conv_array_lbound (expr, n); + ss->data.info.stride[n] = gfc_index_one_node; + + mpz_init (ss->shape[n]); + mpz_sub (ss->shape[n], cm->as->upper[n]->value.integer, + cm->as->lower[n]->value.integer); + mpz_add_ui (ss->shape[n], ss->shape[n], 1); + } + + /* Once we got ss, we use scalarizer to create the loop. */ + + gfc_init_loopinfo (&loop); + gfc_add_ss_to_loop (&loop, ss); + gfc_conv_ss_startstride (&loop); + gfc_conv_loop_setup (&loop); + gfc_mark_ss_chain_used (ss, 1); + gfc_start_scalarized_body (&loop, &body); + + gfc_copy_loopinfo_to_se (&se, &loop); + se.ss = ss; + + /* gfc_conv_tmp_array_ref assumes that se.expr contains the array. */ + se.expr = expr; + gfc_conv_tmp_array_ref (&se); + + /* Now se.expr contains an element of the array. Take the address and pass + it to the IO routines. */ + tmp = gfc_build_addr_expr (NULL, se.expr); + transfer_expr (&se, &cm->ts, tmp); + + /* We are done now with the loop body. Wrap up the scalarizer and + return. */ + + gfc_add_block_to_block (&body, &se.pre); + gfc_add_block_to_block (&body, &se.post); + + gfc_trans_scalarizing_loops (&loop, &body); + + gfc_add_block_to_block (&block, &loop.pre); + gfc_add_block_to_block (&block, &loop.post); + + gfc_cleanup_loop (&loop); + + for (n = 0; n < cm->as->rank; n++) + mpz_clear (ss->shape[n]); + gfc_free (ss->shape); + + return gfc_finish_block (&block); +} /* Generate the call for a scalar transfer node. */ @@ -1177,11 +1267,19 @@ transfer_expr (gfc_se * se, gfc_typespec * ts, tree addr_expr) break; case BT_CHARACTER: - arg2 = se->string_length; + if (se->string_length) + arg2 = se->string_length; + else + { + tmp = gfc_build_indirect_ref (addr_expr); + gcc_assert (TREE_CODE (TREE_TYPE (tmp)) == ARRAY_TYPE); + arg2 = TYPE_MAX_VALUE (TYPE_DOMAIN (TREE_TYPE (tmp))); + } function = iocall_x_character; break; case BT_DERIVED: + /* Recurse into the elements of the derived type. */ expr = gfc_evaluate_now (addr_expr, &se->pre); expr = gfc_build_indirect_ref (expr); @@ -1193,17 +1291,17 @@ transfer_expr (gfc_se * se, gfc_typespec * ts, tree addr_expr) tmp = build3 (COMPONENT_REF, TREE_TYPE (field), expr, field, NULL_TREE); - if (c->ts.type == BT_CHARACTER) - { - gcc_assert (TREE_CODE (TREE_TYPE (tmp)) == ARRAY_TYPE); - se->string_length = - TYPE_MAX_VALUE (TYPE_DOMAIN (TREE_TYPE (tmp))); - } - if (c->dimension) - gfc_todo_error ("IO of arrays in derived types"); - if (!c->pointer) - tmp = gfc_build_addr_expr (NULL, tmp); - transfer_expr (se, &c->ts, tmp); + if (c->dimension) + { + tmp = transfer_array_component (tmp, c); + gfc_add_expr_to_block (&se->pre, tmp); + } + else + { + if (!c->pointer) + tmp = gfc_build_addr_expr (NULL, tmp); + transfer_expr (se, &c->ts, tmp); + } } return; @@ -1281,7 +1379,7 @@ gfc_trans_transfer (gfc_code * code) gfc_add_expr_to_block (&block, tmp); - return gfc_finish_block (&block);; + return gfc_finish_block (&block); } #include "gt-fortran-trans-io.h" diff --git a/gcc/fortran/trans-stmt.c b/gcc/fortran/trans-stmt.c index 7c63c9985e7..53e9a85a216 100644 --- a/gcc/fortran/trans-stmt.c +++ b/gcc/fortran/trans-stmt.c @@ -524,7 +524,7 @@ exit_label: TODO: Large loop counts Does not work loop counts which do not fit into a signed integer kind, - ie. Does not work for loop counts > 2^31 for integer(kind=4) variables + i.e. Does not work for loop counts > 2^31 for integer(kind=4) variables We must support the full range. */ tree @@ -572,7 +572,7 @@ gfc_trans_do (gfc_code * code) gfc_add_block_to_block (&block, &se.pre); step = se.expr; - /* Initialise loop count. This code is executed before we enter the + /* Initialize loop count. This code is executed before we enter the loop body. We generate: count = (to + step - from) / step. */ tmp = fold (build2 (MINUS_EXPR, type, step, from)); @@ -582,7 +582,7 @@ gfc_trans_do (gfc_code * code) count = gfc_create_var (type, "count"); gfc_add_modify_expr (&block, count, tmp); - /* Initialise the DO variable: dovar = from. */ + /* Initialize the DO variable: dovar = from. */ gfc_add_modify_expr (&block, dovar, from); /* Loop body. */ @@ -1286,9 +1286,9 @@ gfc_trans_forall_loop (forall_info *forall_tmp, int nvar, tree body, int mask_fl /* Generate the body and loops according to MASK_FLAG and NEST_FLAG. - if MASK_FLAG is non-zero, the body is controlled by maskes in forall + if MASK_FLAG is nonzero, the body is controlled by maskes in forall nest, otherwise, the body is not controlled by maskes. - if NEST_FLAG is non-zero, generate loops for nested forall, otherwise, + if NEST_FLAG is nonzero, generate loops for nested forall, otherwise, only generate loops for the current forall level. */ static tree @@ -1317,7 +1317,7 @@ gfc_trans_nested_forall_loop (forall_info * nested_forall_info, tree body, if (mask) { - /* If a mask was specified make the assignment contitional. */ + /* If a mask was specified make the assignment conditional. */ if (pmask) tmp = gfc_build_indirect_ref (mask); else @@ -1545,10 +1545,10 @@ generate_loop_for_rhs_to_temp (gfc_expr *expr2, tree tmp1, tree size, } else { - /* Initilize count2. */ + /* Initialize count2. */ gfc_add_modify_expr (&block, count2, gfc_index_zero_node); - /* Initiliaze the loop. */ + /* Initialize the loop. */ gfc_init_loopinfo (&loop); /* We may need LSS to determine the shape of the expression. */ @@ -1823,7 +1823,7 @@ gfc_trans_assign_need_temp (gfc_expr * expr1, gfc_expr * expr2, tree wheremask, tmp = generate_loop_for_rhs_to_temp (expr2, tmp1, inner_size, count, count1, count2, lss, rss, wheremask); - /* Generate body and loops according to the inforamtion in + /* Generate body and loops according to the information in nested_forall_info. */ tmp = gfc_trans_nested_forall_loop (nested_forall_info, tmp, 1, 1); gfc_add_expr_to_block (block, tmp); @@ -1850,7 +1850,7 @@ gfc_trans_assign_need_temp (gfc_expr * expr1, gfc_expr * expr2, tree wheremask, tmp = generate_loop_for_temp_to_lhs (expr1, tmp1, inner_size, count, count1, count2, wheremask); - /* Generate body and loops according to the inforamtion in + /* Generate body and loops according to the information in nested_forall_info. */ tmp = gfc_trans_nested_forall_loop (nested_forall_info, tmp, 1, 1); gfc_add_expr_to_block (block, tmp); @@ -1931,7 +1931,7 @@ gfc_trans_pointer_assign_need_temp (gfc_expr * expr1, gfc_expr * expr2, forall_tmp = forall_tmp->next_nest; } - /* Generate body and loops according to the inforamtion in + /* Generate body and loops according to the information in nested_forall_info. */ tmp = gfc_trans_nested_forall_loop (nested_forall_info, tmp, 1, 1); gfc_add_expr_to_block (block, tmp); @@ -1964,7 +1964,7 @@ gfc_trans_pointer_assign_need_temp (gfc_expr * expr1, gfc_expr * expr2, gfc_add_modify_expr (&body, count, tmp); tmp = gfc_finish_block (&body); - /* Generate body and loops according to the inforamtion in + /* Generate body and loops according to the information in nested_forall_info. */ tmp = gfc_trans_nested_forall_loop (nested_forall_info, tmp, 1, 1); gfc_add_expr_to_block (block, tmp); @@ -2020,7 +2020,7 @@ gfc_trans_pointer_assign_need_temp (gfc_expr * expr1, gfc_expr * expr2, forall_tmp = forall_tmp->next_nest; } - /* Generate body and loops according to the inforamtion in + /* Generate body and loops according to the information in nested_forall_info. */ tmp = gfc_trans_nested_forall_loop (nested_forall_info, tmp, 1, 1); gfc_add_expr_to_block (block, tmp); @@ -2101,7 +2101,7 @@ gfc_trans_pointer_assign_need_temp (gfc_expr * expr1, gfc_expr * expr2, Note that this code only works when there are no dependencies. Forall loop with array assignments and data dependencies are a real pain, because the size of the temporary cannot always be determined before the - loop is executed. This problem is compouded by the presence of nested + loop is executed. This problem is compounded by the presence of nested FORALL constructs. */ @@ -2314,7 +2314,7 @@ gfc_trans_forall_1 (gfc_code * code, forall_info * nested_forall_info) switch (c->op) { case EXEC_ASSIGN: - /* A scalar or array assingment. */ + /* A scalar or array assignment. */ need_temp = gfc_check_dependency (c->expr, c->expr2, varexpr, nvar); /* Teporaries due to array assignment data dependencies introduce no end of problems. */ @@ -2487,7 +2487,7 @@ gfc_evaluate_where_mask (gfc_expr * me, forall_info * nested_forall_info, /* Variable to index the temporary. */ count = gfc_create_var (gfc_array_index_type, "count"); - /* Initilize count. */ + /* Initialize count. */ gfc_add_modify_expr (block, count, gfc_index_zero_node); gfc_start_block (&body); @@ -2501,7 +2501,7 @@ gfc_evaluate_where_mask (gfc_expr * me, forall_info * nested_forall_info, } else { - /* Initiliaze the loop. */ + /* Initialize the loop. */ gfc_init_loopinfo (&loop); /* We may need LSS to determine the shape of the expression. */ @@ -2791,7 +2791,7 @@ gfc_trans_where_assign (gfc_expr *expr1, gfc_expr *expr2, tree mask, /* Translate the WHERE construct or statement. - This fuction can be called iteratelly to translate the nested WHERE + This fuction can be called iteratively to translate the nested WHERE construct or statement. MASK is the control mask, and PMASK is the pending control mask. TEMP records the temporary address which must be freed later. */ diff --git a/gcc/fortran/trans-types.c b/gcc/fortran/trans-types.c index a33e717ceb9..a87e6f365dd 100644 --- a/gcc/fortran/trans-types.c +++ b/gcc/fortran/trans-types.c @@ -739,7 +739,7 @@ gfc_get_element_type (tree type) the calculation for stride02 would overflow. This may still work, but I haven't checked, and it relies on the overflow doing the right thing. - The way to fix this problem is to access alements as follows: + The way to fix this problem is to access elements as follows: data[(index0-lbound0)*stride0 + (index1-lbound1)*stride1] Obviously this is much slower. I will make this a compile time option, something like -fsmall-array-offsets. Mixing code compiled with and without @@ -944,7 +944,7 @@ gfc_get_nodesc_array_type (tree etype, gfc_array_spec * as, int packed) mpz_init (delta); /* We don't use build_array_type because this does not include include - lang-specific information (ie. the bounds of the array) when checking + lang-specific information (i.e. the bounds of the array) when checking for duplicates. */ type = make_node (ARRAY_TYPE); @@ -1392,13 +1392,13 @@ gfc_get_derived_type (gfc_symbol * derived) field_type = gfc_typenode_for_spec (&c->ts); } - /* This returns an array descriptor type. Initialisation may be + /* This returns an array descriptor type. Initialization may be required. */ if (c->dimension) { if (c->pointer) { - /* Pointers to arrays aren't actualy pointer types. The + /* Pointers to arrays aren't actually pointer types. The descriptors are seperate, but the data is common. */ field_type = gfc_build_array_type (field_type, c->as); } diff --git a/gcc/fortran/trans.c b/gcc/fortran/trans.c index 7526c02f2ae..8005b32924b 100644 --- a/gcc/fortran/trans.c +++ b/gcc/fortran/trans.c @@ -127,7 +127,7 @@ gfc_evaluate_now (tree expr, stmtblock_t * pblock) { tree var; - if (TREE_CODE_CLASS (TREE_CODE (expr)) == 'c') + if (CONSTANT_CLASS_P (expr)) return expr; var = gfc_create_var (TREE_TYPE (expr), NULL); @@ -160,7 +160,7 @@ gfc_add_modify_expr (stmtblock_t * pblock, tree lhs, tree rhs) /* Create a new scope/binding level and initialize a block. Care must be - taken when translating expessions as any temporaries will be placed in + taken when translating expressions as any temporaries will be placed in the innermost scope. */ void diff --git a/gcc/fortran/trans.h b/gcc/fortran/trans.h index 9b7d355fb6e..67bc2345e25 100644 --- a/gcc/fortran/trans.h +++ b/gcc/fortran/trans.h @@ -35,7 +35,7 @@ typedef struct } stmtblock_t; -/* a simplified expresson */ +/* a simplified expression */ typedef struct gfc_se { /* Code blocks to be executed before and after using the value. */ @@ -199,7 +199,7 @@ typedef struct gfc_ss gfc_ss; #define gfc_get_ss() gfc_getmem(sizeof(gfc_ss)) -/* The contents of this aren't actualy used. A NULL SS chain indicates a +/* The contents of this aren't actually used. A NULL SS chain indicates a scalar expression, so this pointer is used to terminate SS chains. */ extern gfc_ss * const gfc_ss_terminator; @@ -271,7 +271,7 @@ void gfc_conv_string_parameter (gfc_se * se); /* Add an item to the end of TREE_LIST. */ tree gfc_chainon_list (tree, tree); -/* When using the gfc_conv_* make sure you understand what they do, ie. +/* When using the gfc_conv_* make sure you understand what they do, i.e. when a POST chain may be created, and what the retured expression may be used for. Note that character strings have special handling. This should not be a problem as most statements/operations only deal with @@ -415,7 +415,7 @@ void gfc_generate_constructors (void); /* Generate a runtime error check. */ void gfc_trans_runtime_check (tree, tree, stmtblock_t *); -/* Generate code for an assigment, includes scalarization. */ +/* Generate code for an assignment, includes scalarization. */ tree gfc_trans_assignment (gfc_expr *, gfc_expr *); /* Generate code for an pointer assignment. */ @@ -521,7 +521,7 @@ struct lang_decl GTY(()) tree saved_descriptor; /* Assigned integer nodes. Stringlength is the IO format string's length. Addr is the address of the string or the target label. Stringlength is - initialized to -2 and assiged to -1 when addr is assigned to the + initialized to -2 and assigned to -1 when addr is assigned to the address of target label. */ tree stringlen; tree addr; diff --git a/gcc/function.c b/gcc/function.c index f738493332d..dafac981100 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -831,7 +831,7 @@ assign_temp (tree type_or_decl, int keep, int memory_required, if (decl && size == -1 && TREE_CODE (TYPE_SIZE_UNIT (type)) == INTEGER_CST) { - error ("%Jsize of variable '%D' is too large", decl, decl); + error ("%Jsize of variable %qD is too large", decl, decl); size = 1; } @@ -1432,7 +1432,7 @@ static void instantiate_virtual_regs_lossage (rtx insn) { gcc_assert (asm_noperands (PATTERN (insn)) >= 0); - error_for_asm (insn, "impossible constraint in `asm'"); + error_for_asm (insn, "impossible constraint in %"); delete_insn (insn); } /* Given a pointer to a piece of rtx and an optional pointer to the @@ -3454,7 +3454,8 @@ setjmp_vars_warning (tree block) && DECL_RTL_SET_P (decl) && REG_P (DECL_RTL (decl)) && regno_clobbered_at_setjmp (REGNO (DECL_RTL (decl)))) - warning ("%Jvariable '%D' might be clobbered by `longjmp' or `vfork'", + warning ("%Jvariable %qD might be clobbered by %" + " or %", decl, decl); } @@ -3474,7 +3475,7 @@ setjmp_args_warning (void) if (DECL_RTL (decl) != 0 && REG_P (DECL_RTL (decl)) && regno_clobbered_at_setjmp (REGNO (DECL_RTL (decl)))) - warning ("%Jargument '%D' might be clobbered by `longjmp' or `vfork'", + warning ("%Jargument %qD might be clobbered by % or %", decl, decl); } @@ -4198,7 +4199,7 @@ do_warn_unused_parameter (tree fn) decl; decl = TREE_CHAIN (decl)) if (!TREE_USED (decl) && TREE_CODE (decl) == PARM_DECL && DECL_NAME (decl) && !DECL_ARTIFICIAL (decl)) - warning ("%Junused parameter '%D'", decl, decl); + warning ("%Junused parameter %qD", decl, decl); } static GTY(()) rtx initial_trampoline; diff --git a/gcc/gcc.c b/gcc/gcc.c index 45a9ab44b75..6e7dec933ca 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -361,6 +361,7 @@ static const char *convert_filename (const char *, int, int); static const char *if_exists_spec_function (int, const char **); static const char *if_exists_else_spec_function (int, const char **); +static const char *replace_outfile_spec_function (int, const char **); /* The Specs Language @@ -1572,6 +1573,7 @@ static const struct spec_function static_spec_functions[] = { { "if-exists", if_exists_spec_function }, { "if-exists-else", if_exists_else_spec_function }, + { "replace-outfile", replace_outfile_spec_function }, { 0, 0 } }; @@ -7582,3 +7584,24 @@ if_exists_else_spec_function (int argc, const char **argv) return argv[1]; } + +/* replace-outfile built-in spec function. + This looks for the first argument in the outfiles array's name and replaces it + with the second argument. */ + +static const char * +replace_outfile_spec_function (int argc, const char **argv) +{ + int i; + /* Must have exactly two arguments. */ + if (argc != 2) + abort (); + + for (i = 0; i < n_infiles; i++) + { + if (outfiles[i] && !strcmp (outfiles[i], argv[0])) + outfiles[i] = xstrdup (argv[1]); + } + return NULL; +} + diff --git a/gcc/gcse.c b/gcc/gcse.c index b5d27626cd7..d2855935815 100644 --- a/gcc/gcse.c +++ b/gcc/gcse.c @@ -4033,7 +4033,8 @@ process_insert_insn (struct expr *expr) { rtx insn = emit_insn (gen_rtx_SET (VOIDmode, reg, exp)); - gcc_assert (!insn_invalid_p (insn)); + if (insn_invalid_p (insn)) + gcc_unreachable (); } diff --git a/gcc/gen-protos.c b/gcc/gen-protos.c index 453b7298046..17e435fde77 100644 --- a/gcc/gen-protos.c +++ b/gcc/gen-protos.c @@ -21,9 +21,9 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "coretypes.h" #include "tm.h" #include "scan.h" +#include "errors.h" int verbose = 0; -const char *progname; static void add_hash (const char *); static int parse_fn_proto (char *, char *, struct fn_decl *); diff --git a/gcc/genrecog.c b/gcc/genrecog.c index 83e2862f3b0..64cd905b0ca 100644 --- a/gcc/genrecog.c +++ b/gcc/genrecog.c @@ -992,7 +992,7 @@ add_to_sequence (rtx pattern, struct decision_head *last, const char *position, if (allows_const_int) mode = VOIDmode; - /* Accept the operand, ie. record it in `operands'. */ + /* Accept the operand, i.e. record it in `operands'. */ test = new_decision_test (DT_accept_op, &place); test->u.opno = XINT (pattern, 0); diff --git a/gcc/ggc-common.c b/gcc/ggc-common.c index ccda55c8c53..4f4e68fc89f 100644 --- a/gcc/ggc-common.c +++ b/gcc/ggc-common.c @@ -916,7 +916,7 @@ cmp_statistic (const void *loc1, const void *loc2) struct loc_descriptor *l1 = *(struct loc_descriptor **) loc1; struct loc_descriptor *l2 = *(struct loc_descriptor **) loc2; return ((l1->allocated + l1->overhead - l1->freed) - - (l2->allocated + l2->overhead - l1->freed)); + (l2->allocated + l2->overhead - l2->freed)); } /* Collect array of the descriptors from hashtable. */ diff --git a/gcc/ggc-none.c b/gcc/ggc-none.c index 2e657dbaec8..0cc0c4af33e 100644 --- a/gcc/ggc-none.c +++ b/gcc/ggc-none.c @@ -19,11 +19,16 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* This version is used by the gen* programs, where we don't really - need GC at all. This prevents problems with pulling in all the - tree stuff. */ +/* This version is used by the gen* programs and certain language-specific + targets (such as java), where we don't really need GC at all. + This prevents problems with pulling in all the tree stuff. */ +#ifdef GENERATOR_FILE #include "bconfig.h" +#else +#include "config.h" +#endif + #include "system.h" #include "coretypes.h" #include "ggc.h" diff --git a/gcc/gimplify.c b/gcc/gimplify.c index c657f6af77a..f648985e457 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -74,6 +74,9 @@ typedef struct gimple_temp_hash_elt /* Forward declarations. */ static enum gimplify_status gimplify_compound_expr (tree *, tree *, bool); +#ifdef ENABLE_CHECKING +static bool cpt_same_type (tree a, tree b); +#endif /* Return a hash value for a formal temporary table entry. */ @@ -326,7 +329,8 @@ create_tmp_var_raw (tree type, const char *prefix) new_type = build_type_variant (type, 0, 0); TYPE_ATTRIBUTES (new_type) = TYPE_ATTRIBUTES (type); - tmp_var = build_decl (VAR_DECL, create_tmp_var_name (prefix), type); + tmp_var = build_decl (VAR_DECL, prefix ? create_tmp_var_name (prefix) : NULL, + type); /* The variable was declared by the compiler. */ DECL_ARTIFICIAL (tmp_var) = 1; @@ -558,9 +562,7 @@ should_carry_locus_p (tree stmt) static void annotate_one_with_locus (tree t, location_t locus) { - if (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (t))) - && ! EXPR_HAS_LOCATION (t) - && should_carry_locus_p (t)) + if (EXPR_P (t) && ! EXPR_HAS_LOCATION (t) && should_carry_locus_p (t)) SET_EXPR_LOCATION (t, locus); } @@ -595,9 +597,9 @@ mostly_copy_tree_r (tree *tp, int *walk_subtrees, void *data) { enum tree_code code = TREE_CODE (*tp); /* Don't unshare types, decls, constants and SAVE_EXPR nodes. */ - if (TREE_CODE_CLASS (code) == 't' - || TREE_CODE_CLASS (code) == 'd' - || TREE_CODE_CLASS (code) == 'c' + if (TREE_CODE_CLASS (code) == tcc_type + || TREE_CODE_CLASS (code) == tcc_declaration + || TREE_CODE_CLASS (code) == tcc_constant || code == SAVE_EXPR || code == TARGET_EXPR /* We can't do anything sensible with a BLOCK used as an expression, but we also can't abort when we see it because of non-expression @@ -633,9 +635,9 @@ copy_if_shared_r (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED, types and the bounds of types. Mark them as visited so we properly unmark their subtrees on the unmark pass. If we've already seen them, don't look down further. */ - if (TREE_CODE_CLASS (code) == 't' - || TREE_CODE_CLASS (code) == 'd' - || TREE_CODE_CLASS (code) == 'c') + if (TREE_CODE_CLASS (code) == tcc_type + || TREE_CODE_CLASS (code) == tcc_declaration + || TREE_CODE_CLASS (code) == tcc_constant) { if (TREE_VISITED (t)) *walk_subtrees = 0; @@ -2315,7 +2317,7 @@ gimplify_init_ctor_preeval_1 (tree *tp, int *walk_subtrees, void *xdata) && alias_sets_conflict_p (data->lhs_alias_set, get_alias_set (t))) return t; - if (DECL_P (t) || TYPE_P (t)) + if (IS_TYPE_OR_DECL_P (t)) *walk_subtrees = 0; return NULL; } @@ -2359,7 +2361,7 @@ gimplify_init_ctor_preeval (tree *expr_p, tree *pre_p, tree *post_p, the gimplifier will consider this a store to memory. Doing this gimplification now means that we won't have to deal with complicated language-specific trees, nor trees like SAVE_EXPR that can induce - exponential search behaviour. */ + exponential search behavior. */ one = gimplify_expr (expr_p, pre_p, post_p, is_gimple_mem_rhs, fb_rvalue); if (one == GS_ERROR) { @@ -3050,12 +3052,34 @@ gimplify_addr_expr (tree *expr_p, tree *pre_p, tree *post_p) switch (TREE_CODE (op0)) { case INDIRECT_REF: + do_indirect_ref: /* Check if we are dealing with an expression of the form '&*ptr'. While the front end folds away '&*ptr' into 'ptr', these expressions may be generated internally by the compiler (e.g., builtins like __builtin_va_end). */ - *expr_p = TREE_OPERAND (op0, 0); - ret = GS_OK; + /* Caution: the silent array decomposition semantics we allow for + ADDR_EXPR means we can't always discard the pair. */ + { + tree op00 = TREE_OPERAND (op0, 0); + tree t_expr = TREE_TYPE (expr); + tree t_op00 = TREE_TYPE (op00); + + if (!lang_hooks.types_compatible_p (t_expr, t_op00)) + { +#ifdef ENABLE_CHECKING + tree t_op0 = TREE_TYPE (op0); + gcc_assert (TREE_CODE (t_op0) == ARRAY_TYPE + && POINTER_TYPE_P (t_expr) + && cpt_same_type (TREE_TYPE (t_op0), + TREE_TYPE (t_expr)) + && POINTER_TYPE_P (t_op00) + && cpt_same_type (t_op0, TREE_TYPE (t_op00))); +#endif + op00 = fold_convert (TREE_TYPE (expr), op00); + } + *expr_p = op00; + ret = GS_OK; + } break; case VIEW_CONVERT_EXPR: @@ -3078,14 +3102,12 @@ gimplify_addr_expr (tree *expr_p, tree *pre_p, tree *post_p) is_gimple_addressable, fb_either); if (ret != GS_ERROR) { - /* The above may have made an INDIRECT_REF (e.g, Ada's NULL_EXPR), - so check for it here. It's not worth checking for the other - cases above. */ - if (TREE_CODE (TREE_OPERAND (expr, 0)) == INDIRECT_REF) - { - *expr_p = TREE_OPERAND (TREE_OPERAND (expr, 0), 0); - break; - } + op0 = TREE_OPERAND (expr, 0); + + /* For various reasons, the gimplification of the expression + may have made a new INDIRECT_REF. */ + if (TREE_CODE (op0) == INDIRECT_REF) + goto do_indirect_ref; /* Make sure TREE_INVARIANT, TREE_CONSTANT, and TREE_SIDE_EFFECTS is set properly. */ @@ -3848,7 +3870,7 @@ gimplify_expr (tree *expr_p, tree *pre_p, tree *post_p, default: switch (TREE_CODE_CLASS (TREE_CODE (*expr_p))) { - case '<': + case tcc_comparison: /* If this is a comparison of objects of aggregate type, handle it specially (by converting to a call to memcmp). It would be nice to only have to do this @@ -3862,12 +3884,12 @@ gimplify_expr (tree *expr_p, tree *pre_p, tree *post_p, /* If *EXPR_P does not need to be special-cased, handle it according to its class. */ - case '1': + case tcc_unary: ret = gimplify_expr (&TREE_OPERAND (*expr_p, 0), pre_p, post_p, is_gimple_val, fb_rvalue); break; - case '2': + case tcc_binary: expr_2: { enum gimplify_status r0, r1; @@ -3881,8 +3903,8 @@ gimplify_expr (tree *expr_p, tree *pre_p, tree *post_p, break; } - case 'd': - case 'c': + case tcc_declaration: + case tcc_constant: ret = GS_ALL_DONE; goto dont_recalculate; diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c index da8a632c595..be5293817aa 100644 --- a/gcc/ifcvt.c +++ b/gcc/ifcvt.c @@ -1217,6 +1217,7 @@ noce_try_cmove_arith (struct noce_if_info *if_info) rtx insn_a, insn_b; rtx tmp, target; int is_mem = 0; + int insn_cost; enum rtx_code code; /* A conditional move from two memory sources is equivalent to a @@ -1250,6 +1251,25 @@ noce_try_cmove_arith (struct noce_if_info *if_info) insn_a = if_info->insn_a; insn_b = if_info->insn_b; + /* Total insn_rtx_cost should be smaller than branch cost. Exit + if insn_rtx_cost can't be estimated. */ + if (insn_a) + { + insn_cost = insn_rtx_cost (PATTERN (insn_a)); + if (insn_cost == 0 || insn_cost > COSTS_N_INSNS (BRANCH_COST)) + return FALSE; + } + else + { + insn_cost = 0; + } + + if (insn_b) { + insn_cost += insn_rtx_cost (PATTERN (insn_b)); + if (insn_cost == 0 || insn_cost > COSTS_N_INSNS (BRANCH_COST)) + return FALSE; + } + /* Possibly rearrange operands to make things come out more natural. */ if (reversed_comparison_code (if_info->cond, if_info->jump) != UNKNOWN) { diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 9dd0fa57507..f0311cc5049 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,35 @@ +2004-09-17 Jeffrey D. Oldham + Zack Weinberg + + * java-tree.def: Use tree_code_class enumeration constants + instead of code letters. + * java-gimplify.c, jcf-write.c, lang.c, parse.y: Update for + new tree-class enumeration constants. + +2004-09-13 Tom Tromey + + PR java/17216: + * class.c (layout_class_method): Put synthetic methods into the + vtable. + +2004-09-11 Andrew Pinski + + * Make-lang.in (java/ggc-none.c): Change dependency + for ggc.h into $(GGC_H). + +2004-09-11 Mohan Embar + + * Make-lang.in (java/win32-host.o): Add dependency on + coretypes.h. + * win32-host.c: Add includes for coretypes.h, jcf.h + +2004-09-11 Mohan Embar + + * Make-lang.in (GCJH_OBJS): Change dependency from + ggc-none.o to java/ggc-none.o + (JCFDUMP_OBJS): Likewise. + (java/ggc-none.o): New target. + 2004-08-25 Nathan Sidwell * boehm.c (get_boehm_type_descriptor): Adjust build_int_cst calls. @@ -107,7 +139,7 @@ * class.c (build_utf8_ref, build_static_field_ref, make_field_value, make_method_value, get_dispatch_table, make_class_data, emit_symbol_table, emit_catch_table): Likewise. - * constants.c (get_tag_node, build_ref_from_constant_pool, + * constants.c (get_tag_node, build_ref_from_constant_pool, build_constants_constructor): Likewise. * decl.c (java_init_decl_processing): Likewise. * expr.c (build_java_array_length_access, build_newarray, @@ -603,7 +635,7 @@ set_nested_class_simple_name_value. 2004-06-22 Andrew Haley - Ranjit Mathew + Ranjit Mathew Fixes PR java/16113. * decl.c (force_poplevels): Remove call to expand_end_bindings. @@ -675,7 +707,7 @@ of unordered conditionals. Add comment. 2004-05-29 Ranjit Mathew - Per Bothner + Per Bothner * java-tree.h (DECL_LOCAL_FINAL_IUD): New macro to test if a local variable was initialised upon declaration. diff --git a/gcc/java/Make-lang.in b/gcc/java/Make-lang.in index afc22d8f2a1..1c6cfb1495d 100644 --- a/gcc/java/Make-lang.in +++ b/gcc/java/Make-lang.in @@ -108,13 +108,13 @@ JAVA_OBJS = java/parse.o java/class.o java/decl.o java/expr.o \ java/jcf-path.o java/xref.o java/boehm.o java/java-gimplify.o GCJH_OBJS = java/gjavah.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \ - java/win32-host.o java/zextract.o version.o errors.o ggc-none.o \ + java/win32-host.o java/zextract.o version.o errors.o java/ggc-none.o \ intl.o JVSCAN_OBJS = java/parse-scan.o java/jv-scan.o version.o intl.o JCFDUMP_OBJS = java/jcf-dump.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \ - java/win32-host.o java/zextract.o errors.o version.o ggc-none.o intl.o + java/win32-host.o java/zextract.o errors.o version.o java/ggc-none.o intl.o JVGENMAIN_OBJS = java/jvgenmain.o java/mangle_name.o errors.o intl.o @@ -325,7 +325,7 @@ java/resource.o: java/resource.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(TARGET_H) function.h gt-java-resource.h expr.h java/typeck.o: java/typeck.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \ java/convert.h toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) real.h -java/win32-host.o: java/win32-host.c $(CONFIG_H) $(SYSTEM_H) java/jcf.h +java/win32-host.o: java/win32-host.c $(CONFIG_H) $(SYSTEM_H) coretypes.h java/jcf.h java/verify.o: java/verify.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \ java/javaop.h java/java-opcodes.h java/java-except.h toplev.h $(SYSTEM_H) \ coretypes.h $(TM_H) @@ -342,6 +342,11 @@ java/parse.o: java/parse.c java/jcf-reader.c $(CONFIG_H) $(SYSTEM_H) \ coretypes.h $(TM_H) function.h $(JAVA_TREE_H) $(JAVA_LEX_C) java/parse.h \ java/lex.h input.h $(GGC_H) debug.h gt-java-parse.h gtype-java.h target.h +# ggc-none.c is in the parent directory +java/ggc-none.o: ggc-none.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(GGC_H) + $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ + $(srcdir)/ggc-none.c $(OUTPUT_OPTION) + # jcf-io.o needs $(ZLIBINC) added to cflags. java/jcf-io.o: java/jcf-io.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(JAVA_TREE_H) diff --git a/gcc/java/class.c b/gcc/java/class.c index d88fbb15809..7a67e8f3e59 100644 --- a/gcc/java/class.c +++ b/gcc/java/class.c @@ -2254,7 +2254,7 @@ layout_class_method (tree this_class, tree super_class, DECL_CONSTRUCTOR_P (method_decl) = 1; build_java_argument_signature (TREE_TYPE (method_decl)); } - else if (! METHOD_STATIC (method_decl) && !DECL_ARTIFICIAL (method_decl)) + else if (! METHOD_STATIC (method_decl)) { tree method_sig = build_java_argument_signature (TREE_TYPE (method_decl)); diff --git a/gcc/java/java-gimplify.c b/gcc/java/java-gimplify.c index 6632e934e8a..54d5c754472 100644 --- a/gcc/java/java-gimplify.c +++ b/gcc/java/java-gimplify.c @@ -141,7 +141,8 @@ java_gimplify_expr (tree *expr_p, tree *pre_p ATTRIBUTE_UNUSED, Parameter lists, maybe? Or perhaps that's unnecessary because the front end already generates SAVE_EXPRs. */ - if (TREE_CODE_CLASS (code) == '2' || TREE_CODE_CLASS (code) == '<') + if (TREE_CODE_CLASS (code) == tcc_binary + || TREE_CODE_CLASS (code) == tcc_comparison) { enum gimplify_status stat = gimplify_expr (&TREE_OPERAND (*expr_p, 0), pre_p, post_p, diff --git a/gcc/java/java-tree.def b/gcc/java/java-tree.def index 25ee5386205..2f2b9f467eb 100644 --- a/gcc/java/java-tree.def +++ b/gcc/java/java-tree.def @@ -1,33 +1,34 @@ /* Shift right, logical. */ -DEFTREECODE (URSHIFT_EXPR, "urshift_expr", '2', 2) +DEFTREECODE (URSHIFT_EXPR, "urshift_expr", tcc_binary, 2) /* Return -1, 0, 1 depending on whether the first argument is less, equal, or greater to the second argument. */ -DEFTREECODE (COMPARE_EXPR, "compare_expr", '2', 2) +DEFTREECODE (COMPARE_EXPR, "compare_expr", tcc_binary, 2) /* Same as COMPARE_EXPR, but if either value is NaN, the result is -1. */ -DEFTREECODE (COMPARE_L_EXPR, "compare_l_expr", '2', 2) +DEFTREECODE (COMPARE_L_EXPR, "compare_l_expr", tcc_binary, 2) /* Same as COMPARE_EXPR, but if either value is NaN, the result is 1. */ -DEFTREECODE (COMPARE_G_EXPR, "compare_g_expr", '2', 2) +DEFTREECODE (COMPARE_G_EXPR, "compare_g_expr", tcc_binary, 2) /* Unary plus. Operand 0 is the expression the unary plus is applied to */ -DEFTREECODE (UNARY_PLUS_EXPR, "unary_plus_expr", '1', 1) +DEFTREECODE (UNARY_PLUS_EXPR, "unary_plus_expr", tcc_unary, 1) /* New array creation expression. Operand 0 is the array base type. Operand 1 is the list of dimension expressions. Operand 2 is the number of other dimensions of unspecified range. Once patched, the node will bear the type of the created array. */ -DEFTREECODE (NEW_ARRAY_EXPR, "new_array_expr", 'e', 3) +DEFTREECODE (NEW_ARRAY_EXPR, "new_array_expr", tcc_expression, 3) /* New anonymous array creation expression. Operand 0 is the base type of the anonymous array. Operand 1 is the signature of the dimensions this array contains. Operand 2 is the anonymous array initializer. Once patched, the node will bear the type of the created array. */ -DEFTREECODE (NEW_ANONYMOUS_ARRAY_EXPR, "new_anonymous_array", 'e', 3) +DEFTREECODE (NEW_ANONYMOUS_ARRAY_EXPR, "new_anonymous_array", + tcc_expression, 3) /* New class creation expression. Operand 0 is the name of the class to be created @@ -35,68 +36,69 @@ DEFTREECODE (NEW_ANONYMOUS_ARRAY_EXPR, "new_anonymous_array", 'e', 3) There is no operand 2. That slot is used for the CALL_EXPR_RTL macro (see preexpand_calls). The type should be the one of the created class. */ -DEFTREECODE (NEW_CLASS_EXPR, "new_class_expr", 'e', 3) +DEFTREECODE (NEW_CLASS_EXPR, "new_class_expr", tcc_expression, 3) /* Defines `this' as an expression. */ -DEFTREECODE (THIS_EXPR, "this", '1', 0) +DEFTREECODE (THIS_EXPR, "this", tcc_unary, 0) /* Case statement expression. Operand 1 is the case value. */ -DEFTREECODE (CASE_EXPR, "case", 'e', 1) +DEFTREECODE (CASE_EXPR, "case", tcc_expression, 1) /* Default statement expression. */ -DEFTREECODE (DEFAULT_EXPR, "default", 'e', 0) +DEFTREECODE (DEFAULT_EXPR, "default", tcc_expression, 0) /* Try expression Operand 0 is the tried block, Operand 1 contains chained catch nodes. */ -DEFTREECODE (TRY_EXPR, "try-catch", 'e', 2) +DEFTREECODE (TRY_EXPR, "try-catch", tcc_expression, 2) /* Catch clause. Operand 0 is the catch clause block, which contains the declaration of the catch clause parameter. */ -DEFTREECODE (JAVA_CATCH_EXPR, "catch", '1', 1) +DEFTREECODE (JAVA_CATCH_EXPR, "catch", tcc_unary, 1) /* Synchronized statement. Operand 0 is the expression on which we wish to synchronize, Operand 1 is the synchronized expression block. */ -DEFTREECODE (SYNCHRONIZED_EXPR, "synchronized", 'e', 2) +DEFTREECODE (SYNCHRONIZED_EXPR, "synchronized", tcc_expression, 2) /* Throw statement. Operand 0 is the throw expression. */ -DEFTREECODE (THROW_EXPR, "throw", '1', 1) +DEFTREECODE (THROW_EXPR, "throw", tcc_unary, 1) /* Conditional operator. Operand 0 is the condition expression Operand 1 is the then-value Operand 2 is the else-value. */ -DEFTREECODE (CONDITIONAL_EXPR, "?:", 'e', 3) +DEFTREECODE (CONDITIONAL_EXPR, "?:", tcc_expression, 3) /* instanceof operator. Operand 0 is the expression that is getting tested Operand 1 is the class used for the test. */ -DEFTREECODE (INSTANCEOF_EXPR, "instanceof", 'e', 2) +DEFTREECODE (INSTANCEOF_EXPR, "instanceof", tcc_expression, 2) /* Array initializers. Operand 0 is the (sub) array target to initialize, left to NULL_TREE when the node is created. Operand 1 is a CONSTRUCTOR node. */ -DEFTREECODE (NEW_ARRAY_INIT, "new_array_init", '1', 1) +DEFTREECODE (NEW_ARRAY_INIT, "new_array_init", tcc_unary, 1) /* Class literal. Operand 0 is the name of the class we're trying to build a reference from. */ -DEFTREECODE (CLASS_LITERAL, "class_literal", '1', 1) +DEFTREECODE (CLASS_LITERAL, "class_literal", tcc_unary, 1) /* The Java object within the exception object from the runtime. */ -DEFTREECODE (JAVA_EXC_OBJ_EXPR, "java_exc_obj_expr", 'e', 0) +DEFTREECODE (JAVA_EXC_OBJ_EXPR, "java_exc_obj_expr", tcc_expression, 0) /* Annotates a tree node (usually an expression) with source location information: a file name (EXPR_WFL_FILENAME); a line number (EXPR_WFL_LINENO); and column number (EXPR_WFL_COLNO). It is expanded as the contained node (EXPR_WFL_NODE); a line note should be emitted first if EXPR_WFL_EMIT_LINE_NOTE. */ -DEFTREECODE (EXPR_WITH_FILE_LOCATION, "expr_with_file_location", 'e', 3) +DEFTREECODE (EXPR_WITH_FILE_LOCATION, "expr_with_file_location", + tcc_expression, 3) /* Local variables: diff --git a/gcc/java/jcf-write.c b/gcc/java/jcf-write.c index 7b5bdcce7f1..5137eecf292 100644 --- a/gcc/java/jcf-write.c +++ b/gcc/java/jcf-write.c @@ -2036,8 +2036,7 @@ generate_bytecode_insns (tree exp, int target, struct jcf_partial *state) /* If the rhs is a binary expression and the left operand is `==' to the lhs then we have an OP= expression. In this case we must do some special processing. */ - if (TREE_CODE_CLASS (TREE_CODE (rhs)) == '2' - && lhs == TREE_OPERAND (rhs, 0)) + if (BINARY_CLASS_P (rhs) && lhs == TREE_OPERAND (rhs, 0)) { if (TREE_CODE (lhs) == COMPONENT_REF) { diff --git a/gcc/java/lang.c b/gcc/java/lang.c index b9429a1fade..d1c69770787 100644 --- a/gcc/java/lang.c +++ b/gcc/java/lang.c @@ -78,9 +78,9 @@ static void java_clear_binding_stack (void); #define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE, -const char tree_code_type[] = { +const enum tree_code_class tree_code_type[] = { #include "tree.def" - 'x', + tcc_exceptional, #include "java-tree.def" }; #undef DEFTREECODE @@ -430,8 +430,7 @@ put_decl_node (tree node) node = TREE_TYPE (node); was_pointer = 1; } - if (TREE_CODE_CLASS (TREE_CODE (node)) == 'd' - && DECL_NAME (node) != NULL_TREE) + if (DECL_P (node) && DECL_NAME (node) != NULL_TREE) { if (TREE_CODE (node) == FUNCTION_DECL) { @@ -464,8 +463,7 @@ put_decl_node (tree node) else put_decl_node (DECL_NAME (node)); } - else if (TREE_CODE_CLASS (TREE_CODE (node)) == 't' - && TYPE_NAME (node) != NULL_TREE) + else if (TYPE_P (node) && TYPE_NAME (node) != NULL_TREE) { if (TREE_CODE (node) == RECORD_TYPE && TYPE_ARRAY_P (node)) { diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 499627152bc..377c195323b 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -1687,7 +1687,7 @@ do_statement: for_statement: for_begin SC_TK expression SC_TK for_update CP_TK statement { - if (TREE_CODE_CLASS (TREE_CODE ($3)) == 'c') + if (CONSTANT_CLASS_P ($3)) $3 = build_wfl_node ($3); $$ = finish_for_loop (EXPR_WFL_LINECOL ($3), $3, $5, $7); } @@ -3126,7 +3126,7 @@ find_expr_with_wfl (tree node) { while (node) { - char code; + enum tree_code_class code; tree to_return; switch (TREE_CODE (node)) @@ -3152,7 +3152,8 @@ find_expr_with_wfl (tree node) default: code = TREE_CODE_CLASS (TREE_CODE (node)); - if (((code == '1') || (code == '2') || (code == 'e')) + if (((code == tcc_unary) || (code == tcc_binary) + || (code == tcc_expression)) && EXPR_WFL_LINECOL (node)) return node; return NULL_TREE; @@ -14895,8 +14896,7 @@ finish_for_loop (int location, tree condition, tree update, tree body) { /* Try to detect constraint violations. These would be programming errors somewhere. */ - if (! IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (up2))) - || TREE_CODE (up2) == LOOP_EXPR) + if (! EXPR_P (up2) || TREE_CODE (up2) == LOOP_EXPR) abort (); SUPPRESS_UNREACHABLE_ERROR (up2) = 1; } diff --git a/gcc/java/win32-host.c b/gcc/java/win32-host.c index b80da0786a0..d5d9eb8a1b7 100644 --- a/gcc/java/win32-host.c +++ b/gcc/java/win32-host.c @@ -28,6 +28,8 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "config.h" #include "system.h" +#include "coretypes.h" +#include "jcf.h" #define WIN32_LEAN_AND_MEAN #include diff --git a/gcc/lambda-code.c b/gcc/lambda-code.c index 9ecf5bb71ac..42ec4b047e5 100644 --- a/gcc/lambda-code.c +++ b/gcc/lambda-code.c @@ -47,7 +47,7 @@ math. A little terminology and a general sketch of the algorithm. See "A singular - loop transformatrion framework based on non-singular matrices" by Wei Li and + loop transformation framework based on non-singular matrices" by Wei Li and Keshav Pingali for formal proofs that the various statements below are correct. @@ -74,20 +74,20 @@ For a dense source space, we take the transformation matrix, decompose it into a lower triangular part (H) and a unimodular part (U). - We then compute the auxillary space from the unimodular part (source loop - nest . U = auxillary space) , which has two important properties: + We then compute the auxiliary space from the unimodular part (source loop + nest . U = auxiliary space) , which has two important properties: 1. It traverses the iterations in the same lexicographic order as the source space. 2. It is a dense space when the source is a dense space (even if the target space is going to be sparse). - Given the auxillary space, we use the lower triangular part to compute the + Given the auxiliary space, we use the lower triangular part to compute the bounds in the target space by simple matrix multiplication. The gaps in the target space (IE the new loop step sizes) will be the diagonals of the H matrix. Sparse source spaces require another step, because you can't directly compute - the exact bounds of the auxillary and target space from the sparse space. + the exact bounds of the auxiliary and target space from the sparse space. Rather than try to come up with a separate algorithm to handle sparse source spaces directly, we just find a legal transformation matrix that gives you the sparse source space, from a dense space, and then transform the dense @@ -115,6 +115,13 @@ Fourier-Motzkin elimination is used to compute the bounds of the base space of the lattice. */ + + +DEF_VEC_GC_P(int); + +static bool perfect_nestify (struct loops *, + struct loop *, VEC (tree) *, + VEC (tree) *, VEC (int) *, VEC (tree) *); /* Lattice stuff that is internal to the code generation algorithm. */ typedef struct @@ -749,7 +756,7 @@ lambda_compute_auxillary_space (lambda_loopnest nest, } /* Compute the loop bounds for the target space, using the bounds of - the auxillary nest AUXILLARY_NEST, and the triangular matrix H. This is + the auxiliary nest AUXILLARY_NEST, and the triangular matrix H. This is done by matrix multiplication and then transformation of the new matrix back into linear expression form. Return the target loopnest. */ @@ -1160,20 +1167,23 @@ gcc_tree_to_linear_expression (int depth, tree expr, static bool invariant_in_loop (struct loop *loop, tree op) { + if (is_gimple_min_invariant (op)) + return true; if (loop->depth == 0) return true; if (TREE_CODE (op) == SSA_NAME) { + tree def; + def = SSA_NAME_DEF_STMT (op); if (TREE_CODE (SSA_NAME_VAR (op)) == PARM_DECL - && IS_EMPTY_STMT (SSA_NAME_DEF_STMT (op))) + && IS_EMPTY_STMT (def)) return true; - if (IS_EMPTY_STMT (SSA_NAME_DEF_STMT (op))) + if (IS_EMPTY_STMT (def)) return false; - if (loop->outer) - if (!invariant_in_loop (loop->outer, op)) + if (loop->outer + && !invariant_in_loop (loop->outer, op)) return false; - return !flow_bb_inside_loop_p (loop, - bb_for_stmt (SSA_NAME_DEF_STMT (op))); + return !flow_bb_inside_loop_p (loop, bb_for_stmt (def)); } return false; } @@ -1190,7 +1200,10 @@ static lambda_loop gcc_loop_to_lambda_loop (struct loop *loop, int depth, VEC (tree) ** invariants, tree * ourinductionvar, - VEC (tree) * outerinductionvars) + VEC (tree) * outerinductionvars, + VEC (tree) ** lboundvars, + VEC (tree) ** uboundvars, + VEC (int) ** steps) { tree phi; tree exit_cond; @@ -1201,15 +1214,11 @@ gcc_loop_to_lambda_loop (struct loop *loop, int depth, tree test; int stepint; int extra = 0; - tree uboundvar; + tree lboundvar, uboundvar; use_optype uses; - /* Find out induction var and set the pointer so that the caller can - append it to the outerinductionvars array later. */ - + /* Find out induction var and exit condition. */ inductionvar = find_induction_var_from_exit_cond (loop); - *ourinductionvar = inductionvar; - exit_cond = get_loop_exit_condition (loop); if (inductionvar == NULL || exit_cond == NULL) @@ -1260,7 +1269,9 @@ gcc_loop_to_lambda_loop (struct loop *loop, int depth, } } - + /* The induction variable name/version we want to put in the array is the + result of the induction variable phi node. */ + *ourinductionvar = PHI_RESULT (phi); access_fn = instantiate_parameters (loop, analyze_scalar_evolution (loop, PHI_RESULT (phi))); if (!access_fn) @@ -1316,14 +1327,20 @@ gcc_loop_to_lambda_loop (struct loop *loop, int depth, } if (flow_bb_inside_loop_p (loop, PHI_ARG_EDGE (phi, 0)->src)) - - lbound = gcc_tree_to_linear_expression (depth, PHI_ARG_DEF (phi, 1), - outerinductionvars, *invariants, - 0); + { + lboundvar = PHI_ARG_DEF (phi, 1); + lbound = gcc_tree_to_linear_expression (depth, lboundvar, + outerinductionvars, *invariants, + 0); + } else - lbound = gcc_tree_to_linear_expression (depth, PHI_ARG_DEF (phi, 0), - outerinductionvars, *invariants, - 0); + { + lboundvar = PHI_ARG_DEF (phi, 0); + lbound = gcc_tree_to_linear_expression (depth, lboundvar, + outerinductionvars, *invariants, + 0); + } + if (!lbound) { @@ -1368,6 +1385,11 @@ gcc_loop_to_lambda_loop (struct loop *loop, int depth, uboundvar, outerinductionvars, *invariants, extra); + VEC_safe_push (tree, *uboundvars, build (PLUS_EXPR, integer_type_node, + uboundvar, + build_int_cst (integer_type_node, extra))); + VEC_safe_push (tree, *lboundvars, lboundvar); + VEC_safe_push (int, *steps, stepint); if (!ubound) { @@ -1398,9 +1420,9 @@ find_induction_var_from_exit_cond (struct loop *loop) if (TREE_CODE (expr) != COND_EXPR) return NULL_TREE; test = TREE_OPERAND (expr, 0); - if (TREE_CODE_CLASS (TREE_CODE (test)) != '<') + if (!COMPARISON_CLASS_P (test)) return NULL_TREE; - /* This is a guess. We say that for a <,!=,<= b, a is the induction + /* This is a guess. We say that for a <,!=,<= b, a is the induction variable. For >, >=, we guess b is the induction variable. If we are wrong, it'll fail the rest of the induction variable tests, and @@ -1433,15 +1455,20 @@ DEF_VEC_GC_P(lambda_loop); during this process. */ lambda_loopnest -gcc_loopnest_to_lambda_loopnest (struct loop * loop_nest, +gcc_loopnest_to_lambda_loopnest (struct loops *currloops, + struct loop * loop_nest, VEC (tree) **inductionvars, - VEC (tree) **invariants) + VEC (tree) **invariants, + bool need_perfect_nest) { lambda_loopnest ret; struct loop *temp; int depth = 0; size_t i; VEC (lambda_loop) *loops; + VEC (tree) *uboundvars; + VEC (tree) *lboundvars; + VEC (int) *steps; lambda_loop newloop; tree inductionvar = NULL; @@ -1454,18 +1481,30 @@ gcc_loopnest_to_lambda_loopnest (struct loop * loop_nest, loops = VEC_alloc (lambda_loop, 1); *inductionvars = VEC_alloc (tree, 1); *invariants = VEC_alloc (tree, 1); + lboundvars = VEC_alloc (tree, 1); + uboundvars = VEC_alloc (tree, 1); + steps = VEC_alloc (int, 1); temp = loop_nest; while (temp) { newloop = gcc_loop_to_lambda_loop (temp, depth, invariants, - &inductionvar, *inductionvars); + &inductionvar, *inductionvars, + &lboundvars, &uboundvars, + &steps); if (!newloop) return NULL; VEC_safe_push (tree, *inductionvars, inductionvar); VEC_safe_push (lambda_loop, loops, newloop); temp = temp->inner; } - + if (need_perfect_nest + && !perfect_nestify (currloops, loop_nest, + lboundvars, uboundvars, steps, *inductionvars)) + { + if (dump_file) + fprintf (dump_file, "Not a perfect nest and couldn't convert to one.\n"); + return NULL; + } ret = lambda_loopnest_new (depth, 2 * depth); for (i = 0; VEC_iterate (lambda_loop, loops, i, newloop); i++) LN_LOOPS (ret)[i] = newloop; @@ -1489,7 +1528,7 @@ lbv_to_gcc_expression (lambda_body_vector lbv, /* Create a statement list and a linear expression temporary. */ stmts = alloc_stmt_list (); - resvar = create_tmp_var (integer_type_node, "lletmp"); + resvar = create_tmp_var (integer_type_node, "lbvtmp"); add_referenced_tmp_var (resvar); /* Start at 0. */ @@ -1767,7 +1806,6 @@ lambda_loopnest_to_gcc_loopnest (struct loop *old_loopnest, size_t depth = 0; VEC(tree) *new_ivs; block_stmt_iterator bsi; - basic_block *bbs; if (dump_file) { @@ -1849,66 +1887,56 @@ lambda_loopnest_to_gcc_loopnest (struct loop *old_loopnest, i++; temp = temp->inner; } - - /* Go through the loop and make iv replacements. */ - bbs = get_loop_body (old_loopnest); - for (i = 0; i < old_loopnest->num_nodes; i++) - for (bsi = bsi_start (bbs[i]); !bsi_end_p (bsi); bsi_next (&bsi)) - { - tree stmt = bsi_stmt (bsi); - use_optype uses; - size_t j; - - get_stmt_operands (stmt); - uses = STMT_USE_OPS (stmt); - for (j = 0; j < NUM_USES (uses); j++) - { - size_t k; - use_operand_p use = USE_OP_PTR (uses, j); - for (k = 0; k < VEC_length (tree, old_ivs); k++) - { - tree oldiv = VEC_index (tree, old_ivs, k); - if (USE_FROM_PTR (use) == oldiv) - { - tree newiv, stmts; - lambda_body_vector lbv; - - /* Compute the new expression for the induction - variable. */ - depth = VEC_length (tree, new_ivs); - lbv = lambda_body_vector_new (depth); - LBV_COEFFICIENTS (lbv)[k] = 1; - lbv = lambda_body_vector_compute_new (transform, lbv); - newiv = lbv_to_gcc_expression (lbv, new_ivs, &stmts); - - /* Insert the statements to build that - expression. */ - bsi_insert_before (&bsi, stmts, BSI_SAME_STMT); - - /* Replace the use with the result of that - expression. */ - if (dump_file) - { - fprintf (dump_file, - "Replacing induction variable use of "); - print_generic_stmt (dump_file, USE_FROM_PTR (use), 0); - fprintf (dump_file, " with "); - print_generic_stmt (dump_file, newiv, 0); - fprintf (dump_file, "\n"); - } - SET_USE (use, newiv); - } - } - - } - } + + /* Rewrite uses of the old ivs so that they are now specified in terms of + the new ivs. */ + temp = old_loopnest; + for (i = 0; i < VEC_length (tree, old_ivs); i++) + { + int j; + tree oldiv = VEC_index (tree, old_ivs, i); + dataflow_t imm = get_immediate_uses (SSA_NAME_DEF_STMT (oldiv)); + for (j = 0; j < num_immediate_uses (imm); j++) + { + size_t k; + tree stmt = immediate_use (imm, j); + use_optype uses; + get_stmt_operands (stmt); + uses = STMT_USE_OPS (stmt); + for (k = 0; k < NUM_USES (uses); k++) + { + use_operand_p use = USE_OP_PTR (uses, k); + if (USE_FROM_PTR (use) == oldiv) + { + tree newiv, stmts; + lambda_body_vector lbv; + /* Compute the new expression for the induction + variable. */ + depth = VEC_length (tree, new_ivs); + lbv = lambda_body_vector_new (depth); + LBV_COEFFICIENTS (lbv)[i] = 1; + lbv = lambda_body_vector_compute_new (transform, lbv); + newiv = lbv_to_gcc_expression (lbv, new_ivs, &stmts); + bsi = stmt_for_bsi (stmt); + /* Insert the statements to build that + expression. */ + bsi_insert_before (&bsi, stmts, BSI_SAME_STMT); + SET_USE (use, newiv); + modify_stmt (stmt); + + } + } + } + } } + /* Returns true when the vector V is lexicographically positive, in - other words, when the first non zero element is positive. */ + other words, when the first nonzero element is positive. */ static bool -lambda_vector_lexico_pos (lambda_vector v, unsigned n) +lambda_vector_lexico_pos (lambda_vector v, + unsigned n) { unsigned i; for (i = 0; i < n; i++) @@ -1923,6 +1951,442 @@ lambda_vector_lexico_pos (lambda_vector v, unsigned n) return true; } + +/* Return TRUE if this is not interesting statement from the perspective of + determining if we have a perfect loop nest. */ + +static bool +not_interesting_stmt (tree stmt) +{ + /* Note that COND_EXPR's aren't interesting because if they were exiting the + loop, we would have already failed the number of exits tests. */ + if (TREE_CODE (stmt) == LABEL_EXPR + || TREE_CODE (stmt) == GOTO_EXPR + || TREE_CODE (stmt) == COND_EXPR) + return true; + return false; +} + +/* Return TRUE if PHI uses DEF for it's in-the-loop edge for LOOP. */ + +static bool +phi_loop_edge_uses_def (struct loop *loop, tree phi, tree def) +{ + int i; + for (i = 0; i < PHI_NUM_ARGS (phi); i++) + if (flow_bb_inside_loop_p (loop, PHI_ARG_EDGE (phi, i)->src)) + if (PHI_ARG_DEF (phi, i) == def) + return true; + return false; +} + +/* Return TRUE if STMT is a use of PHI_RESULT. */ + +static bool +stmt_uses_phi_result (tree stmt, tree phi_result) +{ + use_optype uses = STMT_USE_OPS (stmt); + + /* This is conservatively true, because we only want SIMPLE bumpers + of the form x +- constant for our pass. */ + if (NUM_USES (uses) != 1) + return false; + if (USE_OP (uses, 0) == phi_result) + return true; + + return false; +} + +/* STMT is a bumper stmt for LOOP if the version it defines is used in the + in-loop-edge in a phi node, and the operand it uses is the result of that + phi node. + I.E. i_29 = i_3 + 1 + i_3 = PHI (0, i_29); */ + +static bool +stmt_is_bumper_for_loop (struct loop *loop, tree stmt) +{ + tree use; + tree def; + def_optype defs = STMT_DEF_OPS (stmt); + dataflow_t imm; + int i; + + if (NUM_DEFS (defs) != 1) + return false; + def = DEF_OP (defs, 0); + imm = get_immediate_uses (stmt); + for (i = 0; i < num_immediate_uses (imm); i++) + { + use = immediate_use (imm, i); + if (TREE_CODE (use) == PHI_NODE) + { + if (phi_loop_edge_uses_def (loop, use, def)) + if (stmt_uses_phi_result (stmt, PHI_RESULT (use))) + return true; + } + } + return false; +} +/* Return true if LOOP is a perfect loop nest. + Perfect loop nests are those loop nests where all code occurs in the + innermost loop body. + If S is a program statement, then + + ie + DO I = 1, 20 + S1 + DO J = 1, 20 + ... + END DO + END DO + is not a perfect loop nest because of S1. + + DO I = 1, 20 + DO J = 1, 20 + S1 + ... + END DO + END DO + is a perfect loop nest. + + Since we don't have high level loops anymore, we basically have to walk our + statements and ignore those that are there because the loop needs them (IE + the induction variable increment, and jump back to the top of the loop). */ + +bool +perfect_nest_p (struct loop *loop) +{ + basic_block *bbs; + size_t i; + tree exit_cond; + + if (!loop->inner) + return true; + bbs = get_loop_body (loop); + exit_cond = get_loop_exit_condition (loop); + for (i = 0; i < loop->num_nodes; i++) + { + if (bbs[i]->loop_father == loop) + { + block_stmt_iterator bsi; + for (bsi = bsi_start (bbs[i]); !bsi_end_p (bsi); bsi_next (&bsi)) + { + tree stmt = bsi_stmt (bsi); + if (stmt == exit_cond + || not_interesting_stmt (stmt) + || stmt_is_bumper_for_loop (loop, stmt)) + continue; + free (bbs); + return false; + } + } + } + free (bbs); + /* See if the inner loops are perfectly nested as well. */ + if (loop->inner) + return perfect_nest_p (loop->inner); + return true; +} + + +/* Add phi args using PENDINT_STMT list. */ + +static void +nestify_update_pending_stmts (edge e) +{ + basic_block dest; + tree phi, arg, def; + + if (!PENDING_STMT (e)) + return; + + dest = e->dest; + + for (phi = phi_nodes (dest), arg = PENDING_STMT (e); + phi; + phi = TREE_CHAIN (phi), arg = TREE_CHAIN (arg)) + { + def = TREE_VALUE (arg); + add_phi_arg (&phi, def, e); + } + + PENDING_STMT (e) = NULL; +} + +/* Replace the USES of tree X in STMT with tree Y */ + +static void +replace_uses_of_x_with_y (tree stmt, tree x, tree y) +{ + use_optype uses = STMT_USE_OPS (stmt); + size_t i; + for (i = 0; i < NUM_USES (uses); i++) + { + if (USE_OP (uses, i) == x) + SET_USE_OP (uses, i, y); + } +} + +/* Return TRUE if STMT uses tree OP in it's uses. */ + +static bool +stmt_uses_op (tree stmt, tree op) +{ + use_optype uses = STMT_USE_OPS (stmt); + size_t i; + for (i = 0; i < NUM_USES (uses); i++) + { + if (USE_OP (uses, i) == op) + return true; + } + return false; +} + +/* Return TRUE if LOOP is an imperfect nest that we can convert to a perfect + one. LOOPIVS is a vector of induction variables, one per loop. + ATM, we only handle imperfect nests of depth 2, where all of the statements + occur after the inner loop. */ + +static bool +can_convert_to_perfect_nest (struct loop *loop, + VEC (tree) *loopivs) +{ + basic_block *bbs; + tree exit_condition; + size_t i; + block_stmt_iterator bsi; + + /* Can't handle triply nested+ loops yet. */ + if (!loop->inner || loop->inner->inner) + return false; + + /* We only handle moving the after-inner-body statements right now, so make + sure all the statements we need to move are located in that position. */ + bbs = get_loop_body (loop); + exit_condition = get_loop_exit_condition (loop); + for (i = 0; i < loop->num_nodes; i++) + { + if (bbs[i]->loop_father == loop) + { + for (bsi = bsi_start (bbs[i]); !bsi_end_p (bsi); bsi_next (&bsi)) + { + size_t j; + tree stmt = bsi_stmt (bsi); + if (stmt == exit_condition + || not_interesting_stmt (stmt) + || stmt_is_bumper_for_loop (loop, stmt)) + continue; + /* If the statement uses inner loop ivs, we == screwed. */ + for (j = 1; j < VEC_length (tree, loopivs); j++) + if (stmt_uses_op (stmt, VEC_index (tree, loopivs, j))) + { + free (bbs); + return false; + } + + /* If the bb of a statement we care about isn't dominated by + the header of the inner loop, then we are also screwed. */ + if (!dominated_by_p (CDI_DOMINATORS, + bb_for_stmt (stmt), + loop->inner->header)) + { + free (bbs); + return false; + } + } + } + } + return true; +} + +/* Transform the loop nest into a perfect nest, if possible. + LOOPS is the current struct loops * + LOOP is the loop nest to transform into a perfect nest + LBOUNDS are the lower bounds for the loops to transform + UBOUNDS are the upper bounds for the loops to transform + STEPS is the STEPS for the loops to transform. + LOOPIVS is the induction variables for the loops to transform. + + Basically, for the case of + + FOR (i = 0; i < 50; i++) + { + FOR (j =0; j < 50; j++) + { + + } + + } + + This function will transform it into a perfect loop nest by splitting the + outer loop into two loops, like so: + + FOR (i = 0; i < 50; i++) + { + FOR (j = 0; j < 50; j++) + { + + } + } + + FOR (i = 0; i < 50; i ++) + { + + } + + Return FALSE if we can't make this loop into a perfect nest. */ +static bool +perfect_nestify (struct loops *loops, + struct loop *loop, + VEC (tree) *lbounds, + VEC (tree) *ubounds, + VEC (int) *steps, + VEC (tree) *loopivs) +{ + basic_block *bbs; + tree exit_condition; + tree then_label, else_label, cond_stmt; + basic_block preheaderbb, headerbb, bodybb, latchbb, olddest; + size_t i; + block_stmt_iterator bsi; + edge e; + struct loop *newloop; + tree phi; + tree uboundvar; + tree stmt; + tree ivvar, ivvarinced; + VEC (tree) *phis; + + if (!can_convert_to_perfect_nest (loop, loopivs)) + return false; + + phis = VEC_alloc (tree, 1); + + /* Create the new loop */ + + olddest = loop->single_exit->dest; + preheaderbb = loop_split_edge_with (loop->single_exit, NULL); + headerbb = create_empty_bb (EXIT_BLOCK_PTR->prev_bb); + + /* This is done because otherwise, it will release the ssa_name too early + when the edge gets redirected and it will get reused, causing the use of + the phi node to get rewritten. */ + + for (phi = phi_nodes (olddest); phi; phi = PHI_CHAIN (phi)) + { + /* These should be simple exit phi copies. */ + if (PHI_NUM_ARGS (phi) != 1) + return false; + VEC_safe_push (tree, phis, PHI_RESULT (phi)); + VEC_safe_push (tree, phis, PHI_ARG_DEF (phi, 0)); + mark_for_rewrite (PHI_RESULT (phi)); + } + e = redirect_edge_and_branch (EDGE_SUCC (preheaderbb, 0), headerbb); + unmark_all_for_rewrite (); + bb_ann (olddest)->phi_nodes = NULL; + /* Add back the old exit phis. */ + while (VEC_length (tree, phis) != 0) + { + tree def; + tree phiname; + def = VEC_pop (tree, phis); + phiname = VEC_pop (tree, phis); + + phi = create_phi_node (phiname, preheaderbb); + add_phi_arg (&phi, def, EDGE_PRED (preheaderbb, 0)); + } + + nestify_update_pending_stmts (e); + bodybb = create_empty_bb (EXIT_BLOCK_PTR->prev_bb); + latchbb = create_empty_bb (EXIT_BLOCK_PTR->prev_bb); + make_edge (headerbb, bodybb, EDGE_FALLTHRU); + then_label = build1 (GOTO_EXPR, void_type_node, tree_block_label (latchbb)); + else_label = build1 (GOTO_EXPR, void_type_node, tree_block_label (olddest)); + cond_stmt = build (COND_EXPR, void_type_node, + build (NE_EXPR, boolean_type_node, + integer_one_node, + integer_zero_node), + then_label, else_label); + bsi = bsi_start (bodybb); + bsi_insert_after (&bsi, cond_stmt, BSI_NEW_STMT); + e = make_edge (bodybb, olddest, EDGE_FALSE_VALUE); + make_edge (bodybb, latchbb, EDGE_TRUE_VALUE); + make_edge (latchbb, headerbb, EDGE_FALLTHRU); + + /* Update the loop structures. */ + newloop = duplicate_loop (loops, loop, olddest->loop_father); + newloop->header = headerbb; + newloop->latch = latchbb; + newloop->single_exit = e; + add_bb_to_loop (latchbb, newloop); + add_bb_to_loop (bodybb, newloop); + add_bb_to_loop (headerbb, newloop); + add_bb_to_loop (preheaderbb, olddest->loop_father); + set_immediate_dominator (CDI_DOMINATORS, bodybb, headerbb); + set_immediate_dominator (CDI_DOMINATORS, headerbb, preheaderbb); + set_immediate_dominator (CDI_DOMINATORS, preheaderbb, + loop->single_exit->src); + set_immediate_dominator (CDI_DOMINATORS, latchbb, bodybb); + set_immediate_dominator (CDI_DOMINATORS, olddest, bodybb); + /* Create the new iv. */ + ivvar = create_tmp_var (integer_type_node, "perfectiv"); + add_referenced_tmp_var (ivvar); + bsi = bsi_last (EDGE_PRED (newloop->latch, 0)->src); + create_iv (VEC_index (tree, lbounds, 0), + build_int_cst (integer_type_node, + VEC_index (int, steps, 0)), + ivvar, newloop, &bsi, false, &ivvar, &ivvarinced); + + /* Create the new upper bound. This may be not just a variable, so we copy + it to one just in case. */ + + exit_condition = get_loop_exit_condition (newloop); + uboundvar = create_tmp_var (integer_type_node, "uboundvar"); + add_referenced_tmp_var (uboundvar); + stmt = build (MODIFY_EXPR, void_type_node, uboundvar, + VEC_index (tree, ubounds, 0)); + uboundvar = make_ssa_name (uboundvar, stmt); + TREE_OPERAND (stmt, 0) = uboundvar; + bsi_insert_before (&bsi, stmt, BSI_SAME_STMT); + COND_EXPR_COND (exit_condition) = build (LE_EXPR, + boolean_type_node, + ivvarinced, + uboundvar); + + bbs = get_loop_body (loop); + /* Now replace the induction variable in the moved statements with the + correct loop induction variable. */ + for (i = 0; i < loop->num_nodes; i++) + { + block_stmt_iterator tobsi = bsi_last (bodybb); + if (bbs[i]->loop_father == loop) + { + /* Note that the bsi only needs to be explicitly incremented + when we don't move something, since it is automatically + incremented when we do. */ + for (bsi = bsi_start (bbs[i]); !bsi_end_p (bsi);) + { + tree stmt = bsi_stmt (bsi); + if (stmt == exit_condition + || not_interesting_stmt (stmt) + || stmt_is_bumper_for_loop (loop, stmt)) + { + bsi_next (&bsi); + continue; + } + replace_uses_of_x_with_y (stmt, + VEC_index (tree, loopivs, 0), + ivvar); + bsi_move_before (&bsi, &tobsi); + } + } + } + free (bbs); + flow_loops_find (loops, LOOP_ALL); + return perfect_nest_p (loop); +} + /* Return true if TRANS is a legal transformation matrix that respects the dependence vectors in DISTS and DIRS. The conservative answer is false. @@ -1937,21 +2401,23 @@ lambda_vector_lexico_pos (lambda_vector v, unsigned n) the zero vector." S.Muchnick. */ bool -lambda_transform_legal_p (lambda_trans_matrix trans, - int nb_loops, varray_type dependence_relations) +lambda_transform_legal_p (lambda_trans_matrix trans, + int nb_loops, + varray_type dependence_relations) { unsigned int i; lambda_vector distres; struct data_dependence_relation *ddr; #if defined ENABLE_CHECKING - gcc_assert (LTM_COLSIZE (trans) == nb_loops - && LTM_ROWSIZE (trans) == nb_loops); + if (LTM_COLSIZE (trans) != nb_loops + || LTM_ROWSIZE (trans) != nb_loops) + abort (); #endif /* When there is an unknown relation in the dependence_relations, we know that it is no worth looking at this loop nest: give up. */ - ddr = (struct data_dependence_relation *) + ddr = (struct data_dependence_relation *) VARRAY_GENERIC_PTR (dependence_relations, 0); if (ddr == NULL) return true; @@ -1963,12 +2429,14 @@ lambda_transform_legal_p (lambda_trans_matrix trans, /* For each distance vector in the dependence graph. */ for (i = 0; i < VARRAY_ACTIVE_SIZE (dependence_relations); i++) { - ddr = (struct data_dependence_relation *) + ddr = (struct data_dependence_relation *) VARRAY_GENERIC_PTR (dependence_relations, i); + + /* Don't care about relations for which we know that there is no - dependence, nor about read-read (aka. output-dependences): - these data accesses can happen in any order. */ + dependence, nor about read-read (aka. output-dependences): + these data accesses can happen in any order. */ if (DDR_ARE_DEPENDENT (ddr) == chrec_known || (DR_IS_READ (DDR_A (ddr)) && DR_IS_READ (DDR_B (ddr)))) continue; @@ -1977,12 +2445,11 @@ lambda_transform_legal_p (lambda_trans_matrix trans, return false; /* Compute trans.dist_vect */ - lambda_matrix_vector_mult (LTM_MATRIX (trans), nb_loops, nb_loops, + lambda_matrix_vector_mult (LTM_MATRIX (trans), nb_loops, nb_loops, DDR_DIST_VECT (ddr), distres); if (!lambda_vector_lexico_pos (distres, nb_loops)) return false; } - return true; } diff --git a/gcc/lambda-mat.c b/gcc/lambda-mat.c index 4734dc297b8..8f4cbd0e485 100644 --- a/gcc/lambda-mat.c +++ b/gcc/lambda-mat.c @@ -70,6 +70,29 @@ lambda_matrix_id (lambda_matrix mat, int size) mat[i][j] = (i == j) ? 1 : 0; } +/* Return true if MAT is the identity matrix of SIZE */ + +bool +lambda_matrix_id_p (lambda_matrix mat, int size) +{ + int i, j; + for (i = 0; i < size; i++) + for (j = 0; j < size; j++) + { + if (i == j) + { + if (mat[i][j] != 1) + return false; + } + else + { + if (mat[i][j] != 0) + return false; + } + } + return true; +} + /* Negate the elements of the M x N matrix MAT1 and store it in MAT2. */ void @@ -441,7 +464,7 @@ lambda_matrix_hermite (lambda_matrix mat, int n, } } - /* Stop when only the diagonal element is non-zero. */ + /* Stop when only the diagonal element is nonzero. */ while (lambda_vector_first_nz (row, n, j + 1) < n) { minimum_col = lambda_vector_min_nz (row, n, j); @@ -548,7 +571,7 @@ lambda_matrix_left_hermite (lambda_matrix A, int m, int n, } } -/* When it exists, return the first non-zero row in MAT after row +/* When it exists, return the first nonzero row in MAT after row STARTROW. Otherwise return rowsize. */ int diff --git a/gcc/lambda-trans.c b/gcc/lambda-trans.c index 5195bb61c8f..2179c7f113e 100644 --- a/gcc/lambda-trans.c +++ b/gcc/lambda-trans.c @@ -45,7 +45,18 @@ lambda_trans_matrix_new (int colsize, int rowsize) return ret; } -/* Compute the inverse of the transformation. */ +/* Return true if MAT is an identity matrix. */ + +bool +lambda_trans_matrix_id_p (lambda_trans_matrix mat) +{ + if (LTM_ROWSIZE (mat) != LTM_COLSIZE (mat)) + return false; + return lambda_matrix_id_p (LTM_MATRIX (mat), LTM_ROWSIZE (mat)); +} + + +/* Compute the inverse of the transformation matrix MAT. */ lambda_trans_matrix lambda_trans_matrix_inverse (lambda_trans_matrix mat) diff --git a/gcc/lambda.h b/gcc/lambda.h index ec48ea44a7d..b7360241acc 100644 --- a/gcc/lambda.h +++ b/gcc/lambda.h @@ -105,7 +105,9 @@ typedef struct lambda_loopnest lambda_loopnest_new (int, int); lambda_loopnest lambda_loopnest_transform (lambda_loopnest, lambda_trans_matrix); - +struct loop; +struct loops; +bool perfect_nest_p (struct loop *); bool lambda_transform_legal_p (lambda_trans_matrix, int, varray_type); void print_lambda_loopnest (FILE *, lambda_loopnest, char); @@ -116,6 +118,7 @@ void print_lambda_loop (FILE *, lambda_loop, int, int, char); lambda_matrix lambda_matrix_new (int, int); void lambda_matrix_id (lambda_matrix, int); +bool lambda_matrix_id_p (lambda_matrix, int); void lambda_matrix_copy (lambda_matrix, lambda_matrix, int, int); void lambda_matrix_negate (lambda_matrix, lambda_matrix, int, int); void lambda_matrix_transpose (lambda_matrix, lambda_matrix, int, int); @@ -153,16 +156,17 @@ lambda_trans_matrix lambda_trans_matrix_inverse (lambda_trans_matrix); void print_lambda_trans_matrix (FILE *, lambda_trans_matrix); void lambda_matrix_vector_mult (lambda_matrix, int, int, lambda_vector, lambda_vector); +bool lambda_trans_matrix_id_p (lambda_trans_matrix); lambda_body_vector lambda_body_vector_new (int); lambda_body_vector lambda_body_vector_compute_new (lambda_trans_matrix, lambda_body_vector); void print_lambda_body_vector (FILE *, lambda_body_vector); -struct loop; - -lambda_loopnest gcc_loopnest_to_lambda_loopnest (struct loop *, +lambda_loopnest gcc_loopnest_to_lambda_loopnest (struct loops *, + struct loop *, + VEC(tree) **, VEC(tree) **, - VEC(tree) **); + bool); void lambda_loopnest_to_gcc_loopnest (struct loop *, VEC(tree) *, VEC(tree) *, lambda_loopnest, @@ -282,7 +286,7 @@ lambda_vector_equal (lambda_vector vec1, lambda_vector vec2, int size) return true; } -/* Return the minimum non-zero element in vector VEC1 between START and N. +/* Return the minimum nonzero element in vector VEC1 between START and N. We must have START <= N. */ static inline int diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h index 087fe419dae..8b57a0311ab 100644 --- a/gcc/langhooks-def.h +++ b/gcc/langhooks-def.h @@ -65,6 +65,7 @@ extern void lhd_incomplete_type_error (tree, tree); extern tree lhd_type_promotes_to (tree); extern void lhd_register_builtin_type (tree, const char *); extern bool lhd_decl_ok_for_sibcall (tree); +extern const char *lhd_comdat_group (tree); extern tree lhd_expr_size (tree); extern bool lhd_decl_uninit (tree); extern tree lhd_get_callee_fndecl (tree); @@ -234,6 +235,7 @@ extern tree lhd_make_node (enum tree_code); #define LANG_HOOKS_WRITE_GLOBALS write_global_declarations #define LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE NULL #define LANG_HOOKS_DECL_OK_FOR_SIBCALL lhd_decl_ok_for_sibcall +#define LANG_HOOKS_COMDAT_GROUP lhd_comdat_group #define LANG_HOOKS_DECLS { \ LANG_HOOKS_GLOBAL_BINDINGS_P, \ @@ -244,6 +246,7 @@ extern tree lhd_make_node (enum tree_code); LANG_HOOKS_WRITE_GLOBALS, \ LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE, \ LANG_HOOKS_DECL_OK_FOR_SIBCALL, \ + LANG_HOOKS_COMDAT_GROUP \ } /* The whole thing. The structure is defined in langhooks.h. */ diff --git a/gcc/langhooks.c b/gcc/langhooks.c index 9f0a236e8d3..199c93e9b50 100644 --- a/gcc/langhooks.c +++ b/gcc/langhooks.c @@ -22,6 +22,7 @@ Boston, MA 02111-1307, USA. */ #include "config.h" #include "system.h" #include "coretypes.h" +#include "intl.h" #include "tm.h" #include "toplev.h" #include "tree.h" @@ -267,6 +268,7 @@ lhd_expand_decl (tree ARG_UNUSED (t)) const char * lhd_decl_printable_name (tree decl, int ARG_UNUSED (verbosity)) { + gcc_assert (decl && DECL_NAME (decl)); return IDENTIFIER_POINTER (DECL_NAME (decl)); } @@ -420,7 +422,7 @@ lhd_tree_dump_type_quals (tree t) tree lhd_expr_size (tree exp) { - if (TREE_CODE_CLASS (TREE_CODE (exp)) == 'd' + if (DECL_P (exp) && DECL_SIZE_UNIT (exp) != 0) return DECL_SIZE_UNIT (exp); else @@ -437,8 +439,8 @@ lhd_gimplify_expr (tree *expr_p ATTRIBUTE_UNUSED, tree *pre_p ATTRIBUTE_UNUSED, } /* lang_hooks.tree_size: Determine the size of a tree with code C, - which is a language-specific tree code in category 'x'. The - default expects never to be called. */ + which is a language-specific tree code in category tcc_constant or + tcc_exceptional. The default expects never to be called. */ size_t lhd_tree_size (enum tree_code c ATTRIBUTE_UNUSED) { @@ -455,6 +457,14 @@ lhd_decl_ok_for_sibcall (tree decl ATTRIBUTE_UNUSED) return true; } +/* Return the COMDAT group into which DECL should be placed. */ + +const char * +lhd_comdat_group (tree decl) +{ + return IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)); +} + /* lang_hooks.decls.final_write_globals: perform final processing on global variables. */ void @@ -503,16 +513,16 @@ lhd_print_error_function (diagnostic_context *context, const char *file) pp_set_prefix (context->printer, new_prefix); if (current_function_decl == NULL) - pp_printf (context->printer, "At top level:"); + pp_printf (context->printer, _("At top level:")); else { if (TREE_CODE (TREE_TYPE (current_function_decl)) == METHOD_TYPE) pp_printf - (context->printer, "In member function `%s':", + (context->printer, _("In member function %qs:"), lang_hooks.decl_printable_name (current_function_decl, 2)); else pp_printf - (context->printer, "In function `%s':", + (context->printer, _("In function %qs:"), lang_hooks.decl_printable_name (current_function_decl, 2)); } diff --git a/gcc/langhooks.h b/gcc/langhooks.h index 98532521e5e..43749a24e88 100644 --- a/gcc/langhooks.h +++ b/gcc/langhooks.h @@ -183,6 +183,15 @@ struct lang_hooks_for_decls /* True if this decl may be called via a sibcall. */ bool (*ok_for_sibcall) (tree); + + /* Return the COMDAT group into which this DECL should be placed. + It is known that the DECL belongs in *some* COMDAT group when + this hook is called. The return value will be used immediately, + but not explicitly deallocated, so implementations should not use + xmalloc to allocate the string returned. (Typically, the return + value will be the string already stored in an + IDENTIFIER_NODE.) */ + const char * (*comdat_group) (tree); }; /* Language-specific hooks. See langhooks-def.h for defaults. */ @@ -196,9 +205,10 @@ struct lang_hooks identifier nodes long enough for the language-specific slots. */ size_t identifier_size; - /* Determines the size of any language-specific 'x' or 'c' nodes. - Since it is called from make_node, the only information available - is the tree code. Expected to abort on unrecognized codes. */ + /* Determines the size of any language-specific tcc_constant or + tcc_exceptional nodes. Since it is called from make_node, the + only information available is the tree code. Expected to abort + on unrecognized codes. */ size_t (*tree_size) (enum tree_code); /* The first callback made to the front end, for simple @@ -329,12 +339,12 @@ struct lang_hooks this hook. It should output to stderr. */ void (*print_statistics) (void); - /* Called by print_tree when there is a tree of class 'x' that it - doesn't know how to display. */ + /* Called by print_tree when there is a tree of class tcc_exceptional + that it doesn't know how to display. */ lang_print_tree_hook print_xnode; - /* Called to print language-dependent parts of a class 'd', class - 't', and IDENTIFIER_NODE nodes. */ + /* Called to print language-dependent parts of tcc_decl, tcc_type, + and IDENTIFIER_NODE nodes. */ lang_print_tree_hook print_decl; lang_print_tree_hook print_type; lang_print_tree_hook print_identifier; diff --git a/gcc/loop-invariant.c b/gcc/loop-invariant.c index 438a1a0ab3a..8fd70cd982a 100644 --- a/gcc/loop-invariant.c +++ b/gcc/loop-invariant.c @@ -716,17 +716,6 @@ find_invariants_to_move (struct df *df) unsigned i, regs_used, n_inv_uses, regs_needed = 0, new_regs; struct invariant *inv = NULL; - if (flag_move_all_movables) - { - /* This is easy & stupid. */ - for (i = 0; i < VARRAY_ACTIVE_SIZE (invariants); i++) - { - inv = VARRAY_GENERIC_PTR_NOGC (invariants, i); - inv->move = true; - } - return; - } - if (!VARRAY_ACTIVE_SIZE (invariants)) return; diff --git a/gcc/loop-iv.c b/gcc/loop-iv.c index bebf3e0b308..e4d757a0798 100644 --- a/gcc/loop-iv.c +++ b/gcc/loop-iv.c @@ -1183,6 +1183,24 @@ iv_analyze (rtx insn, rtx def, struct rtx_iv *iv) return iv->base != NULL_RTX; } +/* Checks whether definition of register REG in INSN a basic induction + variable. IV analysis must have been initialized (via a call to + iv_analysis_loop_init) for this function to produce a result. */ + +bool +biv_p (rtx insn, rtx reg) +{ + struct rtx_iv iv; + + if (!REG_P (reg)) + return false; + + if (last_def[REGNO (reg)] != insn) + return false; + + return iv_analyze_biv (reg, &iv); +} + /* Calculates value of IV at ITERATION-th iteration. */ rtx diff --git a/gcc/loop-unroll.c b/gcc/loop-unroll.c index bef985fcac0..6ea0987e97e 100644 --- a/gcc/loop-unroll.c +++ b/gcc/loop-unroll.c @@ -30,6 +30,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "params.h" #include "output.h" #include "expr.h" +#include "hashtab.h" +#include "recog.h" /* This pass performs loop unrolling and peeling. We only perform these optimizations on innermost loops (with single exception) because @@ -66,6 +68,28 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA showed that this choice may affect performance in order of several %. */ +/* Information about induction variables to split. */ + +struct iv_to_split +{ + rtx insn; /* The insn in that the induction variable occurs. */ + rtx base_var; /* The variable on that the values in the further + iterations are based. */ + rtx step; /* Step of the induction variable. */ + unsigned n_loc; + unsigned loc[3]; /* Location where the definition of the induction + variable occurs in the insn. For example if + N_LOC is 2, the expression is located at + XEXP (XEXP (single_set, loc[0]), loc[1]). */ +}; + +struct split_ivs_info +{ + htab_t insns_to_split; /* A hashtable of insns to split. */ + unsigned first_new_block; /* The first basic block that was + duplicated. */ +}; + static void decide_unrolling_and_peeling (struct loops *, int); static void peel_loops_completely (struct loops *, int); static void decide_peel_simple (struct loop *, int); @@ -79,6 +103,10 @@ 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 struct split_ivs_info *analyze_ivs_to_split (struct loop *); +static void si_info_start_duplication (struct split_ivs_info *); +static void split_ivs_in_copies (struct split_ivs_info *, unsigned, bool, bool); +static void free_si_info (struct split_ivs_info *); /* Unroll and/or peel (depending on FLAGS) LOOPS. */ void @@ -116,7 +144,7 @@ unroll_and_peel_loops (struct loops *loops, int flags) { case LPT_PEEL_COMPLETELY: /* Already done. */ - abort (); + gcc_unreachable (); case LPT_PEEL_SIMPLE: peel_loop_simple (loops, loop); break; @@ -133,7 +161,7 @@ unroll_and_peel_loops (struct loops *loops, int flags) check = false; break; default: - abort (); + gcc_unreachable (); } if (check) { @@ -428,6 +456,7 @@ peel_loop_completely (struct loops *loops, struct loop *loop) unsigned n_remove_edges, i; edge *remove_edges, ein; struct niter_desc *desc = get_simple_loop_desc (loop); + struct split_ivs_info *si_info = NULL; npeel = desc->niter; @@ -442,6 +471,10 @@ peel_loop_completely (struct loops *loops, struct loop *loop) remove_edges = xcalloc (npeel, sizeof (edge)); n_remove_edges = 0; + if (flag_split_ivs_in_unroller) + si_info = analyze_ivs_to_split (loop); + + si_info_start_duplication (si_info); if (!duplicate_loop_to_header_edge (loop, loop_preheader_edge (loop), loops, npeel, wont_exit, desc->out_edge, remove_edges, &n_remove_edges, @@ -450,6 +483,12 @@ peel_loop_completely (struct loops *loops, struct loop *loop) free (wont_exit); + if (si_info) + { + split_ivs_in_copies (si_info, npeel, false, true); + free_si_info (si_info); + } + /* Remove the exit edges. */ for (i = 0; i < n_remove_edges; i++) remove_path (loops, remove_edges[i]); @@ -597,11 +636,12 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop) unsigned max_unroll = loop->lpt_decision.times; struct niter_desc *desc = get_simple_loop_desc (loop); bool exit_at_end = loop_exit_at_end_p (loop); + struct split_ivs_info *si_info = NULL; niter = desc->niter; - if (niter <= max_unroll + 1) - abort (); /* Should not get here (such loop should be peeled instead). */ + /* Should not get here (such loop should be peeled instead). */ + gcc_assert (niter > max_unroll + 1); exit_mod = niter % (max_unroll + 1); @@ -611,6 +651,9 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop) remove_edges = xcalloc (max_unroll + exit_mod + 1, sizeof (edge)); n_remove_edges = 0; + if (flag_split_ivs_in_unroller) + si_info = analyze_ivs_to_split (loop); + if (!exit_at_end) { /* The exit is not at the end of the loop; leave exit test @@ -627,6 +670,7 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop) if (exit_mod) { + si_info_start_duplication (si_info); if (!duplicate_loop_to_header_edge (loop, loop_preheader_edge (loop), loops, exit_mod, wont_exit, desc->out_edge, @@ -634,6 +678,9 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop) DLTHE_FLAG_UPDATE_FREQ)) abort (); + if (si_info && exit_mod > 1) + split_ivs_in_copies (si_info, exit_mod, false, false); + desc->noloop_assumptions = NULL_RTX; desc->niter -= exit_mod; desc->niter_max -= exit_mod; @@ -659,12 +706,16 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop) if (desc->noloop_assumptions) RESET_BIT (wont_exit, 1); + si_info_start_duplication (si_info); if (!duplicate_loop_to_header_edge (loop, loop_preheader_edge (loop), loops, exit_mod + 1, wont_exit, desc->out_edge, remove_edges, &n_remove_edges, DLTHE_FLAG_UPDATE_FREQ)) abort (); + if (si_info && exit_mod > 0) + split_ivs_in_copies (si_info, exit_mod + 1, false, false); + desc->niter -= exit_mod + 1; desc->niter_max -= exit_mod + 1; desc->noloop_assumptions = NULL_RTX; @@ -677,12 +728,19 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop) } /* Now unroll the loop. */ + si_info_start_duplication (si_info); if (!duplicate_loop_to_header_edge (loop, loop_latch_edge (loop), loops, max_unroll, wont_exit, desc->out_edge, remove_edges, &n_remove_edges, DLTHE_FLAG_UPDATE_FREQ)) abort (); + if (si_info) + { + split_ivs_in_copies (si_info, max_unroll, true, true); + free_si_info (si_info); + } + free (wont_exit); if (exit_at_end) @@ -842,6 +900,10 @@ unroll_loop_runtime_iterations (struct loops *loops, struct loop *loop) unsigned max_unroll = loop->lpt_decision.times; struct niter_desc *desc = get_simple_loop_desc (loop); bool exit_at_end = loop_exit_at_end_p (loop); + struct split_ivs_info *si_info = NULL; + + if (flag_split_ivs_in_unroller) + si_info = analyze_ivs_to_split (loop); /* Remember blocks whose dominators will have to be updated. */ dom_bbs = xcalloc (n_basic_blocks, sizeof (basic_block)); @@ -979,12 +1041,19 @@ unroll_loop_runtime_iterations (struct loops *loops, struct loop *loop) sbitmap_ones (wont_exit); RESET_BIT (wont_exit, may_exit_copy); + si_info_start_duplication (si_info); if (!duplicate_loop_to_header_edge (loop, loop_latch_edge (loop), loops, max_unroll, wont_exit, desc->out_edge, remove_edges, &n_remove_edges, DLTHE_FLAG_UPDATE_FREQ)) abort (); + if (si_info) + { + split_ivs_in_copies (si_info, max_unroll, true, true); + free_si_info (si_info); + } + free (wont_exit); if (exit_at_end) @@ -1013,8 +1082,7 @@ unroll_loop_runtime_iterations (struct loops *loops, struct loop *loop) preconditioning and the fact that the value must be valid at entry of the loop. After passing through the above code, we see that the correct new number of iterations is this: */ - if (desc->const_iter) - abort (); + gcc_assert (!desc->const_iter); desc->niter_expr = simplify_gen_binary (UDIV, desc->mode, old_niter, GEN_INT (max_unroll + 1)); desc->niter_max /= max_unroll + 1; @@ -1138,10 +1206,15 @@ peel_loop_simple (struct loops *loops, struct loop *loop) sbitmap wont_exit; unsigned npeel = loop->lpt_decision.times; struct niter_desc *desc = get_simple_loop_desc (loop); + struct split_ivs_info *si_info = NULL; + + if (flag_split_ivs_in_unroller && npeel > 1) + si_info = analyze_ivs_to_split (loop); wont_exit = sbitmap_alloc (npeel + 1); sbitmap_zero (wont_exit); + si_info_start_duplication (si_info); if (!duplicate_loop_to_header_edge (loop, loop_preheader_edge (loop), loops, npeel, wont_exit, NULL, NULL, NULL, DLTHE_FLAG_UPDATE_FREQ)) @@ -1149,6 +1222,12 @@ peel_loop_simple (struct loops *loops, struct loop *loop) free (wont_exit); + if (si_info) + { + split_ivs_in_copies (si_info, npeel, false, false); + free_si_info (si_info); + } + if (desc->simple_p) { if (desc->const_iter) @@ -1271,15 +1350,26 @@ unroll_loop_stupid (struct loops *loops, struct loop *loop) sbitmap wont_exit; unsigned nunroll = loop->lpt_decision.times; struct niter_desc *desc = get_simple_loop_desc (loop); + struct split_ivs_info *si_info = NULL; + + if (flag_split_ivs_in_unroller) + si_info = analyze_ivs_to_split (loop); wont_exit = sbitmap_alloc (nunroll + 1); sbitmap_zero (wont_exit); + si_info_start_duplication (si_info); if (!duplicate_loop_to_header_edge (loop, loop_latch_edge (loop), loops, nunroll, wont_exit, NULL, NULL, NULL, DLTHE_FLAG_UPDATE_FREQ)) abort (); + if (si_info) + { + split_ivs_in_copies (si_info, nunroll, true, true); + free_si_info (si_info); + } + free (wont_exit); if (desc->simple_p) @@ -1297,3 +1387,375 @@ unroll_loop_stupid (struct loops *loops, struct loop *loop) fprintf (dump_file, ";; Unrolled loop %d times, %i insns\n", nunroll, num_loop_insns (loop)); } + +/* A hash function for information about insns to split. */ + +static hashval_t +si_info_hash (const void *ivts) +{ + return htab_hash_pointer (((struct iv_to_split *) ivts)->insn); +} + +/* An equality functions for information about insns to split. */ + +static int +si_info_eq (const void *ivts1, const void *ivts2) +{ + const struct iv_to_split *i1 = ivts1; + const struct iv_to_split *i2 = ivts2; + + return i1->insn == i2->insn; +} + +/* Determine whether there is an induction variable in INSN that + we would like to split during unrolling. Return NULL if INSN + contains no interesting IVs. Otherwise, allocate an IV_TO_SPLIT + structure, fill it with the relevant information and return a + pointer to it. */ + +static struct iv_to_split * +analyze_iv_to_split_insn (rtx insn) +{ + rtx set, dest; + struct rtx_iv iv; + struct iv_to_split *ivts; + + /* For now we just split the basic induction variables. Later this may be + extended for example by selecting also addresses of memory references. */ + set = single_set (insn); + if (!set) + return NULL; + + dest = SET_DEST (set); + if (!REG_P (dest)) + return NULL; + + if (!biv_p (insn, dest)) + return NULL; + + if (!iv_analyze (insn, dest, &iv)) + abort (); + + if (iv.step == const0_rtx + || iv.mode != iv.extend_mode) + return NULL; + + /* Record the insn to split. */ + ivts = xmalloc (sizeof (struct iv_to_split)); + ivts->insn = insn; + ivts->base_var = NULL_RTX; + ivts->step = iv.step; + ivts->n_loc = 1; + ivts->loc[0] = 1; + + return ivts; +} + +/* Determines which of induction variables in LOOP to split. + Return a SPLIT_IVS_INFO struct with the hash table filled + with all insns to split IVs in. The FIRST_NEW_BLOCK field + is undefined for the return value. */ + +static struct split_ivs_info * +analyze_ivs_to_split (struct loop *loop) +{ + basic_block *body, bb; + unsigned i; + struct split_ivs_info *si_info = xcalloc (1, sizeof (struct split_ivs_info)); + rtx insn; + struct iv_to_split *ivts; + PTR *slot; + + si_info->insns_to_split = htab_create (5 * loop->num_nodes, + si_info_hash, si_info_eq, free); + + iv_analysis_loop_init (loop); + + body = get_loop_body (loop); + for (i = 0; i < loop->num_nodes; i++) + { + bb = body[i]; + if (!dominated_by_p (CDI_DOMINATORS, loop->latch, bb)) + continue; + + FOR_BB_INSNS (bb, insn) + { + if (!INSN_P (insn)) + continue; + + ivts = analyze_iv_to_split_insn (insn); + + if (!ivts) + continue; + + slot = htab_find_slot (si_info->insns_to_split, ivts, INSERT); + *slot = ivts; + } + } + + free (body); + + return si_info; +} + +/* Called just before loop duplication. Records start of duplicated area + to SI_INFO. */ + +static void +si_info_start_duplication (struct split_ivs_info *si_info) +{ + if (si_info) + si_info->first_new_block = last_basic_block; +} + +/* Determine the number of iterations between initialization of the base + variable and the current copy (N_COPY). N_COPIES is the total number + of newly created copies. UNROLLING is true if we are unrolling + (not peeling) the loop. */ + +static unsigned +determine_split_iv_delta (unsigned n_copy, unsigned n_copies, bool unrolling) +{ + if (unrolling) + { + /* If we are unrolling, initialization is done in the original loop + body (number 0). */ + return n_copy; + } + else + { + /* If we are peeling, the copy in that the initialization occurs has + number 1. The original loop (number 0) is the last. */ + if (n_copy) + return n_copy - 1; + else + return n_copies; + } +} + +/* Locate in EXPR the expression corresponding to the location recorded + in IVTS, and return a pointer to the RTX for this location. */ + +static rtx * +get_ivts_expr (rtx expr, struct iv_to_split *ivts) +{ + unsigned i; + rtx *ret = &expr; + + for (i = 0; i < ivts->n_loc; i++) + ret = &XEXP (*ret, ivts->loc[i]); + + return ret; +} + +/* Allocate basic variable for the induction variable chain. Callback for + htab_traverse. */ + +static int +allocate_basic_variable (void **slot, void *data ATTRIBUTE_UNUSED) +{ + struct iv_to_split *ivts = *slot; + rtx expr = *get_ivts_expr (single_set (ivts->insn), ivts); + + ivts->base_var = gen_reg_rtx (GET_MODE (expr)); + + return 1; +} + +/* Insert initialization of basic variable of IVTS before INSN, taking + the initial value from INSN. */ + +static void +insert_base_initialization (struct iv_to_split *ivts, rtx insn) +{ + rtx expr = copy_rtx (*get_ivts_expr (single_set (insn), ivts)); + rtx seq; + + start_sequence (); + expr = force_operand (expr, ivts->base_var); + if (expr != ivts->base_var) + emit_move_insn (ivts->base_var, expr); + seq = get_insns (); + end_sequence (); + + emit_insn_before (seq, insn); +} + +/* Replace the use of induction variable described in IVTS in INSN + by base variable + DELTA * step. */ + +static void +split_iv (struct iv_to_split *ivts, rtx insn, unsigned delta) +{ + rtx expr, *loc, seq, incr, var; + enum machine_mode mode = GET_MODE (ivts->base_var); + rtx src, dest, set; + + /* Construct base + DELTA * step. */ + if (!delta) + expr = ivts->base_var; + else + { + incr = simplify_gen_binary (MULT, mode, + ivts->step, gen_int_mode (delta, mode)); + expr = simplify_gen_binary (PLUS, GET_MODE (ivts->base_var), + ivts->base_var, incr); + } + + /* Figure out where to do the replacement. */ + loc = get_ivts_expr (single_set (insn), ivts); + + /* If we can make the replacement right away, we're done. */ + if (validate_change (insn, loc, expr, 0)) + return; + + /* Otherwise, force EXPR into a register and try again. */ + start_sequence (); + var = gen_reg_rtx (mode); + expr = force_operand (expr, var); + if (expr != var) + emit_move_insn (var, expr); + seq = get_insns (); + end_sequence (); + emit_insn_before (seq, insn); + + if (validate_change (insn, loc, var, 0)) + return; + + /* The last chance. Try recreating the assignment in insn + completely from scratch. */ + set = single_set (insn); + gcc_assert (set); + + start_sequence (); + *loc = var; + src = copy_rtx (SET_SRC (set)); + dest = copy_rtx (SET_DEST (set)); + src = force_operand (src, dest); + if (src != dest) + emit_move_insn (dest, src); + seq = get_insns (); + end_sequence (); + + emit_insn_before (seq, insn); + delete_insn (insn); +} + +/* Splits induction variables (that are marked in SI_INFO) in copies of loop. + I.e. replace + + i = i + 1; + ... + i = i + 1; + ... + i = i + 1; + ... + + type chains by + + i0 = i + 1 + ... + i = i0 + 1 + ... + i = i0 + 2 + ... + + UNROLLING is true if we unrolled (not peeled) the loop. + REWRITE_ORIGINAL_BODY is true if we should also rewrite the original body of + the loop (as it should happen in complete unrolling, but not in ordinary + peeling of the loop). */ + +static void +split_ivs_in_copies (struct split_ivs_info *si_info, unsigned n_copies, + bool unrolling, bool rewrite_original_loop) +{ + unsigned i, delta; + basic_block bb, orig_bb; + rtx insn, orig_insn, next; + struct iv_to_split ivts_templ, *ivts; + + /* Sanity check -- we need to put initialization in the original loop + body. */ + gcc_assert (!unrolling || rewrite_original_loop); + + /* Allocate the basic variables (i0). */ + htab_traverse (si_info->insns_to_split, allocate_basic_variable, NULL); + + for (i = si_info->first_new_block; i < (unsigned) last_basic_block; i++) + { + bb = BASIC_BLOCK (i); + orig_bb = bb->rbi->original; + + delta = determine_split_iv_delta (bb->rbi->copy_number, n_copies, + unrolling); + orig_insn = BB_HEAD (orig_bb); + for (insn = BB_HEAD (bb); insn != NEXT_INSN (BB_END (bb)); insn = next) + { + next = NEXT_INSN (insn); + if (!INSN_P (insn)) + continue; + + while (!INSN_P (orig_insn)) + orig_insn = NEXT_INSN (orig_insn); + + ivts_templ.insn = orig_insn; + ivts = htab_find (si_info->insns_to_split, &ivts_templ); + if (ivts) + { + +#ifdef ENABLE_CHECKING + if (!rtx_equal_p (PATTERN (insn), PATTERN (orig_insn))) + abort (); +#endif + + if (!delta) + insert_base_initialization (ivts, insn); + split_iv (ivts, insn, delta); + } + orig_insn = NEXT_INSN (orig_insn); + } + } + + if (!rewrite_original_loop) + return; + + /* Rewrite also the original loop body. Find them as originals of the blocks + in the last copied iteration, i.e. those that have + bb->rbi->original->copy == bb. */ + for (i = si_info->first_new_block; i < (unsigned) last_basic_block; i++) + { + bb = BASIC_BLOCK (i); + orig_bb = bb->rbi->original; + if (orig_bb->rbi->copy != bb) + continue; + + delta = determine_split_iv_delta (0, n_copies, unrolling); + for (orig_insn = BB_HEAD (orig_bb); + orig_insn != NEXT_INSN (BB_END (bb)); + orig_insn = next) + { + next = NEXT_INSN (orig_insn); + + if (!INSN_P (orig_insn)) + continue; + + ivts_templ.insn = orig_insn; + ivts = htab_find (si_info->insns_to_split, &ivts_templ); + if (!ivts) + continue; + + if (!delta) + insert_base_initialization (ivts, orig_insn); + split_iv (ivts, orig_insn, delta); + } + } +} + +/* Release SI_INFO. */ + +static void +free_si_info (struct split_ivs_info *si_info) +{ + htab_delete (si_info->insns_to_split); + free (si_info); +} diff --git a/gcc/loop.c b/gcc/loop.c index 8f1ace8f1c4..ded07efb0b9 100644 --- a/gcc/loop.c +++ b/gcc/loop.c @@ -57,7 +57,6 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "recog.h" #include "flags.h" #include "real.h" -#include "loop.h" #include "cselib.h" #include "except.h" #include "toplev.h" @@ -67,6 +66,354 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "cfgloop.h" #include "ggc.h" +/* Get the loop info pointer of a loop. */ +#define LOOP_INFO(LOOP) ((struct loop_info *) (LOOP)->aux) + +/* Get a pointer to the loop movables structure. */ +#define LOOP_MOVABLES(LOOP) (&LOOP_INFO (LOOP)->movables) + +/* Get a pointer to the loop registers structure. */ +#define LOOP_REGS(LOOP) (&LOOP_INFO (LOOP)->regs) + +/* Get a pointer to the loop induction variables structure. */ +#define LOOP_IVS(LOOP) (&LOOP_INFO (LOOP)->ivs) + +/* Get the luid of an insn. Catch the error of trying to reference the LUID + of an insn added during loop, since these don't have LUIDs. */ + +#define INSN_LUID(INSN) \ + (INSN_UID (INSN) < max_uid_for_loop ? uid_luid[INSN_UID (INSN)] \ + : (abort (), -1)) + +#define REGNO_FIRST_LUID(REGNO) \ + (REGNO_FIRST_UID (REGNO) < max_uid_for_loop \ + ? uid_luid[REGNO_FIRST_UID (REGNO)] \ + : 0) +#define REGNO_LAST_LUID(REGNO) \ + (REGNO_LAST_UID (REGNO) < max_uid_for_loop \ + ? uid_luid[REGNO_LAST_UID (REGNO)] \ + : INT_MAX) + +/* A "basic induction variable" or biv is a pseudo reg that is set + (within this loop) only by incrementing or decrementing it. */ +/* A "general induction variable" or giv is a pseudo reg whose + value is a linear function of a biv. */ + +/* Bivs are recognized by `basic_induction_var'; + Givs by `general_induction_var'. */ + +/* An enum for the two different types of givs, those that are used + as memory addresses and those that are calculated into registers. */ +enum g_types +{ + DEST_ADDR, + DEST_REG +}; + + +/* A `struct induction' is created for every instruction that sets + an induction variable (either a biv or a giv). */ + +struct induction +{ + rtx insn; /* The insn that sets a biv or giv */ + rtx new_reg; /* New register, containing strength reduced + version of this giv. */ + rtx src_reg; /* Biv from which this giv is computed. + (If this is a biv, then this is the biv.) */ + enum g_types giv_type; /* Indicate whether DEST_ADDR or DEST_REG */ + rtx dest_reg; /* Destination register for insn: this is the + register which was the biv or giv. + For a biv, this equals src_reg. + For a DEST_ADDR type giv, this is 0. */ + rtx *location; /* Place in the insn where this giv occurs. + If GIV_TYPE is DEST_REG, this is 0. */ + /* For a biv, this is the place where add_val + was found. */ + enum machine_mode mode; /* The mode of this biv or giv */ + rtx mem; /* For DEST_ADDR, the memory object. */ + rtx mult_val; /* Multiplicative factor for src_reg. */ + rtx add_val; /* Additive constant for that product. */ + int benefit; /* Gain from eliminating this insn. */ + rtx final_value; /* If the giv is used outside the loop, and its + final value could be calculated, it is put + here, and the giv is made replaceable. Set + the giv to this value before the loop. */ + unsigned combined_with; /* The number of givs this giv has been + combined with. If nonzero, this giv + cannot combine with any other giv. */ + unsigned replaceable : 1; /* 1 if we can substitute the strength-reduced + variable for the original variable. + 0 means they must be kept separate and the + new one must be copied into the old pseudo + reg each time the old one is set. */ + unsigned not_replaceable : 1; /* Used to prevent duplicating work. This is + 1 if we know that the giv definitely can + not be made replaceable, in which case we + don't bother checking the variable again + even if further info is available. + Both this and the above can be zero. */ + unsigned ignore : 1; /* 1 prohibits further processing of giv */ + unsigned always_computable : 1;/* 1 if this value is computable every + iteration. */ + unsigned always_executed : 1; /* 1 if this set occurs each iteration. */ + unsigned maybe_multiple : 1; /* Only used for a biv and 1 if this biv + update may be done multiple times per + iteration. */ + unsigned cant_derive : 1; /* For giv's, 1 if this giv cannot derive + another giv. This occurs in many cases + where a giv's lifetime spans an update to + a biv. */ + unsigned maybe_dead : 1; /* 1 if this giv might be dead. In that case, + we won't use it to eliminate a biv, it + would probably lose. */ + unsigned auto_inc_opt : 1; /* 1 if this giv had its increment output next + to it to try to form an auto-inc address. */ + unsigned shared : 1; + unsigned no_const_addval : 1; /* 1 if add_val does not contain a const. */ + int lifetime; /* Length of life of this giv */ + rtx derive_adjustment; /* If nonzero, is an adjustment to be + subtracted from add_val when this giv + derives another. This occurs when the + giv spans a biv update by incrementation. */ + rtx ext_dependent; /* If nonzero, is a sign or zero extension + if a biv on which this giv is dependent. */ + struct induction *next_iv; /* For givs, links together all givs that are + based on the same biv. For bivs, links + together all biv entries that refer to the + same biv register. */ + struct induction *same; /* For givs, if the giv has been combined with + another giv, this points to the base giv. + The base giv will have COMBINED_WITH nonzero. + For bivs, if the biv has the same LOCATION + than another biv, this points to the base + biv. */ + struct induction *same_insn; /* If there are multiple identical givs in + the same insn, then all but one have this + field set, and they all point to the giv + that doesn't have this field set. */ + rtx last_use; /* For a giv made from a biv increment, this is + a substitute for the lifetime information. */ +}; + + +/* A `struct iv_class' is created for each biv. */ + +struct iv_class +{ + unsigned int regno; /* Pseudo reg which is the biv. */ + int biv_count; /* Number of insns setting this reg. */ + struct induction *biv; /* List of all insns that set this reg. */ + int giv_count; /* Number of DEST_REG givs computed from this + biv. The resulting count is only used in + check_dbra_loop. */ + struct induction *giv; /* List of all insns that compute a giv + from this reg. */ + int total_benefit; /* Sum of BENEFITs of all those givs. */ + rtx initial_value; /* Value of reg at loop start. */ + rtx initial_test; /* Test performed on BIV before loop. */ + rtx final_value; /* Value of reg at loop end, if known. */ + struct iv_class *next; /* Links all class structures together. */ + rtx init_insn; /* insn which initializes biv, 0 if none. */ + rtx init_set; /* SET of INIT_INSN, if any. */ + unsigned incremented : 1; /* 1 if somewhere incremented/decremented */ + unsigned eliminable : 1; /* 1 if plausible candidate for + elimination. */ + unsigned nonneg : 1; /* 1 if we added a REG_NONNEG note for + this. */ + unsigned reversed : 1; /* 1 if we reversed the loop that this + biv controls. */ + unsigned all_reduced : 1; /* 1 if all givs using this biv have + been reduced. */ +}; + + +/* Definitions used by the basic induction variable discovery code. */ +enum iv_mode +{ + UNKNOWN_INDUCT, + BASIC_INDUCT, + NOT_BASIC_INDUCT, + GENERAL_INDUCT +}; + + +/* A `struct iv' is created for every register. */ + +struct iv +{ + enum iv_mode type; + union + { + struct iv_class *class; + struct induction *info; + } iv; +}; + + +#define REG_IV_TYPE(ivs, n) ivs->regs[n].type +#define REG_IV_INFO(ivs, n) ivs->regs[n].iv.info +#define REG_IV_CLASS(ivs, n) ivs->regs[n].iv.class + + +struct loop_ivs +{ + /* Indexed by register number, contains pointer to `struct + iv' if register is an induction variable. */ + struct iv *regs; + + /* Size of regs array. */ + unsigned int n_regs; + + /* The head of a list which links together (via the next field) + every iv class for the current loop. */ + struct iv_class *list; +}; + + +typedef struct loop_mem_info +{ + rtx mem; /* The MEM itself. */ + rtx reg; /* Corresponding pseudo, if any. */ + int optimize; /* Nonzero if we can optimize access to this MEM. */ +} loop_mem_info; + + + +struct loop_reg +{ + /* Number of times the reg is set during the loop being scanned. + During code motion, a negative value indicates a reg that has + been made a candidate; in particular -2 means that it is an + candidate that we know is equal to a constant and -1 means that + it is a candidate not known equal to a constant. After code + motion, regs moved have 0 (which is accurate now) while the + failed candidates have the original number of times set. + + Therefore, at all times, == 0 indicates an invariant register; + < 0 a conditionally invariant one. */ + int set_in_loop; + + /* Original value of set_in_loop; same except that this value + is not set negative for a reg whose sets have been made candidates + and not set to 0 for a reg that is moved. */ + int n_times_set; + + /* Contains the insn in which a register was used if it was used + exactly once; contains const0_rtx if it was used more than once. */ + rtx single_usage; + + /* Nonzero indicates that the register cannot be moved or strength + reduced. */ + char may_not_optimize; + + /* Nonzero means reg N has already been moved out of one loop. + This reduces the desire to move it out of another. */ + char moved_once; +}; + + +struct loop_regs +{ + int num; /* Number of regs used in table. */ + int size; /* Size of table. */ + struct loop_reg *array; /* Register usage info. array. */ + int multiple_uses; /* Nonzero if a reg has multiple uses. */ +}; + + + +struct loop_movables +{ + /* Head of movable chain. */ + struct movable *head; + /* Last movable in chain. */ + struct movable *last; +}; + + +/* Information pertaining to a loop. */ + +struct loop_info +{ + /* Nonzero if there is a subroutine call in the current loop. */ + int has_call; + /* Nonzero if there is a libcall in the current loop. */ + int has_libcall; + /* Nonzero if there is a non constant call in the current loop. */ + int has_nonconst_call; + /* Nonzero if there is a prefetch instruction in the current loop. */ + int has_prefetch; + /* Nonzero if there is a volatile memory reference in the current + loop. */ + int has_volatile; + /* Nonzero if there is a tablejump in the current loop. */ + int has_tablejump; + /* Nonzero if there are ways to leave the loop other than falling + off the end. */ + int has_multiple_exit_targets; + /* Nonzero if there is an indirect jump in the current function. */ + int has_indirect_jump; + /* Register or constant initial loop value. */ + rtx initial_value; + /* Register or constant value used for comparison test. */ + rtx comparison_value; + /* Register or constant approximate final value. */ + rtx final_value; + /* Register or constant initial loop value with term common to + final_value removed. */ + rtx initial_equiv_value; + /* Register or constant final loop value with term common to + initial_value removed. */ + rtx final_equiv_value; + /* Register corresponding to iteration variable. */ + rtx iteration_var; + /* Constant loop increment. */ + rtx increment; + enum rtx_code comparison_code; + /* Holds the number of loop iterations. It is zero if the number + could not be calculated. Must be unsigned since the number of + iterations can be as high as 2^wordsize - 1. For loops with a + wider iterator, this number will be zero if the number of loop + iterations is too large for an unsigned integer to hold. */ + unsigned HOST_WIDE_INT n_iterations; + int used_count_register; + /* The loop iterator induction variable. */ + struct iv_class *iv; + /* List of MEMs that are stored in this loop. */ + rtx store_mems; + /* Array of MEMs that are used (read or written) in this loop, but + cannot be aliased by anything in this loop, except perhaps + themselves. In other words, if mems[i] is altered during + the loop, it is altered by an expression that is rtx_equal_p to + it. */ + loop_mem_info *mems; + /* The index of the next available slot in MEMS. */ + int mems_idx; + /* The number of elements allocated in MEMS. */ + int mems_allocated; + /* Nonzero if we don't know what MEMs were changed in the current + loop. This happens if the loop contains a call (in which case + `has_call' will also be set) or if we store into more than + NUM_STORES MEMs. */ + int unknown_address_altered; + /* The above doesn't count any readonly memory locations that are + stored. This does. */ + int unknown_constant_address_altered; + /* Count of memory write instructions discovered in the loop. */ + int num_mem_sets; + /* The insn where the first of these was found. */ + rtx first_loop_store_insn; + /* The chain of movable insns in loop. */ + struct loop_movables movables; + /* The registers used the in loop. */ + struct loop_regs regs; + /* The induction variable information in loop. */ + struct loop_ivs ivs; + /* Nonzero if call is in pre_header extended basic block. */ + int pre_header_has_call; +}; + /* Not really meaningful values, but at least something. */ #ifndef SIMULTANEOUS_PREFETCHES #define SIMULTANEOUS_PREFETCHES 3 @@ -170,16 +517,16 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA The luids are like uids but increase monotonically always. We use them to see whether a jump comes from outside a given loop. */ -int *uid_luid; +static int *uid_luid; /* Indexed by INSN_UID, contains the ordinal giving the (innermost) loop number the insn is contained in. */ -struct loop **uid_loop; +static struct loop **uid_loop; /* 1 + largest uid of any insn. */ -int max_uid_for_loop; +static int max_uid_for_loop; /* Number of loops detected in current function. Used as index to the next few tables. */ @@ -188,7 +535,7 @@ static int max_loop_num; /* Bound on pseudo register number before loop optimization. A pseudo has valid regscan info if its number is < max_reg_before_loop. */ -unsigned int max_reg_before_loop; +static unsigned int max_reg_before_loop; /* The value to pass to the next call of reg_scan_update. */ static int loop_max_reg; @@ -241,7 +588,7 @@ struct movable }; -FILE *loop_dump_stream; +static FILE *loop_dump_stream; /* Forward declarations. */ @@ -345,6 +692,18 @@ static rtx check_insn_for_bivs (struct loop *, rtx, int, int); static rtx gen_add_mult (rtx, rtx, rtx, rtx); static void loop_regs_update (const struct loop *, rtx); static int iv_add_mult_cost (rtx, rtx, rtx, rtx); +static int loop_invariant_p (const struct loop *, rtx); +static rtx loop_insn_hoist (const struct loop *, rtx); +static void loop_iv_add_mult_emit_before (const struct loop *, rtx, rtx, rtx, + rtx, basic_block, rtx); +static rtx loop_insn_emit_before (const struct loop *, basic_block, + rtx, rtx); +static int loop_insn_first_p (rtx, rtx); +static rtx get_condition_for_loop (const struct loop *, rtx); +static void loop_iv_add_mult_sink (const struct loop *, rtx, rtx, rtx, rtx); +static void loop_iv_add_mult_hoist (const struct loop *, rtx, rtx, rtx, rtx); +static rtx extend_value_for_giv (struct induction *, rtx); +static rtx loop_insn_sink (const struct loop *, rtx); static rtx loop_insn_emit_after (const struct loop *, basic_block, rtx, rtx); static rtx loop_call_insn_emit_before (const struct loop *, basic_block, @@ -1885,7 +2244,6 @@ move_movables (struct loop *loop, struct loop_movables *movables, extra cost because something else was already moved. */ if (already_moved[regno] - || flag_move_all_movables || (threshold * savings * m->lifetime) >= (regs->array[regno].moved_once ? insn_count * 2 : insn_count) || (m->forces && m->forces->done @@ -2518,8 +2876,6 @@ prescan_loop (struct loop *loop) loop_info->first_loop_store_insn = NULL_RTX; loop_info->mems_idx = 0; loop_info->num_mem_sets = 0; - /* If loop opts run twice, this was set on 1st pass for 2nd. */ - loop_info->preconditioned = NOTE_PRECONDITIONED (end); for (insn = start; insn && !LABEL_P (insn); insn = PREV_INSN (insn)) @@ -3238,7 +3594,7 @@ note_set_pseudo_multiple_uses (rtx x, rtx y ATTRIBUTE_UNUSED, void *data) A memory ref is invariant if it is not volatile and does not conflict with anything stored in `loop_info->store_mems'. */ -int +static int loop_invariant_p (const struct loop *loop, rtx x) { struct loop_info *loop_info = LOOP_INFO (loop); @@ -3261,19 +3617,7 @@ loop_invariant_p (const struct loop *loop, rtx x) return 1; case LABEL_REF: - /* A LABEL_REF is normally invariant, however, if we are unrolling - loops, and this label is inside the loop, then it isn't invariant. - This is because each unrolled copy of the loop body will have - a copy of this label. If this was invariant, then an insn loading - the address of this label into a register might get moved outside - the loop, and then each loop body would end up using the same label. - - We don't know the loop bounds here though, so just fail for all - labels. */ - if (flag_old_unroll_loops) - return 0; - else - return 1; + return 1; case PC: case CC0: @@ -4233,6 +4577,56 @@ static rtx addr_placeholder; was rerun in loop_optimize whenever a register was added or moved. Also, some of the optimizations could be a little less conservative. */ +/* Searches the insns between INSN and LOOP->END. Returns 1 if there + is a backward branch in that range that branches to somewhere between + LOOP->START and INSN. Returns 0 otherwise. */ + +/* ??? This is quadratic algorithm. Could be rewritten to be linear. + In practice, this is not a problem, because this function is seldom called, + and uses a negligible amount of CPU time on average. */ + +static int +back_branch_in_range_p (const struct loop *loop, rtx insn) +{ + rtx p, q, target_insn; + rtx loop_start = loop->start; + rtx loop_end = loop->end; + rtx orig_loop_end = loop->end; + + /* Stop before we get to the backward branch at the end of the loop. */ + loop_end = prev_nonnote_insn (loop_end); + if (BARRIER_P (loop_end)) + loop_end = PREV_INSN (loop_end); + + /* Check in case insn has been deleted, search forward for first non + deleted insn following it. */ + while (INSN_DELETED_P (insn)) + insn = NEXT_INSN (insn); + + /* Check for the case where insn is the last insn in the loop. Deal + with the case where INSN was a deleted loop test insn, in which case + it will now be the NOTE_LOOP_END. */ + if (insn == loop_end || insn == orig_loop_end) + return 0; + + for (p = NEXT_INSN (insn); p != loop_end; p = NEXT_INSN (p)) + { + if (JUMP_P (p)) + { + target_insn = JUMP_LABEL (p); + + /* Search from loop_start to insn, to see if one of them is + the target_insn. We can't use INSN_LUID comparisons here, + since insn may not have an LUID entry. */ + for (q = loop_start; q != insn; q = NEXT_INSN (q)) + if (q == target_insn) + return 1; + } + } + + return 0; +} + /* Scan the loop body and call FNCALL for each insn. In the addition to the LOOP and INSN parameters pass MAYBE_MULTIPLE and NOT_EVERY_ITERATION to the callback. @@ -4243,7 +4637,8 @@ static rtx addr_placeholder; MAYBE_MULTIPLE is 1 if current insn may be executed more than once for every loop iteration. */ -void +typedef rtx (*loop_insn_callback) (struct loop *, rtx, int, int); +static void for_each_insn_in_loop (struct loop *loop, loop_insn_callback fncall) { int not_every_iteration = 0; @@ -4546,6 +4941,238 @@ loop_givs_check (struct loop *loop) } } +/* Try to generate the simplest rtx for the expression + (PLUS (MULT mult1 mult2) add1). This is used to calculate the initial + value of giv's. */ + +static rtx +fold_rtx_mult_add (rtx mult1, rtx mult2, rtx add1, enum machine_mode mode) +{ + rtx temp, mult_res; + rtx result; + + /* The modes must all be the same. This should always be true. For now, + check to make sure. */ + if ((GET_MODE (mult1) != mode && GET_MODE (mult1) != VOIDmode) + || (GET_MODE (mult2) != mode && GET_MODE (mult2) != VOIDmode) + || (GET_MODE (add1) != mode && GET_MODE (add1) != VOIDmode)) + abort (); + + /* Ensure that if at least one of mult1/mult2 are constant, then mult2 + will be a constant. */ + if (GET_CODE (mult1) == CONST_INT) + { + temp = mult2; + mult2 = mult1; + mult1 = temp; + } + + mult_res = simplify_binary_operation (MULT, mode, mult1, mult2); + if (! mult_res) + mult_res = gen_rtx_MULT (mode, mult1, mult2); + + /* Again, put the constant second. */ + if (GET_CODE (add1) == CONST_INT) + { + temp = add1; + add1 = mult_res; + mult_res = temp; + } + + result = simplify_binary_operation (PLUS, mode, add1, mult_res); + if (! result) + result = gen_rtx_PLUS (mode, add1, mult_res); + + return result; +} + +/* Searches the list of induction struct's for the biv BL, to try to calculate + the total increment value for one iteration of the loop as a constant. + + Returns the increment value as an rtx, simplified as much as possible, + if it can be calculated. Otherwise, returns 0. */ + +static rtx +biv_total_increment (const struct iv_class *bl) +{ + struct induction *v; + rtx result; + + /* For increment, must check every instruction that sets it. Each + instruction must be executed only once each time through the loop. + To verify this, we check that the insn is always executed, and that + there are no backward branches after the insn that branch to before it. + Also, the insn must have a mult_val of one (to make sure it really is + an increment). */ + + result = const0_rtx; + for (v = bl->biv; v; v = v->next_iv) + { + if (v->always_computable && v->mult_val == const1_rtx + && ! v->maybe_multiple + && SCALAR_INT_MODE_P (v->mode)) + { + /* If we have already counted it, skip it. */ + if (v->same) + continue; + + result = fold_rtx_mult_add (result, const1_rtx, v->add_val, v->mode); + } + else + return 0; + } + + return result; +} + +/* Try to prove that the register is dead after the loop exits. Trace every + loop exit looking for an insn that will always be executed, which sets + the register to some value, and appears before the first use of the register + is found. If successful, then return 1, otherwise return 0. */ + +/* ?? Could be made more intelligent in the handling of jumps, so that + it can search past if statements and other similar structures. */ + +static int +reg_dead_after_loop (const struct loop *loop, rtx reg) +{ + rtx insn, label; + int jump_count = 0; + int label_count = 0; + + /* In addition to checking all exits of this loop, we must also check + all exits of inner nested loops that would exit this loop. We don't + have any way to identify those, so we just give up if there are any + such inner loop exits. */ + + for (label = loop->exit_labels; label; label = LABEL_NEXTREF (label)) + label_count++; + + if (label_count != loop->exit_count) + return 0; + + /* HACK: Must also search the loop fall through exit, create a label_ref + here which points to the loop->end, and append the loop_number_exit_labels + list to it. */ + label = gen_rtx_LABEL_REF (VOIDmode, loop->end); + LABEL_NEXTREF (label) = loop->exit_labels; + + for (; label; label = LABEL_NEXTREF (label)) + { + /* Succeed if find an insn which sets the biv or if reach end of + function. Fail if find an insn that uses the biv, or if come to + a conditional jump. */ + + insn = NEXT_INSN (XEXP (label, 0)); + while (insn) + { + if (INSN_P (insn)) + { + rtx set, note; + + if (reg_referenced_p (reg, PATTERN (insn))) + return 0; + + note = find_reg_equal_equiv_note (insn); + if (note && reg_overlap_mentioned_p (reg, XEXP (note, 0))) + return 0; + + set = single_set (insn); + if (set && rtx_equal_p (SET_DEST (set), reg)) + break; + + if (JUMP_P (insn)) + { + if (GET_CODE (PATTERN (insn)) == RETURN) + break; + else if (!any_uncondjump_p (insn) + /* Prevent infinite loop following infinite loops. */ + || jump_count++ > 20) + return 0; + else + insn = JUMP_LABEL (insn); + } + } + + insn = NEXT_INSN (insn); + } + } + + /* Success, the register is dead on all loop exits. */ + return 1; +} + +/* Try to calculate the final value of the biv, the value it will have at + the end of the loop. If we can do it, return that value. */ + +static rtx +final_biv_value (const struct loop *loop, struct iv_class *bl) +{ + unsigned HOST_WIDE_INT n_iterations = LOOP_INFO (loop)->n_iterations; + rtx increment, tem; + + /* ??? This only works for MODE_INT biv's. Reject all others for now. */ + + if (GET_MODE_CLASS (bl->biv->mode) != MODE_INT) + return 0; + + /* The final value for reversed bivs must be calculated differently than + for ordinary bivs. In this case, there is already an insn after the + loop which sets this biv's final value (if necessary), and there are + no other loop exits, so we can return any value. */ + if (bl->reversed) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Final biv value for %d, reversed biv.\n", bl->regno); + + return const0_rtx; + } + + /* Try to calculate the final value as initial value + (number of iterations + * increment). For this to work, increment must be invariant, the only + exit from the loop must be the fall through at the bottom (otherwise + it may not have its final value when the loop exits), and the initial + value of the biv must be invariant. */ + + if (n_iterations != 0 + && ! loop->exit_count + && loop_invariant_p (loop, bl->initial_value)) + { + increment = biv_total_increment (bl); + + if (increment && loop_invariant_p (loop, increment)) + { + /* Can calculate the loop exit value, emit insns after loop + end to calculate this value into a temporary register in + case it is needed later. */ + + tem = gen_reg_rtx (bl->biv->mode); + record_base_value (REGNO (tem), bl->biv->add_val, 0); + loop_iv_add_mult_sink (loop, increment, GEN_INT (n_iterations), + bl->initial_value, tem); + + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Final biv value for %d, calculated.\n", bl->regno); + + return tem; + } + } + + /* Check to see if the biv is dead at all loop exits. */ + if (reg_dead_after_loop (loop, bl->biv->src_reg)) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Final biv value for %d, biv dead after loop exit.\n", + bl->regno); + + return const0_rtx; + } + + return 0; +} /* Return nonzero if it is possible to eliminate the biv BL provided all givs are reduced. This is possible if either the reg is not @@ -4989,6 +5616,656 @@ loop_ivs_free (struct loop *loop) } } +/* Look back before LOOP->START for the insn that sets REG and return + the equivalent constant if there is a REG_EQUAL note otherwise just + the SET_SRC of REG. */ + +static rtx +loop_find_equiv_value (const struct loop *loop, rtx reg) +{ + rtx loop_start = loop->start; + rtx insn, set; + rtx ret; + + ret = reg; + for (insn = PREV_INSN (loop_start); insn; insn = PREV_INSN (insn)) + { + if (LABEL_P (insn)) + break; + + else if (INSN_P (insn) && reg_set_p (reg, insn)) + { + /* We found the last insn before the loop that sets the register. + If it sets the entire register, and has a REG_EQUAL note, + then use the value of the REG_EQUAL note. */ + if ((set = single_set (insn)) + && (SET_DEST (set) == reg)) + { + rtx note = find_reg_note (insn, REG_EQUAL, NULL_RTX); + + /* Only use the REG_EQUAL note if it is a constant. + Other things, divide in particular, will cause + problems later if we use them. */ + if (note && GET_CODE (XEXP (note, 0)) != EXPR_LIST + && CONSTANT_P (XEXP (note, 0))) + ret = XEXP (note, 0); + else + ret = SET_SRC (set); + + /* We cannot do this if it changes between the + assignment and loop start though. */ + if (modified_between_p (ret, insn, loop_start)) + ret = reg; + } + break; + } + } + return ret; +} + +/* Find and return register term common to both expressions OP0 and + OP1 or NULL_RTX if no such term exists. Each expression must be a + REG or a PLUS of a REG. */ + +static rtx +find_common_reg_term (rtx op0, rtx op1) +{ + if ((REG_P (op0) || GET_CODE (op0) == PLUS) + && (REG_P (op1) || GET_CODE (op1) == PLUS)) + { + rtx op00; + rtx op01; + rtx op10; + rtx op11; + + if (GET_CODE (op0) == PLUS) + op01 = XEXP (op0, 1), op00 = XEXP (op0, 0); + else + op01 = const0_rtx, op00 = op0; + + if (GET_CODE (op1) == PLUS) + op11 = XEXP (op1, 1), op10 = XEXP (op1, 0); + else + op11 = const0_rtx, op10 = op1; + + /* Find and return common register term if present. */ + if (REG_P (op00) && (op00 == op10 || op00 == op11)) + return op00; + else if (REG_P (op01) && (op01 == op10 || op01 == op11)) + return op01; + } + + /* No common register term found. */ + return NULL_RTX; +} + +/* Determine the loop iterator and calculate the number of loop + iterations. Returns the exact number of loop iterations if it can + be calculated, otherwise returns zero. */ + +static unsigned HOST_WIDE_INT +loop_iterations (struct loop *loop) +{ + struct loop_info *loop_info = LOOP_INFO (loop); + struct loop_ivs *ivs = LOOP_IVS (loop); + rtx comparison, comparison_value; + rtx iteration_var, initial_value, increment, final_value; + enum rtx_code comparison_code; + HOST_WIDE_INT inc; + unsigned HOST_WIDE_INT abs_inc; + unsigned HOST_WIDE_INT abs_diff; + int off_by_one; + int increment_dir; + int unsigned_p, compare_dir, final_larger; + rtx last_loop_insn; + struct iv_class *bl; + + loop_info->n_iterations = 0; + loop_info->initial_value = 0; + loop_info->initial_equiv_value = 0; + loop_info->comparison_value = 0; + loop_info->final_value = 0; + loop_info->final_equiv_value = 0; + loop_info->increment = 0; + loop_info->iteration_var = 0; + loop_info->iv = 0; + + /* We used to use prev_nonnote_insn here, but that fails because it might + accidentally get the branch for a contained loop if the branch for this + loop was deleted. We can only trust branches immediately before the + loop_end. */ + last_loop_insn = PREV_INSN (loop->end); + + /* ??? We should probably try harder to find the jump insn + at the end of the loop. The following code assumes that + the last loop insn is a jump to the top of the loop. */ + if (!JUMP_P (last_loop_insn)) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: No final conditional branch found.\n"); + return 0; + } + + /* If there is a more than a single jump to the top of the loop + we cannot (easily) determine the iteration count. */ + if (LABEL_NUSES (JUMP_LABEL (last_loop_insn)) > 1) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Loop has multiple back edges.\n"); + return 0; + } + + /* Find the iteration variable. If the last insn is a conditional + branch, and the insn before tests a register value, make that the + iteration variable. */ + + comparison = get_condition_for_loop (loop, last_loop_insn); + if (comparison == 0) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: No final comparison found.\n"); + return 0; + } + + /* ??? Get_condition may switch position of induction variable and + invariant register when it canonicalizes the comparison. */ + + comparison_code = GET_CODE (comparison); + iteration_var = XEXP (comparison, 0); + comparison_value = XEXP (comparison, 1); + + if (!REG_P (iteration_var)) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Comparison not against register.\n"); + return 0; + } + + /* The only new registers that are created before loop iterations + are givs made from biv increments or registers created by + load_mems. In the latter case, it is possible that try_copy_prop + will propagate a new pseudo into the old iteration register but + this will be marked by having the REG_USERVAR_P bit set. */ + + if ((unsigned) REGNO (iteration_var) >= ivs->n_regs + && ! REG_USERVAR_P (iteration_var)) + abort (); + + /* Determine the initial value of the iteration variable, and the amount + that it is incremented each loop. Use the tables constructed by + the strength reduction pass to calculate these values. */ + + /* Clear the result values, in case no answer can be found. */ + initial_value = 0; + increment = 0; + + /* The iteration variable can be either a giv or a biv. Check to see + which it is, and compute the variable's initial value, and increment + value if possible. */ + + /* If this is a new register, can't handle it since we don't have any + reg_iv_type entry for it. */ + if ((unsigned) REGNO (iteration_var) >= ivs->n_regs) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: No reg_iv_type entry for iteration var.\n"); + return 0; + } + + /* Reject iteration variables larger than the host wide int size, since they + could result in a number of iterations greater than the range of our + `unsigned HOST_WIDE_INT' variable loop_info->n_iterations. */ + else if ((GET_MODE_BITSIZE (GET_MODE (iteration_var)) + > HOST_BITS_PER_WIDE_INT)) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Iteration var rejected because mode too large.\n"); + return 0; + } + else if (GET_MODE_CLASS (GET_MODE (iteration_var)) != MODE_INT) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Iteration var not an integer.\n"); + return 0; + } + + /* Try swapping the comparison to identify a suitable iv. */ + if (REG_IV_TYPE (ivs, REGNO (iteration_var)) != BASIC_INDUCT + && REG_IV_TYPE (ivs, REGNO (iteration_var)) != GENERAL_INDUCT + && REG_P (comparison_value) + && REGNO (comparison_value) < ivs->n_regs) + { + rtx temp = comparison_value; + comparison_code = swap_condition (comparison_code); + comparison_value = iteration_var; + iteration_var = temp; + } + + if (REG_IV_TYPE (ivs, REGNO (iteration_var)) == BASIC_INDUCT) + { + if (REGNO (iteration_var) >= ivs->n_regs) + abort (); + + /* Grab initial value, only useful if it is a constant. */ + bl = REG_IV_CLASS (ivs, REGNO (iteration_var)); + initial_value = bl->initial_value; + if (!bl->biv->always_executed || bl->biv->maybe_multiple) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Basic induction var not set once in each iteration.\n"); + return 0; + } + + increment = biv_total_increment (bl); + } + else if (REG_IV_TYPE (ivs, REGNO (iteration_var)) == GENERAL_INDUCT) + { + HOST_WIDE_INT offset = 0; + struct induction *v = REG_IV_INFO (ivs, REGNO (iteration_var)); + rtx biv_initial_value; + + if (REGNO (v->src_reg) >= ivs->n_regs) + abort (); + + if (!v->always_executed || v->maybe_multiple) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: General induction var not set once in each iteration.\n"); + return 0; + } + + bl = REG_IV_CLASS (ivs, REGNO (v->src_reg)); + + /* Increment value is mult_val times the increment value of the biv. */ + + increment = biv_total_increment (bl); + if (increment) + { + struct induction *biv_inc; + + increment = fold_rtx_mult_add (v->mult_val, + extend_value_for_giv (v, increment), + const0_rtx, v->mode); + /* The caller assumes that one full increment has occurred at the + first loop test. But that's not true when the biv is incremented + after the giv is set (which is the usual case), e.g.: + i = 6; do {;} while (i++ < 9) . + Therefore, we bias the initial value by subtracting the amount of + the increment that occurs between the giv set and the giv test. */ + for (biv_inc = bl->biv; biv_inc; biv_inc = biv_inc->next_iv) + { + if (loop_insn_first_p (v->insn, biv_inc->insn)) + { + if (REG_P (biv_inc->add_val)) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Basic induction var add_val is REG %d.\n", + REGNO (biv_inc->add_val)); + return 0; + } + + /* If we have already counted it, skip it. */ + if (biv_inc->same) + continue; + + offset -= INTVAL (biv_inc->add_val); + } + } + } + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Giv iterator, initial value bias %ld.\n", + (long) offset); + + /* Initial value is mult_val times the biv's initial value plus + add_val. Only useful if it is a constant. */ + biv_initial_value = extend_value_for_giv (v, bl->initial_value); + initial_value + = fold_rtx_mult_add (v->mult_val, + plus_constant (biv_initial_value, offset), + v->add_val, v->mode); + } + else + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Not basic or general induction var.\n"); + return 0; + } + + if (initial_value == 0) + return 0; + + unsigned_p = 0; + off_by_one = 0; + switch (comparison_code) + { + case LEU: + unsigned_p = 1; + case LE: + compare_dir = 1; + off_by_one = 1; + break; + case GEU: + unsigned_p = 1; + case GE: + compare_dir = -1; + off_by_one = -1; + break; + case EQ: + /* Cannot determine loop iterations with this case. */ + compare_dir = 0; + break; + case LTU: + unsigned_p = 1; + case LT: + compare_dir = 1; + break; + case GTU: + unsigned_p = 1; + case GT: + compare_dir = -1; + break; + case NE: + compare_dir = 0; + break; + default: + abort (); + } + + /* If the comparison value is an invariant register, then try to find + its value from the insns before the start of the loop. */ + + final_value = comparison_value; + if (REG_P (comparison_value) + && loop_invariant_p (loop, comparison_value)) + { + final_value = loop_find_equiv_value (loop, comparison_value); + + /* If we don't get an invariant final value, we are better + off with the original register. */ + if (! loop_invariant_p (loop, final_value)) + final_value = comparison_value; + } + + /* Calculate the approximate final value of the induction variable + (on the last successful iteration). The exact final value + depends on the branch operator, and increment sign. It will be + wrong if the iteration variable is not incremented by one each + time through the loop and (comparison_value + off_by_one - + initial_value) % increment != 0. + ??? Note that the final_value may overflow and thus final_larger + will be bogus. A potentially infinite loop will be classified + as immediate, e.g. for (i = 0x7ffffff0; i <= 0x7fffffff; i++) */ + if (off_by_one) + final_value = plus_constant (final_value, off_by_one); + + /* Save the calculated values describing this loop's bounds, in case + precondition_loop_p will need them later. These values can not be + recalculated inside precondition_loop_p because strength reduction + optimizations may obscure the loop's structure. + + These values are only required by precondition_loop_p and insert_bct + whenever the number of iterations cannot be computed at compile time. + Only the difference between final_value and initial_value is + important. Note that final_value is only approximate. */ + loop_info->initial_value = initial_value; + loop_info->comparison_value = comparison_value; + loop_info->final_value = plus_constant (comparison_value, off_by_one); + loop_info->increment = increment; + loop_info->iteration_var = iteration_var; + loop_info->comparison_code = comparison_code; + loop_info->iv = bl; + + /* Try to determine the iteration count for loops such + as (for i = init; i < init + const; i++). When running the + loop optimization twice, the first pass often converts simple + loops into this form. */ + + if (REG_P (initial_value)) + { + rtx reg1; + rtx reg2; + rtx const2; + + reg1 = initial_value; + if (GET_CODE (final_value) == PLUS) + reg2 = XEXP (final_value, 0), const2 = XEXP (final_value, 1); + else + reg2 = final_value, const2 = const0_rtx; + + /* Check for initial_value = reg1, final_value = reg2 + const2, + where reg1 != reg2. */ + if (REG_P (reg2) && reg2 != reg1) + { + rtx temp; + + /* Find what reg1 is equivalent to. Hopefully it will + either be reg2 or reg2 plus a constant. */ + temp = loop_find_equiv_value (loop, reg1); + + if (find_common_reg_term (temp, reg2)) + initial_value = temp; + else if (loop_invariant_p (loop, reg2)) + { + /* Find what reg2 is equivalent to. Hopefully it will + either be reg1 or reg1 plus a constant. Let's ignore + the latter case for now since it is not so common. */ + temp = loop_find_equiv_value (loop, reg2); + + if (temp == loop_info->iteration_var) + temp = initial_value; + if (temp == reg1) + final_value = (const2 == const0_rtx) + ? reg1 : gen_rtx_PLUS (GET_MODE (reg1), reg1, const2); + } + } + } + + loop_info->initial_equiv_value = initial_value; + loop_info->final_equiv_value = final_value; + + /* For EQ comparison loops, we don't have a valid final value. + Check this now so that we won't leave an invalid value if we + return early for any other reason. */ + if (comparison_code == EQ) + loop_info->final_equiv_value = loop_info->final_value = 0; + + if (increment == 0) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Loop iterations: Increment value can't be calculated.\n"); + return 0; + } + + if (GET_CODE (increment) != CONST_INT) + { + /* If we have a REG, check to see if REG holds a constant value. */ + /* ??? Other RTL, such as (neg (reg)) is possible here, but it isn't + clear if it is worthwhile to try to handle such RTL. */ + if (REG_P (increment) || GET_CODE (increment) == SUBREG) + increment = loop_find_equiv_value (loop, increment); + + if (GET_CODE (increment) != CONST_INT) + { + if (loop_dump_stream) + { + fprintf (loop_dump_stream, + "Loop iterations: Increment value not constant "); + print_simple_rtl (loop_dump_stream, increment); + fprintf (loop_dump_stream, ".\n"); + } + return 0; + } + loop_info->increment = increment; + } + + if (GET_CODE (initial_value) != CONST_INT) + { + if (loop_dump_stream) + { + fprintf (loop_dump_stream, + "Loop iterations: Initial value not constant "); + print_simple_rtl (loop_dump_stream, initial_value); + fprintf (loop_dump_stream, ".\n"); + } + return 0; + } + else if (GET_CODE (final_value) != CONST_INT) + { + if (loop_dump_stream) + { + fprintf (loop_dump_stream, + "Loop iterations: Final value not constant "); + print_simple_rtl (loop_dump_stream, final_value); + fprintf (loop_dump_stream, ".\n"); + } + return 0; + } + else if (comparison_code == EQ) + { + rtx inc_once; + + if (loop_dump_stream) + fprintf (loop_dump_stream, "Loop iterations: EQ comparison loop.\n"); + + inc_once = gen_int_mode (INTVAL (initial_value) + INTVAL (increment), + GET_MODE (iteration_var)); + + if (inc_once == final_value) + { + /* The iterator value once through the loop is equal to the + comparison value. Either we have an infinite loop, or + we'll loop twice. */ + if (increment == const0_rtx) + return 0; + loop_info->n_iterations = 2; + } + else + loop_info->n_iterations = 1; + + if (GET_CODE (loop_info->initial_value) == CONST_INT) + loop_info->final_value + = gen_int_mode ((INTVAL (loop_info->initial_value) + + loop_info->n_iterations * INTVAL (increment)), + GET_MODE (iteration_var)); + else + loop_info->final_value + = plus_constant (loop_info->initial_value, + loop_info->n_iterations * INTVAL (increment)); + loop_info->final_equiv_value + = gen_int_mode ((INTVAL (initial_value) + + loop_info->n_iterations * INTVAL (increment)), + GET_MODE (iteration_var)); + return loop_info->n_iterations; + } + + /* Final_larger is 1 if final larger, 0 if they are equal, otherwise -1. */ + if (unsigned_p) + final_larger + = ((unsigned HOST_WIDE_INT) INTVAL (final_value) + > (unsigned HOST_WIDE_INT) INTVAL (initial_value)) + - ((unsigned HOST_WIDE_INT) INTVAL (final_value) + < (unsigned HOST_WIDE_INT) INTVAL (initial_value)); + else + final_larger = (INTVAL (final_value) > INTVAL (initial_value)) + - (INTVAL (final_value) < INTVAL (initial_value)); + + if (INTVAL (increment) > 0) + increment_dir = 1; + else if (INTVAL (increment) == 0) + increment_dir = 0; + else + increment_dir = -1; + + /* There are 27 different cases: compare_dir = -1, 0, 1; + final_larger = -1, 0, 1; increment_dir = -1, 0, 1. + There are 4 normal cases, 4 reverse cases (where the iteration variable + will overflow before the loop exits), 4 infinite loop cases, and 15 + immediate exit (0 or 1 iteration depending on loop type) cases. + Only try to optimize the normal cases. */ + + /* (compare_dir/final_larger/increment_dir) + Normal cases: (0/-1/-1), (0/1/1), (-1/-1/-1), (1/1/1) + Reverse cases: (0/-1/1), (0/1/-1), (-1/-1/1), (1/1/-1) + Infinite loops: (0/-1/0), (0/1/0), (-1/-1/0), (1/1/0) + Immediate exit: (0/0/X), (-1/0/X), (-1/1/X), (1/0/X), (1/-1/X) */ + + /* ?? If the meaning of reverse loops (where the iteration variable + will overflow before the loop exits) is undefined, then could + eliminate all of these special checks, and just always assume + the loops are normal/immediate/infinite. Note that this means + the sign of increment_dir does not have to be known. Also, + since it does not really hurt if immediate exit loops or infinite loops + are optimized, then that case could be ignored also, and hence all + loops can be optimized. + + According to ANSI Spec, the reverse loop case result is undefined, + because the action on overflow is undefined. + + See also the special test for NE loops below. */ + + if (final_larger == increment_dir && final_larger != 0 + && (final_larger == compare_dir || compare_dir == 0)) + /* Normal case. */ + ; + else + { + if (loop_dump_stream) + fprintf (loop_dump_stream, "Loop iterations: Not normal loop.\n"); + return 0; + } + + /* Calculate the number of iterations, final_value is only an approximation, + so correct for that. Note that abs_diff and n_iterations are + unsigned, because they can be as large as 2^n - 1. */ + + inc = INTVAL (increment); + if (inc > 0) + { + abs_diff = INTVAL (final_value) - INTVAL (initial_value); + abs_inc = inc; + } + else if (inc < 0) + { + abs_diff = INTVAL (initial_value) - INTVAL (final_value); + abs_inc = -inc; + } + else + abort (); + + /* Given that iteration_var is going to iterate over its own mode, + not HOST_WIDE_INT, disregard higher bits that might have come + into the picture due to sign extension of initial and final + values. */ + abs_diff &= ((unsigned HOST_WIDE_INT) 1 + << (GET_MODE_BITSIZE (GET_MODE (iteration_var)) - 1) + << 1) - 1; + + /* For NE tests, make sure that the iteration variable won't miss + the final value. If abs_diff mod abs_incr is not zero, then the + iteration variable will overflow before the loop exits, and we + can not calculate the number of iterations. */ + if (compare_dir == 0 && (abs_diff % abs_inc) != 0) + return 0; + + /* Note that the number of iterations could be calculated using + (abs_diff + abs_inc - 1) / abs_inc, provided care was taken to + handle potential overflow of the summation. */ + loop_info->n_iterations = abs_diff / abs_inc + ((abs_diff % abs_inc) != 0); + return loop_info->n_iterations; +} /* Perform strength reduction and induction variable elimination. @@ -5017,7 +6294,6 @@ strength_reduce (struct loop *loop, int flags) /* Map of pseudo-register replacements. */ rtx *reg_map = NULL; int reg_map_size; - int unrolled_insn_copies = 0; rtx test_reg = gen_rtx_REG (word_mode, LAST_VIRTUAL_REGISTER + 1); int insn_count = count_insns_in_loop (loop); @@ -5032,11 +6308,6 @@ strength_reduce (struct loop *loop, int flags) /* Exit if there are no bivs. */ if (! ivs->list) { - /* Can still unroll the loop anyways, but indicate that there is no - strength reduction info available. */ - if (flags & LOOP_UNROLL) - unroll_loop (loop, insn_count, 0); - loop_ivs_free (loop); return; } @@ -5122,8 +6393,7 @@ strength_reduce (struct loop *loop, int flags) of such giv's whether or not we know they are used after the loop exit. */ - if (! flag_reduce_all_givs - && v->lifetime * threshold * benefit < insn_count + if (v->lifetime * threshold * benefit < insn_count && ! bl->reversed) { if (loop_dump_stream) @@ -5249,43 +6519,6 @@ strength_reduce (struct loop *loop, int flags) INSN_CODE (p) = -1; } - if (loop_info->n_iterations > 0) - { - /* When we completely unroll a loop we will likely not need the increment - of the loop BIV and we will not need the conditional branch at the - end of the loop. */ - unrolled_insn_copies = insn_count - 2; - -#ifdef HAVE_cc0 - /* When we completely unroll a loop on a HAVE_cc0 machine we will not - need the comparison before the conditional branch at the end of the - loop. */ - unrolled_insn_copies -= 1; -#endif - - /* We'll need one copy for each loop iteration. */ - unrolled_insn_copies *= loop_info->n_iterations; - - /* A little slop to account for the ability to remove initialization - code, better CSE, and other secondary benefits of completely - unrolling some loops. */ - unrolled_insn_copies -= 1; - - /* Clamp the value. */ - if (unrolled_insn_copies < 0) - unrolled_insn_copies = 0; - } - - /* Unroll loops from within strength reduction so that we can use the - induction variable information that strength_reduce has already - collected. Always unroll loops that would be as small or smaller - unrolled than when rolled. */ - if ((flags & LOOP_UNROLL) - || ((flags & LOOP_AUTO_UNROLL) - && loop_info->n_iterations > 0 - && unrolled_insn_copies <= insn_count)) - unroll_loop (loop, insn_count, 1); - if (loop_dump_stream) fprintf (loop_dump_stream, "\n"); @@ -5679,7 +6912,6 @@ record_giv (const struct loop *loop, struct induction *v, rtx insn, v->final_value = 0; v->same_insn = 0; v->auto_inc_opt = 0; - v->unrolled = 0; v->shared = 0; /* The v->always_computable field is used in update_giv_derive, to @@ -5839,6 +7071,132 @@ record_giv (const struct loop *loop, struct induction *v, rtx insn, loop_giv_dump (v, loop_dump_stream, 0); } +/* Try to calculate the final value of the giv, the value it will have at + the end of the loop. If we can do it, return that value. */ + +static rtx +final_giv_value (const struct loop *loop, struct induction *v) +{ + struct loop_ivs *ivs = LOOP_IVS (loop); + struct iv_class *bl; + rtx insn; + rtx increment, tem; + rtx seq; + rtx loop_end = loop->end; + unsigned HOST_WIDE_INT n_iterations = LOOP_INFO (loop)->n_iterations; + + bl = REG_IV_CLASS (ivs, REGNO (v->src_reg)); + + /* The final value for givs which depend on reversed bivs must be calculated + differently than for ordinary givs. In this case, there is already an + insn after the loop which sets this giv's final value (if necessary), + and there are no other loop exits, so we can return any value. */ + if (bl->reversed) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Final giv value for %d, depends on reversed biv\n", + REGNO (v->dest_reg)); + return const0_rtx; + } + + /* Try to calculate the final value as a function of the biv it depends + upon. The only exit from the loop must be the fall through at the bottom + and the insn that sets the giv must be executed on every iteration + (otherwise the giv may not have its final value when the loop exits). */ + + /* ??? Can calculate the final giv value by subtracting off the + extra biv increments times the giv's mult_val. The loop must have + only one exit for this to work, but the loop iterations does not need + to be known. */ + + if (n_iterations != 0 + && ! loop->exit_count + && v->always_executed) + { + /* ?? It is tempting to use the biv's value here since these insns will + be put after the loop, and hence the biv will have its final value + then. However, this fails if the biv is subsequently eliminated. + Perhaps determine whether biv's are eliminable before trying to + determine whether giv's are replaceable so that we can use the + biv value here if it is not eliminable. */ + + /* We are emitting code after the end of the loop, so we must make + sure that bl->initial_value is still valid then. It will still + be valid if it is invariant. */ + + increment = biv_total_increment (bl); + + if (increment && loop_invariant_p (loop, increment) + && loop_invariant_p (loop, bl->initial_value)) + { + /* Can calculate the loop exit value of its biv as + (n_iterations * increment) + initial_value */ + + /* The loop exit value of the giv is then + (final_biv_value - extra increments) * mult_val + add_val. + The extra increments are any increments to the biv which + occur in the loop after the giv's value is calculated. + We must search from the insn that sets the giv to the end + of the loop to calculate this value. */ + + /* Put the final biv value in tem. */ + tem = gen_reg_rtx (v->mode); + record_base_value (REGNO (tem), bl->biv->add_val, 0); + loop_iv_add_mult_sink (loop, extend_value_for_giv (v, increment), + GEN_INT (n_iterations), + extend_value_for_giv (v, bl->initial_value), + tem); + + /* Subtract off extra increments as we find them. */ + for (insn = NEXT_INSN (v->insn); insn != loop_end; + insn = NEXT_INSN (insn)) + { + struct induction *biv; + + for (biv = bl->biv; biv; biv = biv->next_iv) + if (biv->insn == insn) + { + start_sequence (); + tem = expand_simple_binop (GET_MODE (tem), MINUS, tem, + biv->add_val, NULL_RTX, 0, + OPTAB_LIB_WIDEN); + seq = get_insns (); + end_sequence (); + loop_insn_sink (loop, seq); + } + } + + /* Now calculate the giv's final value. */ + loop_iv_add_mult_sink (loop, tem, v->mult_val, v->add_val, tem); + + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Final giv value for %d, calc from biv's value.\n", + REGNO (v->dest_reg)); + + return tem; + } + } + + /* Replaceable giv's should never reach here. */ + if (v->replaceable) + abort (); + + /* Check to see if the biv is dead at all loop exits. */ + if (reg_dead_after_loop (loop, v->dest_reg)) + { + if (loop_dump_stream) + fprintf (loop_dump_stream, + "Final giv value for %d, giv dead after loop exit.\n", + REGNO (v->dest_reg)); + + return const0_rtx; + } + + return 0; +} + /* All this does is determine whether a giv can be made replaceable because its final value can be calculated. This code can not be part of record_giv above, because final_giv_value requires that the number of loop iterations @@ -7126,7 +8484,7 @@ express_from_1 (rtx a, rtx b, rtx mult) return NULL_RTX; } -rtx +static rtx express_from (struct induction *g1, struct induction *g2) { rtx mult, add; @@ -7442,7 +8800,7 @@ check_ext_dependent_givs (const struct loop *loop, struct iv_class *bl) /* Generate a version of VALUE in a mode appropriate for initializing V. */ -rtx +static rtx extend_value_for_giv (struct induction *v, rtx value) { rtx ext_dep = v->ext_dependent; @@ -7704,7 +9062,7 @@ loop_regs_update (const struct loop *loop ATTRIBUTE_UNUSED, rtx seq) multiplicative constant, A an additive constant and REG the destination register. */ -void +static void loop_iv_add_mult_emit_before (const struct loop *loop, rtx b, rtx m, rtx a, rtx reg, basic_block before_bb, rtx before_insn) { @@ -7738,7 +9096,7 @@ loop_iv_add_mult_emit_before (const struct loop *loop, rtx b, rtx m, rtx a, constant, A an additive constant and REG the destination register. */ -void +static void loop_iv_add_mult_sink (const struct loop *loop, rtx b, rtx m, rtx a, rtx reg) { rtx seq; @@ -7765,7 +9123,7 @@ loop_iv_add_mult_sink (const struct loop *loop, rtx b, rtx m, rtx a, rtx reg) value of the basic induction variable, M a multiplicative constant, A an additive constant and REG the destination register. */ -void +static void loop_iv_add_mult_hoist (const struct loop *loop, rtx b, rtx m, rtx a, rtx reg) { rtx seq; @@ -8574,7 +9932,7 @@ maybe_eliminate_biv (const struct loop *loop, struct iv_class *bl, /* INSN and REFERENCE are instructions in the same insn chain. Return nonzero if INSN is first. */ -int +static int loop_insn_first_p (rtx insn, rtx reference) { rtx p, q; @@ -9394,7 +10752,7 @@ get_condition (rtx jump, rtx *earliest, int allow_cc_mode, int valid_at_insn_p) /* Similar to above routine, except that we also put an invariant last unless both operands are invariants. */ -rtx +static rtx get_condition_for_loop (const struct loop *loop, rtx x) { rtx comparison = get_condition (x, (rtx*) 0, false, true); @@ -10352,7 +11710,7 @@ loop_insn_emit_after (const struct loop *loop ATTRIBUTE_UNUSED, in basic block WHERE_BB (ignored in the interim) within the loop otherwise hoist PATTERN into the loop pre-header. */ -rtx +static rtx loop_insn_emit_before (const struct loop *loop, basic_block where_bb ATTRIBUTE_UNUSED, rtx where_insn, rtx pattern) @@ -10377,7 +11735,7 @@ loop_call_insn_emit_before (const struct loop *loop ATTRIBUTE_UNUSED, /* Hoist insn for PATTERN into the loop pre-header. */ -rtx +static rtx loop_insn_hoist (const struct loop *loop, rtx pattern) { return loop_insn_emit_before (loop, 0, loop->start, pattern); @@ -10395,7 +11753,7 @@ loop_call_insn_hoist (const struct loop *loop, rtx pattern) /* Sink insn for PATTERN after the loop end. */ -rtx +static rtx loop_insn_sink (const struct loop *loop, rtx pattern) { return loop_insn_emit_before (loop, 0, loop->sink, pattern); diff --git a/gcc/loop.h b/gcc/loop.h deleted file mode 100644 index 13b0398e83c..00000000000 --- a/gcc/loop.h +++ /dev/null @@ -1,430 +0,0 @@ -/* Loop optimization definitions for GCC - Copyright (C) 1991, 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004 - Free Software Foundation, Inc. - -This file is part of GCC. - -GCC 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. - -GCC 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 GCC; see the file COPYING. If not, write to the Free -Software Foundation, 59 Temple Place - Suite 330, Boston, MA -02111-1307, USA. */ - -#include "bitmap.h" -#include "sbitmap.h" -#include "hard-reg-set.h" -#include "basic-block.h" - -/* Flags passed to loop_optimize. */ -#define LOOP_UNROLL 1 -#define LOOP_PREFETCH 2 -#define LOOP_AUTO_UNROLL 4 - -/* Get the loop info pointer of a loop. */ -#define LOOP_INFO(LOOP) ((struct loop_info *) (LOOP)->aux) - -/* Get a pointer to the loop movables structure. */ -#define LOOP_MOVABLES(LOOP) (&LOOP_INFO (LOOP)->movables) - -/* Get a pointer to the loop registers structure. */ -#define LOOP_REGS(LOOP) (&LOOP_INFO (LOOP)->regs) - -/* Get a pointer to the loop induction variables structure. */ -#define LOOP_IVS(LOOP) (&LOOP_INFO (LOOP)->ivs) - -/* Get the luid of an insn. Catch the error of trying to reference the LUID - of an insn added during loop, since these don't have LUIDs. */ - -#define INSN_LUID(INSN) \ - (INSN_UID (INSN) < max_uid_for_loop ? uid_luid[INSN_UID (INSN)] \ - : (abort (), -1)) - -#define REGNO_FIRST_LUID(REGNO) \ - (REGNO_FIRST_UID (REGNO) < max_uid_for_loop \ - ? uid_luid[REGNO_FIRST_UID (REGNO)] \ - : 0) -#define REGNO_LAST_LUID(REGNO) \ - (REGNO_LAST_UID (REGNO) < max_uid_for_loop \ - ? uid_luid[REGNO_LAST_UID (REGNO)] \ - : INT_MAX) - -/* A "basic induction variable" or biv is a pseudo reg that is set - (within this loop) only by incrementing or decrementing it. */ -/* A "general induction variable" or giv is a pseudo reg whose - value is a linear function of a biv. */ - -/* Bivs are recognized by `basic_induction_var'; - Givs by `general_induction_var'. */ - -/* An enum for the two different types of givs, those that are used - as memory addresses and those that are calculated into registers. */ -enum g_types -{ - DEST_ADDR, - DEST_REG -}; - - -/* A `struct induction' is created for every instruction that sets - an induction variable (either a biv or a giv). */ - -struct induction -{ - rtx insn; /* The insn that sets a biv or giv */ - rtx new_reg; /* New register, containing strength reduced - version of this giv. */ - rtx src_reg; /* Biv from which this giv is computed. - (If this is a biv, then this is the biv.) */ - enum g_types giv_type; /* Indicate whether DEST_ADDR or DEST_REG */ - rtx dest_reg; /* Destination register for insn: this is the - register which was the biv or giv. - For a biv, this equals src_reg. - For a DEST_ADDR type giv, this is 0. */ - rtx *location; /* Place in the insn where this giv occurs. - If GIV_TYPE is DEST_REG, this is 0. */ - /* For a biv, this is the place where add_val - was found. */ - enum machine_mode mode; /* The mode of this biv or giv */ - rtx mem; /* For DEST_ADDR, the memory object. */ - rtx mult_val; /* Multiplicative factor for src_reg. */ - rtx add_val; /* Additive constant for that product. */ - int benefit; /* Gain from eliminating this insn. */ - rtx final_value; /* If the giv is used outside the loop, and its - final value could be calculated, it is put - here, and the giv is made replaceable. Set - the giv to this value before the loop. */ - unsigned combined_with; /* The number of givs this giv has been - combined with. If nonzero, this giv - cannot combine with any other giv. */ - unsigned replaceable : 1; /* 1 if we can substitute the strength-reduced - variable for the original variable. - 0 means they must be kept separate and the - new one must be copied into the old pseudo - reg each time the old one is set. */ - unsigned not_replaceable : 1; /* Used to prevent duplicating work. This is - 1 if we know that the giv definitely can - not be made replaceable, in which case we - don't bother checking the variable again - even if further info is available. - Both this and the above can be zero. */ - unsigned ignore : 1; /* 1 prohibits further processing of giv */ - unsigned always_computable : 1;/* 1 if this value is computable every - iteration. */ - unsigned always_executed : 1; /* 1 if this set occurs each iteration. */ - unsigned maybe_multiple : 1; /* Only used for a biv and 1 if this biv - update may be done multiple times per - iteration. */ - unsigned cant_derive : 1; /* For giv's, 1 if this giv cannot derive - another giv. This occurs in many cases - where a giv's lifetime spans an update to - a biv. */ - unsigned maybe_dead : 1; /* 1 if this giv might be dead. In that case, - we won't use it to eliminate a biv, it - would probably lose. */ - unsigned auto_inc_opt : 1; /* 1 if this giv had its increment output next - to it to try to form an auto-inc address. */ - unsigned unrolled : 1; /* 1 if new register has been allocated and - initialized in unrolled loop. */ - unsigned shared : 1; - unsigned no_const_addval : 1; /* 1 if add_val does not contain a const. */ - int lifetime; /* Length of life of this giv */ - rtx derive_adjustment; /* If nonzero, is an adjustment to be - subtracted from add_val when this giv - derives another. This occurs when the - giv spans a biv update by incrementation. */ - rtx ext_dependent; /* If nonzero, is a sign or zero extension - if a biv on which this giv is dependent. */ - struct induction *next_iv; /* For givs, links together all givs that are - based on the same biv. For bivs, links - together all biv entries that refer to the - same biv register. */ - struct induction *same; /* For givs, if the giv has been combined with - another giv, this points to the base giv. - The base giv will have COMBINED_WITH nonzero. - For bivs, if the biv has the same LOCATION - than another biv, this points to the base - biv. */ - HOST_WIDE_INT const_adjust; /* Used by loop unrolling, when an address giv - is split, and a constant is eliminated from - the address, the -constant is stored here - for later use. */ - struct induction *same_insn; /* If there are multiple identical givs in - the same insn, then all but one have this - field set, and they all point to the giv - that doesn't have this field set. */ - rtx last_use; /* For a giv made from a biv increment, this is - a substitute for the lifetime information. */ -}; - - -/* A `struct iv_class' is created for each biv. */ - -struct iv_class -{ - unsigned int regno; /* Pseudo reg which is the biv. */ - int biv_count; /* Number of insns setting this reg. */ - struct induction *biv; /* List of all insns that set this reg. */ - int giv_count; /* Number of DEST_REG givs computed from this - biv. The resulting count is only used in - check_dbra_loop. */ - struct induction *giv; /* List of all insns that compute a giv - from this reg. */ - int total_benefit; /* Sum of BENEFITs of all those givs. */ - rtx initial_value; /* Value of reg at loop start. */ - rtx initial_test; /* Test performed on BIV before loop. */ - rtx final_value; /* Value of reg at loop end, if known. */ - struct iv_class *next; /* Links all class structures together. */ - rtx init_insn; /* insn which initializes biv, 0 if none. */ - rtx init_set; /* SET of INIT_INSN, if any. */ - unsigned incremented : 1; /* 1 if somewhere incremented/decremented */ - unsigned eliminable : 1; /* 1 if plausible candidate for - elimination. */ - unsigned nonneg : 1; /* 1 if we added a REG_NONNEG note for - this. */ - unsigned reversed : 1; /* 1 if we reversed the loop that this - biv controls. */ - unsigned all_reduced : 1; /* 1 if all givs using this biv have - been reduced. */ -}; - - -/* Definitions used by the basic induction variable discovery code. */ -enum iv_mode -{ - UNKNOWN_INDUCT, - BASIC_INDUCT, - NOT_BASIC_INDUCT, - GENERAL_INDUCT -}; - - -/* A `struct iv' is created for every register. */ - -struct iv -{ - enum iv_mode type; - union - { - struct iv_class *class; - struct induction *info; - } iv; -}; - - -#define REG_IV_TYPE(ivs, n) ivs->regs[n].type -#define REG_IV_INFO(ivs, n) ivs->regs[n].iv.info -#define REG_IV_CLASS(ivs, n) ivs->regs[n].iv.class - - -struct loop_ivs -{ - /* Indexed by register number, contains pointer to `struct - iv' if register is an induction variable. */ - struct iv *regs; - - /* Size of regs array. */ - unsigned int n_regs; - - /* The head of a list which links together (via the next field) - every iv class for the current loop. */ - struct iv_class *list; -}; - - -typedef struct loop_mem_info -{ - rtx mem; /* The MEM itself. */ - rtx reg; /* Corresponding pseudo, if any. */ - int optimize; /* Nonzero if we can optimize access to this MEM. */ -} loop_mem_info; - - - -struct loop_reg -{ - /* Number of times the reg is set during the loop being scanned. - During code motion, a negative value indicates a reg that has - been made a candidate; in particular -2 means that it is an - candidate that we know is equal to a constant and -1 means that - it is a candidate not known equal to a constant. After code - motion, regs moved have 0 (which is accurate now) while the - failed candidates have the original number of times set. - - Therefore, at all times, == 0 indicates an invariant register; - < 0 a conditionally invariant one. */ - int set_in_loop; - - /* Original value of set_in_loop; same except that this value - is not set negative for a reg whose sets have been made candidates - and not set to 0 for a reg that is moved. */ - int n_times_set; - - /* Contains the insn in which a register was used if it was used - exactly once; contains const0_rtx if it was used more than once. */ - rtx single_usage; - - /* Nonzero indicates that the register cannot be moved or strength - reduced. */ - char may_not_optimize; - - /* Nonzero means reg N has already been moved out of one loop. - This reduces the desire to move it out of another. */ - char moved_once; -}; - - -struct loop_regs -{ - int num; /* Number of regs used in table. */ - int size; /* Size of table. */ - struct loop_reg *array; /* Register usage info. array. */ - int multiple_uses; /* Nonzero if a reg has multiple uses. */ -}; - - - -struct loop_movables -{ - /* Head of movable chain. */ - struct movable *head; - /* Last movable in chain. */ - struct movable *last; -}; - - -/* Information pertaining to a loop. */ - -struct loop_info -{ - /* Nonzero if there is a subroutine call in the current loop. */ - int has_call; - /* Nonzero if there is a libcall in the current loop. */ - int has_libcall; - /* Nonzero if there is a non constant call in the current loop. */ - int has_nonconst_call; - /* Nonzero if there is a prefetch instruction in the current loop. */ - int has_prefetch; - /* Nonzero if there is a volatile memory reference in the current - loop. */ - int has_volatile; - /* Nonzero if there is a tablejump in the current loop. */ - int has_tablejump; - /* Nonzero if there are ways to leave the loop other than falling - off the end. */ - int has_multiple_exit_targets; - /* Nonzero if there is an indirect jump in the current function. */ - int has_indirect_jump; - /* Whether loop unrolling has emitted copies of the loop body so - that the main loop needs no exit tests. */ - int preconditioned; - /* Register or constant initial loop value. */ - rtx initial_value; - /* Register or constant value used for comparison test. */ - rtx comparison_value; - /* Register or constant approximate final value. */ - rtx final_value; - /* Register or constant initial loop value with term common to - final_value removed. */ - rtx initial_equiv_value; - /* Register or constant final loop value with term common to - initial_value removed. */ - rtx final_equiv_value; - /* Register corresponding to iteration variable. */ - rtx iteration_var; - /* Constant loop increment. */ - rtx increment; - enum rtx_code comparison_code; - /* Holds the number of loop iterations. It is zero if the number - could not be calculated. Must be unsigned since the number of - iterations can be as high as 2^wordsize - 1. For loops with a - wider iterator, this number will be zero if the number of loop - iterations is too large for an unsigned integer to hold. */ - unsigned HOST_WIDE_INT n_iterations; - /* The number of times the loop body was unrolled. */ - unsigned int unroll_number; - int used_count_register; - /* The loop iterator induction variable. */ - struct iv_class *iv; - /* List of MEMs that are stored in this loop. */ - rtx store_mems; - /* Array of MEMs that are used (read or written) in this loop, but - cannot be aliased by anything in this loop, except perhaps - themselves. In other words, if mems[i] is altered during - the loop, it is altered by an expression that is rtx_equal_p to - it. */ - loop_mem_info *mems; - /* The index of the next available slot in MEMS. */ - int mems_idx; - /* The number of elements allocated in MEMS. */ - int mems_allocated; - /* Nonzero if we don't know what MEMs were changed in the current - loop. This happens if the loop contains a call (in which case - `has_call' will also be set) or if we store into more than - NUM_STORES MEMs. */ - int unknown_address_altered; - /* The above doesn't count any readonly memory locations that are - stored. This does. */ - int unknown_constant_address_altered; - /* Count of memory write instructions discovered in the loop. */ - int num_mem_sets; - /* The insn where the first of these was found. */ - rtx first_loop_store_insn; - /* The chain of movable insns in loop. */ - struct loop_movables movables; - /* The registers used the in loop. */ - struct loop_regs regs; - /* The induction variable information in loop. */ - struct loop_ivs ivs; - /* Nonzero if call is in pre_header extended basic block. */ - int pre_header_has_call; -}; - - -/* Variables declared in loop.c, but also needed in unroll.c. */ - -extern int *uid_luid; -extern int max_uid_for_loop; -extern unsigned int max_reg_before_loop; -extern struct loop **uid_loop; -extern FILE *loop_dump_stream; - - -/* Forward declarations for non-static functions declared in loop.c and - unroll.c. */ -extern int loop_invariant_p (const struct loop *, rtx); -extern rtx get_condition_for_loop (const struct loop *, rtx); -extern void loop_iv_add_mult_hoist (const struct loop *, rtx, rtx, rtx, rtx); -extern void loop_iv_add_mult_sink (const struct loop *, rtx, rtx, rtx, rtx); -extern void loop_iv_add_mult_emit_before (const struct loop *, rtx, rtx, - rtx, rtx, basic_block, rtx); -extern rtx express_from (struct induction *, struct induction *); -extern rtx extend_value_for_giv (struct induction *, rtx); - -extern void unroll_loop (struct loop *, int, int); -extern rtx biv_total_increment (const struct iv_class *); -extern unsigned HOST_WIDE_INT loop_iterations (struct loop *); -extern int precondition_loop_p (const struct loop *, rtx *, rtx *, rtx *, - enum machine_mode *mode); -extern rtx final_biv_value (const struct loop *, struct iv_class *); -extern rtx final_giv_value (const struct loop *, struct induction *); -extern void emit_unrolled_add (rtx, rtx, rtx); -extern int back_branch_in_range_p (const struct loop *, rtx); - -extern int loop_insn_first_p (rtx, rtx); -typedef rtx (*loop_insn_callback) (struct loop *, rtx, int, int); -extern void for_each_insn_in_loop (struct loop *, loop_insn_callback); -extern rtx loop_insn_emit_before (const struct loop *, basic_block, rtx, rtx); -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 int doloop_optimize (const struct loop *); diff --git a/gcc/mips-tdump.c b/gcc/mips-tdump.c index e25c175ef54..cb3669a0d71 100644 --- a/gcc/mips-tdump.c +++ b/gcc/mips-tdump.c @@ -122,7 +122,7 @@ typedef enum st { st_Enum = stEnum, /* enum */ #endif st_Str = stStr, /* string */ - st_Number = stNumber, /* pure number (ie. 4 NOR 2+2) */ + st_Number = stNumber, /* pure number (i.e. 4 NOR 2+2) */ st_Expr = stExpr, /* 2+2 vs. 4 */ st_Type = stType, /* post-coercion SER */ st_Max = stMax /* max type+1 */ diff --git a/gcc/mips-tfile.c b/gcc/mips-tfile.c index 9b63064a3bd..4adc662a5c2 100644 --- a/gcc/mips-tfile.c +++ b/gcc/mips-tfile.c @@ -737,7 +737,7 @@ typedef enum st { st_StaticProc = stStaticProc, /* load time only static procs */ st_Constant = stConstant, /* const */ st_Str = stStr, /* string */ - st_Number = stNumber, /* pure number (ie. 4 NOR 2+2) */ + st_Number = stNumber, /* pure number (i.e. 4 NOR 2+2) */ st_Expr = stExpr, /* 2+2 vs. 4 */ st_Type = stType, /* post-coercion SER */ st_Max = stMax /* max type+1 */ diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in index 23bd9cd3628..d0900243c26 100644 --- a/gcc/objc/Make-lang.in +++ b/gcc/objc/Make-lang.in @@ -66,7 +66,8 @@ objc/objc-lang.o : objc/objc-lang.c \ objc/objc-parse.o : objc/objc-parse.c \ $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(C_TREE_H) \ - toplev.h $(GGC_H) c-pragma.h input.h flags.h output.h langhooks.h $(C_COMMON_H) + toplev.h $(GGC_H) input.h flags.h output.h langhooks.h $(C_COMMON_H) \ + $(C_PRAGMA_H) objc/objc-act.o : objc/objc-act.c \ $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(RTL_H) $(TM_P_H) \ diff --git a/gcc/objc/objc-lang.c b/gcc/objc/objc-lang.c index 0b657725306..2d8319d2417 100644 --- a/gcc/objc/objc-lang.c +++ b/gcc/objc/objc-lang.c @@ -54,11 +54,11 @@ const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; #define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE, -const char tree_code_type[] = { +const enum tree_code_class tree_code_type[] = { #include "tree.def" - 'x', + tcc_exceptional, #include "c-common.def" - 'x', + tcc_exceptional, #include "objc-tree.def" }; #undef DEFTREECODE diff --git a/gcc/objc/objc-tree.def b/gcc/objc/objc-tree.def index ea88d1eec33..8702e968426 100644 --- a/gcc/objc/objc-tree.def +++ b/gcc/objc/objc-tree.def @@ -1,7 +1,7 @@ /* This file contains the definitions and documentation for the additional tree codes used in the Objective C front end (see tree.def for the standard codes). - Copyright (C) 1990, 1997, 1998, 1999, 2000, 2001, 2003 + Copyright (C) 1990, 1997, 1998, 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc. This file is part of GCC. @@ -23,20 +23,22 @@ Boston, MA 02111-1307, USA. */ /* Objective-C types. */ -DEFTREECODE (CLASS_INTERFACE_TYPE, "class_interface_type", 't', 0) -DEFTREECODE (CLASS_IMPLEMENTATION_TYPE, "class_implementation_type", 't', 0) -DEFTREECODE (CATEGORY_INTERFACE_TYPE, "category_interface_type", 't', 0) -DEFTREECODE (CATEGORY_IMPLEMENTATION_TYPE,"category_implementation_type", 't', 0) -DEFTREECODE (PROTOCOL_INTERFACE_TYPE, "protocol_interface_type", 't', 0) +DEFTREECODE (CLASS_INTERFACE_TYPE, "class_interface_type", tcc_type, 0) +DEFTREECODE (CLASS_IMPLEMENTATION_TYPE, "class_implementation_type", + tcc_type, 0) +DEFTREECODE (CATEGORY_INTERFACE_TYPE, "category_interface_type", tcc_type, 0) +DEFTREECODE (CATEGORY_IMPLEMENTATION_TYPE,"category_implementation_type", + tcc_type, 0) +DEFTREECODE (PROTOCOL_INTERFACE_TYPE, "protocol_interface_type", tcc_type, 0) /* Objective-C decls. */ -DEFTREECODE (KEYWORD_DECL, "keyword_decl", 'd', 0) -DEFTREECODE (INSTANCE_METHOD_DECL, "instance_method_decl", 'd', 0) -DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", 'd', 0) +DEFTREECODE (KEYWORD_DECL, "keyword_decl", tcc_declaration, 0) +DEFTREECODE (INSTANCE_METHOD_DECL, "instance_method_decl", tcc_declaration, 0) +DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", tcc_declaration, 0) /* Objective-C expressions. */ -DEFTREECODE (MESSAGE_SEND_EXPR, "message_send_expr", 'e', 3) -DEFTREECODE (CLASS_REFERENCE_EXPR, "class_reference_expr", 'e', 1) +DEFTREECODE (MESSAGE_SEND_EXPR, "message_send_expr", tcc_expression, 3) +DEFTREECODE (CLASS_REFERENCE_EXPR, "class_reference_expr", tcc_expression, 1) /* Local variables: diff --git a/gcc/optabs.c b/gcc/optabs.c index cc48ab53949..0b75a81cd7f 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -407,7 +407,7 @@ expand_subword_shift (enum machine_mode op1_mode, optab binoptab, { /* We must avoid shifting by BITS_PER_WORD bits since that is either the same as a zero shift (if shift_mask == BITS_PER_WORD - 1) or - has unknown behaviour. Do a single shift first, then shift by the + has unknown behavior. Do a single shift first, then shift by the remainder. It's OK to use ~OP1 as the remainder if shift counts are truncated to the mode size. */ carries = expand_binop (word_mode, reverse_unsigned_shift, diff --git a/gcc/output.h b/gcc/output.h index e832eb3d706..989a8dc174e 100644 --- a/gcc/output.h +++ b/gcc/output.h @@ -392,10 +392,6 @@ extern const char *first_global_object_name; /* The first weak object in the file. */ extern const char *weak_global_object_name; -/* Label at start of unlikely section, when partitioning hot/cold basic - blocks. */ -extern char *unlikely_section_label; - /* Nonzero if function being compiled doesn't contain any calls (ignoring the prologue and epilogue). This is set prior to local register allocation and is valid for the remaining @@ -442,12 +438,6 @@ extern tree last_assemble_variable_decl; extern bool decl_readonly_section (tree, int); extern bool decl_readonly_section_1 (tree, int, int); -/* The following global variable indicates the section name to be used - for the current cold section, when partitioning hot and cold basic - blocks into separate sections. */ - -extern char *unlikely_text_section_name; - /* This can be used to compute RELOC for the function above, when given a constant expression. */ extern int compute_reloc_for_constant (tree); @@ -488,15 +478,17 @@ extern void no_asm_to_stream (FILE *); extern unsigned int get_named_section_flags (const char *); extern bool set_named_section_flags (const char *, unsigned int); -extern void named_section_flags (const char *, unsigned int); +#define named_section_flags(NAME, FLAGS) \ + named_section_real((NAME), (FLAGS), /*decl=*/NULL_TREE) +extern void named_section_real (const char *, unsigned int, tree); extern bool named_section_first_declaration (const char *); extern unsigned int default_section_type_flags (tree, const char *, int); extern unsigned int default_section_type_flags_1 (tree, const char *, int, int); -extern void default_no_named_section (const char *, unsigned int); -extern void default_elf_asm_named_section (const char *, unsigned int); -extern void default_coff_asm_named_section (const char *, unsigned int); -extern void default_pe_asm_named_section (const char *, unsigned int); +extern void default_no_named_section (const char *, unsigned int, tree); +extern void default_elf_asm_named_section (const char *, unsigned int, tree); +extern void default_coff_asm_named_section (const char *, unsigned int, tree); +extern void default_pe_asm_named_section (const char *, unsigned int, tree); extern void default_stabs_asm_out_destructor (rtx, int); extern void default_named_section_asm_out_destructor (rtx, int); diff --git a/gcc/params.c b/gcc/params.c index e109d3adb3f..f7db8003a53 100644 --- a/gcc/params.c +++ b/gcc/params.c @@ -73,5 +73,5 @@ set_param_value (const char *name, int value) } /* If we didn't find this parameter, issue an error message. */ - error ("invalid parameter `%s'", name); + error ("invalid parameter %qs", name); } diff --git a/gcc/passes.c b/gcc/passes.c index 0beac3206f6..986151b57c0 100644 --- a/gcc/passes.c +++ b/gcc/passes.c @@ -60,7 +60,6 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "intl.h" #include "ggc.h" #include "graph.h" -#include "loop.h" #include "regs.h" #include "timevar.h" #include "diagnostic.h" @@ -407,7 +406,7 @@ rest_of_handle_stack_regs (void) } #endif -/* Track the variables, ie. compute where the variable is stored at each position in function. */ +/* Track the variables, i.e. compute where the variable is stored at each position in function. */ static void rest_of_handle_variable_tracking (void) { @@ -1130,7 +1129,7 @@ rest_of_handle_gcse (void) static void rest_of_handle_loop_optimize (void) { - int do_unroll, do_prefetch; + int do_prefetch; timevar_push (TV_LOOP); delete_dead_jumptables (); @@ -1140,10 +1139,6 @@ rest_of_handle_loop_optimize (void) /* CFG is no longer maintained up-to-date. */ free_bb_for_insn (); - if (flag_unroll_loops) - do_unroll = LOOP_AUTO_UNROLL; /* Having two unrollers is useless. */ - else - do_unroll = flag_old_unroll_loops ? LOOP_UNROLL : LOOP_AUTO_UNROLL; do_prefetch = flag_prefetch_loop_arrays ? LOOP_PREFETCH : 0; if (flag_rerun_loop_opt) @@ -1151,8 +1146,7 @@ rest_of_handle_loop_optimize (void) cleanup_barriers (); /* We only want to perform unrolling once. */ - loop_optimize (get_insns (), dump_file, do_unroll); - do_unroll = 0; + loop_optimize (get_insns (), dump_file, 0); /* The first call to loop_optimize makes some instructions trivially dead. We delete those instructions now in the @@ -1165,7 +1159,7 @@ rest_of_handle_loop_optimize (void) reg_scan (get_insns (), max_reg_num (), 1); } cleanup_barriers (); - loop_optimize (get_insns (), dump_file, do_unroll | do_prefetch); + loop_optimize (get_insns (), dump_file, do_prefetch); /* Loop can create trivially dead instructions. */ delete_trivially_dead_insns (get_insns (), max_reg_num ()); @@ -1289,7 +1283,7 @@ rest_of_handle_jump (void) timevar_push (TV_JUMP); open_dump_file (DFI_sibling, current_function_decl); - /* ??? We may get caled either via tree_rest_of_compilation when the CFG + /* ??? We may get called either via tree_rest_of_compilation when the CFG is already built or directly (for instance from coverage code). The direct callers shall be updated. */ if (!basic_block_info) @@ -1570,7 +1564,7 @@ rest_of_clean_state (void) after all tree passes have finished for a single function, and we have expanded the function body from trees to RTL. Once we are here, we have decided that we're supposed to output - that function, ie. that we should write assembler code for it. + that function, i.e. that we should write assembler code for it. We run a series of low-level passes here on the function's RTL representation. Each pass is called via a rest_of_* function. */ diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index 22817038927..58626b63c11 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,3 +1,13 @@ +2004-09-16 Joseph S. Myers + + * gcc.pot: Regenerate. + +2004-09-14 Joseph S. Myers + + * be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, + sv.po, tr.po: Update. + * gcc.pot: Regenerate. + 2004-05-26 Joseph S. Myers * fr.po: Update. diff --git a/gcc/po/be.po b/gcc/po/be.po index e1919dd04cf..3ce56db4bc4 100644 --- a/gcc/po/be.po +++ b/gcc/po/be.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.1\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2002-05-17 15:54+0200\n" "Last-Translator: Ales Nyakhaychyk \n" "Language-Team: Belarusian \n" @@ -34,15 +34,15 @@ msgstr "" msgid "`%s' attribute only applies to function types" msgstr "" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -121,7 +121,7 @@ msgstr "" #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "" @@ -289,267 +289,267 @@ msgid "invalid application of `%s' to a void type" msgstr "нявернае выкарыстанне \"restict\"" #: c-common.c:2951 -#, fuzzy, c-format -msgid "invalid application of `%s' to an incomplete type" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " msgstr "\"%s\" мае незавершаны тып" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "" -#: c-common.c:3483 +#: c-common.c:3484 #, fuzzy, c-format msgid "cannot disable built-in function `%s'" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "нехапае аргументаў у функцыі \"%s\"" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "вельмі шмат аргумэнтаў у функцыі `%s'" -#: c-common.c:3669 +#: c-common.c:3670 #, fuzzy, c-format msgid "non-floating-point argument to function `%s'" msgstr "вельмі шмат аргумэнтаў у функцыі `%s'" -#: c-common.c:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "" -#: c-common.c:3900 +#: c-common.c:3901 msgid "range expressions in switch statements are non-standard" msgstr "" -#: c-common.c:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "" -#: c-common.c:3981 +#: c-common.c:3982 msgid "%Jthis is the first entry overlapping that value" msgstr "" -#: c-common.c:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "" -#: c-common.c:3986 +#: c-common.c:3987 #, fuzzy msgid "%Jpreviously used here" msgstr "папярэдняе вызначэньне" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "" -#: c-common.c:3991 +#: c-common.c:3992 msgid "%Jthis is the first default label" msgstr "" -#: c-common.c:4016 +#: c-common.c:4017 #, fuzzy msgid "taking the address of a label is non-standard" msgstr "ISO C не дазваляе пусты ізыходны файл" -#: c-common.c:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "невядомы рэжым машыны \"%s\"" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "няма тыпа дадзеных для рэжыма \"%s\"" -#: c-common.c:4655 +#: c-common.c:4656 #, fuzzy, c-format msgid "invalid pointer mode `%s'" msgstr "Нерэчаісны выбар \"%s\"" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, fuzzy, c-format msgid "unable to emulate '%s'" msgstr "немагу адчыніць файл \"%s\"" -#: c-common.c:4706 +#: c-common.c:4707 #, fuzzy msgid "%Jsection attribute cannot be specified for local variables" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-common.c:4717 +#: c-common.c:4718 #, fuzzy msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: c-common.c:4726 +#: c-common.c:4727 #, fuzzy msgid "%Jsection attribute not allowed for '%D'" msgstr "\"%s\" атрыбут ігнарыруецца" -#: c-common.c:4732 +#: c-common.c:4733 #, fuzzy msgid "%Jsection attributes are not supported for this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "" -#: c-common.c:4806 +#: c-common.c:4807 msgid "%Jalignment may not be specified for '%D'" msgstr "" -#: c-common.c:4844 +#: c-common.c:4845 msgid "%J'%D' defined both normally and as an alias" msgstr "" -#: c-common.c:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "" -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "" -#: c-common.c:4910 +#: c-common.c:4911 msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\"" msgstr "" -#: c-common.c:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "" -#: c-common.c:4945 +#: c-common.c:4946 msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\"" msgstr "" -#: c-common.c:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 #, fuzzy msgid "%J'%E' attribute applies only to functions" msgstr "\"%s\" звычайна функцыя" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 msgid "%Jcan't set '%E' attribute after definition" msgstr "" -#: c-common.c:5094 +#: c-common.c:5095 #, fuzzy, c-format msgid "`%s' attribute ignored for `%s'" msgstr "\"%s\" атрыбут ігнарыруецца" -#: c-common.c:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 msgid "no vector mode with the size and type specified could be found" msgstr "" -#: c-common.c:5315 +#: c-common.c:5316 msgid "nonnull attribute without arguments on a non-prototype" msgstr "" -#: c-common.c:5330 +#: c-common.c:5331 #, c-format msgid "nonnull argument has invalid operand number (arg %lu)" msgstr "" -#: c-common.c:5349 +#: c-common.c:5350 #, c-format msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5357 +#: c-common.c:5358 #, c-format msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "" -#: c-common.c:5508 +#: c-common.c:5509 msgid "cleanup arg not an identifier" msgstr "" -#: c-common.c:5515 +#: c-common.c:5516 #, fuzzy msgid "cleanup arg not a function" msgstr "`%D' - гэта ня функцыя," -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s на прыканцы ўводу" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s перад %s'%c'" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s перад %s'\\x%x'" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s перад \"%s\"" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s перад знакам '%s'" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 treelang/tree-convert.c:79 msgid "void value not ignored as it ought to be" msgstr "" @@ -750,8 +750,8 @@ msgstr "" 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 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 #, fuzzy msgid "%Jshadowed declaration is here" msgstr "няма папярэдняга аб'яўлення для \"%s\"" @@ -761,7 +761,7 @@ msgstr "няма папярэдняга аб'яўлення для \"%s\"" msgid "nested extern declaration of `%s'" msgstr "" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 #, fuzzy msgid "%Jprevious declaration of '%D'" msgstr "папярэдняе абвяшчэньне `%D'" @@ -840,7 +840,7 @@ msgid "two types specified in one empty declaration" msgstr "" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "пустое абвяшчэньне" @@ -883,7 +883,7 @@ msgstr "" msgid "parameter `%s' is initialized" msgstr "параметр \"%s\" ініцыялізаваны" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "" @@ -897,7 +897,7 @@ msgstr "" msgid "elements of array `%s' have incomplete type" msgstr "" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 #, fuzzy msgid "%Jinline function '%D' given attribute noinline" msgstr "няма папярэдняга аб'яўлення для \"%s\"" @@ -1181,7 +1181,7 @@ msgstr "" msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "памер масіва \"%s\" вельмі вялікі" @@ -1225,7 +1225,7 @@ msgstr "" msgid "ISO C forbids const or volatile function types" msgstr "" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "" @@ -1539,7 +1539,7 @@ msgstr "" msgid "argument \"%D\" doesn't match prototype" msgstr "" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 msgid "no return statement in function returning non-void" msgstr "" @@ -2326,7 +2326,7 @@ msgstr "сінтаксічная памылка" msgid "ISO C forbids an empty source file" msgstr "ISO C не дазваляе пусты ізыходны файл" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "" @@ -2422,7 +2422,7 @@ msgstr "" msgid "ISO C forbids forward references to `enum' types" msgstr "" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "" @@ -2430,7 +2430,7 @@ msgstr "" msgid "no semicolon at end of struct or union" msgstr "" -#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "" @@ -2459,24 +2459,24 @@ msgstr "ISO C не дазваляе дэкларацыі метак (label)" msgid "braced-group within expression allowed only inside a function" msgstr "" -#: c-parse.y:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "пустое цела ў else-выражэнні" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 #, fuzzy msgid "%Hempty body in an if-statement" msgstr "пустое цела ў else-выражэнні" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 msgid "break statement not within loop or switch" msgstr "" -#: c-parse.y:2281 cp/parser.c:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 msgid "continue statement not within a loop" msgstr "" -#: c-parse.y:2323 objc/objc-parse.y:2380 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO C не падтрымлівае \"goto *expr;\"" @@ -2486,11 +2486,11 @@ msgstr "ISO C не падтрымлівае \"goto *expr;\"" #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "" @@ -2506,7 +2506,7 @@ msgstr "граматычная памылка" msgid "parser stack overflow" msgstr "" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "" @@ -2670,19 +2670,19 @@ msgstr "" msgid "junk at end of #pragma redefine_extname" msgstr "" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "" -#: c-pragma.c:413 +#: c-pragma.c:414 msgid "malformed #pragma extern_prefix, ignored" msgstr "" -#: c-pragma.c:418 +#: c-pragma.c:419 msgid "junk at end of #pragma extern_prefix" msgstr "" -#: c-pragma.c:449 +#: c-pragma.c:450 #, fuzzy msgid "asm declaration conflicts with previous rename" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" @@ -2700,7 +2700,7 @@ msgstr "" msgid "(enclose actions of previous case statements requiring destructors in their own scope.)" msgstr "" -#: c-semantics.c:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "" @@ -2709,791 +2709,791 @@ msgstr "" msgid "will never be executed" msgstr "" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "" -#: c-typeck.c:150 +#: c-typeck.c:153 msgid "invalid use of flexible array member" msgstr "" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 msgid "function types not truly compatible in ISO C" msgstr "" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "" -#: c-typeck.c:824 +#: c-typeck.c:838 msgid "function return types not compatible due to `volatile'" msgstr "" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, c-format msgid "request for member `%s' in something not a structure or union" msgstr "" -#: c-typeck.c:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "" -#: c-typeck.c:1511 +#: c-typeck.c:1525 #, fuzzy msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, c-format msgid "local declaration of `%s' hides instance variable" msgstr "" -#: c-typeck.c:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "" #. 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 +#: c-typeck.c:1729 msgid "function called through a non-compatible type" msgstr "" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "вельмі шмат аргументаў у функцыі" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, c-format msgid "%s as integer rather than floating due to prototype" msgstr "" -#: c-typeck.c:1850 +#: c-typeck.c:1875 #, c-format msgid "%s as integer rather than complex due to prototype" msgstr "" -#: c-typeck.c:1853 +#: c-typeck.c:1878 #, c-format msgid "%s as complex rather than floating due to prototype" msgstr "" -#: c-typeck.c:1856 +#: c-typeck.c:1881 #, c-format msgid "%s as floating rather than integer due to prototype" msgstr "" -#: c-typeck.c:1859 +#: c-typeck.c:1884 #, c-format msgid "%s as complex rather than integer due to prototype" msgstr "" -#: c-typeck.c:1862 +#: c-typeck.c:1887 #, c-format msgid "%s as floating rather than complex due to prototype" msgstr "" -#: c-typeck.c:1872 +#: c-typeck.c:1897 #, c-format msgid "%s as `float' rather than `double' due to prototype" msgstr "" -#: c-typeck.c:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "не хапае аргументаў у функцыі" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "" -#: c-typeck.c:2040 +#: c-typeck.c:2065 msgid "comparisons like X<=Y<=Z do not have their mathematical meaning" msgstr "" -#: c-typeck.c:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "" -#: c-typeck.c:2312 +#: c-typeck.c:2337 msgid "ISO C does not support `++' and `--' on complex types" msgstr "ISO C не падтрымлівае \"++\" і \"--\" для тыпу complex" -#: c-typeck.c:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 #, fuzzy msgid "wrong type argument to increment" msgstr "не хапае аргументаў у функцыі" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, c-format msgid "attempt to take address of bit-field structure member `%s'" msgstr "" -#: c-typeck.c:2642 +#: c-typeck.c:2668 msgid "use of conditional expressions as lvalues is deprecated" msgstr "" -#: c-typeck.c:2645 +#: c-typeck.c:2671 msgid "use of compound expressions as lvalues is deprecated" msgstr "" -#: c-typeck.c:2648 +#: c-typeck.c:2674 msgid "use of cast expressions as lvalues is deprecated" msgstr "" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, fuzzy, c-format msgid "cannot take address of bit-field `%s'" msgstr "не магу атрымаць адрас бітавага поля \"%s\"" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 treelang/treetree.c:946 #, c-format msgid "global register variable `%s' used in nested function" msgstr "" -#: c-typeck.c:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 treelang/treetree.c:950 #, c-format msgid "register variable `%s' used in nested function" msgstr "" -#: c-typeck.c:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 treelang/treetree.c:957 #, c-format msgid "address of global register variable `%s' requested" msgstr "" -#: c-typeck.c:2739 +#: c-typeck.c:2765 msgid "cannot put object with volatile field into register" msgstr "" -#: c-typeck.c:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, c-format msgid "address of register variable `%s' requested" msgstr "" -#: c-typeck.c:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "" -#: c-typeck.c:2835 +#: c-typeck.c:2861 msgid "ISO C forbids conditional expr with only one void side" msgstr "" -#: c-typeck.c:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 msgid "ISO C forbids conditional expr between `void *' and function pointer" msgstr "" -#: c-typeck.c:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2955 +#: c-typeck.c:2981 msgid "left-hand operand of comma expression has no effect" msgstr "" -#: c-typeck.c:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "" -#: c-typeck.c:3002 +#: c-typeck.c:3028 msgid "ISO C forbids casting nonscalar to the same type" msgstr "" -#: c-typeck.c:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "" -#: c-typeck.c:3028 +#: c-typeck.c:3054 msgid "cast to union type from type not present in union" msgstr "" -#: c-typeck.c:3079 +#: c-typeck.c:3105 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "" -#: c-typeck.c:3129 +#: c-typeck.c:3155 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "" -#: c-typeck.c:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "" -#: c-typeck.c:3144 +#: c-typeck.c:3170 msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "" -#: c-typeck.c:3153 +#: c-typeck.c:3179 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:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "" -#: c-typeck.c:3429 +#: c-typeck.c:3455 msgid "cannot pass rvalue to reference parameter" msgstr "" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:3548 +#: c-typeck.c:3574 msgid "ISO C prohibits argument conversion to union type" msgstr "" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, c-format msgid "ISO C forbids %s between function pointer and `void *'" msgstr "" -#: c-typeck.c:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, c-format msgid "%s makes pointer from integer without a cast" msgstr "" -#: c-typeck.c:3646 +#: c-typeck.c:3672 #, c-format msgid "%s makes integer from pointer without a cast" msgstr "" -#: c-typeck.c:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, c-format msgid "incompatible type for argument %d of indirect function call" msgstr "" -#: c-typeck.c:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, fuzzy, c-format msgid "passing arg of `%s'" msgstr "аргумент для \"%s\" прапушчан" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 #, fuzzy msgid "passing arg of pointer to function" msgstr "вельмі шмат аргументаў у функцыі" #. Function name is known; supply it. -#: c-typeck.c:3744 +#: c-typeck.c:3770 #, c-format msgid "passing arg %d of `%s'" msgstr "" #. Function name unknown (call through ptr); just give arg number. -#: c-typeck.c:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "" -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 msgid "initializer-string for array of chars is too long" msgstr "" -#: c-typeck.c:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "" -#: 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:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "ініцыялізацыя" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "нерэчаісны ініцыялізатар" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 msgid "opaque vector types cannot be initialized" msgstr "" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "" -#: c-typeck.c:4842 +#: c-typeck.c:4865 msgid "initialization of flexible array member in a nested context" msgstr "" -#: c-typeck.c:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "прапушчан ініцыялізатар" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 msgid "field name not in record or union initializer" msgstr "" -#: c-typeck.c:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 msgid "array index in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "" -#: c-typeck.c:5101 +#: c-typeck.c:5124 msgid "array index range in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "" -#: c-typeck.c:6369 +#: c-typeck.c:6392 msgid "`return' with no value, in function returning non-void" msgstr "" -#: c-typeck.c:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "вяртанне" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "" -#: c-typeck.c:6496 +#: c-typeck.c:6519 msgid "`long' switch expression not converted to `int' in ISO C" msgstr "" -#: c-typeck.c:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 msgid "ISO C forbids comparison of `void *' with function pointer" msgstr "" -#: c-typeck.c:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 msgid "comparison of distinct pointer types lacks a cast" msgstr "" -#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "" -#: c-typeck.c:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 msgid "unordered comparison on non-floating point argument" msgstr "" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "" @@ -3758,44 +3758,44 @@ msgstr "" msgid "function body not available" msgstr "" -#: cgraph.c:163 cgraphunit.c:340 +#: cgraph.c:163 cgraphunit.c:341 msgid "redefined extern inline functions are not considered for inlining" msgstr "" -#: cgraph.c:166 cgraphunit.c:345 +#: cgraph.c:166 cgraphunit.c:346 #, fuzzy msgid "function not considered for inlining" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cgraph.c:168 cgraphunit.c:343 +#: cgraph.c:168 cgraphunit.c:344 msgid "function not inlinable" msgstr "" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "" @@ -3979,7 +3979,7 @@ msgstr "" msgid "library lib%s not found" msgstr "Бібліятэка lib%s не знойдзена" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -3987,7 +3987,7 @@ msgid "" "\n" msgstr "" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -4820,7 +4820,7 @@ msgstr "" msgid "syntax error in macro parameter list" msgstr "" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr "" @@ -4899,16 +4899,16 @@ msgstr "" msgid "function using short complex types cannot be inline" msgstr "" -#: expr.c:6385 +#: expr.c:6386 msgid "%Jprior parameter's size depends on '%D'" msgstr "" -#: expr.c:6752 +#: expr.c:6753 msgid "returned value in block_exit_expr" msgstr "" #. We can't make a bitwise copy of this object, so fail. -#: expr.c:8895 +#: expr.c:8894 #, fuzzy msgid "cannot take the address of an unaligned member" msgstr "не магу атрымаць адрас бітавага поля \"%s\"" @@ -4954,12 +4954,12 @@ msgstr "" #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "" @@ -5012,23 +5012,23 @@ msgstr "памер масіва \"%s\" вельмі вялікі" msgid "impossible constraint in `asm'" msgstr "немагчымы апэратар '%s'" -#: function.c:5723 +#: function.c:5733 msgid "%J'%D' might be used uninitialized in this function" msgstr "" -#: function.c:5730 +#: function.c:5740 msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "" -#: function.c:5749 +#: function.c:5759 msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "" -#: function.c:7006 +#: function.c:6929 #, fuzzy msgid "%Junused parameter '%D'" msgstr "невыкарыстаемы параметр \"%s\"" @@ -6451,7 +6451,7 @@ msgstr "" msgid "can't use '%s' as a %s register" msgstr "" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "невядомая назва рэгістра: %s" @@ -6508,48 +6508,48 @@ msgstr "" msgid "inconsistent operand constraints in an `asm'" msgstr "" -#: reload1.c:1212 +#: reload1.c:1222 msgid "frame size too large for reliable stack checking" msgstr "" -#: reload1.c:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "" -#: reload1.c:1868 +#: reload1.c:1878 #, c-format msgid "can't find a register in class `%s' while reloading `asm'" msgstr "" -#: reload1.c:1872 +#: reload1.c:1882 #, c-format msgid "unable to find a register to spill in class `%s'" msgstr "" -#: reload1.c:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 #, fuzzy msgid "could not find a spill register" msgstr "Не выкарыстоўваць рэгістра sb" -#: reload1.c:4968 +#: reload1.c:4978 msgid "`asm' operand constraint incompatible with operand size" msgstr "" #. It's the compiler's fault. -#: reload1.c:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "" @@ -6602,7 +6602,7 @@ msgstr "" msgid "jump to `%s' invalidly jumps into binding contour" msgstr "" -#: stmt.c:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 msgid "%Jlabel '%D' used before containing binding contour" msgstr "" @@ -6619,7 +6619,7 @@ msgstr "" msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "" @@ -6628,128 +6628,124 @@ msgstr "" msgid "matching constraint not valid in output operand" msgstr "" -#: stmt.c:1260 -msgid "read-write constraint does not allow a register" -msgstr "" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "" -#: stmt.c:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "" -#: stmt.c:1396 +#: stmt.c:1393 msgid "matching constraint does not allow a register" msgstr "" -#: stmt.c:1424 +#: stmt.c:1421 #, c-format msgid "asm-specifier for variable `%s' conflicts with asm clobber list" msgstr "" -#: stmt.c:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "" -#: stmt.c:1522 +#: stmt.c:1519 #, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1875 +#: stmt.c:1872 #, fuzzy msgid "asm clobber conflict with output operand" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: stmt.c:1880 +#: stmt.c:1877 #, fuzzy msgid "asm clobber conflict with input operand" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "" -#: stmt.c:1926 +#: stmt.c:1923 msgid "operand constraints for `asm' differ in number of alternatives" msgstr "" -#: stmt.c:1978 +#: stmt.c:1975 #, fuzzy, c-format msgid "duplicate asm operand name '%s'" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "" -#: stmt.c:2104 +#: stmt.c:2101 #, fuzzy, c-format msgid "undefined named operand '%s'" msgstr "нераспазнаны аператар %s" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "" -#: stmt.c:2317 +#: stmt.c:2314 msgid "%Hvalue computed is not used" msgstr "" -#: stmt.c:3733 +#: stmt.c:3730 #, fuzzy msgid "%Junused variable '%D'" msgstr "невыкарыстоўваемая пераменная \"%s\"" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, c-format msgid "case value `%ld' not in enumerated type `%s'" msgstr "" -#: stmt.c:5401 +#: stmt.c:5398 msgid "switch missing default case" msgstr "" @@ -6784,25 +6780,25 @@ msgstr "\"%s\" атрыбут ігнарыруецца" msgid "%Jpadding struct to align '%D'" msgstr "" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "" @@ -6948,7 +6944,7 @@ msgstr "" msgid "unrecognized gcc debugging option: %c" msgstr "" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, fuzzy, c-format msgid "invalid option `%s'" msgstr "Нерэчаісны выбар \"%s\"" @@ -6977,25 +6973,25 @@ msgstr "" msgid "options enabled: " msgstr "выбары ўключаны:" -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, fuzzy, c-format msgid "can't open %s for writing: %m" msgstr "немагчыма адчыніць %s для запісу" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "" @@ -7053,7 +7049,7 @@ msgstr "" msgid "error writing to %s: %m" msgstr "памылка запісу ў %s" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, fuzzy, c-format msgid "error closing %s: %m" msgstr "памылка запісу ў %s" @@ -7114,34 +7110,34 @@ msgstr "памер вяртаемага значэння \"%s\" %u байт" msgid "%Jsize of return value of '%D' is larger than %wd bytes" msgstr "памер вяртаемага значэння \"%s\" больш чым %d байт" -#: tree.c:3800 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "" -#: tree.c:4736 +#: tree.c:4737 #, c-format msgid "tree check: expected %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:4749 +#: tree.c:4750 #, c-format msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d" msgstr "" -#: tree.c:4762 +#: tree.c:4763 #, c-format msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "" -#: tree.c:4774 +#: tree.c:4775 #, c-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "" @@ -7508,7 +7504,7 @@ msgstr "" msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "" @@ -7558,24 +7554,24 @@ msgstr "нерэчаіснае значэньне %%H" msgid "invalid %%J value" msgstr "дрэннае %%Q значэнне" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "нерэчаіснае значэньне %%r" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "нерэчаіснае значэньне %%R" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "нерэчаіснае значэньне %%N" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "нерэчаіснае значэньне %%P" @@ -7585,17 +7581,17 @@ msgstr "нерэчаіснае значэньне %%P" msgid "invalid %%h value" msgstr "нерэчаіснае значэньне %%h" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "нерэчаіснае значэньне %%L" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "нерэчаіснае значэньне %%m" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "нерэчаіснае значэньне %%M" @@ -7606,7 +7602,7 @@ msgid "invalid %%U value" msgstr "нерэчаіснае значэньне %%U" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "нерэчаіснае значэньне %%v" @@ -7616,7 +7612,8 @@ msgstr "нерэчаіснае значэньне %%v" msgid "invalid %%C value" msgstr "нерэчаіснае значэньне %%C" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "нерэчаіснае значэньне %%E" @@ -7625,7 +7622,7 @@ msgstr "нерэчаіснае значэньне %%E" msgid "unknown relocation unspec" msgstr "" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "нерэчаіснае значэньне %%xn" @@ -7786,17 +7783,17 @@ msgstr "аргумент `__builtin_args_info' павінен быць канс msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\"" msgstr "" -#: config/arc/arc.c:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, fuzzy, c-format msgid "invalid operand to %%R code" msgstr "нерэчаісны %%-код" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, fuzzy, c-format msgid "invalid operand to %%H/%%L code" msgstr "нерэчаісны %%-код" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, fuzzy, c-format msgid "invalid operand to %%U code" msgstr "нерэчаісны %%-код" @@ -7807,7 +7804,7 @@ msgid "invalid operand to %%V code" msgstr "нерэчаісны %%-код" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "" @@ -7816,7 +7813,7 @@ msgstr "" msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "" @@ -7901,12 +7898,12 @@ msgid "unable to use '%s' for PIC register" msgstr "" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173 #, fuzzy, c-format msgid "`%s' attribute only applies to functions" msgstr "\"%s\" звычайна функцыя" @@ -7921,7 +7918,7 @@ msgid "selector must be an immediate" msgstr "" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "" @@ -9298,179 +9295,179 @@ msgstr "" msgid "Do not generate char instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, c-format msgid "code model %s not supported in PIC mode" msgstr "" -#: config/i386/i386.c:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 config/sparc/sparc.c:387 #, c-format msgid "bad value (%s) for -mcmodel= switch" msgstr "" -#: config/i386/i386.c:1195 +#: config/i386/i386.c:1204 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, c-format msgid "code model `%s' not supported in the %s bit mode" msgstr "" -#: config/i386/i386.c:1201 +#: config/i386/i386.c:1210 msgid "code model `large' not supported yet" msgstr "" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 #, fuzzy msgid "CPU you selected does not support x86-64 instruction set" msgstr "ISO C не падтрымлівае комлексныя цэлалікавыя тыпы" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 config/iq2000/iq2000.c:1840 #, c-format msgid "bad value (%s) for -march= switch" msgstr "" -#: config/i386/i386.c:1248 +#: config/i386/i386.c:1260 #, c-format msgid "bad value (%s) for -mtune= switch" msgstr "" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, c-format msgid "-malign-loops=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, c-format msgid "-mpreferred-stack-boundary=%d is not between %d and 12" msgstr "" -#: config/i386/i386.c:1354 +#: config/i386/i386.c:1366 #, c-format msgid "-mbranch-cost=%d is not between 0 and 5" msgstr "" -#: config/i386/i386.c:1366 +#: config/i386/i386.c:1378 #, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 msgid "-mrtd calling convention not supported in the 64bit mode" msgstr "" -#: config/i386/i386.c:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "" -#: config/i386/i386.c:1435 +#: config/i386/i386.c:1447 msgid "387 instruction set disabled, using SSE arithmetics" msgstr "" -#: config/i386/i386.c:1442 +#: config/i386/i386.c:1454 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 msgid "fastcall and stdcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 msgid "fastcall and regparm attributes are not compatible" msgstr "" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, fuzzy, c-format msgid "argument to `%s' attribute larger than %d" msgstr "памер \"%s\" больш чам %d байт" -#: config/i386/i386.c:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 msgid "operand is neither a constant nor a condition code, invalid operand code 'c'" msgstr "" -#: config/i386/i386.c:7457 +#: config/i386/i386.c:7474 #, fuzzy, c-format msgid "invalid operand code `%c'" msgstr "Нерэчаісны выбар \"%s\"" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 #, fuzzy msgid "invalid constraints for operand" msgstr "нерэчаісны %%c аперанд" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 #, fuzzy msgid "unknown insn mode" msgstr "невядомы рэжым машыны \"%s\"" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 msgid "shift must be an immediate" msgstr "" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, fuzzy, c-format msgid "`%s' incompatible attribute ignored" msgstr "\"%s\" атрыбут ігнарыруецца" @@ -9529,43 +9526,43 @@ msgstr "" msgid "%J'%D' causes a section type conflict" msgstr "" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "Стварыць GUI прыдатак" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "Стварыць кансольны прыдатак" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "Стварыць код для DLL" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, c-format msgid "-f%s ignored for target (all code is position independent)" msgstr "" @@ -9760,7 +9757,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "" @@ -9879,7 +9876,7 @@ msgstr "" msgid "iC2.0 and iC3.0 are incompatible - using iC3.0" msgstr "" -#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "" @@ -10002,8 +9999,8 @@ msgstr "" msgid "Do not layout types like Intel's v1.3 gcc" msgstr "" -#: 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 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "" @@ -10038,41 +10035,41 @@ msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэк msgid "%Jaddress area attribute cannot be specified for functions" msgstr "\"%s\" звычайна функцыя" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 msgid "value of -mfixed-range must have form REG1-REG2" msgstr "" -#: config/ia64/ia64.c:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 msgid "cannot optimize floating point division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4726 +#: config/ia64/ia64.c:4729 msgid "cannot optimize integer division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4732 +#: config/ia64/ia64.c:4735 msgid "cannot optimize square root for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, c-format msgid "bad value (%s) for -tune= switch" msgstr "" @@ -10209,7 +10206,7 @@ msgstr "" msgid "argument `%d' is not a constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "" @@ -10219,7 +10216,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "" @@ -10228,7 +10225,7 @@ msgstr "" msgid "invalid %%P operand" msgstr "нерэчаісны %%-код" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "" @@ -10289,90 +10286,90 @@ msgstr "" msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 msgid "typename type `%#T' declared `friend'" msgstr "" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 #, fuzzy msgid "template parameter type `%T' declared `friend'" msgstr "тып параметра \"%s\" не аб'яўлены" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 msgid "`%#T' is not a template" msgstr "" -#: cp/friend.c:277 +#: cp/friend.c:281 #, fuzzy msgid "`%D' is already a friend of `%T'" msgstr "не знойдзен клас \"%s\"" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "" -#: cp/friend.c:409 +#: cp/friend.c:413 msgid "member `%D' declared as friend before type `%T' defined" msgstr "" -#: cp/friend.c:465 +#: cp/friend.c:469 msgid "friend declaration `%#D' declares a non-template function" msgstr "" -#: cp/friend.c:468 +#: cp/friend.c:472 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 "" @@ -15350,7 +15352,7 @@ msgstr "" msgid "type `%T' is of non-aggregate type" msgstr "" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "" @@ -15389,74 +15391,73 @@ msgstr "" msgid "zero size array reserves no space" msgstr "" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "" -#: cp/init.c:1876 +#: cp/init.c:1877 #, fuzzy msgid "can't find class$" msgstr "Не магу знайсці клас \"%s\"" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "" -#: cp/init.c:2013 +#: cp/init.c:2014 msgid "uninitialized const in `new' of `%#T'" msgstr "" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "" + +#: cp/init.c:2083 #, fuzzy msgid "request for member `%D' is ambiguous" msgstr "памер \"%s\" - %d байт" -#: cp/init.c:2193 +#: cp/init.c:2203 msgid "ISO C++ forbids initialization in array new" msgstr "" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "" -#: cp/init.c:2885 +#: cp/init.c:2895 msgid "possible problem detected in invocation of delete operator:" msgstr "" -#: cp/init.c:2888 -msgid "neither the destructor nor the class-specific " +#: cp/init.c:2898 +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: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 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "" @@ -15548,12 +15549,12 @@ msgstr "" msgid "non-static reference member `%#D', can't use default assignment operator" msgstr "" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 #, fuzzy msgid "`%#D' used prior to declaration" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 #, fuzzy msgid "redeclaration of `wchar_t' as `%T'" msgstr "няма папярэдняга аб'яўлення для \"%s\"" @@ -15564,248 +15565,248 @@ msgstr "няма папярэдняга аб'яўлення для \"%s\"" #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 #, fuzzy msgid "invalid redeclaration of `%D'" msgstr "Нерэчаіснае абвяшчэнне" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "як `%D'" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 #, fuzzy msgid "type mismatch with previous external decl of `%#D'" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 #, fuzzy msgid "previous external decl of `%#D'" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 msgid "`%D' was previously implicitly declared to return `int'" msgstr "" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 msgid "extern declaration of `%#D' doesn't match" msgstr "" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 #, fuzzy msgid "global declaration `%#D'" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 #, fuzzy msgid "declaration of '%#D' shadows a parameter" msgstr "абвяшчэньне `%#D'" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 msgid "declaration of '%D' shadows a member of 'this'" msgstr "" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 #, fuzzy msgid "declaration of '%D' shadows a previous local" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 #, fuzzy msgid "declaration of '%D' shadows a global declaration" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr "" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr "" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 msgid " cannot use obsolete binding at `%D' because it has a destructor" msgstr "" -#: cp/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr "" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, fuzzy, c-format msgid "%s %s %p %d\n" msgstr "%s: %s: " -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 #, fuzzy msgid "`%#D' hides constructor for `%#T'" msgstr "дэструктару неабходны \"%#D\"" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 #, fuzzy msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 #, fuzzy msgid "previous non-function declaration `%#D'" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 #, 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:2101 +#: cp/name-lookup.c:2112 msgid "a using-declaration cannot specify a template-id. Try `using %D'" msgstr "" -#: cp/name-lookup.c:2107 +#: cp/name-lookup.c:2118 #, 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 msgid "`%D' not declared" msgstr "" #. If the OLD_FN was really declared, the #. declarations don't match. -#: cp/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:2898 +#: cp/name-lookup.c:2909 msgid "using-declaration cannot name destructor" msgstr "" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 msgid "declaration of `%D' not in a namespace surrounding `%D'" msgstr "" -#: cp/name-lookup.c:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 #, fuzzy msgid "unknown namespace `%D'" msgstr "невядомы рэжым машыны \"%s\"" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 msgid "namespace `%T' undeclared" msgstr "" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 #, fuzzy msgid "`%D' attribute directive ignored" msgstr "\"%s\" атрыбут ігнарыруецца" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 #, fuzzy msgid "use of `%D' is ambiguous" msgstr "памер \"%s\" - %d байт" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 #, fuzzy msgid "%J first type here" msgstr " адсюль" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 msgid "invalid use of `%D'" msgstr "нерэчаіснае выкарыстаньне `%D'" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 msgid "`%D::%D' is not a template" msgstr "" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 msgid "`%D' is not a function," msgstr "`%D' - гэта ня функцыя," -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 msgid " conflict with `%D'" msgstr "" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -15896,179 +15897,188 @@ msgstr "\"%s\" не абвешчан (першае выкарыстанне ў msgid "typedef-name `%D' used as destructor declarator" msgstr "" -#: cp/parser.c:3635 +#: cp/parser.c:3638 #, fuzzy msgid "ISO C++ forbids compound-literals" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4619 +#: cp/parser.c:4624 msgid "expression in new-declarator must have integral or enumeration type" msgstr "" -#: cp/parser.c:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, c-format msgid "case label `%E' not within a switch statement" msgstr "" -#: cp/parser.c:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6640 +#: cp/parser.c:6645 #, fuzzy msgid "duplicate `friend'" msgstr "паўтарэньне `%s'" -#: cp/parser.c:6789 +#: cp/parser.c:6794 #, fuzzy msgid "class definition may not be declared a friend" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "" -#: cp/parser.c:7155 +#: cp/parser.c:7160 msgid "anachronistic old-style base class initializer" msgstr "" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 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:7908 +#: cp/parser.c:7923 msgid "`<::' cannot begin a template-argument list" msgstr "" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 msgid "non-template `%D' used as template" msgstr "" -#: cp/parser.c:8089 -msgid "(use `%T::template %D' to indicate that it is a template)" +#: cp/parser.c:8107 +msgid "use `%T::template %D' to indicate that it is a template" msgstr "" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "" -#: cp/parser.c:9148 +#: cp/parser.c:9180 msgid "expected type-name" msgstr "" -#: cp/parser.c:9207 +#: cp/parser.c:9239 msgid "type attributes are honored only at type definition" msgstr "" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 #, fuzzy msgid "a template-id may not appear in a using-declaration" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cp/parser.c:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:9919 +#: cp/parser.c:9951 #, fuzzy msgid "attributes are not allowed on a function-definition" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cp/parser.c:10052 +#: cp/parser.c:10084 msgid "attributes after parenthesized initializer ignored" msgstr "" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +#, fuzzy +msgid "`%T::%D' is not a type" +msgstr "\"%s\" мае незавершаны тып" + +#: cp/parser.c:11288 #, fuzzy msgid "file ends in default argument" msgstr "нехапае аргументаў у функцыі \"%s\"" -#: cp/parser.c:11310 +#: cp/parser.c:11344 msgid "deprecated use of default argument for parameter of non-function" msgstr "" -#: cp/parser.c:11313 +#: cp/parser.c:11347 msgid "default arguments are only permitted for function parameters" msgstr "" -#: cp/parser.c:12043 +#: cp/parser.c:12078 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "" -#: cp/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "" -#: cp/parser.c:12067 +#: cp/parser.c:12102 #, fuzzy msgid "an explicit specialization must be preceded by 'template <>'" msgstr "ініцыялізацыя" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12399 +#: cp/parser.c:12434 msgid "friend declaration does not name a class or function" msgstr "" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" msgstr "" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" msgstr "" -#: cp/parser.c:13665 +#: cp/parser.c:13700 #, fuzzy msgid "reference to `%D' is ambiguous" msgstr "памер \"%s\" - %d байт" -#: cp/parser.c:13839 +#: cp/parser.c:13874 #, fuzzy msgid "too few template-parameter-lists" msgstr "невыкарыстаемы параметр \"%s\"" @@ -16077,46 +16087,46 @@ msgstr "невыкарыстаемы параметр \"%s\"" #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 msgid "too many template-parameter-lists" msgstr "" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 #, fuzzy msgid "invalid function declaration" msgstr "Нерэчаіснае абвяшчэнне" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 #, fuzzy msgid "named return values are no longer supported" msgstr "-pipe не падтрымліваецца." -#: cp/parser.c:14522 +#: cp/parser.c:14561 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 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14535 +#: cp/parser.c:14574 msgid "missing `>' to terminate the template argument list" msgstr "" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "" -#: cp/parser.c:15043 +#: cp/parser.c:15082 msgid "%D redeclared with different access" msgstr "" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -16468,153 +16478,153 @@ msgstr "" msgid "%s %+#T" msgstr "" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "" -#: cp/pt.c:6469 +#: cp/pt.c:6470 msgid "invalid parameter type `%T'" msgstr "нерэчаісны тып парамэтра `%T'" -#: cp/pt.c:6471 +#: cp/pt.c:6472 msgid "in declaration `%D'" msgstr "у абвяшчэньні `%D'" -#: cp/pt.c:6545 +#: cp/pt.c:6546 msgid "creating pointer to member function of non-class type `%T'" msgstr "" -#: cp/pt.c:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "" -#: cp/pt.c:6976 +#: cp/pt.c:6977 msgid "creating pointer to member of non-class type `%T'" msgstr "" -#: cp/pt.c:6982 +#: cp/pt.c:6983 msgid "creating pointer to member reference type `%T'" msgstr "" -#: cp/pt.c:7068 +#: cp/pt.c:7069 msgid "creating array of `%T'" msgstr "" -#: cp/pt.c:7074 +#: cp/pt.c:7075 msgid "creating array of `%T', which is an abstract class type" msgstr "" -#: cp/pt.c:7118 +#: cp/pt.c:7119 msgid "`%T' is not a class, struct, or union type" msgstr "" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr "" -#: cp/pt.c:8609 +#: cp/pt.c:8613 msgid "`%T' uses anonymous type" msgstr "" -#: cp/pt.c:8611 +#: cp/pt.c:8615 msgid "`%T' uses local type `%T'" msgstr "" -#: cp/pt.c:8619 +#: cp/pt.c:8623 #, fuzzy msgid "`%T' is a variably modified type" msgstr "\"%s\" мае незавершаны тып" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, fuzzy, c-format msgid "integral expression `%E' is not constant" msgstr "тып параметра \"%s\" не аб'яўлены" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr "" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "" -#: cp/pt.c:10551 +#: cp/pt.c:10568 msgid "explicit instantiation of `%#D'" msgstr "" -#: cp/pt.c:10588 +#: cp/pt.c:10605 #, fuzzy msgid "duplicate explicit instantiation of `%#D'" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/pt.c:10610 +#: cp/pt.c:10627 msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "" -#: cp/pt.c:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" msgstr "" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" msgstr "" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, c-format msgid "ISO C++ forbids the use of `%s' on explicit instantiations" msgstr "" -#: cp/pt.c:10728 +#: cp/pt.c:10745 #, fuzzy msgid "duplicate explicit instantiation of `%#T'" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/pt.c:11109 +#: cp/pt.c:11126 msgid "explicit instantiation of `%D' but no definition available" msgstr "" -#: cp/pt.c:11543 +#: cp/pt.c:11562 msgid "`%#T' is not a valid type for a template constant parameter" msgstr "" @@ -16786,7 +16796,7 @@ msgstr "" msgid "incomplete type `%T' used in nested name specifier" msgstr "" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 #, fuzzy msgid "`%D' is not a member of `%T'" msgstr "\"%s\" мае незавершаны тып" @@ -16832,248 +16842,248 @@ msgstr "" msgid "type of `%E' is unknown" msgstr "вяртаемы тып \"%s\" не \"int\"" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "" -#: cp/tree.c:539 +#: cp/tree.c:532 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, c-format msgid "`%s' attribute can only be applied to Java class definitions" msgstr "" -#: cp/tree.c:1857 +#: cp/tree.c:1850 #, c-format msgid "`%s' attribute can only be applied to class definitions" msgstr "" -#: cp/tree.c:1863 +#: cp/tree.c:1856 #, c-format msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default" msgstr "" -#: cp/tree.c:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, c-format msgid "can only use `%s' attribute on file-scope definitions of objects of class type" msgstr "" -#: cp/tree.c:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, fuzzy, c-format msgid "`%s' attribute is not supported on this platform" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 msgid "%s between distinct pointer types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:513 +#: cp/typeck.c:512 #, c-format msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function" msgstr "" -#: cp/typeck.c:563 +#: cp/typeck.c:562 msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:1235 +#: cp/typeck.c:1234 #, c-format msgid "invalid application of `%s' to a member function" msgstr "" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, fuzzy, c-format msgid "invalid application of `%s' to a bit-field" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, fuzzy, c-format msgid "ISO C++ forbids applying `%s' to an expression of function type" msgstr "ISO C не дазваляе пусты ізыходны файл" -#: cp/typeck.c:1342 +#: cp/typeck.c:1308 #, fuzzy msgid "invalid use of non-static member function" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 msgid "request for member `%D' in `%E', which is of non-class type `%T'" msgstr "" -#: cp/typeck.c:1610 +#: cp/typeck.c:1633 #, fuzzy, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 #, fuzzy msgid "invalid access to non-static data member `%D' of NULL object" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/typeck.c:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 #, fuzzy msgid "`%D::%D' is not a member of `%T'" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 #, fuzzy msgid "`%T' is not a base of `%T'" msgstr "\"%s\" мае незавершаны тып" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 msgid "'%D' has no member named '%E'" msgstr "" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 #, 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:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, c-format msgid "object missing in use of `%E'" msgstr "" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, c-format msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'" msgstr "" -#: cp/typeck.c:2446 +#: cp/typeck.c:2469 #, fuzzy, c-format msgid "`%E' cannot be used as a function" msgstr "\"%s\" звычайна функцыя" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 #, fuzzy msgid "too many arguments to %s `%+#D'" msgstr "вельмі шмат аргументаў у функцыі \"%s\"" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 #, fuzzy msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "\"%s\" мае незавершаны тып" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 #, fuzzy msgid "parameter %P has incomplete type `%T'" msgstr "\"%s\" мае незавершаны тып" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 #, fuzzy msgid "too few arguments to %s `%+#D'" msgstr "нехапае аргументаў у функцыі \"%s\"" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 msgid "assuming cast to type `%T' from overloaded function" msgstr "" -#: cp/typeck.c:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, c-format msgid "division by zero in `%E %% 0'" msgstr "" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 msgid "comparison between types `%#T' and `%#T'" msgstr "" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "" @@ -17081,284 +17091,284 @@ 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:3418 +#: cp/typeck.c:3441 msgid "NULL used in arithmetic" msgstr "" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 msgid "ISO C++ forbids using pointer of type `void *' in subtraction" msgstr "" -#: cp/typeck.c:3483 +#: cp/typeck.c:3506 msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "" -#: cp/typeck.c:3485 +#: cp/typeck.c:3508 msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "" -#: cp/typeck.c:3497 +#: cp/typeck.c:3520 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "" -#: cp/typeck.c:3553 +#: cp/typeck.c:3582 #, c-format msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id." msgstr "" -#: cp/typeck.c:3559 +#: cp/typeck.c:3588 #, c-format msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 #, fuzzy msgid "cannot %s a pointer to incomplete type `%T'" msgstr "\"%s\" мае незавершаны тып" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 msgid "ISO C++ forbids %sing a pointer of type `%T'" msgstr "" -#: cp/typeck.c:3858 +#: cp/typeck.c:3887 msgid "cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:3892 +#: cp/typeck.c:3921 msgid "invalid use of `--' on bool variable `%D'" msgstr "" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 msgid "ISO C++ forbids taking address of function `::main'" msgstr "" #. An expression like &memfn. -#: cp/typeck.c:3994 +#: cp/typeck.c:4027 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:3999 +#: cp/typeck.c:4032 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:4027 +#: cp/typeck.c:4060 msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression" msgstr "" -#: cp/typeck.c:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 #, fuzzy msgid "attempt to take address of bit-field structure member `%D'" msgstr "не магу атрымаць адрас бітавага поля \"%s\"" -#: cp/typeck.c:4190 +#: cp/typeck.c:4227 msgid "taking address of destructor" msgstr "" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 msgid "taking address of bound pointer-to-member expression" msgstr "" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 msgid "cannot create pointer to reference member `%D'" msgstr "" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 msgid "cannot take the address of `this', which is an rvalue expression" msgstr "" -#: cp/typeck.c:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "" -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, c-format msgid "%s expression list treated as compound expression" msgstr "" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "" -#: cp/typeck.c:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object" msgstr "" -#: cp/typeck.c:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type" msgstr "" -#: cp/typeck.c:4765 +#: cp/typeck.c:4813 msgid "invalid const_cast of an rvalue of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4782 +#: cp/typeck.c:4830 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 msgid "ISO C++ forbids casting to an array type `%T'" msgstr "" -#: cp/typeck.c:4835 +#: cp/typeck.c:4883 #, fuzzy msgid "invalid cast to function type `%T'" msgstr "Нерэчаісны выбар \"%s\"" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 msgid "cast from `%T' to `%T' discards qualifiers from pointer target type" msgstr "" -#: cp/typeck.c:4937 +#: cp/typeck.c:4985 msgid "cast from `%T' to `%T' increases required alignment of target type" msgstr "" -#: cp/typeck.c:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr "" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 msgid "ISO C++ forbids cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:5219 +#: cp/typeck.c:5267 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr "" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 msgid " in pointer to member conversion" msgstr "" #. This is a reinterpret cast, we choose to do nothing. -#: cp/typeck.c:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 msgid "pointer to member cast via virtual base `%T'" msgstr "" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 msgid "pointer to member conversion via virtual base `%T'" msgstr "" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 msgid "invalid conversion to type `%T' from type `%T'" msgstr "" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 msgid "passing NULL used for non-pointer %s %P of `%D'" msgstr "" -#: cp/typeck.c:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 msgid "passing `%T' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 msgid "passing negative value `%E' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'" msgstr "" -#: cp/typeck.c:5706 +#: cp/typeck.c:5754 msgid "cannot convert `%T' to `%T' in %s" msgstr "" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 msgid "in passing argument %P of `%+D'" msgstr "" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 msgid "reference to local variable `%D' returned" msgstr "" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 msgid "address of local variable `%D' returned" msgstr "" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 msgid "return-statement with no value, in function returning '%T'" msgstr "" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 msgid "return-statement with a value, in function returning 'void'" msgstr "" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)" msgstr "" @@ -18999,12 +19009,12 @@ msgstr "" msgid "field initializer type mismatch" msgstr "нерэчаісны ініцыялізатар" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, fuzzy, c-format msgid "can't create directory %s: %m" msgstr "немагчыма стварыць дырэкторыю \"%s\"" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, fuzzy, c-format msgid "can't create %s: %m" msgstr "немагчыма стварыць дырэкторыю \"%s\"" @@ -19083,260 +19093,323 @@ msgstr "не магу зачыніць %s" 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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "Прапушчана назва" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "Прапушчан ідэнтыфікатар" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2977 msgid "Constructor invocation must be first thing in a constructor" msgstr "" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr "" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" "%s" msgstr "" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "нераспазнаны аператар %s" @@ -19393,8 +19466,8 @@ msgstr "" msgid "cannot find protocol declaration for `%s'" msgstr "Не магу знайсці дэкларацыю пратакола для \"%s\"" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, fuzzy, c-format msgid "cannot find interface declaration for `%s'" msgstr "Не магу знайсці дэкларацыю інтэрфейса для \"%s\"" @@ -19419,8 +19492,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:6769 -#: objc/objc-act.c:7059 objc/objc-act.c:7088 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "" @@ -19434,7 +19507,7 @@ msgstr "немагчыма знайсьці кляс `%s'" msgid "class `%s' already exists" msgstr "кляс `%s' ужо існуе" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "" @@ -19595,1473 +19668,1796 @@ msgstr "" msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, c-format msgid "instance variable `%s' is %s; this will be a hard error in the future" msgstr "" -#: objc/objc-act.c:6546 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, c-format msgid "%s `%s' does not fully implement the `%s' protocol" msgstr "" -#: objc/objc-act.c:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 msgid "%J%s `%c%s'" msgstr "" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, c-format msgid "no super class declared in interface for `%s'" msgstr "" -#: objc/objc-act.c:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 #, fuzzy msgid "Display this information" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 #, fuzzy msgid "Do not discard comments" msgstr "незавершаныя каментарыі" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 msgid "Print the name of header files as they are used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 msgid "Generate make dependencies and compile" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -#, fuzzy -msgid "Generate phony targets for all headers" -msgstr "Генерыраваць код для Intel as" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 msgid "-O\tSet optimization level to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 #, fuzzy msgid "Optimize for space rather than speed" msgstr "Аптымізацыя для SparcLite працэсараў" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 #, fuzzy msgid "Do not generate #line directives" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 msgid "Warn about subscripts whose type is \"char\"" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 msgid "Warn when all constructors and destructors are private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 msgid "Warn when a declaration is found after a statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -msgid "Warn about deprecated compiler features" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 msgid "Warn about compile-time integer division by zero" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 #, fuzzy msgid "Make implicit function declarations an error" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 msgid "Warn if testing floating point numbers for equality" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 #, fuzzy msgid "Warn if passing too many arguments to a function for its format string" msgstr "вельмі шмат аргумэнтаў у функцыі `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 msgid "Warn about format strings that are not literals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 msgid "Warn about strftime formats yielding 2-digit years" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 -msgid "Warn about implicit function declarations" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +msgid "Enable warnings about inter-procedural problems" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 -msgid "Warn when a declaration does not specify a type" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 +msgid "Warn about implicit function declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:198 -msgid "Deprecated. This switch has no effect." +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 +msgid "Warn when a declaration does not specify a type" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:201 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 #, fuzzy msgid "Warn about suspicious declarations of \"main\"" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 msgid "Warn about possibly missing braces around initializers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 #, fuzzy msgid "Warn about global functions without previous declarations" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 msgid "Warn about functions which might be candidates for format attributes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 msgid "Warn about global functions without prototypes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 #, fuzzy msgid "Warn about use of multi-character character constants" msgstr "мнагасімвальная сімвальная канстанта" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 msgid "Warn about \"extern\" declarations not at file scope" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 msgid "Warn when non-templatized friend functions are declared within a template" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 msgid "Warn about non-virtual destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 msgid "Warn if a C-style cast is used in a program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 msgid "Warn if an old-style parameter definition is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 msgid "Warn when padding is required to align structure members" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 msgid "Warn about possibly missing parentheses" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 msgid "Warn when converting the type of pointers to member functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 msgid "Warn if inherited methods are unimplemented" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 msgid "Warn about signed-unsigned comparisons" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 msgid "Warn about code which might break strict aliasing rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 #, fuzzy msgid "Warn about unprototyped function declarations" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 msgid "Warn about enumerated switches, with no default, missing a case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 msgid "Warn about all enumerated switches missing a specific case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 msgid "Warn about features not present in traditional C" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 msgid "Warn if an undefined macro is used in an #if directive" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 msgid "-aux-info \tEmit declaration information into " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 msgid "-d\tEnable dumps from specific passes of the compiler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 msgid "Enforce class member access control semantics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 msgid "Specify that arguments may alias each other and globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 msgid "Assume arguments may alias globals but not each other" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 msgid "Assume arguments alias neither each other nor globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 msgid "Recognize the \"asm\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 #, fuzzy msgid "Generate code to check bounds before indexing arrays" msgstr "Генерыраваць код для Intel as" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 msgid "Replace add, compare, branch with branch on count register" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 #, fuzzy msgid "Recognize built-in functions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 msgid "-fcall-saved-\tMark as being preserved across functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 msgid "Save registers around function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +msgid "Preserve case used in program" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 msgid "Reduce the size of object files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 msgid "Perform a register copy-propagation optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 msgid "Place data items into their own section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 #, fuzzy msgid "Inline member functions by default" msgstr "у функцыі \"%s\":" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 -msgid "Permit '$' as an identifier character" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +msgid "Allow '$' in symbol names" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 +msgid "Permit '$' as an identifier character" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 msgid "Suppress output of instruction numbers and line number notes in debugging dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 #, fuzzy msgid "Generate code to check exception specifications" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "Уключыць апрацоўку выключэньняў" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +msgid "f2c-compatible code can be generated" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +msgid "Unsupported; generate libf2c-calling code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +msgid "Program is written in typical Unix-f77 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +msgid "Unsupported; affects code generation of arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 msgid "Scope of for-init-statement variables is local to the loop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 msgid "Copy memory address constants into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 msgid "Copy memory operands into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 #, fuzzy msgid "Place each function into its own section" msgstr "адзін раз для кожнай функцыі, дзе ён з'яўляецца.)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 msgid "Perform global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 msgid "Perform redundant load after store elimination in global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 msgid "Perform store motion after global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 msgid "Recognize GNU-defined keywords" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 msgid "Enable guessing of branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 #, fuzzy msgid "Emit implicit instantiations of inline templates" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 #, fuzzy msgid "Emit implicit instantiations of templates" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 -msgid "Pay attention to the \"inline\" keyword" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 +msgid "Pay attention to the \"inline\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 msgid "Instrument function entry and exit with profiling calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +msgid "Intrinsics in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 msgid "Generate code for functions even if they are fully inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 msgid "Give external symbols a leading underscore" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 #, fuzzy msgid "Perform loop optimizations" msgstr "Уключаць SSA аптымізацыю" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +msgid "Language keywords in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 msgid "Report on permanent memory allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 msgid "Don't warn about uses of Microsoft extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 msgid "Use graph-coloring register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 msgid "Do the full register move optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +msgid "Enable optimization of static class initialization code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 #, fuzzy msgid "Enable optional diagnostics" msgstr "Уключаць SSA аптымізацыю" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 msgid "Return small aggregates in memory, not registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +msgid "Warn about use of (only a few for now) Fortran extensions" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 msgid "Perform loop peeling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 msgid "Enable an RTL peephole pass before sched2" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 msgid "Generate position-independent code if possible" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 msgid "Generate position-independent code for executables if possible" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 msgid "Insert arc-based program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 #, fuzzy msgid "Return small aggregates in registers" msgstr "Не выкарыстоўваць рэгістра sb" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 msgid "Perform a register renaming optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 msgid "Generate run time type descriptor information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +msgid "Allow appending a second underscore to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 msgid "Make \"char\" signed by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +msgid "Do not print names of program units as they are compiled" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 msgid "Convert floating point constants to single precision constants" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +msgid "Internally convert most source to lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "Уключаць код правэркі стэку ў праграму" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 msgid "Create data files needed by \"gcov\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 msgid "Report the time taken by each compiler pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 msgid "Assume floating-point operations can trap" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +msgid "Allow all ugly features" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +msgid "Hollerith and typeless can be passed as arguments" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +msgid "Append underscores to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 msgid "Compile whole compilation unit at a time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +msgid "Enable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 msgid "Make \"char\" unsigned by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 msgid "Perform loop unswitching" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +msgid "Print g77-specific version information and run internal tests" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 msgid "Use expression value profiles in optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +msgid "Print internal debugging-related information" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 #, fuzzy msgid "Generate debug information in default format" msgstr "Генерыраваць код для Intel as" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 msgid "Generate debug information in COFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 msgid "Generate debug information in DWARF v2 format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 msgid "Dump declarations to a .decl file" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 msgid "Generate debug information in default extended format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 #, fuzzy msgid "Generate debug information in STABS format" msgstr "Стварыць код для DLL" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 msgid "Generate debug information in extended STABS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 #, fuzzy msgid "Generate debug information in VMS format" msgstr "Стварыць код для DLL" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 msgid "Generate debug information in XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 msgid "Generate debug information in extended XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 #, fuzzy msgid "-o \tPlace output into " msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 #, fuzzy msgid "Enable function profiling" msgstr "Уключыць апрацоўку выключэньняў" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 msgid "Issue warnings needed for strict compliance to the standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 msgid "Generate C header of platform-specific features" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 msgid "Do not display functions compiled or elapsed time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 msgid "Remap file names when including files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 msgid "Enable traditional preprocessing" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 msgid "Enable verbose output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -msgid "Display the compiler's version" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 #, fuzzy msgid "Suppress warnings" msgstr "%s: увага: " -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "" @@ -21075,7 +21471,7 @@ msgstr "%s не падтрымлівае %s" msgid "GCC does not support -CC without using -E" msgstr "%s не падтрымлівае %s" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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" @@ -21437,10 +21833,6 @@ msgstr "" #~ msgstr "%s перад знакам \"%s\"" #, fuzzy -#~ msgid "`sizeof' applied to incomplete type `%T'" -#~ msgstr "\"%s\" мае незавершаны тып" - -#, fuzzy #~ msgid "invalid use of undefined type `%#T'" #~ msgstr "нявернае выкарыстанне \"restict\"" diff --git a/gcc/po/ca.po b/gcc/po/ca.po index 760bc22319a..1a5cb8a63b5 100644 --- a/gcc/po/ca.po +++ b/gcc/po/ca.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.3.2\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2004-01-30 00:03+0000\n" "Last-Translator: Mateu Gilles \n" "Language-Team: Catalan \n" @@ -39,15 +39,15 @@ msgstr "l'atribut \"%s\" no s'aplica a tipus" msgid "`%s' attribute only applies to function types" msgstr "l'atribut \"%s\" nomes s'aplica a tipus funcions" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -122,7 +122,7 @@ msgstr "(aix #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "" @@ -289,272 +289,272 @@ msgid "invalid application of `%s' to a void type" msgstr "applicació invàlida de \"%s\" a un tipus void" #: c-common.c:2951 -#, c-format -msgid "invalid application of `%s' to an incomplete type" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " msgstr "aplicació invàlida de \"%s\" a un tipus de dada incompleta" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "\"__alignof\" aplicat a un camp de bits" -#: c-common.c:3483 +#: c-common.c:3484 #, c-format msgid "cannot disable built-in function `%s'" msgstr "no es pot desactivar la funcio interna \"%s\"" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "massa pocs arguments per a la funció \"%s\"" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "massa arguments per a la funció \"%s\"" -#: c-common.c:3669 +#: c-common.c:3670 #, 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:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "els apuntadores no són permesos com valors casi" -#: c-common.c:3900 +#: c-common.c:3901 #, fuzzy msgid "range expressions in switch statements are non-standard" msgstr "ISO C prohibeix un rang d'expressions en les declaracions switch" -#: c-common.c:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "es va especificar un rang buit" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "valor de casi duplicat (o translapat)" -#: c-common.c:3981 +#: c-common.c:3982 #, fuzzy msgid "%Jthis is the first entry overlapping that value" msgstr "aquesta és la primera entrada que translapa aquest valor" -#: c-common.c:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "valor de casi duplicat" -#: c-common.c:3986 +#: c-common.c:3987 #, fuzzy msgid "%Jpreviously used here" msgstr "es va usar prèviament aquí" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "múltiples etiquetes per omissió en un sol switch" -#: c-common.c:3991 +#: c-common.c:3992 #, fuzzy msgid "%Jthis is the first default label" msgstr "aquesta és la primera etiqueta per omissió" -#: c-common.c:4016 +#: c-common.c:4017 #, fuzzy msgid "taking the address of a label is non-standard" msgstr "SO C prohibeix prendre l'adreça d'una etiqueta" -#: c-common.c:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "es desconeix la manera de màquina \"%s\"" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "no hi ha tipus de dades per a la manera \"%s\"" -#: c-common.c:4655 +#: c-common.c:4656 #, fuzzy, c-format msgid "invalid pointer mode `%s'" msgstr "codi d'operant \"%c\" invàlid" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, c-format msgid "unable to emulate '%s'" msgstr "no es pot emular \"%s\"" -#: c-common.c:4706 +#: c-common.c:4707 #, fuzzy msgid "%Jsection attribute cannot be specified for local variables" msgstr "l'atribut de secció no pot ser especificat per a les variables locals" -#: c-common.c:4717 +#: c-common.c:4718 #, fuzzy msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "la secció de \"%s\" causa conflictes amb la declaració prèvia" -#: c-common.c:4726 +#: c-common.c:4727 #, fuzzy msgid "%Jsection attribute not allowed for '%D'" msgstr "no es permet un atribut de secció per a \"%s\"" -#: c-common.c:4732 +#: c-common.c:4733 #, fuzzy msgid "%Jsection attributes are not supported for this target" msgstr "atributs de secció no suportats per aquest objectiu" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "l'alineació sol-licitada no és una constant" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "l'alineació sol-licitada no és una potència de 2" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "l'alineació sol-licitada és massa gran" -#: c-common.c:4806 +#: c-common.c:4807 #, fuzzy msgid "%Jalignment may not be specified for '%D'" msgstr "l'alineació no pot ser especificada per a \"%s\"" -#: c-common.c:4844 +#: c-common.c:4845 #, fuzzy msgid "%J'%D' defined both normally and as an alias" msgstr "\"%s\" definit normalment i com un alies" -#: c-common.c:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "l'argument d'alies no és una cadena" -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "l'argument de·visibilitat no és una cadena" -#: c-common.c:4910 +#: c-common.c:4911 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:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "l'argument tls_model no és una cadena" -#: c-common.c:4945 +#: c-common.c:4946 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:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 #, fuzzy msgid "%J'%E' attribute applies only to functions" msgstr "l'atribut \"%s\" s'aplica solament a funcions" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 #, fuzzy msgid "%Jcan't set '%E' attribute after definition" msgstr "no es pot establir l'atribut \"%s\" després de la definició" -#: c-common.c:5094 +#: c-common.c:5095 #, c-format msgid "`%s' attribute ignored for `%s'" msgstr "atribut \"%s\" ignorat per a \"%s\"" -#: c-common.c:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "tipus de vector invalid per a l'atribut \"%s\"" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 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:5315 +#: c-common.c:5316 msgid "nonnull attribute without arguments on a non-prototype" msgstr "un atribut nonnull sense arguments en un que no és prototip" -#: c-common.c:5330 +#: c-common.c:5331 #, 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:5349 +#: c-common.c:5350 #, 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:5357 +#: c-common.c:5358 #, 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:5437 +#: c-common.c:5438 #, 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-common.c:5508 +#: c-common.c:5509 msgid "cleanup arg not an identifier" msgstr "l'objecte·cridat·no·és·un identificador" -#: c-common.c:5515 +#: c-common.c:5516 msgid "cleanup arg not a function" msgstr "l'objecte cridat no és una funció" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s al final de l'entrada" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s abans de %s\"%c\"" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s abans de %s\"\\x%x\"" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "%s abans d'una constant de cadena" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "%s abans d'una constant numèrica" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s abans de \"%s\"" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s abans l'element \"%s\"" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 treelang/tree-convert.c:79 msgid "void value not ignored as it ought to be" msgstr "valor void no ignorat com deuria ser" @@ -772,8 +772,8 @@ msgstr "la declaraci msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "la declaració de \"%#D\" enfosqueix un paràmetre" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 #, fuzzy msgid "%Jshadowed declaration is here" msgstr "declaració prèvia de \"%#D\" aquí" @@ -783,7 +783,7 @@ msgstr "declaraci msgid "nested extern declaration of `%s'" msgstr "declaració extern niada de \"%s\"" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 #, fuzzy msgid "%Jprevious declaration of '%D'" msgstr "declaració prèvia de \"%D\"" @@ -863,7 +863,7 @@ msgid "two types specified in one empty declaration" msgstr "es van especificar dos tipus en una declaració buida" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "declaració buida" @@ -904,7 +904,7 @@ msgstr "la funci msgid "parameter `%s' is initialized" msgstr "el paràmetre \"%s\" té valor inicial" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "un objecte de grandària variable no pot tenir valor inicial" @@ -918,7 +918,7 @@ msgstr "la variable \"%s\" t msgid "elements of array `%s' have incomplete type" msgstr "alguns elements de la matriu \"%s\" tenen tipus de dada incompleta" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 #, fuzzy msgid "%Jinline function '%D' given attribute noinline" msgstr "ha donat un atribut noinline a la funció inline \"%s\"" @@ -1202,7 +1202,7 @@ msgstr "ISO C90 prohibeix matriu \"%s\" que la seua grand msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO C90 prohibeix la matriu \"%s\" de grandària variable" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "la grandària de la matriu \"%s\" és massa gran" @@ -1245,7 +1245,7 @@ msgstr "modificador de tipus inv msgid "ISO C forbids const or volatile function types" msgstr "ISO C prohibeix els tipus de funció const o volatile" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "variable o camp \"%s\" declarat void" @@ -1570,7 +1570,7 @@ msgstr "l'argument promogut \"%s\" no coincideix amb el prototip" msgid "argument \"%D\" doesn't match prototype" msgstr "l'argument \"%s\" no coincideix amb el prototip" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 msgid "no return statement in function returning non-void" msgstr "no hi ha una declaració de devolució en una funció que retorna non-void" @@ -2362,7 +2362,7 @@ msgstr "error sint msgid "ISO C forbids an empty source file" msgstr "ISO C prohibeix un fitxer font buit" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "l'argument de \"asm\" no és una cadena constant" @@ -2459,7 +2459,7 @@ msgstr "ISO C prohibeix les funcions niades" msgid "ISO C forbids forward references to `enum' types" msgstr "ISO C prohibeix les declaracions posteriors per a tipus \"enum\"" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "coma al final de la llista de numeradors" @@ -2467,7 +2467,7 @@ msgstr "coma al final de la llista de numeradors" 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/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "es va especificar un punt i coma extra en un struct o union" @@ -2497,24 +2497,24 @@ msgstr "ISO C prohibeix les declaracions etiquetades" 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:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "cos buit en una declaració else" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 #, fuzzy msgid "%Hempty body in an if-statement" msgstr "cos buit en una declaració else" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 msgid "break statement not within loop or switch" msgstr "la declaració break no està dintre d'un cicle o switch" -#: c-parse.y:2281 cp/parser.c:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 msgid "continue statement not within a loop" msgstr "la declaració continue no està dintre dintre d'un cicle" -#: c-parse.y:2323 objc/objc-parse.y:2380 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO C prohibeix \"goto *expr;\"" @@ -2524,11 +2524,11 @@ msgstr "ISO C prohibeix \"goto *expr;\"" #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "ISO C requereix un argument amb nom abans de \"...\"" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "\"...\" en una llista d'identificadors d'estil antic" @@ -2544,7 +2544,7 @@ msgstr "error d'analitza" msgid "parser stack overflow" msgstr "desbordament de la pila del analitzador" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "error sintàctic en l'element \"%s\"" @@ -2709,19 +2709,19 @@ msgstr "#pragma redefine_extname malformat, ignorat" msgid "junk at end of #pragma redefine_extname" msgstr "escombraries al final de #pragma redefine_extname" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "#pragma redefine_extname té conflictes amb la declaració" -#: c-pragma.c:413 +#: c-pragma.c:414 msgid "malformed #pragma extern_prefix, ignored" msgstr "#pragma extern_prefix malformat, ignorat" -#: c-pragma.c:418 +#: c-pragma.c:419 msgid "junk at end of #pragma extern_prefix" msgstr "escombraries al final de #pragma extern_prefix" -#: c-pragma.c:449 +#: c-pragma.c:450 msgid "asm declaration conflicts with previous rename" msgstr "la declaració asm causa conflictes amb el rename previ" @@ -2738,7 +2738,7 @@ msgstr "on l'etiqueta casi apareix aqu 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:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "qualificador %s ignorat en asm" @@ -2748,795 +2748,795 @@ msgstr "qualificador %s ignorat en asm" msgid "will never be executed" msgstr "la cridada %2d mai s'executa\n" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "\"%s\" té un tipus incompleta" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "ús invàlid de l'expressió void" -#: c-typeck.c:150 +#: c-typeck.c:153 msgid "invalid use of flexible array member" msgstr "ús invàlid de membres de matriu flexible" -#: c-typeck.c:156 +#: 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:164 +#: 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "ús invàlid del typedef incomplet \"%s\"" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 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:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "els tipus no són totalment compatibles" -#: c-typeck.c:824 +#: c-typeck.c:838 #, fuzzy msgid "function return types not compatible due to `volatile'" msgstr "el tipus de devolució d'una funció no pot ser una funció" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "aritmètica en apuntador a un tipus incomplet" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "%s no té un membre cridat \"%s\"" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, 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:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "punter dereferènciat a tipus de dada incompleta" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "dereferènciant el punter \"void *\"" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "argument de tipus invàlid de \"%s\"" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "falta subindici en la referència de la matriu" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "el subindici de matriu té un tipus \"char\"" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "el subindici de la matriu no és un enter" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "ISO C prohibeix el subindici d'una matriu \"register\"" -#: c-typeck.c:1511 +#: c-typeck.c:1525 msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C90 prohibeix el subindici d'una matriu non-lvalue" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "el subindici és de tipus \"char\"" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "el valor indicat pel subindici no és ni matriu ni punter" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, 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:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "l'objecte cridat no és una funció" #. 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 +#: c-typeck.c:1729 msgid "function called through a non-compatible type" msgstr "" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "l'element de valor inicial no és constant" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "massa arguments per a la funció" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, 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:1847 +#: c-typeck.c:1872 #, 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:1850 +#: c-typeck.c:1875 #, 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:1853 +#: c-typeck.c:1878 #, 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:1856 +#: c-typeck.c:1881 #, 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:1859 +#: c-typeck.c:1884 #, 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:1862 +#: c-typeck.c:1887 #, 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:1872 +#: c-typeck.c:1897 #, 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:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "%s amb amplària diferent a causa del prototip" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "%s com unsigned a causa del prototip" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "%s com signed a causa del prototip" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "molt pocs arguments per a la funció" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "se suggereixen parèntesi al voltant de + o - dintre d'un desplaçament" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "se suggereixen parèntesi al voltant de && dintre de ||" -#: c-typeck.c:2008 +#: c-typeck.c:2033 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:2011 +#: c-typeck.c:2036 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:2020 +#: c-typeck.c:2045 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:2023 +#: c-typeck.c:2048 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:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "se suggereixen parèntesi al voltant de + o - per a operada de &" -#: c-typeck.c:2033 +#: c-typeck.c:2058 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:2040 +#: c-typeck.c:2065 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:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "es va usar un punter de tipus \"void *\" en la substracció" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "es va usar un punter a una funció en la substracció" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "argument de tipus erroni per a l'increment unari" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "argument de tipus erroni per al decrement unari" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "ISO C no té suport de \"~\" per a conjugacions complexes" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "argument de tipus erroni per a complement de bits" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "argument de tipus erroni per a abs" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "argument de tipus erroni per a la conjugació" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "argument de tipus erroni per al signe d'exclamació unari" -#: c-typeck.c:2312 +#: c-typeck.c:2337 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:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 msgid "wrong type argument to increment" msgstr "argument de tipus erroni per a l'increment" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "argument de tipus erroni pel decrement" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "increment de punter a estructura desconeguda" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "decrement de punter a estructura desconeguda" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "l-value invàlid en \"&\" unari" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, 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:2642 +#: c-typeck.c:2668 #, fuzzy msgid "use of conditional expressions as lvalues is deprecated" msgstr "ISO C prohibeix l'ús d'expressions condicionals com l-values" -#: c-typeck.c:2645 +#: c-typeck.c:2671 #, fuzzy msgid "use of compound expressions as lvalues is deprecated" msgstr "ISO C prohibeix l'ús d'expressions compostoses com l-valors" -#: c-typeck.c:2648 +#: c-typeck.c:2674 #, fuzzy msgid "use of cast expressions as lvalues is deprecated" msgstr "ISO C prohibeix l'ús d'expressions de conversió com l-valors" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "%s del membre de només lectura \"%s\"" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "%s de la variable de només lectura \"%s\"" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "%s de la ubicació de només lectura" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, 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:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 treelang/treetree.c:946 #, 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:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 treelang/treetree.c:950 #, c-format msgid "register variable `%s' used in nested function" msgstr "es va usar la va variable \"%s\" en funcions niades" -#: c-typeck.c:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 treelang/treetree.c:957 #, 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:2739 +#: c-typeck.c:2765 msgid "cannot put object with volatile field into register" msgstr "no es pot posar objecte amb camp volatile en register" -#: c-typeck.c:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, 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:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "tipus signed i unsigned en l'expressió condicional" -#: c-typeck.c:2835 +#: c-typeck.c:2861 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:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 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:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "els tipus de dades punters no coincideixen en l'expressió condicional" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "els tipus de dades punters/enters no coincideixen en l'expressió condicional" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "els tipus de dades no coincideixen en l'expressió condicional" -#: c-typeck.c:2955 +#: c-typeck.c:2981 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:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "la conversió especifica el tipus matriu" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "la conversió especifica el tipus funció" -#: c-typeck.c:3002 +#: c-typeck.c:3028 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:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "ISO C prohibeix la conversió al tipus union" -#: c-typeck.c:3028 +#: c-typeck.c:3054 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:3079 +#: c-typeck.c:3105 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "la conversió descarta els qualificadors del tipus de la destinació del punter" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "la conversió incrementa l'alineació requerida del tipus de la destinació" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "conversió de punter a enter de grandària diferent" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "la conversió no coincideix amb el tipus de la funció" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "conversió a punter des d'un enter de grandària diferent" -#: c-typeck.c:3129 +#: c-typeck.c:3155 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:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "el retorn de punters de tipus castigat trencarà les regles d'alies estricte" -#: c-typeck.c:3144 +#: c-typeck.c:3170 #, fuzzy msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "ISO C prohibeix la comparança de \"void *\" amb un punter de funció" -#: c-typeck.c:3153 +#: c-typeck.c:3179 #, fuzzy msgid "ISO C forbids conversion of object pointer to function pointer type" msgstr "ISO C prohibeix la comparança de \"void *\" amb un punter de funció" #. Now we have handled acceptable kinds of LHS that are not truly lvalues. #. Reject anything strange now. -#: c-typeck.c:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "l-value invàlid en l'assignació" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "assignació" -#: c-typeck.c:3429 +#: c-typeck.c:3455 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:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, 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:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, 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:3548 +#: c-typeck.c:3574 msgid "ISO C prohibits argument conversion to union type" msgstr "ISO C prohibeix la conversió d'arguments a tipus union" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, 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:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "el punter que apunta a %s difereix en signe" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "%s de tipus de punter incompatible" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "ús invàlid de matriu no lvaluada" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, 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:3646 +#: c-typeck.c:3672 #, 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:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "tipus incompatible per a l'argument %d de \"%s\"" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, 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:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "tipus incompatibles en %s" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, c-format msgid "passing arg of `%s'" msgstr "passant l'argument de \"%s\"" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 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:3744 +#: c-typeck.c:3770 #, 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:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "passant l'argument %d del punter a la funció" -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "C tradicional rebutja la iniciació automàtica d'agregats" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "(prop de l'assignació de valors inicials per a \"%s\")" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "matriu de caràcters amb valors inicials assignats d'una cadena ampla" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "matriu d'enters amb valors inicials assignats d'una cadena no ampla" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 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:4155 +#: c-typeck.c:4181 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:4172 c-typeck.c:4174 c-typeck.c:4190 c-typeck.c:4211 -#: c-typeck.c:5593 -msgid "initializer element is not constant" -msgstr "l'element de valor inicial no és constant" - -#: c-typeck.c:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "assignació de valors inicials" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 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:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "valor inicial invàlid" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 #, fuzzy msgid "opaque vector types cannot be initialized" msgstr "un objecte de grandària variable de tipus \"%T\" no pot ser inicialitzat" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "grup extra de claus al final dels valors inicials" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "falten claus al voltant dels valors inicials" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "claus al voltant del valor inicial escalar" -#: c-typeck.c:4842 +#: c-typeck.c:4865 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:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "iniciació d'un membre de matriu flexible" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "falta valor inicial" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "valor inicial escalar buidor" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "elements extres en valor inicial escalar" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "no es poden niar els designadors d'iniciació" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "índex de matriu en valor inicial que no és de matriu" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 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:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "índex de matriu no constant en valor inicial" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 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:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "rang d'índexs buit en valor inicial" -#: c-typeck.c:5101 +#: c-typeck.c:5124 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:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "camp \"%s\" desconegut especificat en el valor inicial" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "camp iniciat amb efectes laterals sobreescrits" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "excés d'elements en valors inicials de matriu de caràcters" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "excés d'elements en valors inicials de struct" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "iniciació no estàtica d'un membre de matriu flexible" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "excés d'elements en valors inicials de union" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "C tradicional rebutja els valors inicials de unions" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "excés d'elements en valors inicials de matriu" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "excés d'elements en valor inicial vectorial" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "excés d'elements en valor inicial escalar" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "la plantilla asm no és una cadena constant" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "lvalue invàlid en declaració asm" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "modificació per \"asm\"" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "la funció declarada \"noreturn\" té una declaració \"return\"" -#: c-typeck.c:6369 +#: c-typeck.c:6392 msgid "`return' with no value, in function returning non-void" msgstr "\"return\" sense valors, en una funció que retorna non-void" -#: c-typeck.c:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "\"return\" amb valor, en una funció que retorna void" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "return" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "la funció retorna l'adreça d'una variable local" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "la quantitat de switch no és un enter" -#: c-typeck.c:6496 +#: c-typeck.c:6519 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:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "l'etiqueta casi no es troba dintre d'una declaració switch" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "l'etiqueta \"default\" no està dintre d'una declaració switch" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "divisió per zero" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "el compte de desplaçament a la dreta es negatiu" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "compte de desplaçament a la dreta >= amplària del tipus" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "el compte de desplaçament a l'esquerra és negativa" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "compte de desplaçament a l'esquerra >= amplària del tipus" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "compte de desplaçament a la dreta negatiu" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "ompte de desplaçament a la dreta >= amplària del tipus" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "no és segura la comparança de coma flotant amb == o !=" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 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:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 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:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "comparança entre punter i enter" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "ISO C prohibeix la comparança entre punters a funcions" -#: c-typeck.c:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "comparança de punters complets i incomplets" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "comparança ordenada de punter amb l'enter zero" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 msgid "unordered comparison on non-floating point argument" msgstr "comparança sense ordre en argument de coma no flotant" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "comparança entre signed i unsigned" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "comparança d'un ~unsigned promogut amb una constant" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "comparança d'un ~unsigned promogut amb unsigned" @@ -3806,46 +3806,46 @@ msgstr "el nombre de notes bb en la cadena insn (%d) != n_basic_blocks (%d)" msgid "function body not available" msgstr "la funció no pot ser inline" -#: cgraph.c:163 cgraphunit.c:340 +#: cgraph.c:163 cgraphunit.c:341 #, fuzzy msgid "redefined extern inline functions are not considered for inlining" msgstr "Avisar quan una funció inline no pot ser inline" -#: cgraph.c:166 cgraphunit.c:345 +#: cgraph.c:166 cgraphunit.c:346 #, fuzzy msgid "function not considered for inlining" msgstr "la funció no pot ser inline" -#: cgraph.c:168 cgraphunit.c:343 +#: cgraph.c:168 cgraphunit.c:344 #, fuzzy msgid "function not inlinable" msgstr "la funció no pot ser inline" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "" @@ -4033,7 +4033,7 @@ msgstr "%s: no es pot obrir com un fitxer COFF" msgid "library lib%s not found" msgstr "no es troba la biblioteca lib%s" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -4044,7 +4044,7 @@ msgstr "" ";; %d èxits.\n" "\n" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -4882,7 +4882,7 @@ msgstr "" msgid "syntax error in macro parameter list" msgstr "\"%s\" podria faltar en la llista de paràmetre de macro" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr ";; Processant el bloc de %d a %d, %d establerts.\n" @@ -4961,17 +4961,17 @@ msgstr "no es d msgid "function using short complex types cannot be inline" msgstr "les funcions que usen tipus short complex no poden ser inline" -#: expr.c:6385 +#: expr.c:6386 #, fuzzy msgid "%Jprior parameter's size depends on '%D'" msgstr "la grandària del paràmetre previ depèn de \"%s\"" -#: expr.c:6752 +#: expr.c:6753 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:8895 +#: expr.c:8894 msgid "cannot take the address of an unaligned member" msgstr "no es pot prendre l'adreça d'un membre desalineat" @@ -5016,12 +5016,12 @@ msgstr "l'operant \"%%l\" no #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "constant de coma flotant mal usada" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "expressió invàlida com operant" @@ -5073,26 +5073,26 @@ msgstr "la grand msgid "impossible constraint in `asm'" msgstr "restricció impossible en \"asm\"" -#: function.c:5723 +#: function.c:5733 #, fuzzy msgid "%J'%D' might be used uninitialized in this function" msgstr "\"%s\" es deuria usar sense iniciar en aquesta funció" -#: function.c:5730 +#: function.c:5740 #, fuzzy msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "la variable \"%s\" podria ser sobreescrita per \"longjmp\" o \"vfork\"" -#: function.c:5749 +#: function.c:5759 #, fuzzy msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "l'argument \"%s\" podria ser sobreescrit per \"longjmp\" o \"vfork\"" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "la funció retorna un agregat" -#: function.c:7006 +#: function.c:6929 #, fuzzy msgid "%Junused parameter '%D'" msgstr "paràmetre \"%s\" sense ús" @@ -6581,7 +6581,7 @@ msgstr "l'operant de sortida %d deu usar la restricci msgid "can't use '%s' as a %s register" msgstr "no es pot usar \"%s\" com un registre %s" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "nom de registre desconegut: %s" @@ -6638,47 +6638,47 @@ msgstr " no es poden generar recarregues per a:" msgid "inconsistent operand constraints in an `asm'" msgstr "restriccions de operants inconsistents en un \"asm\"" -#: reload1.c:1212 +#: reload1.c:1222 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:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "intenti reduir el nombre de variables locals" -#: reload1.c:1868 +#: reload1.c:1878 #, 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:1872 +#: reload1.c:1882 #, 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:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "això és el insn:" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "l'operant \"asm\" requereix una recarrega impossible" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 msgid "could not find a spill register" msgstr "no es pot trobar un registre de buidat " -#: reload1.c:4968 +#: reload1.c:4978 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:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "VOIDmode en una sortida" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "l'operant de sortida és constant en \"asm\"" @@ -6730,7 +6730,7 @@ msgstr "Revisi 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:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 #, fuzzy msgid "%Jlabel '%D' used before containing binding contour" msgstr "es va usar abans l'etiqueta \"%s\" que contenia un contorn d'unió" @@ -6748,7 +6748,7 @@ msgstr "la restricci msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "la restricció d'operant conté \"+\" o \"=\" mal posicionat" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "restricció \"%%\" utilitzada amd l'últim operant" @@ -6757,129 +6757,124 @@ msgstr "restricci msgid "matching constraint not valid in output operand" msgstr "la restricció coincident no és vàlida en l'operant de sortida" -#: stmt.c:1260 -#, fuzzy -msgid "read-write constraint does not allow a register" -msgstr "l'adreça de pre-increment no és un registre" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "la restricció d'operant d'entrada conté \"%c\"" -#: stmt.c:1334 +#: stmt.c:1331 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:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "puntuació invàlida \"%c\" en la restricció" -#: stmt.c:1396 +#: stmt.c:1393 #, fuzzy msgid "matching constraint does not allow a register" msgstr "la restricció coincident no és vàlida en l'operant de sortida" -#: stmt.c:1424 +#: stmt.c:1421 #, 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:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "nom de registre desconegut \"%s\" en \"asm\"" -#: stmt.c:1522 +#: stmt.c:1519 #, fuzzy, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "nom de registre desconegut \"%s\" en \"asm\"" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "més de %d operants en \"asm\"" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "el nombre de sortida %d no és directament dirrectionable" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "l'operant asm %d probablement no coincideix amb les restriccions" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "l'agrupació asm causa conflictes amb l'operant de sortida" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "l'agrupació asm causa conflictes amb l'operant d'entrada" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "massa alternatives en \"asm\"" -#: stmt.c:1926 +#: stmt.c:1923 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:1978 +#: stmt.c:1975 #, c-format msgid "duplicate asm operand name '%s'" msgstr "nom d'operant asm \"%s\" duplicat" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "falta la clau final per a l'operant nomenat" -#: stmt.c:2104 +#: stmt.c:2101 #, c-format msgid "undefined named operand '%s'" msgstr "operant nomenat no definit \"%s\"" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "" -#: stmt.c:2317 +#: stmt.c:2314 #, fuzzy msgid "%Hvalue computed is not used" msgstr "l'autòmat \"%s\" no s'utilitza" -#: stmt.c:3733 +#: stmt.c:3730 #, fuzzy msgid "%Junused variable '%D'" msgstr "variable \"%s\" sense ús" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "el valor d'enumeració \"%s\" no es maneja en un switch" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "el valor de casi \"%ld\" no és un tipus enumerat" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, 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:5401 +#: stmt.c:5398 msgid "switch missing default case" msgstr "mancada el casi per defecte per a un switch" @@ -6916,25 +6911,25 @@ msgstr "no msgid "%Jpadding struct to align '%D'" msgstr "estructura de farcit per a alinear \"%s\"" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "grandària de l'estructura de farcit per als límits d'alineació" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "l'atribut packed causa una alineació ineficient per a \"%s\"" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "no és necessari l'atribut packed per a \"%s\"" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "l'atribut packed causa una alineació ineficient" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "no és necessari l'atribut packed" @@ -7087,7 +7082,7 @@ msgstr " Existeixen, per msgid "unrecognized gcc debugging option: %c" msgstr "opció de depuració de gcc no reconeguda: %c" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, c-format msgid "invalid option `%s'" msgstr "opció \"%s\" invàlida" @@ -7116,25 +7111,25 @@ msgstr "opcions passades: " msgid "options enabled: " msgstr "options activades: " -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, fuzzy, c-format msgid "can't open %s for writing: %m" msgstr "no es pot obrir obrir %s per a escriptura" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "" @@ -7189,7 +7184,7 @@ msgstr "-ffunction-sections podria afectar la depuraci msgid "error writing to %s: %m" msgstr "error a l'escriure a %s" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, fuzzy, c-format msgid "error closing %s: %m" msgstr "error al tancar %s" @@ -7251,34 +7246,34 @@ msgstr "la grand msgid "%Jsize of return value of '%D' is larger than %wd bytes" msgstr "la grandària del valor de devolució de \"%s\" és més gran que %d octets" -#: tree.c:3800 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "les matrius de funcions no tenen significat" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "el tipus de devolució d'una funció no pot ser una funció" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "assignador invàlid per a cadena de bits" -#: tree.c:4736 +#: tree.c:4737 #, 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:4749 +#: tree.c:4750 #, 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:4762 +#: tree.c:4763 #, 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" -#: tree.c:4774 +#: tree.c:4775 #, fuzzy, c-format msgid "tree check: accessed operand %d of %s with %d operands 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" @@ -7670,7 +7665,7 @@ msgstr "valor erroni \"%s\" per a l'interruptor -mfp-rounding-mode" msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "valor erroni \"%s\" per a l'interruptor -mfp-trap-mode" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "valor erroni \"%s\" per a l'interruptor -mtls-size" @@ -7721,24 +7716,24 @@ msgstr "valor %%H inv msgid "invalid %%J value" msgstr "valor %%J invàlid" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "valor %%r invàlid" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "valor %%R invàlid" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "valor %%N invàlid" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "valor %%P invàlid" @@ -7748,17 +7743,17 @@ msgstr "valor %%P inv msgid "invalid %%h value" msgstr "valor %%h invalíd" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "valor %%L invàlid" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "valor %%m invàlid" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "valor %%M invàlid" @@ -7769,7 +7764,7 @@ msgid "invalid %%U value" msgstr "valor %%U invalíd" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "valor %%s invalíd" @@ -7779,7 +7774,8 @@ msgstr "valor %%s inval msgid "invalid %%C value" msgstr "valor %%C invàlid" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "valor %%E invalíd" @@ -7788,7 +7784,7 @@ msgstr "valor %%E inval msgid "unknown relocation unspec" msgstr "reubicació unspec desconeguda" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "codi %%xn invalíd" @@ -7951,17 +7947,17 @@ msgstr "l'argument de l'atribut \"%s\" no 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:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, c-format msgid "invalid operand to %%R code" msgstr "operant invàlid per al codi %%R" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "operant invàlid per al codi %%H/%%L" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, c-format msgid "invalid operand to %%U code" msgstr "operant invàlid per al codi %%U" @@ -7972,7 +7968,7 @@ msgid "invalid operand to %%V code" msgstr "operant invàlid per al codi %%V" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "operant invàlid per al codi de sortida" @@ -7981,7 +7977,7 @@ msgstr "operant inv msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "l'interruptor -mcpu=%s genera conflictes amb el switch -march=" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "valor erroni (%s) per a l'interruptor %s" @@ -8065,12 +8061,12 @@ msgid "unable to use '%s' for PIC register" msgstr "no es pot usar \"%s\" per a registre PIC" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173 #, c-format msgid "`%s' attribute only applies to functions" msgstr "l'atribut \"%s\" nomès s'aplica a funcions" @@ -8085,7 +8081,7 @@ msgid "selector must be an immediate" msgstr "el se-lector deu ser un immediat" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "la màscara deu ser un immediat" @@ -9444,179 +9440,179 @@ msgstr "Generar instruccions char" msgid "Do not generate char instructions" msgstr "No generar instruccions char" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, 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:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 config/sparc/sparc.c:387 #, c-format msgid "bad value (%s) for -mcmodel= switch" msgstr "valor erroni (%s) per a l'interruptor -mcmodel=" -#: config/i386/i386.c:1195 +#: config/i386/i386.c:1204 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "valor erroni (%s) per a l'interruptor -masm=" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, 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:1201 +#: config/i386/i386.c:1210 msgid "code model `large' not supported yet" msgstr "el model de codi \"large\" not té suport" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "no està compilat el mode %i-bit" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 #, fuzzy msgid "CPU you selected does not support x86-64 instruction set" msgstr "el CPU objectiu no té suport les instruccions THUMB" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 config/iq2000/iq2000.c:1840 #, c-format msgid "bad value (%s) for -march= switch" msgstr "valor erroni (%s) per a l'interruptor -march=" -#: config/i386/i386.c:1248 +#: config/i386/i386.c:1260 #, fuzzy, c-format msgid "bad value (%s) for -mtune= switch" msgstr "valor erroni (%s) per a l'interruptor -mcpu=" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "-mregparm=%d no està entre 0 i %d" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "-malign-loops és obsolet, usi -falign-loops" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, 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:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "-malign-jumps és obsolet, usi -falign-jumps" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "-malign-functions és obsolet, usi -falign-functions" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, 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:1354 +#: config/i386/i386.c:1366 #, 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:1366 +#: config/i386/i386.c:1378 #, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "valor erroni (%s) per a l'interruptor -mtls-dialect=" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 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:1397 +#: config/i386/i386.c:1409 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:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 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:1435 +#: config/i386/i386.c:1447 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:1442 +#: config/i386/i386.c:1454 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "valor erroni (%s) per a l'interruptor -mfpmath=" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 #, fuzzy msgid "fastcall and stdcall attributes are not compatible" msgstr "-f%s i -msdata=%s són incompatibles" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 #, fuzzy msgid "fastcall and regparm attributes are not compatible" msgstr "-f%s i -msdata=%s són incompatibles" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "l'atribut \"%s\" requereix una constant entera com argument" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, 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:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "UNSPEC invàlid com operant" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "els registres estesos no tenen meitats superiors" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "grandària d'operant sense suport per al registre estès" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 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:7457 +#: config/i386/i386.c:7474 #, c-format msgid "invalid operand code `%c'" msgstr "codi d'operant \"%c\" invàlid" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 msgid "invalid constraints for operand" msgstr "restriccions invàlides per a l'operant" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 msgid "unknown insn mode" msgstr "mode insn desconegut" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 msgid "shift must be an immediate" msgstr "el desplaçament deu ser un immediat" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, fuzzy, c-format msgid "`%s' incompatible attribute ignored" msgstr "s'ignora l'atribut \"%s\"" @@ -9680,43 +9676,43 @@ msgstr "" msgid "%J'%D' causes a section type conflict" msgstr "%s causa un conflicte de tipus de secció" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "Usar la interfície Cygwin" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "Usar la interfície Mingw32" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "Crear una aplicació amb interfície gràfica d'usuari (GUI)" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "No establir les definicions de Windows" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "Establir les definicions de Windows" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "Crear una aplicació de consola" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "Generar codi per a una DLL" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "Ignorar dllimport per a funcions" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "Usar suport de fils específic de Mingw" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, 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ó)" @@ -9913,7 +9909,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "Codi de planificador per al CPU donat" @@ -10033,7 +10029,7 @@ msgstr "es van definir arquitectures en conflicte - usant les s 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:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "no es dóna suport a l'expressió del límit de la pila" @@ -10156,8 +10152,8 @@ msgstr "Presentar tipus com en el gcc v1.3 de Intel" 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:333 config/sparc/freebsd.h:80 config/sparc/linux.h:91 -#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "Usar long doubles de 64 bit" @@ -10193,42 +10189,42 @@ msgstr "l' msgid "%Jaddress area attribute cannot be specified for functions" msgstr "no es pot especificar un atribut d'àrea de dades per a variables locals" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "ia64_print_operand: codi desconegut" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 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:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "%s-%s és un rang buit" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 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:4726 +#: config/ia64/ia64.c:4729 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:4732 +#: config/ia64/ia64.c:4735 #, fuzzy msgid "cannot optimize square root 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:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "valor erroni (%s) per a l'interruptor -mtls-size=" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, fuzzy, c-format msgid "bad value (%s) for -tune= switch" msgstr "valor erroni (%s) per a l'interruptor -mcpu=" @@ -10367,7 +10363,7 @@ msgstr "gp_offset (%ld) o end_offset (%ld) msgid "argument `%d' is not a constant" msgstr "l'argument de \"asm\" no és una cadena constant" -#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "PRINT_OPERAND_ADDRESS, punter nul" @@ -10377,7 +10373,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "PRINT_OPERAND: puntuació desconeguda \"%c\"" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "PRINT_OPERAND punter nul" @@ -10386,7 +10382,7 @@ msgstr "PRINT_OPERAND punter nul" msgid "invalid %%P operand" msgstr "operand invàlid per a %%P" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "valor invàlid per a %%p" @@ -10447,90 +10443,90 @@ msgstr "valor erroni (%s) per a l'interruptor -msdata" msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 msgid "typename type `%#T' declared `friend'" msgstr "el tipus de nom de tipus \"%#T\" es va declarar \"friend\"" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 msgid "template parameter type `%T' declared `friend'" msgstr "el tipus de paràmetre de patró \"%T\" es va declarar \"friend\"" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 msgid "`%#T' is not a template" msgstr "\"%#T\" no és un patró" -#: cp/friend.c:277 +#: cp/friend.c:281 #, fuzzy msgid "`%D' is already a friend of `%T'" msgstr "\"%T\" ja és un friend de \"%T\"" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "\"%T\" ja és un friend de \"%T\"" -#: cp/friend.c:409 +#: cp/friend.c:413 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:465 +#: cp/friend.c:469 msgid "friend declaration `%#D' declares a non-template function" msgstr "la declaració friend \"%#D\" declara una funció que no és patró" -#: cp/friend.c:468 +#: cp/friend.c:472 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" @@ -15453,7 +15454,7 @@ msgstr "\"%T\" falla a ser un tipus agregat" msgid "type `%T' is of non-aggregate type" msgstr "el tipus \"%T\" és d'un tipus no agregat" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "el tipus qualificat \"%T\" no coincideix amb el nom del destructor \"~%T\"" @@ -15491,72 +15492,71 @@ msgstr "la grand msgid "zero size array reserves no space" msgstr "la matriu de grandària zero no reserva espai" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "new no pot ser aplicat a un tipus de referència" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "new no pot ser aplicat a una funcció de referència" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "cridada a constructor Java, mentre \"jclass\" està indefinit" -#: cp/init.c:1876 +#: cp/init.c:1877 msgid "can't find class$" msgstr "no es pot trobar class$" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "tipus \"void\" invàlid per a new" -#: cp/init.c:2013 +#: cp/init.c:2014 msgid "uninitialized const in `new' of `%#T'" msgstr "const sense inicialitzar en \"new\" de \"%#T\"" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "cridada a constructor Java amb \"%s\" sense definir" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "" + +#: cp/init.c:2083 msgid "request for member `%D' is ambiguous" msgstr "a petició per al membre \"%D\" és ambigua" -#: cp/init.c:2193 +#: cp/init.c:2203 msgid "ISO C++ forbids initialization in array new" msgstr "ISO C++ prohibeix la inicialització en la matriu new" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "el inicialitzador acaba prematurament" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "no es poden inicialitzar matrius multidimensionals amb el inicialitzador" -#: cp/init.c:2885 +#: cp/init.c:2895 msgid "possible problem detected in invocation of delete operator:" msgstr "" -#: cp/init.c:2888 -msgid "neither the destructor nor the class-specific " +#: cp/init.c:2898 +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: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 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "grandària de matriu desconeguda en delete" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "el tipus de vector delete no és del tipus punter ni matriu" @@ -15645,11 +15645,11 @@ msgstr "el membre const \"%#D\" que no 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ó" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 msgid "`%#D' used prior to declaration" msgstr "s'usa \"%#D\" previ a la declaració" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 msgid "redeclaration of `wchar_t' as `%T'" msgstr "redeclaración de \"wchar_t\" com \"%T\"" @@ -15659,241 +15659,241 @@ msgstr "redeclaraci #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 msgid "invalid redeclaration of `%D'" msgstr "redeclaración invàlida de \"%D\"" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "com \"%D\"" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 #, fuzzy msgid "type mismatch with previous external decl of `%#D'" msgstr "no coincideixen els tipus amb la declaració externa prèvia" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 msgid "previous external decl of `%#D'" msgstr "declaració externa prèvia de \"%#D\"" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 msgid "`%D' was previously implicitly declared to return `int'" msgstr "\"%D\" va ser declarat prèvia i implícitament per a retornar \"int\"" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 msgid "extern declaration of `%#D' doesn't match" msgstr "la declaració externa de \"%#D\" no coincideix" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 msgid "global declaration `%#D'" msgstr "amb la declaració global \"%#D\"" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 #, fuzzy msgid "declaration of '%#D' shadows a parameter" msgstr "la declaració de \"%#D\" enfosqueix un paràmetre" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 #, fuzzy msgid "declaration of '%D' shadows a member of 'this'" msgstr "la declaració de \"%s\" obscurece a un membre de \"this\"" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 #, fuzzy msgid "declaration of '%D' shadows a previous local" msgstr "la declaració de \"%#D\" enfosqueix un paràmetre" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 #, fuzzy msgid "declaration of '%D' shadows a global declaration" msgstr "la declaració de \"%#D\" enfosqueix un paràmetre" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "la recerca de nom de \"%D\" va cambiar" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr "" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr "" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 msgid " cannot use obsolete binding at `%D' because it has a destructor" msgstr "" -#: cp/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr "" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, fuzzy, c-format msgid "%s %s %p %d\n" msgstr "%s: %s: " -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 msgid "`%#D' hides constructor for `%#T'" msgstr "\"%#D\" amaga el destructor per a \"%#T\"" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "\"%#D\" causa conflicte amb la declaració prèvia en ús \"%#D\"" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 msgid "previous non-function declaration `%#D'" msgstr "la declaració prèvia \"%#D\" que no és funció" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 msgid "conflicts with function declaration `%#D'" msgstr "causa conflicte amb la declaració de la funció \"%#D\"" #. 7.3.3/5 #. A using-declaration shall not name a template-id. -#: cp/name-lookup.c:2101 +#: cp/name-lookup.c:2112 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/name-lookup.c:2107 +#: cp/name-lookup.c:2118 msgid "namespace `%D' not allowed in using-declaration" msgstr "no es permet l'espai de noms \"%D\" en la declaració d'ús" #. It's a nested name with template parameter dependent scope. #. This can only be using-declaration for class member. -#: cp/name-lookup.c:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "\"%T\" no és un nom d'espai" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 msgid "`%D' not declared" msgstr "no es va declarar \"%D\"" #. If the OLD_FN was really declared, the #. declarations don't match. -#: cp/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "\"%D\" ja es va declarar en aquest àmbit" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "l'ús de la declaració \"%D\" va introduir el tipus ambigu \"%T\"" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "\"%#D\" redeclarat com %C" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 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/name-lookup.c:2898 +#: cp/name-lookup.c:2909 #, fuzzy msgid "using-declaration cannot name destructor" msgstr "declaració d'ús per al destructor" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 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/name-lookup.c:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "\"%D\" deuria ser declarat dintre de \"%D\"" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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\"" #. The parser did not find it, so it's not there. -#: cp/name-lookup.c:3213 +#: cp/name-lookup.c:3224 msgid "unknown namespace `%D'" msgstr "espai de noms \"%D\" desconegut" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 msgid "namespace `%T' undeclared" msgstr "espai de noms \"%T\" sense declarar" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 #, fuzzy msgid "`%D' attribute directive ignored" msgstr "s'ignora la directiva d'atribut \"%s\"" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 msgid "use of `%D' is ambiguous" msgstr "l'ús de \"%D\" és ambigu" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr " declarat inicialment com \"%#D\" aquí" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr " també declarat com \"%#D\" aquí" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "\"%D\" denota un tipus ambigu" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 #, fuzzy msgid "%J first type here" msgstr " primer tipus aquí" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 #, fuzzy msgid "%J other type here" msgstr " altre tipus aquí" #. This happens for A::B where B is a template, and there are no #. template arguments. -#: cp/name-lookup.c:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 msgid "invalid use of `%D'" msgstr "ús invàlid de \"%D\"" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 msgid "`%D::%D' is not a template" msgstr "\"%D::%D\" no és un patró" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "\"%D\" no declarat en l'espai de noms \"%D\"" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 msgid "`%D' is not a function," msgstr "\"%D\" no és una funció," -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 msgid " conflict with `%D'" msgstr " té conflicte amb \"%D\"" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -15990,105 +15990,109 @@ msgstr "\"%D\" no es va declarar en aquest msgid "typedef-name `%D' used as destructor declarator" msgstr "l'identificador de patró \"%D\" s'usa com un declarador" -#: cp/parser.c:3635 +#: cp/parser.c:3638 #, fuzzy msgid "ISO C++ forbids compound-literals" msgstr "ISO C++ prohibeix literals composats" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4619 +#: cp/parser.c:4624 #, fuzzy msgid "expression in new-declarator must have integral or enumeration type" msgstr "la grandària de la matriu nova deu tenir un tipus integral" -#: cp/parser.c:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "ús de la conversió d'estil antic" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, c-format msgid "case label `%E' not within a switch statement" msgstr "l'etiqueta casi \"%E\" no es troba dintre d'una declaració switch" -#: cp/parser.c:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "ISO C++ prohibeix gotos calculats" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6640 +#: cp/parser.c:6645 #, fuzzy msgid "duplicate `friend'" msgstr "\"%s\" duplicat" -#: cp/parser.c:6789 +#: cp/parser.c:6794 #, fuzzy msgid "class definition may not be declared a friend" msgstr "la funció \"%D\" no pot ser declarada friend" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "" -#: cp/parser.c:7155 +#: cp/parser.c:7160 #, fuzzy msgid "anachronistic old-style base class initializer" msgstr "inicialitzador de classe base d'estil antic anacrònic" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 msgid "keyword `export' not implemented, and will be ignored" msgstr "la paraula clau \"export\" no està implementada, i serà ignorada" #. Otherwise, emit an error about the invalid digraph, but continue #. parsing because we got our argument list. -#: cp/parser.c:7908 +#: cp/parser.c:7923 #, fuzzy msgid "`<::' cannot begin a template-argument list" msgstr "l'objecte \"%E\" no es pot usar com un argument de patró" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 #, fuzzy msgid "non-template `%D' used as template" msgstr "s'usa un no-patró com patró" -#: cp/parser.c:8089 +#: cp/parser.c:8107 #, fuzzy -msgid "(use `%T::template %D' to indicate that it is a template)" +msgid "use `%T::template %D' to indicate that it is a template" msgstr "identificador de patró \"%D\" en la declaració del patró primari" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "usant \"typename\" fora de la plantilla" -#: cp/parser.c:9148 +#: cp/parser.c:9180 #, fuzzy msgid "expected type-name" msgstr "operant inesperat" -#: cp/parser.c:9207 +#: cp/parser.c:9239 #, fuzzy msgid "type attributes are honored only at type definition" msgstr "l'atribut \"%s\" sol es pot aplicar a definicions de classe" @@ -16096,86 +16100,91 @@ msgstr "l'atribut \"%s\" sol es pot aplicar a definicions de classe" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 #, fuzzy msgid "a template-id may not appear in a using-declaration" msgstr "no es permet l'espai de noms \"%D\" en la declaració d'ús" -#: cp/parser.c:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:9919 +#: cp/parser.c:9951 #, fuzzy msgid "attributes are not allowed on a function-definition" msgstr "la variable de registre global segueix a una definició de funció" -#: cp/parser.c:10052 +#: cp/parser.c:10084 #, fuzzy msgid "attributes after parenthesized initializer ignored" msgstr "atributs en el declarador de parametres de matriu ignorats" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +#, fuzzy +msgid "`%T::%D' is not a type" +msgstr "\"%D::%D\" no és un patró" + +#: cp/parser.c:11288 #, fuzzy msgid "file ends in default argument" msgstr "%Hlectura de final de fitxer dintre de l'argument per defecte" -#: cp/parser.c:11310 +#: cp/parser.c:11344 #, fuzzy msgid "deprecated use of default argument for parameter of non-function" msgstr "argument per omissió donat per al paràmetre %d de \"%#D\"" -#: cp/parser.c:11313 +#: cp/parser.c:11347 #, fuzzy msgid "default arguments are only permitted for function parameters" msgstr "argument per omissió donat per al paràmetre %d de \"%#D\"" -#: cp/parser.c:12043 +#: cp/parser.c:12078 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "declaració de \"%D\" en \"%D\" la qual no inclou a \"%D\"" -#: cp/parser.c:12056 +#: cp/parser.c:12091 #, fuzzy msgid "extra qualification ignored" msgstr "s'ignora la qualificació extra \"%T::\" en el membre \"%D\"" -#: cp/parser.c:12067 +#: cp/parser.c:12102 #, fuzzy msgid "an explicit specialization must be preceded by 'template <>'" msgstr "especialització explícita no precedida per \"template <>\"" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12399 +#: cp/parser.c:12434 #, fuzzy msgid "friend declaration does not name a class or function" msgstr "la declaració friend no està en una definició de classe" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12843 +#: cp/parser.c:12878 #, fuzzy msgid "keyword `typename' not allowed outside of templates" msgstr "usant \"typename\" fora de la plantilla" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" msgstr "" -#: cp/parser.c:13665 +#: cp/parser.c:13700 #, fuzzy msgid "reference to `%D' is ambiguous" msgstr "l'ús de \"%D\" és ambigu" -#: cp/parser.c:13839 +#: cp/parser.c:13874 #, fuzzy msgid "too few template-parameter-lists" msgstr "molt poques llistes de paràmetres de patró en la declaració de \"%D\"" @@ -16184,50 +16193,50 @@ msgstr "molt poques llistes de par #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 #, fuzzy msgid "too many template-parameter-lists" msgstr "massa llistes de paràmetres de patró en la declaració de \"%D\"" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 #, fuzzy msgid "invalid function declaration" msgstr "declarador invàlid" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 #, fuzzy msgid "named return values are no longer supported" msgstr "--driver ja no té suport" -#: cp/parser.c:14522 +#: cp/parser.c:14561 #, fuzzy msgid "`>>' should be `> >' within a nested template argument list" msgstr "\">>\" deu ser \"> >\" en el nom de classe del patró" #. If this is not a nested template argument list, the '>>' is #. a typo for '>'. Emit an error message and continue. -#: cp/parser.c:14530 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14535 +#: cp/parser.c:14574 #, fuzzy msgid "missing `>' to terminate the template argument list" msgstr "falta parèntesi dret en la llista de paràmetres de macro" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "es va usar la marca \"%s\" al nomenar a\"%#T\"" -#: cp/parser.c:15043 +#: cp/parser.c:15082 #, fuzzy msgid "%D redeclared with different access" msgstr "\"%#D\" redeclarat com un tipus diferent de símbol" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -16574,154 +16583,154 @@ msgstr "instanciaci msgid "%s %+#T" msgstr "%s %+#T" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "instanciació de \"%D\" com tipus \"%T\"" -#: cp/pt.c:6469 +#: cp/pt.c:6470 msgid "invalid parameter type `%T'" msgstr "tipus de paràmetre \"%T\" invàlid" -#: cp/pt.c:6471 +#: cp/pt.c:6472 msgid "in declaration `%D'" msgstr "en la declaració \"%D\"" -#: cp/pt.c:6545 +#: cp/pt.c:6546 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:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "creant la matriu amb grandària zero" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "creant la matriu amb grandària zero (\"%E\")" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "formant la referència a void" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "formant %s per a referenciar al tipus \"%T\"" -#: cp/pt.c:6976 +#: cp/pt.c:6977 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:6982 +#: cp/pt.c:6983 msgid "creating pointer to member reference type `%T'" msgstr "creant un punter al membre de referència de tipus \"%T\"" -#: cp/pt.c:7068 +#: cp/pt.c:7069 msgid "creating array of `%T'" msgstr "creant la matriu de \"%T\"" -#: cp/pt.c:7074 +#: cp/pt.c:7075 #, fuzzy msgid "creating array of `%T', which is an abstract class type" msgstr "inicialitzador sense nom per a \"%T\", el qual no té una classe base" -#: cp/pt.c:7118 +#: cp/pt.c:7119 msgid "`%T' is not a class, struct, or union type" msgstr "\"%T\" no és de tipus classe, struct o union" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "ús de \"%s\" en el patró" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, fuzzy, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "s'usa \"%D\" com un tipus, però no està definit com un tipus." -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, fuzzy, c-format msgid "say `typename %E' if a type is meant" msgstr " (usi \"typename %T::%D\" si això és el que volia)" -#: cp/pt.c:8609 +#: cp/pt.c:8613 #, fuzzy msgid "`%T' uses anonymous type" msgstr "l'argument de patró \"%T\" usa un tipus anònim" -#: cp/pt.c:8611 +#: cp/pt.c:8615 #, fuzzy msgid "`%T' uses local type `%T'" msgstr "l'argument de patró \"%T\" usa el tipus local \"%T\"" -#: cp/pt.c:8619 +#: cp/pt.c:8623 #, fuzzy msgid "`%T' is a variably modified type" msgstr "l'argument de patró \"%T\" és un tipus modificat variablement" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, fuzzy, c-format msgid "integral expression `%E' is not constant" msgstr "la grandària d'emmagatzematge de \"%D\" no és constant" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr " tractant d'instanciar \"%D\"" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "unificació de tipus incomplet" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "ús de \"%s\" en la unificació de tipus de patró" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "instanciació explícita de \"%#D\" que no és patró" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "no es troba una patró coincident per a \"%D\"" -#: cp/pt.c:10551 +#: cp/pt.c:10568 msgid "explicit instantiation of `%#D'" msgstr "instanciació explícita de \"%#D\"" -#: cp/pt.c:10588 +#: cp/pt.c:10605 msgid "duplicate explicit instantiation of `%#D'" msgstr "instanciació explícita duplicada de \"%#D\"" -#: cp/pt.c:10610 +#: cp/pt.c:10627 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:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" msgstr "classe d'emmagatzematge \"%D\" aplicada a la instanciació d'un patró" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "instanciació explícita del tipus \"%T\" del tipus no-patró" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" msgstr "instanciació explícita de \"%#T\" abans de la definició del patró" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, 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:10728 +#: cp/pt.c:10745 msgid "duplicate explicit instantiation of `%#T'" msgstr "instanciació explícita duplicada de \"%#T\"" -#: cp/pt.c:11109 +#: cp/pt.c:11126 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:11543 +#: cp/pt.c:11562 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ó" @@ -16895,7 +16904,7 @@ msgstr "m msgid "incomplete type `%T' used in nested name specifier" msgstr "el tipus incomplet \"%T\" no es pot utilitzar per a nomenar un àmbit" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 msgid "`%D' is not a member of `%T'" msgstr "\"%D\" no és un membre de \"%T\"" @@ -16940,243 +16949,243 @@ msgstr " \"%#D\" declarat aqu msgid "type of `%E' is unknown" msgstr "el tipus de \"%E\" és desconegut" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "non-lvalue dintre %s" -#: cp/tree.c:539 +#: cp/tree.c:532 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "els qualificadors \"%V\" no es poden aplicar a \"%T\"" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, 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:1857 +#: cp/tree.c:1850 #, 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:1863 +#: cp/tree.c:1856 #, 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:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "la init_priority sol·licitada no és una constant entera" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, 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:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "la init_priority sol·licitada està fora de rang" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "la init_priority sol·licitada està reservada per a ús intern" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, c-format msgid "`%s' attribute is not supported on this platform" msgstr "l'atribut \"%s\" no té suport en aquesta plataforma" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "revisió lang_*: va fallar en %s, en %s:%d" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 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:513 +#: cp/typeck.c:512 #, 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:563 +#: cp/typeck.c:562 #, fuzzy msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast" msgstr "%s entre diferents tipus de punter \"%T\" i \"%T\" manca d'una conversió" -#: cp/typeck.c:1235 +#: cp/typeck.c:1234 #, c-format msgid "invalid application of `%s' to a member function" msgstr "aplicació invàlida de \"%s\" a una funció membre" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, fuzzy, c-format msgid "invalid application of `%s' to a bit-field" msgstr "applicació invàlida de \"%s\" a un tipus void" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, fuzzy, c-format msgid "ISO C++ forbids applying `%s' to an expression of function type" msgstr "ISO C++ prohibeix l'aplicació de \"sizeof\" a una expressió de tipus de funció" -#: cp/typeck.c:1342 +#: cp/typeck.c:1308 #, fuzzy msgid "invalid use of non-static member function" msgstr "ús invàlid del membre \"%D\" en la funció membre static" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "conversió obsoleta d'una constant de cadena a \"%T\"" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 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:1610 +#: cp/typeck.c:1633 #, fuzzy, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "ús invàlid del camp no static \"%D\"" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 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:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 msgid "`%D::%D' is not a member of `%T'" msgstr "\"%D::%D\" no és un membre de \"%T\"" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 msgid "`%T' is not a base of `%T'" msgstr "\"%T\" no és una base de \"%T\"" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 msgid "'%D' has no member named '%E'" msgstr "\"%D\" no té un membre cridat \"%E\"" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 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:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "\"%T\" no és de tipus punter-a-objecte" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "ús invàlid de \"%s\" en punter a membre" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "argument de tipus invàlid" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "ISO C++ prohibeix el subindici d'una matriu de l-valors" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "es va declarar el subindici de la matriu com \"register\"" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, c-format msgid "object missing in use of `%E'" msgstr "falta un objecte en \"%E\"" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "ISO C++ prohibeix la cridada \"::main\" dintre del mateix programa" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, 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:2446 +#: cp/typeck.c:2469 #, c-format msgid "`%E' cannot be used as a function" msgstr "no es pot usar \"%E\" com una funció" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 msgid "too many arguments to %s `%+#D'" msgstr "massa arguments per a %s \"%+#D\"" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "en aquest punt en el fitxer" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 #, fuzzy msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "el paràmetre \"%s\" té tipus de dada incompleta" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 #, fuzzy msgid "parameter %P has incomplete type `%T'" msgstr "el paràmetre té tipus incomplet" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 msgid "too few arguments to %s `%+#D'" msgstr "molt pocs arguments per a %s \"%+#D\"" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 msgid "assuming cast to type `%T' from overloaded function" msgstr "assumint la conversió al tipus \"%T\" des de la funció sobrecarregada" -#: cp/typeck.c:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "divisió per zero en \"%E / 0\"" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "divisió per zero en \"%E / 0.\"" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, c-format msgid "division by zero in `%E %% 0'" msgstr "divisió per zero en \"%E %% 0\"" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "divisió per zero en \"%E %% 0.\"" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "el compte de rotació %s és negatiu" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "el compte de rotació %s >= amplària del tipus" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "ISO C++ prohibeix la comparança entre punters i enters" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 msgid "comparison between types `%#T' and `%#T'" msgstr "comparança entre els tipus \"%#T\" i \"%#T\"" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "comparança entre expressions enteres signed i unsigned" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "operadors invàlids de tipus \"%T\" i \"%T\" per al binari \"%O\"" @@ -17184,287 +17193,287 @@ msgstr "operadors inv #. 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:3418 +#: cp/typeck.c:3441 msgid "NULL used in arithmetic" msgstr "es va usar NULL en l'aritmètica" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 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:3483 +#: cp/typeck.c:3506 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:3485 +#: cp/typeck.c:3508 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:3497 +#: cp/typeck.c:3520 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:3553 +#: cp/typeck.c:3582 #, c-format msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id." msgstr "" -#: cp/typeck.c:3559 +#: cp/typeck.c:3588 #, c-format msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "prenent l'adreça del temporal" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "ISO C++ prohibeix %sing un enum" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 msgid "cannot %s a pointer to incomplete type `%T'" msgstr "no es pot %s un punter a un tipus incomplet \"%T\"" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 msgid "ISO C++ forbids %sing a pointer of type `%T'" msgstr "ISO C++ prohibeix %sing un punter de tipus \"%T\"" -#: cp/typeck.c:3858 +#: cp/typeck.c:3887 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:3892 +#: cp/typeck.c:3921 msgid "invalid use of `--' on bool variable `%D'" msgstr "ús invàlid de \"--\" en la variable booleana \"%D\"" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 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:3994 +#: cp/typeck.c:4027 #, 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++ 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:3999 +#: cp/typeck.c:4032 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:4027 +#: cp/typeck.c:4060 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:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 msgid "attempt to take address of bit-field structure member `%D'" msgstr "" -#: cp/typeck.c:4190 +#: cp/typeck.c:4227 msgid "taking address of destructor" msgstr "prenent l'adreça del destructor" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 msgid "taking address of bound pointer-to-member expression" msgstr "prenent l'adreça de l'expressió limitada punter-a-membre" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 msgid "cannot create pointer to reference member `%D'" msgstr "no es pot crear un punter al membre referència \"%D\"" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 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:4292 +#: cp/typeck.c:4330 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:4360 +#: cp/typeck.c:4398 #, fuzzy, c-format msgid "%s expression list treated as compound expression" msgstr "la llista d'inicialitzadors es tracta com una expressió compostada" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 #, fuzzy msgid "%s 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:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "static_cast invàlid del tipus \"%T\" al tipus \"%T\"" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 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:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "reinterpret_cast de \"%T\" a \"%T\" perd precisió" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 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:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "reinterpret_cast invàlid del tipus \"%T\" al tipus \"%T\"" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 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:4765 +#: cp/typeck.c:4813 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:4782 +#: cp/typeck.c:4830 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "const_cast invàlid del tipus \"%T\" al tipus \"%T\"" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 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:4835 +#: cp/typeck.c:4883 msgid "invalid cast to function type `%T'" msgstr "conversió invàlida al tipus de funció \"%T\"" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 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:4937 +#: cp/typeck.c:4985 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:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr " en l'avaluació de \"%Q(%#T, %#T)\"" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 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:5219 +#: cp/typeck.c:5267 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "tipus incompatible en l'assignació de \"%T\" a \"%T\"" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "ISO C++ prohibeix l'assignació de matrius" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr " en la conversió del punter a funció membre" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 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:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 #, fuzzy msgid "pointer to member cast via virtual base `%T'" msgstr "punter a la conversió membre a través de la base virtual \"%T\" de \"%T\"" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 #, fuzzy msgid "pointer to member conversion via virtual base `%T'" msgstr "punter a la conversió membre a través de la base virtual \"%T\" de \"%T\"" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 msgid "invalid conversion to type `%T' from type `%T'" msgstr "conversió invàlida del tipus \"%T\" a partir del tipus \"%T\"" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 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:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "%s al tipus \"%T\" que no és punter des de NULL" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 msgid "passing `%T' for %s %P of `%D'" msgstr "passant \"%T\" per a %s %P de \"%D\"" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "%s a \"%T\" des de \"%T\"" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 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:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "%s de valor negatiu `%I' a \"%T\"" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 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:5706 +#: cp/typeck.c:5754 msgid "cannot convert `%T' to `%T' in %s" msgstr "no es pot convertir \"%T\" a \"%T\" en %s" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 msgid "in passing argument %P of `%+D'" msgstr "en el pas de l'argument %P de \"%+D\"" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "retornant la referència al temporal" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "es va retornar una referència a un non-lvalue" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 msgid "reference to local variable `%D' returned" msgstr "es va retornar una referència a la variable local \"%D\"" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 msgid "address of local variable `%D' returned" msgstr "es va retornar l'adreça de la variable local \"%D\"" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "retornant un valor d'un constructor" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 #, fuzzy msgid "return-statement with no value, in function returning '%T'" msgstr "\"return\" sense valors, en una funció que retorna non-void" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 #, fuzzy msgid "return-statement with a value, in function returning 'void'" msgstr "\"return\" amb valor, en una funció que retorna void" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 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)" @@ -19103,12 +19112,12 @@ msgstr "" msgid "field initializer type mismatch" msgstr "" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, fuzzy, c-format msgid "can't create directory %s: %m" msgstr "no es pot obtenir el directori actual" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, fuzzy, c-format msgid "can't create %s: %m" msgstr "no és pot obrir %s" @@ -19187,260 +19196,323 @@ 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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2977 msgid "Constructor invocation must be first thing in a constructor" msgstr "" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr "" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" "%s" msgstr "" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "" @@ -19497,8 +19569,8 @@ msgstr "" msgid "cannot find protocol declaration for `%s'" msgstr "" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, c-format msgid "cannot find interface declaration for `%s'" msgstr "" @@ -19523,8 +19595,8 @@ msgstr "" msgid "`%s' is not an Objective-C class name or alias" msgstr "\"%T\" no és una classa o un espai de noms" -#: 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "" @@ -19538,7 +19610,7 @@ msgstr "" msgid "class `%s' already exists" msgstr "" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "\"%s\" redeclarat com un tipus diferent de símbol" @@ -19699,1584 +19771,1934 @@ msgstr "el tipus \"%T\" no t msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, c-format msgid "instance variable `%s' is %s; this will be a hard error in the future" msgstr "" -#: objc/objc-act.c:6546 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, c-format msgid "%s `%s' does not fully implement the `%s' protocol" msgstr "" -#: objc/objc-act.c:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "declaració prèvia de \"%s\"" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 #, fuzzy msgid "%J%s `%c%s'" msgstr "En %s \"%s\":" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, c-format msgid "no super class declared in interface for `%s'" msgstr "" -#: objc/objc-act.c:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 #, fuzzy msgid "Display this information" msgstr " --help Mostra aquesta informació\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 #, fuzzy msgid "Do not discard comments" msgstr "No desactivar registres d'espai" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 #, fuzzy msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "" " -G Col·locar les dades globals i estàtics més petits que \n" " octets en una secció especial (en alguns objectius)\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 #, fuzzy msgid "Print the name of header files as they are used" msgstr "Mostrar els noms de les unitats de programa mentre són compilades" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd 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 -#, fuzzy -msgid "Generate make dependencies" -msgstr "dependències dinàmiques.\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 #, fuzzy msgid "Generate make dependencies and compile" msgstr "Generar codi little endian" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -#, fuzzy -msgid "Generate phony targets for all headers" -msgstr "Generar codi com de Intel" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 #, fuzzy msgid "-O\tSet optimization level to " msgstr " -O[nombre] Establir el nivell d'optimització a [nombre]\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 #, fuzzy msgid "Optimize for space rather than speed" msgstr " -Os Optimitzar per a espai en lloc de velocitat\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 #, fuzzy msgid "Do not generate #line directives" msgstr "No generar directives .size" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "Avisar sobre la devolució d'estructures, unions o matrius" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:108 -msgid "Enable most warning messages" -msgstr "Activar gairebé tots els missatges d'avís" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:111 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "Avisar per funcions de conversió a tipus incompatibles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "Avisar sobre conversió de punters que incrementi l'alineació" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "Avisar sobre conversions que descarten calificators" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 #, fuzzy msgid "Warn about subscripts whose type is \"char\"" msgstr "Avisar sobre subindicis el tipus del qual és \"char\"" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "Avisar sobre la possibilitat de conversió de tipus confuses" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 #, fuzzy msgid "Warn when all constructors and destructors are private" msgstr "No avisar quan tots els ctors/dtors són privats" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 #, fuzzy msgid "Warn when a declaration is found after a statement" msgstr "Avisar quan una declaració no especifiqui un tipus" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -#, fuzzy -msgid "Warn about deprecated compiler features" -msgstr "No anunciar característiques obsoletes del compilador" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" +msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "Avisar sobre el ùs de declaracions __attribute__((deprecated))" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "Avisar quan es va desactivar un pas d'optimització" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 #, fuzzy msgid "Warn about compile-time integer division by zero" msgstr "No avisar sobre la divisió entera per zero en temps de compilació" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "Avisar violacions de regles d'estil de Effective C++" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "Tractar tots els avisos com errors" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 #, fuzzy msgid "Make implicit function declarations an error" msgstr "Avisar sobre la declaració implícita de funcions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 #, fuzzy msgid "Warn if testing floating point numbers for equality" msgstr "Avisar sobre l'equitat de proves de nombres de coma flotant" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 #, fuzzy msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "Avisar sobre anomalies de format de printf/scanf/strftime/strfmon" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 #, fuzzy msgid "Warn if passing too many arguments to a function for its format string" msgstr "massa arguments per a la funció \"va_start\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 #, fuzzy msgid "Warn about format strings that are not literals" msgstr "Avisar sobre l'ús de literals multicaràcters" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "Avisar sobre possibles problemes de seguretat amb funcions de format" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 #, fuzzy msgid "Warn about strftime formats yielding 2-digit years" msgstr "No avisar sobre formats de strftime que produeixen dos dígits per a l'any" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +#, fuzzy +msgid "Enable warnings about inter-procedural problems" +msgstr "Desactivar els avisos sobre problemes interprocedurals" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 msgid "Warn about implicit function declarations" msgstr "Avisar sobre la declaració implícita de funcions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 msgid "Warn when a declaration does not specify a type" msgstr "Avisar quan una declaració no especifiqui un tipus" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "Avisar quan una funció inline no pot ser inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 #, fuzzy msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "Avisar sobre l'ús de la directiva #import" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 #, fuzzy msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr " -Wlarger-than- Avisar si un objecte és més gran que octets\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 #, fuzzy msgid "Do not warn about using \"long long\" when -pedantic" msgstr "No avisar sobre l'ús de \"long long\" quan s'usi -pedantic" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 #, fuzzy msgid "Warn about suspicious declarations of \"main\"" msgstr "Avisar sobre declaracions sospitoses de main" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 msgid "Warn about possibly missing braces around initializers" msgstr "Avisar sobre possibles claus faltantes al voltant d'assignadorsº" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 #, fuzzy msgid "Warn about global functions without previous declarations" msgstr "Avisar sobre funcions globals sense declaracions prèvies" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 msgid "Warn about functions which might be candidates for format attributes" msgstr "Avisar per funcions que podrien ser candidates per a atributs de format" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 #, fuzzy msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "Avisar sobre funcions que podrien ser candidates per a l'atribut noreturn" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 #, fuzzy msgid "Warn about global functions without prototypes" msgstr "Avisar sobre funcions globals sense prototips" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 #, fuzzy msgid "Warn about use of multi-character character constants" msgstr "Avisar sobre l'ús de literals multicaràcters" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 #, fuzzy msgid "Warn about \"extern\" declarations not at file scope" msgstr "Avisar sobre externs que no estan en el nivell de l'abast del fitxer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 #, fuzzy msgid "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ó" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 #, fuzzy msgid "Warn about non-virtual destructors" msgstr "Avisar sobre destructors no virtuals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 #, fuzzy 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 #, fuzzy msgid "Warn if an old-style parameter definition is used" msgstr "Avisar quan no s'usi un paràmetre d'una funció" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "Avisar sobre noms de funcions virtual sobrecarregades" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 #, fuzzy msgid "Warn when padding is required to align structure members" msgstr "Avisar quan es requereix farcit per a alinear als membres d'un struct" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 #, fuzzy msgid "Warn about possibly missing parentheses" msgstr "Avisar sobre possibles parèntesis faltantes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 #, fuzzy msgid "Warn when converting the type of pointers to member functions" msgstr "avisar quan el tipus converteix punters a funcions membre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "Avisar sobre l'aritmètica de punters de funcions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 #, fuzzy msgid "Warn if inherited methods are unimplemented" msgstr "Avisar si es detecten comentaris niats" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "Avisar sobre declaracions múltiples del mateix objecte" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "Avisar quan el compilador reordeni codi" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 #, fuzzy msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)" msgstr "Avisar quan el tipus de devolució per defecte d'una funció canvia a int" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "Avisar sobre possibles violacions a les regles de seqüència de punt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "Avisar quan una variable local enfosque una altra" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 #, fuzzy msgid "Warn about signed-unsigned comparisons" msgstr "Avisar sobre comparances signed/unsigned" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "Avisar quan la sobrecàrrega promogui de unsigned a signed" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 #, fuzzy msgid "Warn about code which might break strict aliasing rules" msgstr "Avisar sobre codi que pugui trencar les regles estrictes d'aliessis" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 #, fuzzy msgid "Warn about unprototyped function declarations" msgstr "Avisar sobre declaracions de funció sense prototip" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "Avisar sobre constructors amb significats sorprenents" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 #, fuzzy msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "Avisar sobre interruptors enumerats que manquin d'un casi per defecte" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 msgid "Warn about all enumerated switches missing a specific case" msgstr "Avisar sobre tots els interruptors enumerats que manquin d'un casi específic" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "Avisar quan el comportament de síntesi difereixi de Cfront" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "No suprimir els avisos dels encapçalats del sistema" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 #, fuzzy msgid "Warn about features not present in traditional C" msgstr "es suggereix no usar #elif en C tradicional" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 #, fuzzy msgid "Warn if an undefined macro is used in an #if directive" msgstr "directiva # no definida o invàlida" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "Avisar sobre variables automàtiques sense iniciar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "Avisar sobre pragmas no reconeguts" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "Avisar sobre codi que mai s'executarà" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "Avisar quan no s'usi una funció" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "Avisar quan no s'usi una etiqueta" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "Avisar quan no s'usi un paràmetre d'una funció" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "Avisar quan no s'usi un valor d'una expressió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "Avisar quan no s'usi una variable" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 #, fuzzy msgid "-aux-info \tEmit declaration information into " msgstr " -aux-info Emetre la informació de declaracions en el \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 #, fuzzy msgid "-d\tEnable dumps from specific passes of the compiler" msgstr " -d[lletres] Activa els bolcats des de passos específics del compilador\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 #, fuzzy msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr " -dumpbase Nom base a usar per als bolcats des de passos específics\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 #, fuzzy msgid "Enforce class member access control semantics" msgstr "No obeir les semàntiques de control d'accés" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "Alinear l'inici de les funcions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "Alinear les etiquetes que solament s'arriben a saltant" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "Alinear totes les etiquetes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "Alinear l'inici dels cicles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "Canviar quan s'emetin les instàncies del patró" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 #, fuzzy msgid "Specify that arguments may alias each other and globals" msgstr "Especifica que els arguments poden ser alies de cada altre i dels globals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 #, fuzzy msgid "Assume arguments alias neither each other nor globals" msgstr "Assumir que els arguments no poden ser alies de globals o de cada altre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 #, fuzzy msgid "Recognize the \"asm\" keyword" msgstr "No reconèixer la paraula clau \"asm\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 #, fuzzy msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "Generar matrius de desembolico exactament en cada límit d'instrucció" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +#, fuzzy +msgid "Do not treat local variables 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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +#, fuzzy +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "Les barres invertides en constants de caràcter/hollerith no són especials (estil C)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "Esborrar els intrínsecs libU77 amb interfícies errònies" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "Desactivar els intrínsecs libU77 amb interfícies errònies" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +#, fuzzy +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "Desactivar els intrínsecs libU77 amb interfícies errònies" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "Amagar els intrínsecs libU77 amb interfícies errònies" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 msgid "Generate code to check bounds before indexing arrays" msgstr "Generar codi per a revisar els límits abans de matrius" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 #, fuzzy msgid "Replace add, compare, branch with branch on count register" msgstr "Reemplaçar add,compare,branch per branch en el compte de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "Usar la informació d'anàlisi de perfil per a les probabilitats de ramificació" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 #, fuzzy msgid "Recognize built-in functions" msgstr "No reconèixer cap funció interna" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 #, fuzzy msgid "-fcall-saved-\tMark as being preserved across functions" msgstr " -fcall-saved- Marca el com preservat entre funcions\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 #, fuzzy msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr " -fcall-used- Marca el com corrupte per a cridades de funció\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 #, fuzzy msgid "Save registers around function calls" msgstr "Permetre guardar registres al voltant de cridades de funció" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "Programa escrit estrictament amb majúscules i minúscules barrejades" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "Compilar com si el programa estigués escrit en minúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +#, fuzzy +msgid "Preserve case used in program" +msgstr "Preservar tot el lletrejo (majúscules/minúscules) usat en el programa" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "Programa escrit en minúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "Programa escrit en majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "Compilar com si el programa estigués escrit en majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "Revisar el valor de retorn de new" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "No posar globals sense iniciar en la secció comuna" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 #, fuzzy msgid "Allow the arguments of the '?' operator to have different types" msgstr "els operants de ?: tenen tipus diferents" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 #, fuzzy msgid "Reduce the size of object files" msgstr "Reduir la grandària dels fitxers objecte" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 #, fuzzy msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "Fer que les cadenes literals siguin \"char[]\" en lloc de \"const char[]\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 #, fuzzy msgid "Perform a register copy-propagation optimization pass" msgstr "Fer el pas d'optimització de còpia-propagació de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "Realitzar optimitzacions de salts creuats" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "Quan s'estigui executant CSE, seguir als salts als seus objectius" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "Quan s'estigui executant CSE, seguir als salts condicionals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 #, fuzzy msgid "Place data items into their own section" msgstr "col·locar els elements de dades en la seva pròpia secció" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "Emetre informació especial de depuració per a COMMON i EQUIVALENCE (desactivat)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 #, fuzzy msgid "Inline member functions by default" msgstr "No fer inline per omissió a les funcions membre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "Diferir l'extracció d'arguments de funcions de la pila fins més tard" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "Intentar emplenar les ranures de retard de les instruccions de ramificació" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "Esborrar les revisions de punters nuls sense ús" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 #, 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 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +#, fuzzy +msgid "Allow '$' in symbol names" +msgstr "Permetre $ en els noms de símbols" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 #, fuzzy msgid "Permit '$' as an identifier character" msgstr "el format és una cadena de caràcter ampla" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 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ó" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "Realitzar l'eliminació de DWARF2 duplicats" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "Fa que el front emuli aritmètica COMPLEX per a evitar errors" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 #, fuzzy msgid "Generate code to check exception specifications" msgstr "No generar codi per a revisar excepcions d'especificacions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "Activar el maneig d'excepcions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "Realitzar un nombre menor d'optimitzacions costoses" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +#, fuzzy +msgid "f2c-compatible code can be generated" +msgstr "No es necessita generar codi compatible amb f2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que f2c suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que f2c suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que f2c suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que f2c suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +#, fuzzy +msgid "Unsupported; generate libf2c-calling code" +msgstr "Sense suport; no genera codi de cridada a libf2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "El programa està escrit en el dialecte típic FORTRAN 66" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +#, fuzzy +msgid "Program is written in typical Unix-f77 dialect" +msgstr "El programa està escrit en el dialecte típic Unix f77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "El programa en un dialecte proper a Fortran-90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que F90 suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que F90 suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que F90 suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que F90 suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 #, fuzzy msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr " -ffixed- Marca el com no disponible per al compilador\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +#, fuzzy +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr " -finline-limit= Limita la grandària de funcions inline a \n" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +#, fuzzy +msgid "Unsupported; affects code generation of arrays" +msgstr "Sense suport; afecta la generació de codi de les matrius" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "No guardar floats en els registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 #, fuzzy msgid "Scope of for-init-statement variables is local to the loop" msgstr "L'àmbit de les variables de la declaració d'inici de for s'estén cap a fora" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 #, fuzzy msgid "Copy memory address constants into registers before use" msgstr "Copiar les constants d'adreces de memòria en registres abans d'usar-los" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 #, fuzzy msgid "Copy memory operands into registers before use" msgstr "Copiar els operants de memòria en registres abans d'usar-los" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "Generar codi per a revisar els límits de subíndicis i subcadenes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "El programa està escrit en una forma lliure propera a Fortran-90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 #, fuzzy msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "Assumir que podrien no existir les biblioteques estàndard i main" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "Permetre que les adreces de les funcions es conserven en registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 #, fuzzy msgid "Place each function into its own section" msgstr "col·locar cada funció en la seva pròpia secció" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 #, fuzzy msgid "Perform global common subexpression elimination" msgstr "Realitzar l'eliminació de subexpressions comuns globals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 #, fuzzy msgid "Perform redundant load after store elimination in global common subexpression elimination" msgstr "Realitzar el moviment de càrrega millorada durant l'eliminació de subexpressions globals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 #, fuzzy msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "Realitzar el moviment de càrrega millorada durant l'eliminació de subexpressions globals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 #, fuzzy msgid "Perform store motion after global common subexpression elimination" msgstr "Realitzar el moviment de guardat després de l'eliminació de subexpressions globals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +#, fuzzy +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "Desactivar els diagnòstics fatals sobre problemes interprocedurals" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que g77 suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que g77 suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +#, fuzzy +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que g77 suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que g77 suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 #, fuzzy msgid "Recognize GNU-defined keywords" msgstr "No reconèixer les paraules claus definides per GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 #, fuzzy msgid "Enable guessing of branch probabilities" msgstr "Activar la predicció de probabilitats de ramificació" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "Assumir l'ambient normal d'execució C" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "Activar el suport per a objectes enormes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "Processar directives #ident" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "Realitzar la conversió de salts condicionals a execució condicional" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "Exportar funcions encara si poden ser inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 #, fuzzy msgid "Emit implicit instantiations of inline templates" msgstr "Emetre solament instanciacions explícites de patrons inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 #, fuzzy msgid "Emit implicit instantiations of templates" msgstr "Emetre solament instanciacions explícites de patrons inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr "No generar directives .size" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" +msgstr "Inicialitza les variables locals i matrius a zero" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 #, fuzzy msgid "Pay attention to the \"inline\" keyword" msgstr "Parar esment a la paraula clau \"inline\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" -msgstr "Integrar les funcions simples en els seus invocators" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 #, fuzzy msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr " -finline-limit= Limita la grandària de funcions inline a \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 #, fuzzy msgid "Instrument function entry and exit with profiling calls" msgstr "Instrumentar funcions entrada/sortida amb cridades d'anàlisi de perfil" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "Lletres d'intrínsecs amb majúscules/minúscules indistintes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "Intrínsecs lletrejats com p.e. SqRt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +#, fuzzy +msgid "Intrinsics in lowercase" +msgstr "Intrínsecs en majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "Intrínsecs en majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 #, fuzzy msgid "Generate code for functions even if they are fully inlined" msgstr "Generar codi per a les funcions encara si estan completament inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "Emetre variables static const encara si no s'usen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 #, fuzzy msgid "Give external symbols a leading underscore" msgstr "Els símbols externs tenen un subratllat inicial" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 #, fuzzy msgid "Perform loop optimizations" msgstr "Realitzar les optimitzacions de cicle" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "Paraules claus del llenguatge amb majúscules/minúscules indistintes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "Paraules claus del llenguatge lletrejades com p.e. IOStat" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +#, fuzzy +msgid "Language keywords in lowercase" +msgstr "Paraules claus del llenguatge en majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "Paraules claus del llenguatge en majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "Establir errno després de les funcions matemàtiques internes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 #, fuzzy msgid "Report on permanent memory allocation" msgstr "Reportar l'allotjament en memòria permanent al final de l'execució" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "Intentar barrejar constants idèntiques i variables constants" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "Intentar barrejar constants idèntiques a través de les unitats de compilació" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 #, fuzzy msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr " -fmessage-length= Limita la longitud dels missatges de diagnòstic a caràcters per línia. 0 suprimeix el cort de línia\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "Esborrar els intrínsecs MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "Desactivar els intrínsecs MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +#, fuzzy +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "Desactivar els intrínsecs MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "Amagar els intrínsecs MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "Forçar que totes les computacions invariantes del cicle siguin fora del cicle" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 #, fuzzy msgid "Don't warn about uses of Microsoft extensions" msgstr "No avisar pedantment sobre els usos d'extensions Microsoft" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 #, fuzzy msgid "Use graph-coloring register allocation" msgstr "Utilitzar coloració de grafes per a l'allotjament de registres." -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "Suport per a excepcions síncrones no de cridades" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "Realitzar el desenrollament del cicle per a tots els cicles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "Realitzar el desenrollament del cicle quan es coneix el compte d'iteració" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "Quan sigui possible no generar marcs de pila" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "Prendre almenys un viatge a través de cada cicle DO iteratiu" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 #, fuzzy msgid "Do the full register move optimization pass" msgstr "Fa el pas complet d'optimització de moviment de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "Optimitzar les cridades recursives germanades i d'extrem" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +#, fuzzy +msgid "Enable optimization of static class initialization code" +msgstr "(es requereix una inicialització fora de la classe)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 #, fuzzy msgid "Enable optional diagnostics" msgstr "Desactivar els diagnòstics opcionals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "Empaqueta junts als membres de l'estructura sense forats" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 #, fuzzy msgid "Return small aggregates in memory, not registers" msgstr "Retornar els agregats \"short\" en memòria, no en registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 #, fuzzy msgid "Perform loop peeling" msgstr "Realitzar les optimitzacions de cicle" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "Activar les optimitzacions de forats específiques de la màquina" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 #, fuzzy msgid "Enable an RTL peephole pass before sched2" msgstr "Activa una execució de passada de forats rtl abans de sched2" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "Degradar els errors de concordança a advertiments" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 #, fuzzy msgid "Generate position-independent code if possible" msgstr "Generar codi independent de posició, si és possible" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 #, fuzzy msgid "Generate position-independent code for executables if possible" msgstr "Generar codi independent de posició, si és possible" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "Generar instruccions de precarregament, si estan disponibles, per a matrius en cicles" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "Activar el codi bàsic d'anàlisi de perfil del programa" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 #, fuzzy msgid "Insert arc-based program profiling code" msgstr "Inserir codi d'anàlisi de perfil basat en el programa arc" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "Enfortir la reducció de totes les variables generals d'inducció de cicle" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 #, fuzzy msgid "Return small aggregates in registers" msgstr "Retornar els agregats \"short\" en registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "Permet una optimització de moviment de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 #, fuzzy msgid "Perform a register renaming optimization pass" msgstr "Fer el pas d'optimització de renomenació de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "Reordenar els blocs bàsics per a millorar la ubicació del codi" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "Reordenar les funcions per a millorar la ubicació del codi" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "Activar l'instanciació automàtica de patrons" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 #, fuzzy msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "Executar un pas CSE abans de les optimitzacions de cicles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "Executar el optimizador de cicles dues vegades" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 #, fuzzy msgid "Generate run time type descriptor information" msgstr "No generar informació del tipus de descriptor en temps d'execució" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "Activar la calendarització entre blocs bàsics" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "Permetre el moviment especulatiu de cap càrrega" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "Permetre el moviment especulatiu d'unes càrregues" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "Permetre el moviment especulatiu de més càrregues" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 #, fuzzy msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr " -fsched-verbose= Estableix el nivell de detall del calendaritzador\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "Recalendaritzar les instruccions abans de l'allotjament de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "Recalendaritzar les instruccions després de l'allotjament de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +#, fuzzy +msgid "Allow appending a second underscore to externals" +msgstr "Mai agregar un segon subratllat als externs" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "Marcar dades com compartits en lloc de privats" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "Usar la mateixa grandària per a double que per a float" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 #, fuzzy msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "Fer de costat el tipus sota wchar_t per \"unsigned short\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 #, fuzzy msgid "Make \"char\" signed by default" msgstr "Fer que \"char\" sigui signed per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +#, fuzzy +msgid "Do not print names of program units as they are compiled" +msgstr "Mostrar els noms de les unitats de programa mentre són compilades" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 #, fuzzy msgid "Convert floating point constants to single precision constants" msgstr "Convertir constants de coma flotant a constants de precisió simple" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +#, fuzzy +msgid "Internally convert most source to lowercase" +msgstr "Convertir internament gairebé tot el codi a majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "Preservar internament les majúscules i minúscules del codi font" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "Convertir internament gairebé tot el codi a majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "Insereix codi de revisió de la pila en el programa" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "Mostrar les estadístiques acumulades durant la compilació" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "Realitzar optimitzacions de reducció de força" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "Assumir que s'apliquen les regles estrictes d'alies" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "Noms de símbol lletrejats amb majúscules/minúscules barrejades" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "Noms de símbol en minúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "Noms de símbol en majúscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "Buscar errors de sintaxi, i aleshores detenir-se" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 #, fuzzy msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "Especificar la profunditat màxima d'instanciació de patrons" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 #, fuzzy msgid "Create data files needed by \"gcov\"" msgstr "Crear fitxers de dades necessàries per a gcov" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "Realitzar optimitzacions de filat de salts" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 #, fuzzy msgid "Report the time taken by each compiler pass" msgstr "Reportar el temps pres per cada pas del compilador al final de l'execució" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 #, fuzzy msgid "Assume floating-point operations can trap" msgstr "Les operacions de coma flotant poden capturar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 #, fuzzy msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "Atrapar desbordaments signed en addició / substracció / multiplicació" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "Fer que no tinguin tipus les constants amb prefix-radical que no és decimal" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +#, fuzzy +msgid "Allow all ugly features" +msgstr "Desactiva totes les característiques lletjes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +#, fuzzy +msgid "Hollerith and typeless can be passed as arguments" +msgstr "No es passen les constants Hollerith i sense tipus com arguments" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "Permet la còpia ordinària de variables ASSIGN'ed" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "La matriu faltament dimensionada a (1) és de grandària assumida" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "Coma al final de la cridada al procediment denota un argument null" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "Permet que REAL(Z) i AIMAG(Z) rebin DOUBLE COMPLEX Z" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +#, fuzzy +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "L'inicialització a través de DATA i PARAMETER és de tipus compatible" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "Permet l'intercanvi entre INTEGER i LOGICAL" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +#, fuzzy +msgid "Append underscores to externals" +msgstr "Mai agregar un segon subratllat als externs" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 #, fuzzy msgid "Compile whole compilation unit at a time" msgstr "Buidar la unitat de traducció completa a un fitxer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "Esborrar els intrínsecs libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "Desactivar els intrínsecs libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +#, fuzzy +msgid "Enable libU77 intrinsics" +msgstr "Desactivar els intrínsecs libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "Amagar els intrínsecs libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 #, fuzzy msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "Permetre optimitzacions matemàtiques que poden violar els estàndards IEEE o ANSI" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 #, fuzzy msgid "Make \"char\" unsigned by default" msgstr "Fer que \"char\" sigui unsigned per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 #, fuzzy msgid "Perform loop unswitching" msgstr "Realitzar les optimitzacions de cicle" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "Només generar matrius de desembolico per a maneig d'excepcions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "Usar __cxa_atexit per a registrar destructors" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "Agregar comentaris extra a la sortida del ensemblador" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +#, fuzzy +msgid "Print g77-specific version information and run internal tests" +msgstr "Imprimeix informació de la versió específica del compilador g77, executa proves internes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 #, fuzzy msgid "Use expression value profiles in optimizations" msgstr "Activar les optimitzacions del enllaçador" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "Descartar funcions virtual sense usar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "Implementar vtables usant thunks" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "El programa està escrit en VXT (com Digital) FORTRAN" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "Emetre símbols comuns com símbols febles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "Guardar les cadenes en la secció de dades modificables" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "Emetre informació de referència creuada" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +#, fuzzy +msgid "Print internal debugging-related information" +msgstr "Mostra la informació interna relacionada amb la depuració" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "Posar dades inicialitzades a zero en la secció bss" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "Tractar els valors inicials de 0 com valors que no són zero" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 #, fuzzy msgid "Generate debug information in default format" msgstr "Generar informació de depuració en el format per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 #, fuzzy msgid "Generate debug information in COFF format" msgstr "Generar informació de depuració en el format per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 #, fuzzy msgid "Generate debug information in DWARF v2 format" msgstr "Generar informació de depuració en el format per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 #, fuzzy msgid "Dump declarations to a .decl file" msgstr "la declaració no declara res" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 #, fuzzy msgid "Generate debug information in default extended format" msgstr "Generar informació de depuració en el format estès per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 #, fuzzy msgid "Generate debug information in STABS format" msgstr "Generar informació de depuració en el format per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 #, fuzzy msgid "Generate debug information in extended STABS format" msgstr "Generar informació de depuració en el format estès per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 #, fuzzy msgid "Generate debug information in VMS format" msgstr "Generar informació de depuració en el format per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 #, fuzzy msgid "Generate debug information in XCOFF format" msgstr "Generar informació de depuració en el format per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 #, fuzzy msgid "Generate debug information in extended XCOFF format" msgstr "Generar informació de depuració en el format estès per omissió" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 #, fuzzy msgid "-o \tPlace output into " msgstr " -o Situar la sortida en el \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 #, fuzzy msgid "Enable function profiling" msgstr "anàlisi de perfil de les funcions mips16" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 #, fuzzy msgid "Issue warnings needed for strict compliance to the standard" msgstr " -pedantic Activar els avisos necessaris per a complir estrictament amb ISO C\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 msgid "Generate C header of platform-specific features" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 #, fuzzy msgid "Do not display functions compiled or elapsed time" msgstr " -quiet No mostrar les funcions compilades o el temps transcorregut\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 #, fuzzy msgid "Remap file names when including files" msgstr "nom de fitxer buit en #%s" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 #, fuzzy msgid "Enable traditional preprocessing" msgstr "Habilitar la prova de la pila" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 #, fuzzy msgid "Enable verbose output" msgstr "Activar la sortida de depuració" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -#, fuzzy -msgid "Display the compiler's version" -msgstr " -version Mostra la versió del compilador\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 msgid "Suppress warnings" msgstr "" -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "" @@ -21290,7 +21712,7 @@ msgstr "GNU C no d msgid "GCC does not support -CC without using -E" msgstr "GNU C no dóna suport a -CC sense usar -E" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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" @@ -22122,6 +22544,9 @@ msgstr "" #~ msgid "Consider all mem refs to static data to be volatile" #~ msgstr "Considerar totes les referències a dades static com volatile" +#~ msgid "Integrate simple functions into their callers" +#~ msgstr "Integrar les funcions simples en els seus invocators" + #~ msgid "Output GNU ld formatted global initializers" #~ msgstr "Obtenir iniciators globals amb format per a ld de GNU" @@ -22152,6 +22577,9 @@ msgstr "" #~ msgid "Use the smallest fitting integer to hold enums" #~ msgstr "Usar l'enter adequat més petit per a contenir enumerats" +#~ msgid "Enable most warning messages" +#~ msgstr "Activar gairebé tots els missatges d'avís" + #~ msgid "Don't warn about too many arguments to format functions" #~ msgstr "No avisar sobre massa arguments per a les funcions de format" @@ -22182,6 +22610,9 @@ msgstr "" #~ msgid " -p Enable function profiling\n" #~ msgstr " -p Activar l'anàlisi de perfil de funcions\n" +#~ msgid " -version Display the compiler's version\n" +#~ msgstr " -version Mostra la versió del compilador\n" + #~ msgid "" #~ "\n" #~ "Language specific options:\n" @@ -22791,234 +23222,24 @@ msgstr "" #~ msgid "Warn when a function is declared extern, then inline" #~ msgstr "Avisar quan una funció és declarada extern i després inline" +#~ msgid "Don't announce deprecation of compiler features" +#~ msgstr "No anunciar característiques obsoletes del compilador" + #~ msgid "directory name must immediately follow -I" #~ msgstr "el nom del directori deu seguir immediatament a -I" #~ msgid "ignoring pragma: %s" #~ msgstr "ignorant el pragma: %s" -#~ msgid "Print g77-specific compiler version info, run internal tests" -#~ msgstr "Imprimeix informació de la versió específica del compilador g77, executa proves internes" - -#~ msgid "Program is written in typical FORTRAN 66 dialect" -#~ msgstr "El programa està escrit en el dialecte típic FORTRAN 66" - -#~ msgid "Program is written in typical Unix f77 dialect" -#~ msgstr "El programa està escrit en el dialecte típic Unix f77" - #~ msgid "Program does not use Unix-f77 dialectal features" #~ msgstr "El programa no utilitza les característiques del dialecte Unix-f77" -#~ msgid "Program is written in Fortran-90-ish dialect" -#~ msgstr "El programa en un dialecte proper a Fortran-90" - -#~ 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" - -#~ msgid "Allow $ in symbol names" -#~ msgstr "Permetre $ en els noms de símbols" - -#~ msgid "f2c-compatible code need not be generated" -#~ msgstr "No es necessita generar codi compatible amb f2c" - -#~ msgid "Unsupported; do not generate libf2c-calling code" -#~ msgstr "Sense suport; no genera codi de cridada a libf2c" - -#~ msgid "Unsupported; affects code-generation of arrays" -#~ msgstr "Sense suport; afecta la generació de codi de les matrius" - -#~ msgid "Program is written in Fortran-90-ish free form" -#~ msgstr "El programa està escrit en una forma lliure propera a Fortran-90" - -#~ 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" - -#~ msgid "Program is written in VXT (Digital-like) FORTRAN" -#~ msgstr "El programa està escrit en VXT (com Digital) FORTRAN" - -#~ msgid "Disallow all ugly features" -#~ msgstr "Desactiva totes les característiques lletjes" - -#~ msgid "Hollerith and typeless constants not passed as arguments" -#~ msgstr "No es passen les constants Hollerith i sense tipus com arguments" - -#~ msgid "Allow ordinary copying of ASSIGN'ed vars" -#~ msgstr "Permet la còpia ordinària de variables ASSIGN'ed" - -#~ msgid "Dummy array dimensioned to (1) is assumed-size" -#~ msgstr "La matriu faltament dimensionada a (1) és de grandària assumida" - -#~ msgid "Trailing comma in procedure call denotes null argument" -#~ msgstr "Coma al final de la cridada al procediment denota un argument null" - -#~ msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" -#~ msgstr "Permet que REAL(Z) i AIMAG(Z) rebin DOUBLE COMPLEX Z" - -#~ msgid "Initialization via DATA and PARAMETER is type-compatible" -#~ msgstr "L'inicialització a través de DATA i PARAMETER és de tipus compatible" - -#~ msgid "Allow INTEGER and LOGICAL interchangeability" -#~ msgstr "Permet l'intercanvi entre INTEGER i LOGICAL" - -#~ msgid "Print internal debugging-related info" -#~ msgstr "Mostra la informació interna relacionada amb la depuració" - -#~ msgid "Initialize local vars and arrays to zero" -#~ msgstr "Inicialitza les variables locals i matrius a zero" - -#~ 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)" - -#~ msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" -#~ msgstr "Fa que el front emuli aritmètica COMPLEX per a evitar errors" - #~ msgid "Disable the appending of underscores to externals" #~ msgstr "Desactiva l'agregació de subratllats als externs" -#~ msgid "Never append a second underscore to externals" -#~ msgstr "Mai agregar un segon subratllat als externs" - -#~ msgid "Intrinsics spelled as e.g. SqRt" -#~ msgstr "Intrínsecs lletrejats com p.e. SqRt" - -#~ msgid "Intrinsics in uppercase" -#~ msgstr "Intrínsecs en majúscules" - -#~ msgid "Intrinsics letters in arbitrary cases" -#~ msgstr "Lletres d'intrínsecs amb majúscules/minúscules indistintes" - -#~ msgid "Language keywords spelled as e.g. IOStat" -#~ msgstr "Paraules claus del llenguatge lletrejades com p.e. IOStat" - -#~ msgid "Language keywords in uppercase" -#~ msgstr "Paraules claus del llenguatge en majúscules" - -#~ msgid "Language keyword letters in arbitrary cases" -#~ msgstr "Paraules claus del llenguatge amb majúscules/minúscules indistintes" - -#~ msgid "Internally convert most source to uppercase" -#~ msgstr "Convertir internament gairebé tot el codi a majúscules" - -#~ msgid "Internally preserve source case" -#~ msgstr "Preservar internament les majúscules i minúscules del codi font" - -#~ msgid "Symbol names spelled in mixed case" -#~ msgstr "Noms de símbol lletrejats amb majúscules/minúscules barrejades" - -#~ msgid "Symbol names in uppercase" -#~ msgstr "Noms de símbol en majúscules" - -#~ msgid "Symbol names in lowercase" -#~ msgstr "Noms de símbol en minúscules" - -#~ msgid "Program written in uppercase" -#~ msgstr "Programa escrit en majúscules" - -#~ msgid "Program written in lowercase" -#~ msgstr "Programa escrit en minúscules" - -#~ msgid "Program written in strict mixed-case" -#~ msgstr "Programa escrit estrictament amb majúscules i minúscules barrejades" - -#~ msgid "Compile as if program written in uppercase" -#~ msgstr "Compilar com si el programa estigués escrit en majúscules" - -#~ msgid "Compile as if program written in lowercase" -#~ msgstr "Compilar com si el programa estigués escrit en minúscules" - -#~ msgid "Preserve all spelling (case) used in program" -#~ msgstr "Preservar tot el lletrejo (majúscules/minúscules) usat en el programa" - -#~ msgid "Delete libU77 intrinsics with bad interfaces" -#~ msgstr "Esborrar els intrínsecs libU77 amb interfícies errònies" - -#~ msgid "Disable libU77 intrinsics with bad interfaces" -#~ msgstr "Desactivar els intrínsecs libU77 amb interfícies errònies" - -#~ msgid "Hide libU77 intrinsics with bad interfaces" -#~ msgstr "Amagar els intrínsecs libU77 amb interfícies errònies" - -#~ msgid "Delete non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que f2c suporta" - -#~ msgid "Disable non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que f2c suporta" - -#~ msgid "Hide non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que f2c suporta" - -#~ msgid "Delete non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que F90 suporta" - -#~ msgid "Disable non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que F90 suporta" - -#~ msgid "Hide non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que F90 suporta" - -#~ msgid "Delete non-FORTRAN-77 intrinsics g77 supports" -#~ msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que g77 suporta" - -#~ msgid "Disable non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que g77 suporta" - -#~ msgid "Hide non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que g77 suporta" - -#~ msgid "Delete MIL-STD 1753 intrinsics" -#~ msgstr "Esborrar els intrínsecs MIL-STD 1753" - -#~ msgid "Disable MIL-STD 1753 intrinsics" -#~ msgstr "Desactivar els intrínsecs MIL-STD 1753" - -#~ msgid "Hide MIL-STD 1753 intrinsics" -#~ msgstr "Amagar els intrínsecs MIL-STD 1753" - -#~ msgid "Delete libU77 intrinsics" -#~ msgstr "Esborrar els intrínsecs libU77" - -#~ msgid "Disable libU77 intrinsics" -#~ msgstr "Desactivar els intrínsecs libU77" - -#~ msgid "Hide libU77 intrinsics" -#~ msgstr "Amagar els intrínsecs libU77" - -#~ msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta" - -#~ msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta" - -#~ msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta" - -#~ msgid "Treat initial values of 0 like non-zero values" -#~ msgstr "Tractar els valors inicials de 0 com valors que no són zero" - -#~ msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" -#~ msgstr "Emetre informació especial de depuració per a COMMON i EQUIVALENCE (desactivat)" - -#~ msgid "Take at least one trip through each iterative DO loop" -#~ msgstr "Prendre almenys un viatge a través de cada cicle DO iteratiu" - -#~ msgid "Disable fatal diagnostics about inter-procedural problems" -#~ msgstr "Desactivar els diagnòstics fatals sobre problemes interprocedurals" - -#~ msgid "Make prefix-radix non-decimal constants be typeless" -#~ msgstr "Fer que no tinguin tipus les constants amb prefix-radical que no és decimal" - -#~ msgid "Generate code to check subscript and substring bounds" -#~ msgstr "Generar codi per a revisar els límits de subíndicis i subcadenes" - #~ msgid "Fortran-specific form of -fbounds-check" #~ msgstr "Forma específica de Fortran de -fbounds-check" -#~ msgid "Disable warnings about inter-procedural problems" -#~ msgstr "Desactivar els avisos sobre problemes interprocedurals" - -#~ msgid "Warn about constructs with surprising meanings" -#~ msgstr "Avisar sobre constructors amb significats sorprenents" - #~ msgid "Add a directory for INCLUDE searching" #~ msgstr "Agregar un directori per a la recerca de INCLUDE" diff --git a/gcc/po/da.po b/gcc/po/da.po index b9cb7b4207e..9bb46c19523 100644 --- a/gcc/po/da.po +++ b/gcc/po/da.po @@ -128,7 +128,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.3\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2003-05-25 18:00+0200\n" "Last-Translator: Ole Laursen \n" "Language-Team: Danish \n" @@ -156,15 +156,15 @@ msgstr "egenskaben '%s' kan ikke anvendes p msgid "`%s' attribute only applies to function types" msgstr "egenskaben '%s' kan kun anvendes sammen med funktionstyper" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -239,7 +239,7 @@ msgstr "(s #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "" @@ -406,274 +406,274 @@ msgid "invalid application of `%s' to a void type" msgstr "ugyldig anvendelse af '%s' på en void-type" #: c-common.c:2951 -#, c-format -msgid "invalid application of `%s' to an incomplete type" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " msgstr "ugyldig anvendelse af '%s' på en ufuldstændig type" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "'__alignof' benyttet på et bitfelt" -#: c-common.c:3483 +#: c-common.c:3484 #, c-format msgid "cannot disable built-in function `%s'" msgstr "kan ikke deaktivere den indbyggede funktion '%s'" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "for få parametre til funktionen '%s'" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "for mange parametre til funktionen '%s'" -#: c-common.c:3669 +#: c-common.c:3670 #, c-format msgid "non-floating-point argument to function `%s'" msgstr "parameter der ikke er et kommatal, til funktionen '%s'" -#: c-common.c:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "henvisningsvariabler er ikke tilladt som case-værdier" -#: c-common.c:3900 +#: c-common.c:3901 #, fuzzy msgid "range expressions in switch statements are non-standard" msgstr "ISO C forbyder intervaludtryk i switch-sætninger" -#: c-common.c:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "tomt interval angivet" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "case-værdi optræder mere end én gang (måske pga. intervalsammenfald)" -#: c-common.c:3981 +#: c-common.c:3982 #, 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:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "case-værdi optræder mere end én gang" -#: c-common.c:3986 +#: c-common.c:3987 #, fuzzy msgid "%Jpreviously used here" msgstr "tidligere benyttet her" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "flere default-etiketter i én switch-konstruktion" -#: c-common.c:3991 +#: c-common.c:3992 #, fuzzy msgid "%Jthis is the first default label" msgstr "dette er den første default-etiket" -#: c-common.c:4016 +#: c-common.c:4017 #, fuzzy msgid "taking the address of a label is non-standard" msgstr "ISO C forbyder at tage adressen af en etiket" -#: c-common.c:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "ukendt maskintilstand '%s'" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "ingen datatype til tilstanden '%s'" -#: c-common.c:4655 +#: c-common.c:4656 #, fuzzy, c-format msgid "invalid pointer mode `%s'" msgstr "ugyldig operandkode '%c'" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, c-format msgid "unable to emulate '%s'" msgstr "kunne ikke emulere '%s'" -#: c-common.c:4706 +#: c-common.c:4707 #, fuzzy msgid "%Jsection attribute cannot be specified for local variables" msgstr "sektionsegenskaben kan ikke angives for lokale variabler" -#: c-common.c:4717 +#: c-common.c:4718 #, fuzzy msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "sektionen '%s' strider mod tidligere erklæring" -#: c-common.c:4726 +#: c-common.c:4727 #, fuzzy msgid "%Jsection attribute not allowed for '%D'" msgstr "sektionsegenskaben er ikke tilladt for '%s'" -#: c-common.c:4732 +#: c-common.c:4733 #, fuzzy msgid "%Jsection attributes are not supported for this target" msgstr "sektionsegenskaber understøttes ikke på denne målarkitektur" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "angivet justering er ikke en konstant" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "angivet justering er ikke en potens af 2" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "angivet justering er for stor" -#: c-common.c:4806 +#: c-common.c:4807 #, fuzzy msgid "%Jalignment may not be specified for '%D'" msgstr "justering må ikke angives for '%s'" -#: c-common.c:4844 +#: c-common.c:4845 #, 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:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "aliasparameter er ikke en streng" -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "synlighedsparameter er ikke en streng" -#: c-common.c:4910 +#: c-common.c:4911 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:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "tls_model-parameter er ikke en streng" -#: c-common.c:4945 +#: c-common.c:4946 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:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 #, fuzzy msgid "%J'%E' attribute applies only to functions" msgstr "'%s'-egenskaben kan kun anvendes sammen med funktioner" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 #, fuzzy msgid "%Jcan't set '%E' attribute after definition" msgstr "kan ikke angive '%s'-egenskaben efter definitionen" -#: c-common.c:5094 +#: c-common.c:5095 #, c-format msgid "`%s' attribute ignored for `%s'" msgstr "'%s'-egenskaben ignoreret for '%s'" -#: c-common.c:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "ugyldig vektortype for egenskaben '%s'" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 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:5315 +#: c-common.c:5316 msgid "nonnull attribute without arguments on a non-prototype" msgstr "ikke-nul egenskab uden parametre til en ikke-prototype" -#: c-common.c:5330 +#: c-common.c:5331 #, c-format msgid "nonnull argument has invalid operand number (arg %lu)" msgstr "ikke-nul parameter har ugyldig operandnummer (parameter %lu)" -#: c-common.c:5349 +#: c-common.c:5350 #, 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:5357 +#: c-common.c:5358 #, 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:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "nulparameter hvor ikke-nul er påkrævet (parameter %lu)" -#: c-common.c:5508 +#: c-common.c:5509 #, fuzzy msgid "cleanup arg not an identifier" msgstr "'defined' optræder uden et kaldenavn" -#: c-common.c:5515 +#: c-common.c:5516 #, fuzzy msgid "cleanup arg not a function" msgstr "det kaldte objekt er ikke en funktion" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s ved slutning af inddata" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s før %s'%c'" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s før %s'\\x%x'" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "%s før strengkonstant" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "%s før talkonstant" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s før \"%s\"" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s før symbolet '%s'" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 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" @@ -893,8 +893,8 @@ msgstr "erkl msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "erklæring af '%#D' skygger for en parameter" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 #, fuzzy msgid "%Jshadowed declaration is here" msgstr "variabelerklæring er ikke tilladt her" @@ -904,7 +904,7 @@ msgstr "variabelerkl msgid "nested extern declaration of `%s'" msgstr "indlejret extern-erklæring af '%s'" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 #, fuzzy msgid "%Jprevious declaration of '%D'" msgstr "'%D' er tidligere erklæret" @@ -984,7 +984,7 @@ msgid "two types specified in one empty declaration" msgstr "to typer angivet i én tom erklæring" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "tom erklæring" @@ -1026,7 +1026,7 @@ msgstr "funktionen '%s' bliver tildelt en startv msgid "parameter `%s' is initialized" msgstr "parameteren '%s' bliver tildelt en startværdi" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "et objekt af variabel størrelse må ikke tildeles en startværdi" @@ -1040,7 +1040,7 @@ msgstr "variablen '%s' bliver tildelt en startv msgid "elements of array `%s' have incomplete type" msgstr "elementer i tabellen '%s' er af en ufuldstændig type" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 #, fuzzy msgid "%Jinline function '%D' given attribute noinline" msgstr "inline funktion '%s' givet egenskaben noinline" @@ -1325,7 +1325,7 @@ msgstr "ISO C90 forbyder tabellen '%s' hvis st msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO C90 forbyder tabellen '%s' med variabel størrelse" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "størrelsen af tabellen '%s' er for stor" @@ -1368,7 +1368,7 @@ msgstr "ugyldig typemodifikation i erkl msgid "ISO C forbids const or volatile function types" msgstr "ISO C forbyder const eller volatile funktionstyper" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "variabel eller felt '%s' erklæret void" @@ -1697,7 +1697,7 @@ msgstr "den forfremmede parameter '%s' passer ikke til prototypen" msgid "argument \"%D\" doesn't match prototype" msgstr "parameteren '%s' passer ikke til prototypen" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 msgid "no return statement in function returning non-void" msgstr "ingen return-sætning i en funktion der ikke returnerer void" @@ -2490,7 +2490,7 @@ msgstr "syntaksfejl: kan ikke g msgid "ISO C forbids an empty source file" msgstr "ISO C forbyder en tom kildefil" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "parameteren til 'asm' er ikke en konstant streng" @@ -2588,7 +2588,7 @@ msgstr "ISO C forbyder indlejrede funktioner" msgid "ISO C forbids forward references to `enum' types" msgstr "ISO C forbyder forhåndsreferencer til 'enum'-typer" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "komma i slutningen af enum-liste" @@ -2596,7 +2596,7 @@ msgstr "komma i slutningen af enum-liste" msgid "no semicolon at end of struct or union" msgstr "intet semikolon i slutningen af struct eller union" -#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "ekstra semikolon angivet i struct eller union" @@ -2626,24 +2626,24 @@ msgstr "ISO C forbyder etiketerkl 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:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "tom krop i en else-sætning" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 #, fuzzy msgid "%Hempty body in an if-statement" msgstr "tom krop i en else-sætning" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 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:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 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 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO C forbyder 'goto *udtryk;'" @@ -2653,11 +2653,11 @@ msgstr "ISO C forbyder 'goto *udtryk;'" #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "ISO C påkræver en navngiven parameter før '...'" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "'...' i gammeldags liste af kaldenavne" @@ -2673,7 +2673,7 @@ msgstr "tolkningsfejl" msgid "parser stack overflow" msgstr "overløb i tolkerens stak" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "syntaksfejl ved symbolet '%s'" @@ -2838,19 +2838,19 @@ msgstr "forkert udformet '#pragma redefine_extname' - ignoreret" msgid "junk at end of #pragma redefine_extname" msgstr "ragelse i slutningen af '#pragma redefine_extname'" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "#pragma redefine_extname er i konflikt med erklæring" -#: c-pragma.c:413 +#: c-pragma.c:414 msgid "malformed #pragma extern_prefix, ignored" msgstr "forkert udformet '#pragma extern_prefix' - ignoreret" -#: c-pragma.c:418 +#: c-pragma.c:419 msgid "junk at end of #pragma extern_prefix" msgstr "ragelse i slutningen af '#pragma extern_prefix'" -#: c-pragma.c:449 +#: c-pragma.c:450 msgid "asm declaration conflicts with previous rename" msgstr "asm-erklæring er i konflikt med tidligere omdøbelse" @@ -2867,7 +2867,7 @@ msgstr "hvor case-etiket optr 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:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "%s-modifikation ignoreret ved asm" @@ -2877,803 +2877,803 @@ msgstr "%s-modifikation ignoreret ved asm" msgid "will never be executed" msgstr "kald %2d aldrig udført\n" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "'%s' er af en ufuldstændig type" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "ugyldig brug af void-udtryk" -#: c-typeck.c:150 +#: c-typeck.c:153 msgid "invalid use of flexible array member" msgstr "ugyldig brug af fleksibelt tabelmedlem" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "ugyldig brug af tabel uden angivne grænser" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "ugyldig brug af ufuldstændig typedef '%s'" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 msgid "function types not truly compatible in ISO C" msgstr "funktionstyper ikke er fuldt ud forenelige i ISO C" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "typer er ikke helt forenelige" -#: c-typeck.c:824 +#: c-typeck.c:838 #, fuzzy msgid "function return types not compatible due to `volatile'" msgstr "en funktions returtype kan ikke være en funktion" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "beregninger udført på en henvisning til en ufuldstændig type" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "%s har intet medlem ved navn '%s'" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, 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:1408 +#: c-typeck.c:1422 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:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "forsøg på at følge en 'void *'-henvisning" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "ugyldig typeparameter '%s'" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "indeks mangler i tabelopslag" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "tabelindeks er af typen 'char'" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "tabelindeks er ikke et heltal" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "ISO C forbyder opslag i 'register'-tabel" -#: c-typeck.c:1511 +#: c-typeck.c:1525 msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C90 forbyder opslag i tabel der ikke er venstreværdi" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "indeks er af typen 'char'" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 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:1590 +#: c-typeck.c:1604 #, c-format msgid "local declaration of `%s' hides instance variable" msgstr "den lokale erklæring af funktionen '%s' skjuler instansvariabel" -#: c-typeck.c:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "det kaldte objekt er ikke en funktion" #. 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 +#: c-typeck.c:1729 #, fuzzy msgid "function called through a non-compatible type" msgstr "sizeof benyttet på en ufuldstændig type" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "startværdielement er ikke en konstant" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "for mange parametre til funktionen" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "typen af den formelle parameter %d er ufuldstændig" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, 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:1850 +#: c-typeck.c:1875 #, 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:1853 +#: c-typeck.c:1878 #, 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:1856 +#: c-typeck.c:1881 #, 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:1859 +#: c-typeck.c:1884 #, 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:1862 +#: c-typeck.c:1887 #, 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:1872 +#: c-typeck.c:1897 #, 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:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "%s med anderledes bredde på grund af prototypen" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "%s som unsigned på grund af prototypen" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "%s som signed på grund af prototypen" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "for få parametre til funktionen" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "foreslår paranteser omkring + eller - inden i skifteoperation" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "foreslår paranteser omkring && inden i ||" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "foreslår paranteser omkring beregning i operand til |" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "foreslår paranteser omkring sammenligning i operand til |" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "foreslår paranteser omkring beregning i operand til ^" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "foreslår paranteser omkring sammenligning i operand til ^" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "foreslår paranteser omkring + eller - i operand til &" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "foreslår paranteser omkring sammenligning i operand til &" -#: c-typeck.c:2040 +#: c-typeck.c:2065 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:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "henvisning af typen 'void *' benyttet i subtraktion" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "henvisning til en funktion benyttet i subtraktion" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "forkert parametertype til unært plus" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "forkert parametertype til unært minus" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "ISO C understøtter ikke '~' til compleks-konjugering" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "forkert parametertype til bitkomplement" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "forkert parametertype til abs" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "forkert parametertype til konjugation" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "forkert parametertype til unært udråbstegn" -#: c-typeck.c:2312 +#: c-typeck.c:2337 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:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 msgid "wrong type argument to increment" msgstr "forkert parametertype til forøgelse" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "forkert parametertype til formindskelse" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "forøgelse af henvisning til en ukendt struktur" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "formindskelse af henvisning til en ukendt struktur" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "ugyldig venstreværdi i unær '&'" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, 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:2642 +#: c-typeck.c:2668 #, fuzzy msgid "use of conditional expressions as lvalues is deprecated" msgstr "ISO C forbyder brug af betingede udtryk som venstreværdier" -#: c-typeck.c:2645 +#: c-typeck.c:2671 #, fuzzy msgid "use of compound expressions as lvalues is deprecated" msgstr "ISO C forbyder brug af sammensatte udtryk som venstreværdier" -#: c-typeck.c:2648 +#: c-typeck.c:2674 #, 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:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "%s af medlemmet '%s' der kun må læses" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "%s af variablen '%s' der kun må læses" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "%s af placering der kun må læses" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, c-format msgid "cannot take address of bit-field `%s'" msgstr "kan ikke finde adressen af bitfeltet '%s'" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 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:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 treelang/treetree.c:950 #, c-format msgid "register variable `%s' used in nested function" msgstr "registervariabel '%s' benyttet i indlejret funktion" -#: c-typeck.c:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 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:2739 +#: c-typeck.c:2765 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:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, c-format msgid "address of register variable `%s' requested" msgstr "forespørgsel efter adressen af registervariablen '%s'" -#: c-typeck.c:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "signed og unsigned type i betinget udtryk" -#: c-typeck.c:2835 +#: c-typeck.c:2861 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:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 msgid "ISO C forbids conditional expr between `void *' and function pointer" msgstr "ISO C++ forbyder betinget udtryk mellem 'void *' og funktionshenvisning" -#: c-typeck.c:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "henvisningstyperne i betingelsesudtrykket passer ikke sammen" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "henvisnings- og heltalstype i betingelsesudtrykket passer ikke sammen" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "typerne i betingelsesudtrykket passer ikke sammen" -#: c-typeck.c:2955 +#: c-typeck.c:2981 msgid "left-hand operand of comma expression has no effect" msgstr "venstreoperanden til kommaudtrykket har ingen virkning" -#: c-typeck.c:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "typetildelingen angiver en tabeltype" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "typetildelingen angiver en funktionstype" -#: c-typeck.c:3002 +#: c-typeck.c:3028 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:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "ISO C forbyder omtvingelse til uniontype" -#: c-typeck.c:3028 +#: c-typeck.c:3054 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:3079 +#: c-typeck.c:3105 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "typeomtvingelse kasserer modifikationer på henvisningsmålets type" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "typeomtvingelse forøger den påkrævne justering af måltypen" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "typeomtvingelse fra henvisning til heltal af en anden størrelse" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "typeomtvingelse passer ikke til funktionstype" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "typeomtvingelse fra heltal til henvisning af en anden størrelse" -#: c-typeck.c:3129 +#: c-typeck.c:3155 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "typeomtvingning af ufuldstændig type bryder muligvis strenge aliasregler" -#: c-typeck.c:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "følgning af en typeomtvunget henvisning vil bryde strenge aliasregler" -#: c-typeck.c:3144 +#: c-typeck.c:3170 #, 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:3153 +#: c-typeck.c:3179 #, 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:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "ugyldig venstreværdi i tildeling" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "tildeling" -#: c-typeck.c:3429 +#: c-typeck.c:3455 msgid "cannot pass rvalue to reference parameter" msgstr "kan ikke videregive højreværdi til referenceparameter" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "%s opretter en funktionshenvisning med modifikationer fra én uden" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "%s kasserer modifikationer på henvisningsmålets type" -#: c-typeck.c:3548 +#: c-typeck.c:3574 msgid "ISO C prohibits argument conversion to union type" msgstr "ISO C forbyder parameterkonvertering til uniontype" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, c-format msgid "ISO C forbids %s between function pointer and `void *'" msgstr "ISO C forbyder %s mellem funktionshenvisning og 'void *'" -#: c-typeck.c:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "fortegnene i henvisningsmål i %s er forskellige" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "%s fra en henvisningstype der ikke er forenelig med målets" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 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:3639 +#: c-typeck.c:3665 #, 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:3646 +#: c-typeck.c:3672 #, 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:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "typen af den %d. parameter i '%s' passer ikke" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, 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:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "uforenelige typer i %s" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, c-format msgid "passing arg of `%s'" msgstr "videregiver parameter til '%s'" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 msgid "passing arg of pointer to function" msgstr "videregiver parameter af henvisning til funktion" #. Function name is known; supply it. -#: c-typeck.c:3744 +#: c-typeck.c:3770 #, 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:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "videregiver den %d. parameter af henvisning til funktion" # 'automatic aggregate' betyder automatisk allokerede variabler, dvs. # ganske almindelige lokale variabler (kan evt. erklæres med 'auto') -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "traditionel C forbyder klargøring af auto-variabler af sammensatte typer" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "(i nærheden af klargøringen af '%s')" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "char-tabel får tildelt startværdi fra en bred streng" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "int-tabel får tildelt startværdi fra en ikke-bred streng" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 msgid "initializer-string for array of chars is too long" msgstr "startværdistrengen til char-tabellen er for lang" -#: c-typeck.c:4155 +#: c-typeck.c:4181 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:4172 c-typeck.c:4174 c-typeck.c:4190 c-typeck.c:4211 -#: c-typeck.c:5593 -msgid "initializer element is not constant" -msgstr "startværdielement er ikke en konstant" - -#: c-typeck.c:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "klargøring" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "startværdielement kan ikke beregnes ved indlæsningstidspunktet" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "ugyldig startværdi" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 #, 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:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "overskydende krøllede paranteser ved slutningen af startværdien" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "krøllede paranteser mangler omkring startværdien" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "krøllede paranteser omkring skalarstartværdi" # RETMIG: eller er det fleksibel tabel-medlem -#: c-typeck.c:4842 +#: c-typeck.c:4865 msgid "initialization of flexible array member in a nested context" msgstr "klargøring af fleksibelt tabelmedlem i en indlejret kontekst" -#: c-typeck.c:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "klargøring af fleksibelt tabelmedlem" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "manglende startværdi" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "tom skalarstartværdi" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "overskydende elementer i skalarstarværdi" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "klargøringstegn må ikke indlejres" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "tabelindeks i en startværdi der ikke er en tabel" # RETMIG: record? -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 msgid "field name not in record or union initializer" msgstr "feltnavn ikke i struktur- eller union-startværdi" -#: c-typeck.c:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "tabelindekset i startværdien er ikke en konstant" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 msgid "array index in initializer exceeds array bounds" msgstr "tabelindeks i startværdi overskrider tabelgrænser" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "tomt indeksinterval i startværdi" -#: c-typeck.c:5101 +#: c-typeck.c:5124 msgid "array index range in initializer exceeds array bounds" msgstr "tabelindeksinterval i startværdi overskrider tabelgrænser" -#: c-typeck.c:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "ukendt felt '%s' angivet i startværdi" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "klargjort felt med bivirkninger overskrevet" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "for mange elementer i char-tabelstartværdien" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "for mange elementer i struct-startværdi" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "ikke-statisk klargøring af fleksibelt tabelmedlem" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "for mange elementer i union-startværdi" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "traditionel C forbyder tildeling af startværdi til unioner" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "for mange elementer i tabelstartværdi" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "for mange elementer i vektorstartværdi" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "for mange elementer i skalarstartværdi" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "asm-sætning er ikke en strengkonstant" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "ugyldig venstreværdi i asm-sætning" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "ændring af 'asm'" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "funktion der er erklæret 'noreturn' har en 'return'-sætning" -#: c-typeck.c:6369 +#: c-typeck.c:6392 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:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "'return' med en værdi i en funktion der returnerer void" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "returnering" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "funktion returnerer adressen på en lokal variabel" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "switch-størrelsen er ikke et heltal" -#: c-typeck.c:6496 +#: c-typeck.c:6519 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:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "case-etiket befinder sig ikke inden i en switch-sætning" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "'default'-etiket befinder sig ikke inden i en switch-sætning" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "division med nul" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "højreskiftsantal er negativ" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "højreskiftsantal er større end bredden af typen" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "venstreskiftsantal er negativ" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "venstreskiftsantal er større end bredden af typen" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "skifteantal er negativ" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "skifteantal er større end bredden af typen" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "sammenligning af kommatal med == eller != er ikke sikkert" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 msgid "ISO C forbids comparison of `void *' with function pointer" msgstr "ISO C forbyder sammenligning af 'void *' med funktionshenvisning" -#: c-typeck.c:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 msgid "comparison of distinct pointer types lacks a cast" msgstr "sammenligning med forskellige henvisningstyper mangler en typeomtvingelse" -#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "sammenligning mellem henvisningsvariabel og heltal" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "ISO C forbyder ordnede sammenligninger af henvisninger til funktioner" -#: c-typeck.c:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "sammenligning mellem en fuldstændig og ufuldstændig henvisning" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "ordnet sammenligning af henvisning med heltallet nul" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 msgid "unordered comparison on non-floating point argument" msgstr "uordnet sammenligning af ikke-kommatalsparameter" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "sammenligning mellem signed og unsigned" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "sammenligning af forfremmet ~unsigned med konstant" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "sammenligning af forfremmet ~unsigned med unsigned" @@ -3943,46 +3943,46 @@ msgstr "antallet af basisbloknoter i instruktionsk msgid "function body not available" msgstr "funktion kan ikke indbygges" -#: cgraph.c:163 cgraphunit.c:340 +#: 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:345 +#: cgraph.c:166 cgraphunit.c:346 #, fuzzy msgid "function not considered for inlining" msgstr "funktion kan ikke indbygges" -#: cgraph.c:168 cgraphunit.c:343 +#: cgraph.c:168 cgraphunit.c:344 #, fuzzy msgid "function not inlinable" msgstr "funktion kan ikke indbygges" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "" @@ -4170,7 +4170,7 @@ msgstr "%s: kan ikke msgid "library lib%s not found" msgstr "biblioteket lib%s ikke fundet" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -4181,7 +4181,7 @@ msgstr "" ";; %d vellykkede.\n" "\n" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -5019,7 +5019,7 @@ msgstr "opdagede rekursion ved udfoldelse af makroen \"%s\"" msgid "syntax error in macro parameter list" msgstr "\"%s\" må ikke optræde i makroparameterliste" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr ";; Behandler blok fra %d til %d, %d mængder.\n" @@ -5098,17 +5098,17 @@ msgstr "stakgr msgid "function using short complex types cannot be inline" msgstr "funktioner der benytter short complex-typer, kan ikke indbygges" -#: expr.c:6385 +#: expr.c:6386 #, fuzzy msgid "%Jprior parameter's size depends on '%D'" msgstr "foregående parameters størrelse afhænger af '%s'" -#: expr.c:6752 +#: expr.c:6753 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:8895 +#: expr.c:8894 msgid "cannot take the address of an unaligned member" msgstr "kan ikke tage adressen af et ikke-justeret medlem" @@ -5153,12 +5153,12 @@ msgstr "'%%l'-operand er ikke en etiket" #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "kommatalskonstant misbrugt" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "ugyldigt udtryk som operand" @@ -5212,26 +5212,26 @@ msgstr "st msgid "impossible constraint in `asm'" msgstr "umulig begrænsing i 'asm'" -#: function.c:5723 +#: function.c:5733 #, 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:5730 +#: function.c:5740 #, fuzzy msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "variablen '%s' bliver måske overskrevet af 'longjmp' eller 'vfork'" -#: function.c:5749 +#: function.c:5759 #, fuzzy msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "parameteren '%s' bliver måske overskrevet af 'longjmp' eller 'vfork'" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "funktion returnerer en værdi af en sammensat type" -#: function.c:7006 +#: function.c:6929 #, fuzzy msgid "%Junused parameter '%D'" msgstr "ubenyttet parameter '%s'" @@ -6696,7 +6696,7 @@ msgstr "uddataoperand %d skal bruge begr msgid "can't use '%s' as a %s register" msgstr "kan ikke bruge '%s' som et %s-register" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "ukendt registernavn: %s" @@ -6753,47 +6753,47 @@ msgstr "kunne ikke generere genindl msgid "inconsistent operand constraints in an `asm'" msgstr "inkonsistente operandbegræsninger i 'asm'" -#: reload1.c:1212 +#: reload1.c:1222 msgid "frame size too large for reliable stack checking" msgstr "rammestørrelse for stor til pålidelig stakkontrol" -#: reload1.c:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "forsøg at reducere antallet af lokale variable" -#: reload1.c:1868 +#: reload1.c:1878 #, 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:1872 +#: reload1.c:1882 #, 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:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "dette er instruktionen:" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "'asm'-operand kræver umulig genindlæsning" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 msgid "could not find a spill register" msgstr "kunne ikke finde et register at bortødsle" -#: reload1.c:4968 +#: reload1.c:4978 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:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "VOID-tilstand ved uddata" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "uddataoperand er konstant i 'asm'" @@ -6845,7 +6845,7 @@ msgstr "RTL-flagskontrol: %s benyttet med uventet rtx-kode '%s' i %s, ved %s:%d" msgid "jump to `%s' invalidly jumps into binding contour" msgstr "spring til '%s' rammer på ugyldig vis ind i bindingskontur" -#: stmt.c:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 #, fuzzy msgid "%Jlabel '%D' used before containing binding contour" msgstr "etiket '%s' brugt før indholdende bindingskontur" @@ -6863,7 +6863,7 @@ msgstr "uddatabegr msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "operandbegrænsning indeholder forkert placeret '+' eller '='" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "'%%'-begrænsning brugt med sidste operand" @@ -6872,130 +6872,125 @@ msgstr "'%%'-begr msgid "matching constraint not valid in output operand" msgstr "begrænsningen er ikke gyldig for uddataoperanden" -#: 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 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "inddataoperandbegrænsningen indeholder '%c'" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "begrænsning refererer til et ugyldigt operandtal" -#: stmt.c:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "ugyldig punktuering '%c' i begrænsning" -#: stmt.c:1396 +#: stmt.c:1393 #, fuzzy msgid "matching constraint does not allow a register" msgstr "begrænsningen er ikke gyldig for uddataoperanden" -#: stmt.c:1424 +#: stmt.c:1421 #, 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:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "ukendt registernavn '%s' i 'asm'" -#: stmt.c:1522 +#: stmt.c:1519 #, fuzzy, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "ukendt registernavn '%s' i 'asm'" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "mere end %d operander i 'asm'" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "uddata nr. %d kan ikke adresseres direkte" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "'asm'-operand %d passer sandsynligvis ikke til begrænsninger" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "asm-overskrivelse er i modstrid med uddataoperander" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "asm-overskrivelse er i modstrid med inddataoperander" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "for mange alternativer i 'asm'" -#: stmt.c:1926 +#: stmt.c:1923 msgid "operand constraints for `asm' differ in number of alternatives" msgstr "operandbegrænsninger til 'asm' har forskellige antal alternativer" -#: stmt.c:1978 +#: stmt.c:1975 #, c-format msgid "duplicate asm operand name '%s'" msgstr "'asm'-operandnavnet '%s' optræder mere end én gang" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "manglende afsluttende krøllet parantes til navngiven operand" -#: stmt.c:2104 +#: stmt.c:2101 #, c-format msgid "undefined named operand '%s'" msgstr "ikkedefineret navngiven operand '%s'" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "" -#: stmt.c:2317 +#: stmt.c:2314 #, fuzzy msgid "%Hvalue computed is not used" msgstr "automat '%s' bliver ikke benyttet" -#: stmt.c:3733 +#: stmt.c:3730 #, fuzzy msgid "%Junused variable '%D'" msgstr "ubrugt variabel '%s'" -#: stmt.c:4508 +#: stmt.c:4505 #, fuzzy msgid "%Hunreachable code at beginning of %s" msgstr "kan ikke nå bytekode fra %d til før %d" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "enum-værdien '%s' håndteres ikke i switch-sætning" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "case-værdien '%ld' eksisterer ikke i enum-type" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, c-format msgid "case value `%ld' not in enumerated type `%s'" msgstr "case-værdien '%ld' eksisterer ikke i enum-typen '%s'" -#: stmt.c:5401 +#: stmt.c:5398 msgid "switch missing default case" msgstr "switch-konstruktion mangler default" @@ -7032,25 +7027,25 @@ msgstr "packed-egenskab er un msgid "%Jpadding struct to align '%D'" msgstr "udfylder struct for at justere '%s'" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "udfylder struct-størrelse til justeringskant" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "packed-egenskab forårsager ineffektiv justering af '%s'" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "packed-egenskab er unødvendig for '%s'" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "packed-egenskab forårsager ineffektiv justering" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "packed-egenskab er unødvendig" @@ -7204,7 +7199,7 @@ msgstr " De eksisterer, men er ikke dokumenteret.\n" msgid "unrecognized gcc debugging option: %c" msgstr "ukendt GCC-fejlfindingstilvalg: %c" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, c-format msgid "invalid option `%s'" msgstr "ugyldigt tilvalg '%s'" @@ -7233,25 +7228,25 @@ msgstr "tilvalg overbragt: " msgid "options enabled: " msgstr "tilvalg slået til: " -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, fuzzy, c-format msgid "can't open %s for writing: %m" msgstr "kan ikke åbne '%s' til skrivning" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "" @@ -7306,7 +7301,7 @@ msgstr "-ffunction-sections kan have indflydelse p msgid "error writing to %s: %m" msgstr "fejl ved skrivning til %s" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, fuzzy, c-format msgid "error closing %s: %m" msgstr "fejl ved lukning af %s" @@ -7368,34 +7363,34 @@ msgstr "st 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 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "en tabel af funktioner giver ikke mening" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "en funktions returtype kan ikke være en funktion" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "ugyldig startværdi til bitstreng" -#: tree.c:4736 +#: tree.c:4737 #, 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:4749 +#: tree.c:4750 #, 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:4762 +#: tree.c:4763 #, 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" -#: tree.c:4774 +#: tree.c:4775 #, 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" @@ -7794,7 +7789,7 @@ msgstr "ugyldig v msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "ugyldig værdi '%s' til tilvalget -mfp-trap-mode" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "ugyldig værdi '%s' til tilvalget -mtls-size" @@ -7845,24 +7840,24 @@ msgstr "ugyldig %%H-v msgid "invalid %%J value" msgstr "ugyldig %%J-værdi" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "ugyldig %%r-værdi" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "ugyldig %%R-værdi" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "ugyldig %%N-værdi" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "ugyldig %%P-værdi" @@ -7872,17 +7867,17 @@ msgstr "ugyldig %%P-v msgid "invalid %%h value" msgstr "ugyldig %%h-værdi" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "ugyldig %%L-værdi" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "ugyldig %%m-værdi" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "ugyldig %%M-værdi" @@ -7893,7 +7888,7 @@ msgid "invalid %%U value" msgstr "ugyldig %%U-værdi" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "ugyldig %%s-værdi" @@ -7903,7 +7898,8 @@ msgstr "ugyldig %%s-v msgid "invalid %%C value" msgstr "ugyldig %%C-værdi" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "ugyldig %%E-værdi" @@ -7912,7 +7908,7 @@ msgstr "ugyldig %%E-v msgid "unknown relocation unspec" msgstr "ukendt relokaliserings-unspec" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "ugyldig %%xn-kode" @@ -8075,17 +8071,17 @@ msgstr "parameteren til egenskaben '%s er ikke en strengkonstant" msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\"" msgstr "parameteren til egenskaben '%s er ikke \"ilink1\" eller \"ilink2\"" -#: config/arc/arc.c:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, c-format msgid "invalid operand to %%R code" msgstr "ugyldig operand til %%R-koden" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "ugyldig operand til %%H/%%L-koden" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, c-format msgid "invalid operand to %%U code" msgstr "ugyldig operand til %%U-koden" @@ -8096,7 +8092,7 @@ msgid "invalid operand to %%V code" msgstr "ugyldig operand til %%V-koden" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "ugyldig operand-uddatakode" @@ -8105,7 +8101,7 @@ msgstr "ugyldig operand-uddatakode" msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "tilvalget -mcpu=%s er i konflikt med tilvalget -march=" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "ugyldig værdi (%s) til tilvalget %s" @@ -8189,12 +8185,12 @@ msgid "unable to use '%s' for PIC register" msgstr "kan ikke bruge '%s' til PIC-register" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 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" @@ -8209,7 +8205,7 @@ msgid "selector must be an immediate" msgstr "vælger skal være en umiddelbar værdi" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "maske skal være en umiddelbar værdi" @@ -9570,179 +9566,179 @@ msgstr "Gener msgid "Do not generate char instructions" msgstr "Generér ikke char-instruktioner" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, 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:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 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:1195 +#: config/i386/i386.c:1204 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "ugyldig værdi (%s) til tilvalget -masm=" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, 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:1201 +#: config/i386/i386.c:1210 msgid "code model `large' not supported yet" msgstr "kodemodellen 'large' er ikke understøttet endnu" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "%i bit-tilstand er ikke oversat med ind" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 #, fuzzy msgid "CPU you selected does not support x86-64 instruction set" msgstr "målprocessoren understøtter ikke THUMB-instruktioner" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 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:1248 +#: config/i386/i386.c:1260 #, c-format msgid "bad value (%s) for -mtune= switch" msgstr "ugyldig værdi (%s) til tilvalget -mcpu=" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "-mregparm=%d er ikke mellem 0 og %d" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "-malign-loops er forældet, benyt -falign-loops" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, 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:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "-malign-jumps er forældet, benyt -falign-jumps" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "-malign-functions er forældet, benyt -falign-functions" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, 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:1354 +#: config/i386/i386.c:1366 #, 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:1366 +#: config/i386/i386.c:1378 #, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "ugyldig værdi (%s) til tilvalget -mtls-dialect" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "-malign-double giver ikke mening i 64 bit-tilstand" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 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:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "SSE-instruktionssæt deaktiveret, bruger 387-beregninger" -#: config/i386/i386.c:1435 +#: config/i386/i386.c:1447 msgid "387 instruction set disabled, using SSE arithmetics" msgstr "387-instruktionssæt deaktiveret, bruger SSE-beregninger" -#: config/i386/i386.c:1442 +#: config/i386/i386.c:1454 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "ugyldig værdi (%s) til tilvalget -mfpmath=" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 #, fuzzy msgid "fastcall and stdcall attributes are not compatible" msgstr "shared og mdll er indbyrdes uforenelige" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 #, 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:1637 +#: config/i386/i386.c:1649 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "egenskaben '%s' kræver en heltalskonstant som parameter" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, c-format msgid "argument to `%s' attribute larger than %d" msgstr "parameter til egenskaben '%s' er større end %d" -#: config/i386/i386.c:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "ugyldig UNSPEC som operand" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "udvidede registre har ikke høje halvdele" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "ikke-understøttet operandstørrelse for udvidede registre" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 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:7457 +#: config/i386/i386.c:7474 #, c-format msgid "invalid operand code `%c'" msgstr "ugyldig operandkode '%c'" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 msgid "invalid constraints for operand" msgstr "ugyldige begrænsninger for operand" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 msgid "unknown insn mode" msgstr "ukendt instruktionstilstand" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 msgid "shift must be an immediate" msgstr "skifteværdi skal være en umiddelbar værdi" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, fuzzy, c-format msgid "`%s' incompatible attribute ignored" msgstr "egenskaben '%s' ignoreret" @@ -9805,43 +9801,43 @@ msgstr "" msgid "%J'%D' causes a section type conflict" msgstr "%s forårsager en sektionstypekonflikt" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "Benyt Cygwin-grænsefladen" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "Benyt Mingw32-grænsefladen" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "Opret grafisk program" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "Angiv ikke Windows-definitioner" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "Angiv Windows-definitioner" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "Opret konsolprogram" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "Generér kode til en DLL" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "Ignorér dllimport til funktioner" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "Benyt Mingw-specifik trådunderstøttelse" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, 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)" @@ -10040,7 +10036,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "Planlæg koden til en given processor" @@ -10158,7 +10154,7 @@ msgstr "modstridende arkitekturer defineret - bruger K-serien" 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:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "stakgrænseudtryk understøttes ikke" @@ -10281,8 +10277,8 @@ msgstr "Sammens 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:333 config/sparc/freebsd.h:80 config/sparc/linux.h:91 -#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "Benyt 64 bit long double" @@ -10318,42 +10314,42 @@ msgstr "dataomr msgid "%Jaddress area attribute cannot be specified for functions" msgstr "en dataområdeegenskab kan ikke angives for lokale variable" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "ia64_print_operand: ukendt kode" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 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:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "%s-%s er et tomt interval" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 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:4726 +#: config/ia64/ia64.c:4729 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:4732 +#: config/ia64/ia64.c:4735 #, 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:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "ugyldig værdi (%s) for tilvalget -mtls-size=" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, fuzzy, c-format msgid "bad value (%s) for -tune= switch" msgstr "ugyldig værdi (%s) til tilvalget -mcpu=" @@ -10492,7 +10488,7 @@ msgstr "gp_offset (%ld) eller end_offset (%ld) er mindre end nul" 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:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "PRINT_OPERAND_ADDRESS, nul-henvisning" @@ -10502,7 +10498,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "PRINT_OPERAND: ukendt tegnsætning '%c'" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "PRINT_OPERAND nul-henvisning" @@ -10511,7 +10507,7 @@ msgstr "PRINT_OPERAND nul-henvisning" msgid "invalid %%P operand" msgstr "ugyldig %%P-operand" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "ugyldig %%p-værdi" @@ -10572,90 +10568,90 @@ msgstr "ugyldig v msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 msgid "typename type `%#T' declared `friend'" msgstr "typename-type '%#T' erklæret 'friend'" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 msgid "template parameter type `%T' declared `friend'" msgstr "skabelonsparametertypen '%T' erklæret 'friend'" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 msgid "`%#T' is not a template" msgstr "'%#T' er ikke en skabelon" -#: cp/friend.c:277 +#: cp/friend.c:281 #, fuzzy msgid "`%D' is already a friend of `%T'" msgstr "'%T' er allerede en ven af '%T'" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "'%T' er allerede en ven af '%T'" -#: cp/friend.c:409 +#: 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:465 +#: cp/friend.c:469 msgid "friend declaration `%#D' declares a non-template function" msgstr "friend-erklæring '%#D' erklærer en ikke-skabelonsfunktion" -#: cp/friend.c:468 +#: cp/friend.c:472 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" @@ -15596,7 +15597,7 @@ msgstr "'%T' er ikke en sammensat typedef" msgid "type `%T' is of non-aggregate type" msgstr "typen '%T' er ikke en sammensat type" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "den modificerede type '%T' passer ikke til destruktionsfunktionsnavnet '~%T'" @@ -15634,72 +15635,71 @@ msgstr "st msgid "zero size array reserves no space" msgstr "tabel med størrelsen nul reserverer ingen plads" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "new kan ikke bruges på en referencetype" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "new kan ikke bruges på en funktionstype" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "kald af Java-konstruktionsfunktion mens 'jclass' ikke er defineret" -#: cp/init.c:1876 +#: cp/init.c:1877 msgid "can't find class$" msgstr "kan ikke finde class$" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "ugyldig type 'void' til new" -#: cp/init.c:2013 +#: cp/init.c:2014 msgid "uninitialized const in `new' of `%#T'" msgstr "konstant uden startværdi i 'new' af '%#T'" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "kald af Java-konstruktionsfunktion mens '%s' ikke er defineret" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "" + +#: cp/init.c:2083 msgid "request for member `%D' is ambiguous" msgstr "forespørgsel efter medlemmet '%D' er tvetydigt" -#: cp/init.c:2193 +#: cp/init.c:2203 msgid "ISO C++ forbids initialization in array new" msgstr "ISO C++ forbyder startværdier i tabel-new" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "startværdien slutter for tidligt" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "kan ikke klargøre multidimensional tabel med startværdi" -#: cp/init.c:2885 +#: cp/init.c:2895 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." +#: cp/init.c:2898 +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:2909 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "ukendt tabelstørrelse i delete" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "variablen til tabel-delete er hverken af en henvisnings- eller en tabeltype" @@ -15790,11 +15790,11 @@ msgstr "ikke-statisk konstant medlem '%#D' kan ikke bruge standardtildelingsoper msgid "non-static reference member `%#D', can't use default assignment operator" msgstr "ikke-statisk referencemedlem '%#D' kan ikke bruge standardtildelingsoperatoren" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 msgid "`%#D' used prior to declaration" msgstr "'%#D' benyttet før erklæring" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 msgid "redeclaration of `wchar_t' as `%T'" msgstr "omerklæring af 'wchar_t' som '%T'" @@ -15804,241 +15804,241 @@ msgstr "omerkl #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 msgid "invalid redeclaration of `%D'" msgstr "ugyldig omerklæring af '%D'" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "som '%D'" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 #, fuzzy msgid "type mismatch with previous external decl of `%#D'" msgstr "typen passer ikke med tidligere ekstern erklæring" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 msgid "previous external decl of `%#D'" msgstr "tidligere ekstern erklæring af '%#D'" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 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:913 +#: cp/name-lookup.c:924 msgid "extern declaration of `%#D' doesn't match" msgstr "extern-erklæring af '%#D' passer ikke med" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 msgid "global declaration `%#D'" msgstr "global erklæring '%#D'" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 #, fuzzy msgid "declaration of '%#D' shadows a parameter" msgstr "erklæring af '%#D' skygger for en parameter" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 #, fuzzy msgid "declaration of '%D' shadows a member of 'this'" msgstr "erklæring af '%s' skygger for et medlem af 'this'" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 #, fuzzy msgid "declaration of '%D' shadows a previous local" msgstr "erklæring af '%#D' skygger for en parameter" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 #, fuzzy msgid "declaration of '%D' shadows a global declaration" msgstr "erklæring af '%#D' skygger for en parameter" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "navneopslag for '%D' ændret" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr " passer med '%D' under ISO-standardreglerne" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr " passer med '%D' under tidligere regler" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "navneopslaget af '%D' er ændret til ISO 'for'-virkefelt" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 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/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr " bruger forældet binding til '%D'" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, fuzzy, c-format msgid "%s %s %p %d\n" msgstr "%s: %s: " -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 msgid "`%#D' hides constructor for `%#T'" msgstr "'%#D' skjuler konstruktionsfunktion for '%#T'" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "'%#D' strider mod tidligere using-erklæring '%#D'" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 msgid "previous non-function declaration `%#D'" msgstr "tidligere ikke-funktionserklæring '%#D'" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 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:2101 +#: cp/name-lookup.c:2112 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:2107 +#: cp/name-lookup.c:2118 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "'%T' er ikke et navnerum" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 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:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "'%D' er allerede erklæret i dette navnerum" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 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:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "'%#D' omerklæret som %C" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 msgid "using-declaration for non-member at class scope" msgstr "using-erklæring for ikke-medlem ved klassevirkefelt" -#: cp/name-lookup.c:2898 +#: cp/name-lookup.c:2909 #, fuzzy msgid "using-declaration cannot name destructor" msgstr "using-erklæring for destruktionsfunktion" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 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:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "'%D' skulle have været erklæret inden i '%D'" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 msgid "unknown namespace `%D'" msgstr "ukendt navnerum '%D'" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 msgid "namespace `%T' undeclared" msgstr "navnerummet '%T' er ikke erklæret" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 #, fuzzy msgid "`%D' attribute directive ignored" msgstr "egenskabsdirektivet '%s' ignoreret" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 msgid "use of `%D' is ambiguous" msgstr "brug af '%D' er tvetydigt" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr " først erklæret som '%#D' her" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr " også erklæret som '%#D' her" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "'%D' angiver en tvetydig type" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 #, fuzzy msgid "%J first type here" msgstr " første type her" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 #, 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 msgid "invalid use of `%D'" msgstr "ugyldig brug af '%D" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 msgid "`%D::%D' is not a template" msgstr "'%D::%D' er ikke en skabelon" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "'%D' ikke erklæret i navnerummet '%D'" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 msgid "`%D' is not a function," msgstr "'%s' er ikke en funktion," -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 msgid " conflict with `%D'" msgstr " konflikt med '%D'" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -16135,105 +16135,109 @@ msgstr "'%D' blev ikke erkl msgid "typedef-name `%D' used as destructor declarator" msgstr "skabelons-id '%D' benyttet som erklærer" -#: cp/parser.c:3635 +#: cp/parser.c:3638 #, fuzzy msgid "ISO C++ forbids compound-literals" msgstr "ISO C++ forbyder sammensatte konstanter" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4619 +#: cp/parser.c:4624 #, 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:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "brug af ældre type typeomtvingning" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, 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:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "ISO C++ forbyder beregnede goto'er" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6640 +#: cp/parser.c:6645 #, fuzzy msgid "duplicate `friend'" msgstr "'%s' optræder mere end én gang" -#: cp/parser.c:6789 +#: cp/parser.c:6794 #, fuzzy msgid "class definition may not be declared a friend" msgstr "funktionen '%D' kan ikke erklæres friend" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "kun konstruktionsfunktioner har stamklasseklargøringer" -#: cp/parser.c:7155 +#: cp/parser.c:7160 #, fuzzy msgid "anachronistic old-style base class initializer" msgstr "forældet stamklasseklargøring" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 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:7908 +#: cp/parser.c:7923 #, fuzzy msgid "`<::' cannot begin a template-argument list" msgstr "objektet '%E' kan ikke bruges som skabelonsparameter" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 #, fuzzy msgid "non-template `%D' used as template" msgstr "ikke-skabelon benyttet som skabelon" -#: cp/parser.c:8089 +#: cp/parser.c:8107 #, fuzzy -msgid "(use `%T::template %D' to indicate that it is a template)" +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:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "bruger 'typename' uden for en skabelon" -#: cp/parser.c:9148 +#: cp/parser.c:9180 #, fuzzy msgid "expected type-name" msgstr "uventet operand" -#: cp/parser.c:9207 +#: cp/parser.c:9239 #, fuzzy msgid "type attributes are honored only at type definition" msgstr "egenskaben '%s' kan kun anvendes med klassedefinitioner" @@ -16241,86 +16245,91 @@ msgstr "egenskaben '%s' kan kun anvendes med klassedefinitioner" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 #, fuzzy msgid "a template-id may not appear in a using-declaration" msgstr "navnerum '%D' ikke tilladt i using-erklæring" -#: cp/parser.c:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:9919 +#: cp/parser.c:9951 #, fuzzy msgid "attributes are not allowed on a function-definition" msgstr "en global registervariabel følger en funktionsdefinition" -#: cp/parser.c:10052 +#: cp/parser.c:10084 #, fuzzy msgid "attributes after parenthesized initializer ignored" msgstr "egenskaber i parametertabelerklæring ignoreret" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +#, fuzzy +msgid "`%T::%D' is not a type" +msgstr "'%D::%D' er ikke en skabelon" + +#: cp/parser.c:11288 #, fuzzy msgid "file ends in default argument" msgstr "%Hslutningen af filen læst inden i standardparameter" -#: cp/parser.c:11310 +#: cp/parser.c:11344 #, fuzzy msgid "deprecated use of default argument for parameter of non-function" msgstr "standardparameter givet til %d. parameter for '%#D'" -#: cp/parser.c:11313 +#: cp/parser.c:11347 #, fuzzy msgid "default arguments are only permitted for function parameters" msgstr "standardparameter givet til %d. parameter for '%#D'" -#: cp/parser.c:12043 +#: cp/parser.c:12078 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "erklæring af '%D' i '%D' som ikke omgiver '%D'" -#: cp/parser.c:12056 +#: cp/parser.c:12091 #, fuzzy msgid "extra qualification ignored" msgstr "ekstra modifikation '%T::' af medlemmet '%D' ignoreret" -#: cp/parser.c:12067 +#: cp/parser.c:12102 #, fuzzy msgid "an explicit specialization must be preceded by 'template <>'" msgstr "eksplicit specialisering følger ikke efter 'template <>'" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12399 +#: cp/parser.c:12434 #, fuzzy msgid "friend declaration does not name a class or function" msgstr "friend-erklæringen er ikke i klassedefinitionen" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12843 +#: cp/parser.c:12878 #, fuzzy msgid "keyword `typename' not allowed outside of templates" msgstr "bruger 'typename' uden for en skabelon" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" msgstr "" -#: cp/parser.c:13665 +#: cp/parser.c:13700 #, fuzzy msgid "reference to `%D' is ambiguous" msgstr "brug af '%D' er tvetydigt" -#: cp/parser.c:13839 +#: cp/parser.c:13874 #, fuzzy msgid "too few template-parameter-lists" msgstr "for få skabelonsparameterlister angivet i erklæring af '%D'" @@ -16329,50 +16338,50 @@ msgstr "for f #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 #, fuzzy msgid "too many template-parameter-lists" msgstr "for mange skabelonsparameterlister angivet i erklæring af '%D'" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 #, fuzzy msgid "invalid function declaration" msgstr "Ugyldig erklæring" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 #, fuzzy msgid "named return values are no longer supported" msgstr "--driver understøttes ikke længere" -#: cp/parser.c:14522 +#: cp/parser.c:14561 #, fuzzy msgid "`>>' should be `> >' within a nested template argument list" msgstr "'>>' skulle have været '> >' i skabelonsklassenavn" #. If this is not a nested template argument list, the '>>' is #. a typo for '>'. Emit an error message and continue. -#: cp/parser.c:14530 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14535 +#: cp/parser.c:14574 #, fuzzy msgid "missing `>' to terminate the template argument list" msgstr "manglende ')' i makroparameterliste" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "'%s'-mærke benyttet i navngivning af '%#T'" -#: cp/parser.c:15043 +#: cp/parser.c:15082 #, fuzzy msgid "%D redeclared with different access" msgstr "'%#D' omerklæret som en anden form for symbol" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -16723,154 +16732,154 @@ msgstr "tvetydig klasseskabelonsinstantiering for '%#T'" msgid "%s %+#T" msgstr "%s %+#T" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "instantiering af '%D' som typen '%T'" -#: cp/pt.c:6469 +#: cp/pt.c:6470 msgid "invalid parameter type `%T'" msgstr "ugyldig parametertype '%T'" -#: cp/pt.c:6471 +#: cp/pt.c:6472 msgid "in declaration `%D'" msgstr "i erklæringen '%D'" -#: cp/pt.c:6545 +#: cp/pt.c:6546 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:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "opretter tabel med størrelsen nul" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "opretter tabel med størrelsen nul ('%E')" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "danner reference til void" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "danner %s til referencetypen '%T'" -#: cp/pt.c:6976 +#: cp/pt.c:6977 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:6982 +#: cp/pt.c:6983 msgid "creating pointer to member reference type `%T'" msgstr "opretter henvisning til medlemsreference af typen '%T'" -#: cp/pt.c:7068 +#: cp/pt.c:7069 msgid "creating array of `%T'" msgstr "opretter tabel af '%T'" -#: cp/pt.c:7074 +#: cp/pt.c:7075 #, 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:7118 +#: cp/pt.c:7119 msgid "`%T' is not a class, struct, or union type" msgstr "'%T' er ikke en class-, struct- eller union-type" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "brug af '%s' i skabelon" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, 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:7346 +#: cp/pt.c:7347 #, 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:8609 +#: cp/pt.c:8613 #, fuzzy msgid "`%T' uses anonymous type" msgstr "skabelonsparameter '%T' benytter anonym type" -#: cp/pt.c:8611 +#: cp/pt.c:8615 #, fuzzy msgid "`%T' uses local type `%T'" msgstr "skabelonsparameter '%T' benytter lokal type '%T'" -#: cp/pt.c:8619 +#: cp/pt.c:8623 #, fuzzy msgid "`%T' is a variably modified type" msgstr "skabelonsparameter '%T' er en variabelt ændret type" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, fuzzy, c-format msgid "integral expression `%E' is not constant" msgstr "størrelsen af medlemmet '%D' er ikke konstant" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr " ved forsøg på at instantiere '%D'" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "ufuldstændig typeforening" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "brug af '%s' i skabelonstypeforening" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "eksplicit instantiering af ikke-skabelon '%#D'" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "ingen passende skabelon for '%D' fundet" -#: cp/pt.c:10551 +#: cp/pt.c:10568 msgid "explicit instantiation of `%#D'" msgstr "eksplicit instantiering af '%#D'" -#: cp/pt.c:10588 +#: cp/pt.c:10605 msgid "duplicate explicit instantiation of `%#D'" msgstr "'%#D' er blevet eksplicit instantieret mere end én gang" -#: cp/pt.c:10610 +#: cp/pt.c:10627 msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "ISO C++ forbyder brugen af 'extern' ved eksplicitte instantieringer" -#: cp/pt.c:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" msgstr "lagringsklasse '%D' anvendt på skabelonsinstantiering" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "eksplicit instantiering af '%T' der ikke er en skabelonstype" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" msgstr "eksplicit instantiering af '%T' før definering af skabelonen" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, 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:10728 +#: cp/pt.c:10745 msgid "duplicate explicit instantiation of `%#T'" msgstr "'%#T' er blevet eksplicit instantieret mere end én gang" -#: cp/pt.c:11109 +#: cp/pt.c:11126 msgid "explicit instantiation of `%D' but no definition available" msgstr "eksplicit instantiering af '%D', men ingen definition tilgængelig" -#: cp/pt.c:11543 +#: cp/pt.c:11562 msgid "`%#T' is not a valid type for a template constant parameter" msgstr "'%#T' er ikke en gyldig type for en skabelonsparameterkonstant " @@ -17044,7 +17053,7 @@ msgstr "flere erkl msgid "incomplete type `%T' used in nested name specifier" msgstr "ufuldstændig type '%T' kan ikke bruges til at navngive et virkefelt" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 msgid "`%D' is not a member of `%T'" msgstr "'%D' er ikke et medlem af '%T'" @@ -17089,244 +17098,244 @@ msgstr " '%#D' erkl msgid "type of `%E' is unknown" msgstr "typen af '%E' er ukendt" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "ikke-venstreværdi i %s" -#: cp/tree.c:539 +#: cp/tree.c:532 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "modifikationerne '%V' kan ikke anvendes på '%T'" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, 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:1857 +#: cp/tree.c:1850 #, c-format msgid "`%s' attribute can only be applied to class definitions" msgstr "egenskaben '%s' kan kun anvendes med klassedefinitioner" -#: cp/tree.c:1863 +#: cp/tree.c:1856 #, 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:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "den udbedte init_priority er ikke en heltalskonstant" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, 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:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "den udbedte init_priority er uden for det gyldige interval" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "den udbedte init_priority er reserveret til intern brug" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, c-format msgid "`%s' attribute is not supported on this platform" msgstr "egenskaben '%s' er ikke understøttet på denne platform" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "lang_*-kontrol: mislykkedes i %s, ved %s:%d" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 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 +#: cp/typeck.c:512 #, 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:563 +#: cp/typeck.c:562 #, 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:1235 +#: cp/typeck.c:1234 #, c-format msgid "invalid application of `%s' to a member function" msgstr "ugyldig brug af '%s' på en medlemsfunktion" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, fuzzy, c-format msgid "invalid application of `%s' to a bit-field" msgstr "ugyldig anvendelse af '%s' på en void-type" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, 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:1342 +#: cp/typeck.c:1308 #, fuzzy msgid "invalid use of non-static member function" msgstr "ugyldig brug af medlemmet '%D' i statisk medlemsfunktion" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "forældet konvertering fra strengkonstant til '%T'" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 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:1610 +#: cp/typeck.c:1633 #, fuzzy, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "ugyldig brug af ikke-statisk felt '%D'" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 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:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "(måske blev 'offsetof'-makroen benyttet forkert)" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 msgid "`%D::%D' is not a member of `%T'" msgstr "'%D::%D' er ikke et medlem af '%T'" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 #, fuzzy msgid "`%T' is not a base of `%T'" msgstr "'%D' er ikke et medlem af '%T'" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 msgid "'%D' has no member named '%E'" msgstr "'%D' har intet medlem ved navn '%E'" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 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:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "'%T' er ikke af en henvisning til objekt-type" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "ugyldig brug af '%s' på henvisning til medlem" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "ugyldig typeparameter" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "ISO C++ forbyder indeksering af en ikke-venstreværdis tabel" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "indeksering af tabel som er erklæret 'register'" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, c-format msgid "object missing in use of `%E'" msgstr "objekt mangler i brug af '%E'" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "ISO C++ forbyder kald af '::main' inde fra programmet" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, 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:2446 +#: cp/typeck.c:2469 #, c-format msgid "`%E' cannot be used as a function" msgstr "'%E' kan ikke bruges som en funktion" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 msgid "too many arguments to %s `%+#D'" msgstr "for mange parametre til %s '%+#D'" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "ved dette sted i filen" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 #, fuzzy msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "parameteren '%s' er af en ufuldstændig type" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 #, fuzzy msgid "parameter %P has incomplete type `%T'" msgstr "parameteren er af en ufuldstændig type" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 msgid "too few arguments to %s `%+#D'" msgstr "for få parametre til %s '%+#D'" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 msgid "assuming cast to type `%T' from overloaded function" msgstr "antager typeomtvingning til typen '%T' fra flertydig funktion" -#: cp/typeck.c:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "division med nul i '%E / 0'" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "division med nul i '%E / 0.'" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, c-format msgid "division by zero in `%E %% 0'" msgstr "division med nul i '%E %% 0'" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "division med nul i '%E %% 0.'" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "%s-roteringsantal er negativt" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "%s-roteringsantal >= bredden af typen" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "ISO C++ forbyder sammenligning mellem henvisningsvariabel og heltal" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 msgid "comparison between types `%#T' and `%#T'" msgstr "sammenligning mellem typerne '%#T' og '%#T'" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "sammenlign mellem signed og unsigned heltalsudtryk" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "ugyldige operander af typerne '%T' og '%T' til binær '%O'" @@ -17334,288 +17343,288 @@ msgstr "ugyldige operander af typerne '%T' og '%T' til bin #. 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:3418 +#: cp/typeck.c:3441 msgid "NULL used in arithmetic" msgstr "NULL benyttet i udregning" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 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:3483 +#: cp/typeck.c:3506 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:3485 +#: cp/typeck.c:3508 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:3497 +#: cp/typeck.c:3520 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:3553 +#: cp/typeck.c:3582 #, 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:3559 +#: cp/typeck.c:3588 #, 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:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "tager adressen på midlertidig variabel" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "ISO C++ forbyder %s af en enum" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 msgid "cannot %s a pointer to incomplete type `%T'" msgstr "kan ikke %s en henvisning til en ufuldstændig type '%T'" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 msgid "ISO C++ forbids %sing a pointer of type `%T'" msgstr "ISO C++ forbyder %s af en henvisning af typen '%T'" -#: cp/typeck.c:3858 +#: cp/typeck.c:3887 msgid "cast to non-reference type used as lvalue" msgstr "typeomtvingning til ikke-reference-type benyttet som venstreværdi" -#: cp/typeck.c:3892 +#: cp/typeck.c:3921 msgid "invalid use of `--' on bool variable `%D'" msgstr "ugyldig brug af '--' på den booleske variabel '%D'" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 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:3994 +#: cp/typeck.c:4027 #, 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:3999 +#: cp/typeck.c:4032 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:4027 +#: cp/typeck.c:4060 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:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "unær '&'" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 msgid "attempt to take address of bit-field structure member `%D'" msgstr "forsøg på at finde adressen af bitfeltstrukturmedlemmet '%D'" -#: cp/typeck.c:4190 +#: cp/typeck.c:4227 msgid "taking address of destructor" msgstr "tager adressen på en destruktionsfunktion" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 msgid "taking address of bound pointer-to-member expression" msgstr "tager adressen på et bundet henvisning til medlem-udtryk" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 msgid "cannot create pointer to reference member `%D'" msgstr "kan ikke oprette henvisning til reference medlemmet '%D'" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 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:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "adresse forespurgt for '%D' som er erklæret 'register'" -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, fuzzy, c-format msgid "%s expression list treated as compound expression" msgstr "klargøringsliste behandlet som et sammensat udtryk" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 #, 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:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "ugyldig static_cast fra typen '%T' til typen '%T'" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 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:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "reinterpret_cast fra '%T' til '%T' mister præcision" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 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:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "ugyldig reinterpret_cast fra typen '%T' til typen '%T'" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 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:4765 +#: cp/typeck.c:4813 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:4782 +#: cp/typeck.c:4830 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "ugyldig const_cast fra typen '%T' til typen '%T'" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 msgid "ISO C++ forbids casting to an array type `%T'" msgstr "ISO C++ forbyder omtvingelse af typen til en tabeltype '%T'" -#: cp/typeck.c:4835 +#: cp/typeck.c:4883 msgid "invalid cast to function type `%T'" msgstr "ugyldig omtvingelse til funktionstypen '%T'" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 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:4937 +#: cp/typeck.c:4985 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:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr " i evaluering af '%Q(%#T, %#T)'" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 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:5219 +#: cp/typeck.c:5267 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "uforenelige typer i tildeling af '%T' til '%T'" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "ISO C++ forbyder tildeling af tabeller" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr " i henvisning til medlemsfunktion-omdannelse" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 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:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 #, 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:5362 +#: cp/typeck.c:5410 #, 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:5432 +#: cp/typeck.c:5480 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:5588 +#: cp/typeck.c:5636 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:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "%s til ikke-henvisningstypen '%T' fra NULL" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 msgid "passing `%T' for %s %P of `%D'" msgstr "overbringelse af '%T' for ikke-henvisnings%s %P af '%D'" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "%s til '%T' fra '%T'" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 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:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "%s af negativ værdi '%E' til `%T'" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 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:5706 +#: cp/typeck.c:5754 msgid "cannot convert `%T' to `%T' in %s" msgstr "kan ikke konvertere '%T' til '%T' i %s" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 msgid "in passing argument %P of `%+D'" msgstr "i overbringelse af parameter %P af '%+D'" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "returnerer reference til midlertidig variabel" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "reference til ikke-venstreværdi returneret" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 msgid "reference to local variable `%D' returned" msgstr "reference til den lokale variabel '%D' returneret" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 msgid "address of local variable `%D' returned" msgstr "adresse af den lokale variabel '%D' returneret" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "returnerer en værdi fra en konstruktionsfunktion" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 #, 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:5995 +#: cp/typeck.c:6043 #, 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:6017 +#: cp/typeck.c:6065 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)" @@ -19260,12 +19269,12 @@ msgstr "intern fejl i generate_bytecode_insn - tr msgid "field initializer type mismatch" msgstr "typen af startværdien for feltet passer ikke" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, fuzzy, c-format msgid "can't create directory %s: %m" msgstr "kan ikke oprette kataloget %s" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, fuzzy, c-format msgid "can't create %s: %m" msgstr "kan ikke oprette %s" @@ -19349,228 +19358,291 @@ msgstr "kan ikke sammens msgid "internal error - invalid Utf8 name" msgstr "intern fejl - ugyldigt UTF-8-navn" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2610 msgid "Missing term" msgstr "Manglende term" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "';' forventet" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "Manglende navn" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "'*' forventet" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "Klasse- eller grænsefladeerklæring forventet" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:835 msgid "Missing class name" msgstr "Manglende klassenavn" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "'{' forventet" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "Manglende superklassenavn" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "Manglende grænsefladenavn" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "Manglende variabelstartværdi" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:981 msgid "Invalid declaration" msgstr "Ugyldig erklæring" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "']' forventet" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "Uafbalanceret ']'" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1024 msgid "Invalid method declaration, method name required" msgstr "Ugyldig metodeerklæring, metodenavn påkrævet" -#: ../../gcc/java/parse.y:1029 ../../gcc/java/parse.y:1034 -#: ../../gcc/java/parse.y:1039 ../../gcc/java/parse.y:2026 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "Kaldenavn forventet" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1044 msgid "Invalid method declaration, return type required" msgstr "Ugyldig metodeerklæring, returtype påkrævet" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "')' forventet" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "Manglende formel parameterterm" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "Manglende kaldenavn" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "Manglende klassetypeterm" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1288 msgid "Invalid interface type" msgstr "Ugyldig grænsefladetype" -#: ../../gcc/java/parse.y:1475 ../../gcc/java/parse.y:1644 -#: ../../gcc/java/parse.y:1646 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "':' forventet" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1507 msgid "Invalid expression statement" msgstr "Ugyldig udtrykssætning" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "'(' forventet" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "Manglende term eller ')'" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "Manglende eller ugyldigt konstant udtryk" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "Manglende term eller ')' forventet" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "Ugyldigt kontroludtryk" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "Ugyldigt opdateringsudtryk" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "Ugyldig klargøringssætning" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "Manglende term eller ')' forventet" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "'class' eller 'this' forventet" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "'class' forventet" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "')' eller term forventet" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "'[' forventet" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "Felt forventet" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "Manglende term og ']' forventet" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "']' forventet, ugyldigt typeudtryk" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "Ugyldigt typeudtryk" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "Ugyldig referencetype" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/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" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "Kun konstruktionsfunktioner kan kalde konstruktionsfunktioner" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr ": '%s' JDK1.1(TM)-facilitet" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" @@ -19579,32 +19651,32 @@ msgstr "" "%s.\n" "%s" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "ugyldigt udformet .zip-arkiv i CLASSPATH: %s" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 "Kan ikke finde standardpakken '%s'. Kontrollér CLASSPATH-miljøvariablen og tilgangen til arkiverne" -#: ../../gcc/java/parse.y:12193 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "manglende statisk felt '%s'" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "ikke et statisk felt '%s'" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "Ingen case for %s" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "ikke-registreret operator %s" @@ -19661,8 +19733,8 @@ msgstr "protokollen '%s' har cirkul msgid "cannot find protocol declaration for `%s'" msgstr "kan ikke finde protokolerklæringen af '%s'" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, c-format msgid "cannot find interface declaration for `%s'" msgstr "kan ikke finde grænsefladeerklæringen af '%s'" @@ -19687,8 +19759,8 @@ msgstr "opretter v 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "" @@ -19702,7 +19774,7 @@ msgstr "kan ikke finde klassen '%s'" msgid "class `%s' already exists" msgstr "klassen '%s' eksisterer allerede" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "'%s' omerklæret som en anden form for symbol" @@ -19863,1590 +19935,1947 @@ msgstr "typen '%T' har ingen destruktionsfunktion" msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "instansvariablen '%s' er erklæret privat" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, 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 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "instansvariablen '%s' er erklæret '%s'" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "statisk tilgang til objekt af typen 'id'" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "ufuldstændig implementering af klassen '%s'" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "ufuldstændig implementering af kategorien '%s'" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "metodedefinitionen for '%c%s' ikke fundet" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, c-format msgid "%s `%s' does not fully implement the `%s' protocol" msgstr "%s '%s' implementerer ikke helt protokollen '%s'" -#: objc/objc-act.c:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "'@end' mangler i implementationskontekst" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "omimplementering af klassen '%s'" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "modstridende superklassenavn '%s'" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "'%s' er tidligere erklæret" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "mere end én grænsefladeerklæring af klassen '%s'" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "mere end én erklæring af protokollen '%s'" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 #, fuzzy msgid "%J%s `%c%s'" msgstr "I %s '%s':" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, 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:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "[super ...] skal optræde i en metodekontekst" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "'@end' skal optræde i en implementationskontekst" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "metodedefinitionen optræder ikke i en klassekontekst" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 #, fuzzy msgid "Display this information" msgstr " --help Vis disse oplysninger\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 #, fuzzy msgid "Do not discard comments" msgstr "Deaktivér ikke pladsregistre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 #, fuzzy msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr " -G Anbring globale og statiske data mindre end byte i en specialsektion (på nogle målarkitekturer)\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 #, fuzzy msgid "Print the name of header files as they are used" msgstr "Udskriv navne på programenheder efterhånden som de oversættes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd 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 -#, fuzzy -msgid "Generate make dependencies" -msgstr "dynamiske afhængigheder.\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 #, fuzzy msgid "Generate make dependencies and compile" msgstr "Generér lilleendet kode" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -#, fuzzy -msgid "Generate phony targets for all headers" -msgstr "Generér kode til Intel as" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 #, fuzzy msgid "-O\tSet optimization level to " msgstr " -O[tal] Sæt optimeringsniveauet til [tal]\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 #, fuzzy msgid "Optimize for space rather than speed" msgstr " -Os Optimér mht. plads i stedet for hastighed\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 #, fuzzy msgid "Do not generate #line directives" msgstr "Generér ikke .size-direktiver" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 #, fuzzy msgid "This switch is deprecated; use -Wextra instead" msgstr "Angiv klassesti (forældet: benyt --classpath i stedet)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "Advar om returnering af struct, union og tabeller" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:108 -msgid "Enable most warning messages" -msgstr "Aktivér de fleste advarselsbeskeder" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:111 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "Advar om omtvingning af funktioner til ikke-kompatible typer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "Advar om typeomtvingning af henvisninger som forøger justeringen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "Advar om typeomtvingninger som forkaster modifikationer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 #, fuzzy msgid "Warn about subscripts whose type is \"char\"" msgstr "Advar som tabelindeksering hvis type er 'char'" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "Advar om typekonverteringer der kan være forvirrende" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 #, fuzzy msgid "Warn when all constructors and destructors are private" msgstr "Advar ikke når alle konstruktions-/destruktionsfunktioner er private" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 #, fuzzy msgid "Warn when a declaration is found after a statement" msgstr "Advar når en erklæring ikke angiver en type" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 #, fuzzy -msgid "Warn about deprecated compiler features" -msgstr "Annoncér ikke forældelse af oversætterfaciliteter" +msgid "Warn if deprecated class, method, or field is used" +msgstr "Advar hvis forældede tomme sætninger bliver fundet" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "Advar om brug af __attribute__((deprecated))-erklæringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "Advar når en optimeringsfase deaktiveres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 #, fuzzy msgid "Warn about compile-time integer division by zero" msgstr "Advar ikke om heltalsdivision på oversættelsestidspunktet med nul" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "Advar om overtrædelser af stilreglerne fra Effective C++" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "Behandl alle advarsler som fejl" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 #, fuzzy msgid "Make implicit function declarations an error" msgstr "Advar om underforståede funktionserklæringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "Advar hvis forældede tomme sætninger bliver fundet" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 #, fuzzy msgid "Warn if testing floating point numbers for equality" msgstr "Advar om lighedssammenligninger mellem kommatal" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 #, fuzzy msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "Advar om printf/scanf/strftime/strfmon-formateringsanormaliteter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 #, fuzzy msgid "Warn if passing too many arguments to a function for its format string" msgstr "for mange parametre til funktionen 'va_start'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 #, fuzzy msgid "Warn about format strings that are not literals" msgstr "Advar om brug af multitegnskonstanter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "Advar om mulige sikkerhedsproblemer i forbindelse med formateringsfunktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 #, fuzzy msgid "Warn about strftime formats yielding 2-digit years" msgstr "Advar ikke om strftime-formateringer med 2-cifres år" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +#, fuzzy +msgid "Enable warnings about inter-procedural problems" +msgstr "Deaktivér advarsler om interprocedurale problemer" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 msgid "Warn about implicit function declarations" msgstr "Advar om underforståede funktionserklæringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 msgid "Warn when a declaration does not specify a type" msgstr "Advar når en erklæring ikke angiver en type" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "Advar når en inline funktion ikke kan indbygges" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 #, fuzzy msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "Advar om brug af #import-direktivet" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 #, fuzzy msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr " -Wlarger-than- Advar hvis et objekt er større end byte\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 #, fuzzy msgid "Do not warn about using \"long long\" when -pedantic" msgstr "Advar ikke om brug af 'long long' når -pedantic benyttes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 #, fuzzy msgid "Warn about suspicious declarations of \"main\"" msgstr "Advar om mistænkelige erklæringer af main" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 msgid "Warn about possibly missing braces around initializers" msgstr "Advar om mulige manglende krøllede paranteser omkring startværdier" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 #, fuzzy msgid "Warn about global functions without previous declarations" msgstr "Advar om globale funktioner uden tidligere erklæringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 msgid "Warn about functions which might be candidates for format attributes" msgstr "Advar om funktioner som kan være kandidater til formateringsegenskaber" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 #, fuzzy msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "Advar om funktioner som kan være kandidater til egenskaben noreturn" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 #, fuzzy msgid "Warn about global functions without prototypes" msgstr "Advar om globale funktioner uden prototyper" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 #, fuzzy msgid "Warn about use of multi-character character constants" msgstr "Advar om brug af multitegnskonstanter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 #, fuzzy msgid "Warn about \"extern\" declarations not at file scope" msgstr "Advar om extern-erklæringer som ikke er ved filvirkefeltsniveauet" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 #, fuzzy msgid "Warn about non-virtual destructors" msgstr "Advar om ikke-virtuelle destruktionsfunktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 #, fuzzy msgid "Warn if a C-style cast is used in a program" msgstr "Advar hvis en typeomtvingning i C-stil benyttes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 #, fuzzy msgid "Warn if an old-style parameter definition is used" msgstr "Advar når en funktionsparameter ikke benyttes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "Advar hvis .class-filer er forældede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "Advar om flertydige virtuelle funktionsnavne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 #, fuzzy msgid "Warn about possibly missing parentheses" msgstr "Advar om mulige manglende paranteser" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 #, fuzzy msgid "Warn when converting the type of pointers to member functions" msgstr "Advar ikke ved typeomdannelse af henvisninger til medlemsfunktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "Advar om beregninger på funktionshenvisninger" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 #, fuzzy msgid "Warn if inherited methods are unimplemented" msgstr "Advar ikk hvis nedarvede metoder ikke implementeres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "Advar om flere erklæring af det samme objekt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "Advar hvis modifikationer angives når det ikke er nødvendigt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "Advar når oversætteren ændrer på ordenen af kode" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "Advar hvis en vælger har flere metoder" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "Advar om mulige brud på sekvenspunktreglerne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "Advar når en lokal variabel skygger for en anden" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 #, fuzzy msgid "Warn about signed-unsigned comparisons" msgstr "Advar om sammenligninger mellem typer med og uden fortegn" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "Advar når flertydiggørelse forfremmer fra unsigned til signed" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 #, fuzzy msgid "Warn about code which might break strict aliasing rules" msgstr "Advar om kode som kan bryde strenge aliasregler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 #, fuzzy msgid "Warn about unprototyped function declarations" msgstr "Advar om funktionserklæringer uden prototype" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "Advar om konstruktioner med overraskende betydninger" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 #, fuzzy msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "Advar om switch-sætninger over enum-typer som mangler default" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "Advar når synteseopførslen adskiller sig fra Cfront" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "Undertryk ikke advarsler fra systeminkluderingsfiler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 #, fuzzy msgid "Warn about features not present in traditional C" msgstr "foreslår undladelse af brug af #elif i traditionel C" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 #, fuzzy msgid "Warn if an undefined macro is used in an #if directive" msgstr "ugyldigt eller ikke-defineret #-direktiv" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "Advar om ikke-klargjorte automatiske variabler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "Advar om ukendte pragmaer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "Advar om kode som aldrig bliver udført" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "Advar når en funktion ikke benyttes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "Advar når en etiket ikke benyttes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "Advar når en funktionsparameter ikke benyttes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "Advar når værdien af et udtryk ikke benyttes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "Advar når en variabel ikke benyttes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 #, fuzzy msgid "-aux-info \tEmit declaration information into " msgstr " -aux-info Udskriv erklæringsoplysninger til \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 #, fuzzy msgid "-d\tEnable dumps from specific passes of the compiler" msgstr " -d[bogstaver] Aktivér dump fra specifikke faser i oversætteren\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 #, fuzzy msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr " -dumpbase Basisnavn til brug for dump fra specifikke faser\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +#, fuzzy +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "Angiv klassesti (forældet: benyt --classpath i stedet)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 #, fuzzy msgid "Enforce class member access control semantics" msgstr "Adlyd ikke tilgangskontrolsemantikker" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "Justér begyndelsen af funktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "Justér etiketter som kun nås ved spring" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "Justér alle etiketter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "Justér begyndelsen af løkker" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "Skift hvornår skabelonsinstanser udsendes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 #, fuzzy msgid "Assume arguments alias neither each other nor globals" msgstr "Antag at parametre ikke er aliaser for hinanden eller for globale variable" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 #, fuzzy msgid "Recognize the \"asm\" keyword" msgstr "Genkend ikke det reserverede ord 'asm'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 #, fuzzy msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "Generér afvindingstabeller eksakt for hver instruktionsgrænse" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +#, 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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +#, 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)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "Slet libU77-indbyggede med dårlige grænseflader" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "Deaktivér libU77-indbyggede med dårlige grænseflader" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +#, fuzzy +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "Deaktivér libU77-indbyggede med dårlige grænseflader" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "Skjul libU77-indbyggede med dårlige grænseflader" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +#, fuzzy +msgid "--bootclasspath=\tReplace system path" +msgstr "Erstat systemsti" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 msgid "Generate code to check bounds before indexing arrays" msgstr "Generér kode til at kontrollere grænserne før tabeller indekseres" # RETMIG: rigtig? -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 #, fuzzy msgid "Replace add, compare, branch with branch on count register" msgstr "Erstat tilføj,sammenlign,forgrening med forgrening på tælleregister" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "Benyt profileringsoplysninger til forgreningssandsynligheder" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 #, fuzzy msgid "Recognize built-in functions" msgstr "Genkend ikke nogen indbyggede funktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 #, fuzzy msgid "-fcall-saved-\tMark as being preserved across functions" msgstr " -fcall-saved- Markér som værende bevaret over funktioner\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 #, fuzzy msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr " -fcall-used- Markér som værende benyttet af funktionskald\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 #, fuzzy msgid "Save registers around function calls" msgstr "Aktivér gemning af registrer omkring funktionskald" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "Program skrives med streng blanding af store/små bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "Oversæt som hvis programmet var skrevet med små bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +#, fuzzy +msgid "Preserve case used in program" +msgstr "Bevar al stavning (store/små bogstaver) benyttet i programmet" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "Program skrives med små bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "Program skrives med store bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "Oversæt som hvis programmet var skrevet med store bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "Kontrollér returværdien for new" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "Anbring ikke uklargjorte globale variabler i den fælles sektion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 #, fuzzy msgid "Allow the arguments of the '?' operator to have different types" msgstr "operander til ?: har forskellige typer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 #, fuzzy msgid "Reduce the size of object files" msgstr "Reducér størrelsen af objektfiler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 #, fuzzy msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "Gør strengkonstanter til 'char[]' i stedet for 'const char[]'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 #, fuzzy msgid "Perform a register copy-propagation optimization pass" msgstr "Foretag registerkopipropageringsoptimering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "Udfør krydsspringsoptimering" # RETMIG: hvad er CSE? -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "Ved kørsel af CSE følg spring til deres mål" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "Ved kørsel af CSE følg betingede spring" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 #, fuzzy msgid "Place data items into their own section" msgstr "placér dataelementer i deres egen sektion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "Udsend speciel fejlanalyseringsinfo for COMMON og EQUIVALENCE (deaktiveret)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 #, fuzzy msgid "Inline member functions by default" msgstr "Integrér ikke medlemsfunktioner som standard" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "Vent med fjernelse af funktionsparametre fra stakken til senere" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "Forsøg at udfylde ventepladser med forgreningsinstruktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "Fjern ubrugelige nul-henvisningstjek" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +#, fuzzy +msgid "Allow '$' in symbol names" +msgstr "Tillad $ i symbolnavne" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 #, fuzzy msgid "Permit '$' as an identifier character" msgstr "formatering er en bredtegnsstreng" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 msgid "Suppress output of instruction numbers and line number notes in debugging dumps" msgstr "Undtryk udskrift af instruktionstal og linjenummernoter i fejlfindingsdump" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "Udfør DWARF2-eliminering af dubletter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "Lad forenden emulere COMPLEX-beregninger for at undgå fejl" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +#, fuzzy +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "Vælg inddatakodning (standardværdi kommer fra regionalindstillinger)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 #, fuzzy msgid "Generate code to check exception specifications" msgstr "Generér ikke kode til at kontrollere undtagelsesspecifikationer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "Aktivér undtagelseshåndtering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "Udfør et antal mindre, dyre optimeringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +#, fuzzy +msgid "f2c-compatible code can be generated" +msgstr "f2c-kompatibel kode behøver ikke at blive genereret" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "Slet f2c-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "Deaktivér f2c-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "Deaktivér f2c-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "Skjul f2c-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +#, fuzzy +msgid "Unsupported; generate libf2c-calling code" +msgstr "Ikke-understøttet; generér ikke libf2c-kaldende kode" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "Program er skrevet i typisk FORTRAN 66-dialekt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +#, fuzzy +msgid "Program is written in typical Unix-f77 dialect" +msgstr "Program er skrevet i typisk Unix f77-dialekt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "Program er skrevet i Fortran 90-agtig dialekt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "Slet F90-understøttelse af ikke-FORTRAN-77-indbyggede " + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "Deaktivér F90-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "Deaktivér F90-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "Skjul F90-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 #, fuzzy msgid "Assume no NaNs or infinities are generated" msgstr "Antag at ingen NaN eller +-Inf bliver genereret" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 #, fuzzy msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr " -ffixed- Markér som værende utilgængeligt for oversætteren\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +#, fuzzy +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr " -finline-limit= Begræns størrelsen af inlie funktion til \n" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +#, fuzzy +msgid "Unsupported; affects code generation of arrays" +msgstr "Ikke-understøttet; påvirker kodegenerering af tabeller" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "Lagr ikke kommatal i registre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 #, fuzzy msgid "Scope of for-init-statement variables is local to the loop" msgstr "Udvid virkefeltet for variabler i for-klargøringssætninger" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 #, fuzzy msgid "Copy memory address constants into registers before use" msgstr "Kopiér hukommelsesadressekonstanter ind i registre før brug" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "Kontrollér altid for ikke-GCJ-genererede klassearkiver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 #, fuzzy msgid "Copy memory operands into registers before use" msgstr "Kopiér hukommelsesoperander ind i registre før brug" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "Generér kode for at tjekke indekserings- og understrengsgrænser" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "Program er skrevet i Fortran 90-agtig fri stil" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 #, fuzzy msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "Antag at standardbibliotekerne og main måske ikke eksisterer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "Tillad funktionsadresser at blive opbevaret i registre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 #, fuzzy msgid "Place each function into its own section" msgstr "placér hver funktion i dens egen sektion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 #, fuzzy msgid "Perform global common subexpression elimination" msgstr "Udfør global eliminering af fælles underudtryk" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 #, fuzzy msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "Udfør forbedret indlæsningsbevægelse under eliminering af fælles underudtryk" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 #, fuzzy msgid "Perform store motion after global common subexpression elimination" msgstr "Udfør lagringsbevægelse efter eliminering af fælles underudtryk" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +#, fuzzy +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "Deaktivér fatale diagnosticeringer af interprocedurale procedurer" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "Slet g77-understøttelse af ikke-FORTRAN-77-indbyggede " + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "Deaktivér g77-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +#, fuzzy +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "Deaktivér g77-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "Skjul g77-understøttelse af ikke-FORTRAN-77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 #, fuzzy msgid "Recognize GNU-defined keywords" msgstr "Genkend ikke GNU-definerede reserverede ord" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "Generér kode til GNU-kørselmiljø" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 #, fuzzy msgid "Enable guessing of branch probabilities" msgstr "Aktivér gæt af forgreningssandsynligheder" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "Antag normalt C-kørselsmiljø" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "Aktivér understøttelse af enorme objekter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "Behandl #ident-direktiver" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "Udfør konvertering af betingede spring til forgreningsløse ækvivalenter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "Udfør konvertering af betingede spring til betinget udførsel" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "Eksportér funktioner også selvom de kan integreres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 #, fuzzy msgid "Emit implicit instantiations of inline templates" msgstr "Udsend kun eksplicitte instatieringer af indlejrede skabeloner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 #, fuzzy msgid "Emit implicit instantiations of templates" msgstr "Udsend kun eksplicitte instatieringer af indlejrede skabeloner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "Benyt afsætstabeller til virtuelle metodekald" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr "Generér ikke .size-direktiver" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" +msgstr "Klargør lokale variable og tabeller til nul" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 #, fuzzy msgid "Pay attention to the \"inline\" keyword" msgstr "Læg mærke til 'inline'-nøgleordet" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" -msgstr "Integrér simple funktioner i deres kaldere" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 #, fuzzy msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr " -finline-limit= Begræns størrelsen af inlie funktion til \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 #, fuzzy msgid "Instrument function entry and exit with profiling calls" msgstr "Instrumentér funktionsindgange/-afslutninger med profileringskald" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "Der skelnes ikke mellem små og store bogstaver i indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "Indbyggede staves som f.eks. SqRt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +#, fuzzy +msgid "Intrinsics in lowercase" +msgstr "Indbyggede staves med store bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "Indbyggede staves med store bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "Antag at indfødte funktioner er implementeret vha. JNI" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 #, fuzzy msgid "Generate code for functions even if they are fully inlined" msgstr "Generér kode for funktioner selv hvis de indlejres helt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "Konstruér statiske, konstante variabler selv hvis de ikke bruges" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 #, fuzzy msgid "Give external symbols a leading underscore" msgstr "Eksterne symboler har indledende understreg" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 #, fuzzy msgid "Perform loop optimizations" msgstr "Udfør løkkeoptimeringerne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "Der skelnes ikke mellem små og store bogstaver i sprognøgleord" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "Sprognøgleord staves som f.eks. IOStat" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +#, fuzzy +msgid "Language keywords in lowercase" +msgstr "Sprognøgleord staves med store bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "Sprognøgleord staves med store bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "Sæt errno efter indbyggede matematikfunktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 #, fuzzy msgid "Report on permanent memory allocation" msgstr "Rapportér om permanente hukommelsesallokering ved afslutningen af kørslen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "Forsøg at forene identiske konstanter og konstante variabler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "Forsøg at forene identiske konstanter over forskellige oversættelsesenheder" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 #, fuzzy msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr " -fmessage-length= Begræns længden af diagnosticeringmeddelelser til længden tegn/linje. 0 undertrykker linjeombrydning\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "Slet MIL-STD 1753-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "Deaktivér MIL-STD 1753-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +#, fuzzy +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "Deaktivér MIL-STD 1753-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "Skjul MIL-STD 1753-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "Tving alle løkkeinvariansberegninger ud af løkker" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 #, fuzzy msgid "Don't warn about uses of Microsoft extensions" msgstr "Udsend ikke pedantiske advarsler om brug af Microsoft-udvidelser" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 #, fuzzy msgid "Use graph-coloring register allocation" msgstr "Allokér registre vha. graffarvning" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 #, fuzzy msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "Generér kode til NeXT-kørselmiljø" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "Understøt synkrone ikke-kaldende undtagelser" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "Udfør løkkeudrulning for alle løkker" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "Udfør løkkeudrulning når iterationsantallet er kendt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "Generér ikke stakrammer når det kan undgås" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "Tag i det mindste et skridt gennem hver DO-løkke" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 #, fuzzy msgid "Do the full register move optimization pass" msgstr "Foretag en komplet registerflytningsoptimering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "Optimér søskende- og halerekursive kald" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +#, fuzzy +msgid "Enable optimization of static class initialization code" +msgstr "Optimér aldrig statiske klassers klargøringskode" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 #, fuzzy msgid "Enable optional diagnostics" msgstr "Deaktivér valgfrie diagnosticeringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "Pak strukturmedlemmer sammen uden mellemrum" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 #, fuzzy msgid "Return small aggregates in memory, not registers" msgstr "Returnér små sammensatte værdier i hukommelsen, ikke i registre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +msgid "Warn about use of (only a few for now) Fortran extensions" +msgstr "Advar om brug af (i øjeblikket kun nogle få) Fortran-udvidelser" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 #, fuzzy msgid "Perform loop peeling" msgstr "Udfør løkkeoptimeringerne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "Aktivér maskinspecifikke kighulsoptimeringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 #, fuzzy msgid "Enable an RTL peephole pass before sched2" msgstr "Aktivér en RTL-kikhulsfase før sched2" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "Nedgradér standardoverholdelsesfejl til advarsler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 #, fuzzy msgid "Generate position-independent code if possible" msgstr "Generér placeringsuafhængig kode, om muligt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 #, fuzzy msgid "Generate position-independent code for executables if possible" msgstr "Generér placeringsuafhængig kode, om muligt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "Generér præhentningsinstruktioner, hvis tilgængelige, for tabeller i løkker" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "Aktivér basal programprofileringskode" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 #, fuzzy msgid "Insert arc-based program profiling code" msgstr "Indsæt buebaseret programprofileringskode" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "Styrkereducér alle generelle løkkeinduktionsvariabler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 #, fuzzy msgid "Return small aggregates in registers" msgstr "Returnér små sammensatte værdier i registre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "Aktivér en registerflytningsoptimering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 #, fuzzy msgid "Perform a register renaming optimization pass" msgstr "Foretag registeromdøbningsoptimering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "Omordn basisblokke for at forbedre kodeplacering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "Omordn funktioner for at forbedre kodeplacering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "Aktivér automatisk skabelonsinstantiering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 #, fuzzy msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "Kør CSE-fase efter løkkeoptimeringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "Kør løkkeoptimeringen to gange" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 #, fuzzy msgid "Generate run time type descriptor information" msgstr "Generér ikke typebeskrivelsesoplysninger til kørselstidspunktet" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "Aktivér planlægning over basisblokke" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "Tillad spekulativ bevægelse af ikke-indlæsninger" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "Tillad spekulativ bevægelse af nogle indlæsninger" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "Tillad spekulativ bevægelse af flere indlæsninger" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 #, fuzzy msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr " -fsched-verbose= Angiv hvor meget planlæggeren skal fortælle\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "Omplanlæg instruktioner før registerallokering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "Omplanlæg instruktioner efter registerallokering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +#, fuzzy +msgid "Allow appending a second underscore to externals" +msgstr "Tilføj aldrig en anden understreg til eksterne variable" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "Markér data som delt snarere end privat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "Benyt den samme størrelse til double som til float" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 #, fuzzy msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "Overskriv den underliggende type af wchar_t til 'unsigned short'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "Deaktivér optimeringer som kan opdages ved IEEE-signalerende NaN'er" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 #, fuzzy msgid "Make \"char\" signed by default" msgstr "Lad 'char' være med fortegn som standard" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +#, fuzzy +msgid "Do not print names of program units as they are compiled" +msgstr "Udskriv navne på programenheder efterhånden som de oversættes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 #, fuzzy msgid "Convert floating point constants to single precision constants" msgstr "Konvertér kommatalskonstanter til enkeltpræcisionskonstanter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +#, fuzzy +msgid "Internally convert most source to lowercase" +msgstr "Konvertér det meste kildekode til store bogstaver internt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "Bevar de store/små bogstaver i kildekoden internt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "Konvertér det meste kildekode til store bogstaver internt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "Indsæt stakkontrolleringskode i programmet" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "Vis statistik som indsamles under oversættelsen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +#, fuzzy +msgid "Enable assignability checks for stores into object arrays" +msgstr "Deaktivér tildelingstjek for lagringer i objekttabeller" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "Udfør styrkereduceringsoptimeringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "Antag at strenge aliasregler skal anvendes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "Symbolnavne staves med en blanding af store og små bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "Symbolnavne staves med små bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "Symbolnavne staves med store bogstaver" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "Kontrollér syntaks og stop derefter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 #, fuzzy msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "Angiv maksimal skabelonsinstantieringsdybde" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 #, fuzzy msgid "Create data files needed by \"gcov\"" msgstr "Opret datafiler som gcov har brug for" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "Udfør springtrådningsoptimeringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "Udfør superbloksformering vha. haleduplikering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 #, fuzzy msgid "Assume floating-point operations can trap" msgstr "Kommatalsoperationer kan fange" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "Gør præfiks-grundtal ikke-decimale konstanter typeløse" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +#, fuzzy +msgid "Allow all ugly features" +msgstr "Forbyd alle grimme faciliteter" + +# hollerith? +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +#, fuzzy +msgid "Hollerith and typeless can be passed as arguments" +msgstr "Hollerith og typeløse konstanter overbringes ikke som parametre" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "Tillad almindelig kopiering af ASSIGN'ede variable" + +# RETMIG: ? +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "Dummy-tabel dimensioneret til (1) er antaget størrelse" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "Afsluttende komma i procedurekald angiver nulparameter" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "Tillad REAL(Z) og AIMAG(Z) givet DOUBLE COMPLEX Z" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +#, fuzzy +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "Klargøring via DATA og PARAMETER er type-kompatible" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "Tillad INTEGER og LOGICAL på hinandens plads" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +#, fuzzy +msgid "Append underscores to externals" +msgstr "Tilføj aldrig en anden understreg til eksterne variable" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 #, fuzzy msgid "Compile whole compilation unit at a time" msgstr "Anbring hele oversættelsesenheden i en fil" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "Slet libU77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "Deaktivér libU77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +#, fuzzy +msgid "Enable libU77 intrinsics" +msgstr "Deaktivér libU77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "Skjul libU77-indbyggede" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 #, fuzzy msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "Tillad matematikoptimeringer der kan overtræde IEEE- eller ANSI-standarderne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 #, fuzzy msgid "Make \"char\" unsigned by default" msgstr "Lad 'char' være uden fortegn som standard" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 #, fuzzy msgid "Perform loop unswitching" msgstr "Udfør løkkeoptimeringerne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "Generér blot afvindingstabeller for undtagelseshåndtering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "Benyt __cxa_atexit til at registrere destruktionsfunktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "Tilføj ekstra kommentarer til menneskeligt læsbar maskinkodeuddata" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +#, fuzzy +msgid "Print g77-specific version information and run internal tests" +msgstr "Udskriv g77-specifik oversætterversioninfo, kør interne test" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 #, fuzzy msgid "Use expression value profiles in optimizations" msgstr "Aktivér sammenkæderoptimeringer" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "Kassér ubrugte virtuelle funktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "Implementér virtuelle tabeller vha. thunk-kode" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "Program er skrevet i VXT (Digital-agtig) FORTRAN" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Slet VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede " + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Deaktivér VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede " + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Deaktivér VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede " + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Skjul VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede " + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "Udsend almindelige symboler som svage symboler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "Gem strenge i en skrivbar datasektion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "Udsend krydsreferenceoplysninger" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +#, fuzzy +msgid "Print internal debugging-related information" +msgstr "Udskriv intern fejlanalyseringsrelateret info" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "Anbring nul-klargjorte data i bss-sektionen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "Behandl begyndelsesværdier på 0 som værdier forskellig fra nul" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 #, fuzzy msgid "Generate debug information in default format" msgstr "Generér fejlfindingsinfo i standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 #, fuzzy msgid "Generate debug information in COFF format" msgstr "Generér fejlfindingsinfo i standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 #, fuzzy msgid "Generate debug information in DWARF v2 format" msgstr "Generér fejlfindingsinfo i standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 #, fuzzy msgid "Dump declarations to a .decl file" msgstr "Udskriv erklæringer i en .decl-fil" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 #, fuzzy msgid "Generate debug information in default extended format" msgstr "Generér fejlfindingsinfo i udvidet standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 #, fuzzy msgid "Generate debug information in STABS format" msgstr "Generér fejlfindingsinfo i standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 #, fuzzy msgid "Generate debug information in extended STABS format" msgstr "Generér fejlfindingsinfo i udvidet standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 #, fuzzy msgid "Generate debug information in VMS format" msgstr "Generér fejlfindingsinfo i standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 #, fuzzy msgid "Generate debug information in XCOFF format" msgstr "Generér fejlfindingsinfo i standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 #, fuzzy msgid "Generate debug information in extended XCOFF format" msgstr "Generér fejlfindingsinfo i udvidet standardformat" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 #, fuzzy msgid "-o \tPlace output into " msgstr " -o Anbring uddata i \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 #, fuzzy msgid "Enable function profiling" msgstr "MIPS16-funktionsprofilering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 #, fuzzy msgid "Generate C header of platform-specific features" msgstr "Generér C-inkluderingsfil med platformspecifikke faciliteter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 #, fuzzy msgid "Do not display functions compiled or elapsed time" msgstr " -quiet Vis ikke funktioner der oversættes eller forløbet tid\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 #, fuzzy msgid "Remap file names when including files" msgstr "tomt filnavn i #%s" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 #, fuzzy msgid "Enable traditional preprocessing" msgstr "Aktivér stakprøvning" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 #, fuzzy msgid "Enable verbose output" msgstr "Aktivér fejlanalyseringsuddata" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -#, fuzzy -msgid "Display the compiler's version" -msgstr " -version Udskriv oversætterens version\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 #, fuzzy msgid "Suppress warnings" msgstr "%s: advarsel: " -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "'-p' understøttes ikke; brug '-pg' og gprof(1)" @@ -21460,7 +21889,7 @@ msgstr "GNU C underst msgid "GCC does not support -CC without using -E" msgstr "GNU C understøtter ikke -CC uden -E" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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" @@ -22367,6 +22796,9 @@ msgstr "-mno-cygwin og -mnowin32 er indbyrdes uforenelige" #~ 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" @@ -22397,6 +22829,9 @@ msgstr "-mno-cygwin og -mnowin32 er indbyrdes uforenelige" #~ 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" @@ -22430,6 +22865,9 @@ msgstr "-mno-cygwin og -mnowin32 er indbyrdes uforenelige" #~ 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" @@ -23082,236 +23520,24 @@ msgstr "-mno-cygwin og -mnowin32 er indbyrdes uforenelige" #~ 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 "Print g77-specific compiler version info, run internal tests" -#~ msgstr "Udskriv g77-specifik oversætterversioninfo, kør interne test" - -#~ msgid "Program is written in typical FORTRAN 66 dialect" -#~ msgstr "Program er skrevet i typisk FORTRAN 66-dialekt" - -#~ msgid "Program is written in typical Unix f77 dialect" -#~ msgstr "Program er skrevet i typisk Unix f77-dialekt" - #~ msgid "Program does not use Unix-f77 dialectal features" #~ msgstr "Program benytter ikke Unix f77-dialektiske faciliteter" -#~ msgid "Program is written in Fortran-90-ish dialect" -#~ msgstr "Program er skrevet i Fortran 90-agtig dialekt" - -#~ 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" - -#~ msgid "Allow $ in symbol names" -#~ msgstr "Tillad $ i symbolnavne" - -#~ msgid "f2c-compatible code need not be generated" -#~ msgstr "f2c-kompatibel kode behøver ikke at blive genereret" - -#~ msgid "Unsupported; do not generate libf2c-calling code" -#~ msgstr "Ikke-understøttet; generér ikke libf2c-kaldende kode" - -#~ msgid "Unsupported; affects code-generation of arrays" -#~ msgstr "Ikke-understøttet; påvirker kodegenerering af tabeller" - -#~ msgid "Program is written in Fortran-90-ish free form" -#~ msgstr "Program er skrevet i Fortran 90-agtig fri stil" - -#~ msgid "Warn about use of (only a few for now) Fortran extensions" -#~ msgstr "Advar om brug af (i øjeblikket kun nogle få) Fortran-udvidelser" - -#~ msgid "Program is written in VXT (Digital-like) FORTRAN" -#~ msgstr "Program er skrevet i VXT (Digital-agtig) FORTRAN" - -#~ msgid "Disallow all ugly features" -#~ msgstr "Forbyd alle grimme faciliteter" - -# hollerith? -#~ msgid "Hollerith and typeless constants not passed as arguments" -#~ msgstr "Hollerith og typeløse konstanter overbringes ikke som parametre" - -#~ msgid "Allow ordinary copying of ASSIGN'ed vars" -#~ msgstr "Tillad almindelig kopiering af ASSIGN'ede variable" - -# RETMIG: ? -#~ msgid "Dummy array dimensioned to (1) is assumed-size" -#~ msgstr "Dummy-tabel dimensioneret til (1) er antaget størrelse" - -#~ msgid "Trailing comma in procedure call denotes null argument" -#~ msgstr "Afsluttende komma i procedurekald angiver nulparameter" - -#~ msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" -#~ msgstr "Tillad REAL(Z) og AIMAG(Z) givet DOUBLE COMPLEX Z" - -#~ msgid "Initialization via DATA and PARAMETER is type-compatible" -#~ msgstr "Klargøring via DATA og PARAMETER er type-kompatible" - -#~ msgid "Allow INTEGER and LOGICAL interchangeability" -#~ msgstr "Tillad INTEGER og LOGICAL på hinandens plads" - -#~ msgid "Print internal debugging-related info" -#~ msgstr "Udskriv intern fejlanalyseringsrelateret info" - -#~ msgid "Initialize local vars and arrays to zero" -#~ msgstr "Klargør lokale variable og tabeller til nul" - -#~ msgid "Backslashes in character/hollerith constants not special (C-style)" -#~ msgstr "Omvendte skråstreger i tegn/hollerith-konstanter er ikke specielle (C-stil)" - -#~ msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" -#~ msgstr "Lad forenden emulere COMPLEX-beregninger for at undgå fejl" - #~ msgid "Disable the appending of underscores to externals" #~ msgstr "Deaktivér tilføjelse af understreger bag på eksterne variable" -#~ msgid "Never append a second underscore to externals" -#~ msgstr "Tilføj aldrig en anden understreg til eksterne variable" - -#~ msgid "Intrinsics spelled as e.g. SqRt" -#~ msgstr "Indbyggede staves som f.eks. SqRt" - -#~ msgid "Intrinsics in uppercase" -#~ msgstr "Indbyggede staves med store bogstaver" - -#~ msgid "Intrinsics letters in arbitrary cases" -#~ msgstr "Der skelnes ikke mellem små og store bogstaver i indbyggede" - -#~ msgid "Language keywords spelled as e.g. IOStat" -#~ msgstr "Sprognøgleord staves som f.eks. IOStat" - -#~ msgid "Language keywords in uppercase" -#~ msgstr "Sprognøgleord staves med store bogstaver" - -#~ msgid "Language keyword letters in arbitrary cases" -#~ msgstr "Der skelnes ikke mellem små og store bogstaver i sprognøgleord" - -#~ msgid "Internally convert most source to uppercase" -#~ msgstr "Konvertér det meste kildekode til store bogstaver internt" - -#~ msgid "Internally preserve source case" -#~ msgstr "Bevar de store/små bogstaver i kildekoden internt" - -#~ msgid "Symbol names spelled in mixed case" -#~ msgstr "Symbolnavne staves med en blanding af store og små bogstaver" - -#~ msgid "Symbol names in uppercase" -#~ msgstr "Symbolnavne staves med store bogstaver" - -#~ msgid "Symbol names in lowercase" -#~ msgstr "Symbolnavne staves med små bogstaver" - -#~ msgid "Program written in uppercase" -#~ msgstr "Program skrives med store bogstaver" - -#~ msgid "Program written in lowercase" -#~ msgstr "Program skrives med små bogstaver" - -#~ msgid "Program written in strict mixed-case" -#~ msgstr "Program skrives med streng blanding af store/små bogstaver" - -#~ msgid "Compile as if program written in uppercase" -#~ msgstr "Oversæt som hvis programmet var skrevet med store bogstaver" - -#~ msgid "Compile as if program written in lowercase" -#~ msgstr "Oversæt som hvis programmet var skrevet med små bogstaver" - -#~ msgid "Preserve all spelling (case) used in program" -#~ msgstr "Bevar al stavning (store/små bogstaver) benyttet i programmet" - -#~ msgid "Delete libU77 intrinsics with bad interfaces" -#~ msgstr "Slet libU77-indbyggede med dårlige grænseflader" - -#~ msgid "Disable libU77 intrinsics with bad interfaces" -#~ msgstr "Deaktivér libU77-indbyggede med dårlige grænseflader" - -#~ msgid "Hide libU77 intrinsics with bad interfaces" -#~ msgstr "Skjul libU77-indbyggede med dårlige grænseflader" - -#~ msgid "Delete non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Slet f2c-understøttelse af ikke-FORTRAN-77-indbyggede" - -#~ msgid "Disable non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Deaktivér f2c-understøttelse af ikke-FORTRAN-77-indbyggede" - -#~ msgid "Hide non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Skjul f2c-understøttelse af ikke-FORTRAN-77-indbyggede" - -#~ msgid "Delete non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Slet F90-understøttelse af ikke-FORTRAN-77-indbyggede " - -#~ msgid "Disable non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Deaktivér F90-understøttelse af ikke-FORTRAN-77-indbyggede" - -#~ msgid "Hide non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Skjul F90-understøttelse af ikke-FORTRAN-77-indbyggede" - -#~ msgid "Delete non-FORTRAN-77 intrinsics g77 supports" -#~ msgstr "Slet g77-understøttelse af ikke-FORTRAN-77-indbyggede " - -#~ msgid "Disable non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Deaktivér g77-understøttelse af ikke-FORTRAN-77-indbyggede" - -#~ msgid "Hide non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Skjul g77-understøttelse af ikke-FORTRAN-77-indbyggede" - -#~ msgid "Delete MIL-STD 1753 intrinsics" -#~ msgstr "Slet MIL-STD 1753-indbyggede" - -#~ msgid "Disable MIL-STD 1753 intrinsics" -#~ msgstr "Deaktivér MIL-STD 1753-indbyggede" - -#~ msgid "Hide MIL-STD 1753 intrinsics" -#~ msgstr "Skjul MIL-STD 1753-indbyggede" - -#~ msgid "Delete libU77 intrinsics" -#~ msgstr "Slet libU77-indbyggede" - -#~ msgid "Disable libU77 intrinsics" -#~ msgstr "Deaktivér libU77-indbyggede" - -#~ msgid "Hide libU77 intrinsics" -#~ msgstr "Skjul libU77-indbyggede" - -#~ msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Slet VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede " - -#~ msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Deaktivér VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede " - -#~ msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Skjul VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede " - -#~ msgid "Treat initial values of 0 like non-zero values" -#~ msgstr "Behandl begyndelsesværdier på 0 som værdier forskellig fra nul" - -#~ msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" -#~ msgstr "Udsend speciel fejlanalyseringsinfo for COMMON og EQUIVALENCE (deaktiveret)" - -#~ msgid "Take at least one trip through each iterative DO loop" -#~ msgstr "Tag i det mindste et skridt gennem hver DO-løkke" - -#~ msgid "Disable fatal diagnostics about inter-procedural problems" -#~ msgstr "Deaktivér fatale diagnosticeringer af interprocedurale procedurer" - -#~ msgid "Make prefix-radix non-decimal constants be typeless" -#~ msgstr "Gør præfiks-grundtal ikke-decimale konstanter typeløse" - -#~ msgid "Generate code to check subscript and substring bounds" -#~ msgstr "Generér kode for at tjekke indekserings- og understrengsgrænser" - #~ msgid "Fortran-specific form of -fbounds-check" #~ msgstr "Fortran-specifik form for -fbounds-check" -#~ msgid "Disable warnings about inter-procedural problems" -#~ msgstr "Deaktivér advarsler om interprocedurale problemer" - -#~ msgid "Warn about constructs with surprising meanings" -#~ msgstr "Advar om konstruktioner med overraskende betydninger" - #~ msgid "Add a directory for INCLUDE searching" #~ msgstr "Tilføj et katalog til INCLUDE-søgning" @@ -23324,48 +23550,18 @@ msgstr "-mno-cygwin og -mnowin32 er indbyrdes uforenelige" #~ msgid "Disable automatic array bounds checking" #~ msgstr "Deaktivér automatisk tabelgrænsekontrollering" -#~ msgid "Disable assignability checks for stores into object arrays" -#~ msgstr "Deaktivér tildelingstjek for lagringer i objekttabeller" - -#~ msgid "Assume native functions are implemented using JNI" -#~ msgstr "Antag at indfødte funktioner er implementeret vha. JNI" - -#~ msgid "Replace system path" -#~ msgstr "Erstat systemsti" - #~ 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 "Choose input encoding (default comes from locale)" -#~ msgstr "Vælg inddatakodning (standardværdi kommer fra regionalindstillinger)" - #~ 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 "Warn if modifiers are specified when not necessary" -#~ msgstr "Advar hvis modifikationer angives når det ikke er nødvendigt" - -#~ msgid "Warn if deprecated empty statements are found" -#~ msgstr "Advar hvis forældede tomme sætninger bliver fundet" - -#~ msgid "Warn if .class files are out of date" -#~ msgstr "Advar hvis .class-filer er forældede" - -#~ msgid "Always check for non gcj generated classes archives" -#~ msgstr "Kontrollér altid for ikke-GCJ-genererede klassearkiver" - -#~ msgid "Never optimize static class initialization code" -#~ msgstr "Optimér aldrig statiske klassers klargøringskode" - -#~ msgid "Use offset tables for virtual method calls" -#~ msgstr "Benyt afsætstabeller til virtuelle metodekald" - #~ msgid "`%s' cannot be statically allocated" #~ msgstr "'%s' kan ikke allokeres statisk" @@ -23826,6 +24022,9 @@ msgstr "-mno-cygwin og -mnowin32 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" diff --git a/gcc/po/de.po b/gcc/po/de.po index cfadd5e8ce2..8f7eb5dd01d 100644 --- a/gcc/po/de.po +++ b/gcc/po/de.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.4-b20040206\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2004-02-15 12:14+0100\n" "Last-Translator: Roland Stigge \n" "Language-Team: German \n" @@ -36,15 +36,15 @@ msgstr "Attribut »%s« kann nicht auf Typen angewandt werden" msgid "`%s' attribute only applies to function types" msgstr "Attribut »%s« kann nur auf Funktionstypen angewandt werden" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -119,7 +119,7 @@ msgstr "(Sie sollten also »%s« statt »%s« an »va_arg« übergeben)" #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "" @@ -284,259 +284,259 @@ msgid "invalid application of `%s' to a void type" msgstr "ungültige Anwendung von »%s« auf einen void-Typen" #: c-common.c:2951 -#, c-format -msgid "invalid application of `%s' to an incomplete type" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " msgstr "ungültige Anwendung von »%s« auf einen unvollständigen Typen" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "»__alignof« auf Bitfeld angewandt" -#: c-common.c:3483 +#: c-common.c:3484 #, c-format msgid "cannot disable built-in function `%s'" msgstr "kann eingebaute Funktion »%s« nicht abschalten" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "zu wenig Argumente für Funktion »%s«" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "zu viele Argumente für Funktion »%s«" -#: c-common.c:3669 +#: c-common.c:3670 #, c-format msgid "non-floating-point argument to function `%s'" msgstr "nicht-Gleitkomma-Argument für Funktion »%s«" -#: c-common.c:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "Zeiger sind nicht als case-Werte zugelassen" -#: c-common.c:3900 +#: c-common.c:3901 msgid "range expressions in switch statements are non-standard" msgstr "Wertebereichsausdrücke in switch-Anweisungen sind nicht standardkonform" -#: c-common.c:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "leerer Wertebereich angegeben" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "doppelte (oder sich überschneidende) case-Werte" -#: c-common.c:3981 +#: c-common.c:3982 msgid "%Jthis is the first entry overlapping that value" msgstr "%Jdies ist der erste Eintrag, der diesen Wert überschneidet" -#: c-common.c:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "doppelter case-Wert" -#: c-common.c:3986 +#: c-common.c:3987 msgid "%Jpreviously used here" msgstr "%Jbereits hier verwendet" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "mehrere Standardmarken in einem »switch«" -#: c-common.c:3991 +#: c-common.c:3992 msgid "%Jthis is the first default label" msgstr "%Jdies ist die erste Standardmarke" -#: c-common.c:4016 +#: c-common.c:4017 msgid "taking the address of a label is non-standard" msgstr "das Ermitteln der Adresse einer Marke ist nicht standardkonform" -#: c-common.c:4062 +#: c-common.c:4063 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:4067 +#: c-common.c:4068 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" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "unbekannter Maschinenzustand »%s«" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "kein Datentyp für Zustand »%s«" -#: c-common.c:4655 +#: c-common.c:4656 #, c-format msgid "invalid pointer mode `%s'" msgstr "ungültiger Zeigermodus »%s«" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, c-format msgid "unable to emulate '%s'" msgstr "»%s« kann nicht emuliert werden" -#: c-common.c:4706 +#: c-common.c:4707 msgid "%Jsection attribute cannot be specified for local variables" msgstr "%JAbschnitts-Attribut kann nicht für lokale Variablen angegeben werden" -#: c-common.c:4717 +#: c-common.c:4718 msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "%JAbschnitt von »%D« in Konflikt mit vorheriger Deklaration" -#: c-common.c:4726 +#: c-common.c:4727 msgid "%Jsection attribute not allowed for '%D'" msgstr "%JAbschnitts-Attribute nicht erlaubt für »%D«" -#: c-common.c:4732 +#: c-common.c:4733 msgid "%Jsection attributes are not supported for this target" msgstr "%JAbschnitts-Attribute werden für dieses Ziel nicht unterstützt" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "verlangte Ausrichtung ist keine Konstante" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "verlangte Ausrichtung ist keine Zweierpotenz" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "verlangte Ausrichtung ist zu groß" -#: c-common.c:4806 +#: c-common.c:4807 msgid "%Jalignment may not be specified for '%D'" msgstr "%Jfür »%D« darf keine Ausrichtung angegeben werden" -#: c-common.c:4844 +#: c-common.c:4845 msgid "%J'%D' defined both normally and as an alias" msgstr "%J»%D« sowohl normal als auch als Alias definiert" -#: c-common.c:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "Alias-Argument ist keine Zeichenkette" -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "Sichtbarkeitsargument ist keine Zeichenkette" -#: c-common.c:4910 +#: c-common.c:4911 msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\"" msgstr "Sichtbarkeitsargument muss »default«, »hidden«, »protected« oder »internal« sein" -#: c-common.c:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "Argument für tls_model ist keine Zeichenkette" -#: c-common.c:4945 +#: c-common.c:4946 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:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 msgid "%J'%E' attribute applies only to functions" msgstr "%JAttribut »%E« kann nur auf Funktionen angewandt werden" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 msgid "%Jcan't set '%E' attribute after definition" msgstr "%Jkann Attribut »%E« nicht nach der Definition setzen" -#: c-common.c:5094 +#: c-common.c:5095 #, c-format msgid "`%s' attribute ignored for `%s'" msgstr "Attribut »%s« ignoriert für »%s«" -#: c-common.c:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "ungültiger Vektortyp für Attribut »%s«" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 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:5315 +#: c-common.c:5316 msgid "nonnull attribute without arguments on a non-prototype" msgstr "Nicht-Null-Attribut ohne Argumente für einen Nicht-Prototyp" -#: c-common.c:5330 +#: c-common.c:5331 #, c-format msgid "nonnull argument has invalid operand number (arg %lu)" msgstr "Nicht-Null-Argument hat ungültige Operandenzahl (Argument %lu)" -#: c-common.c:5349 +#: c-common.c:5350 #, 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:5357 +#: c-common.c:5358 #, 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:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "Null-Argument, wo Nicht-Null erwartet (Argument %lu)" -#: c-common.c:5508 +#: c-common.c:5509 msgid "cleanup arg not an identifier" msgstr "Argument für cleanup ist kein Bezeichner" -#: c-common.c:5515 +#: c-common.c:5516 msgid "cleanup arg not a function" msgstr "Argument für cleanup ist keine Funktion" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s am Ende der Eingabe" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s vor %s'%c'" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s vor %s'\\x%x'" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "%s vor Zeichenkettenkonstante" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "%s vor numerischer Konstante" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s vor \"%s\"" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s vor »%s«" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 treelang/tree-convert.c:79 msgid "void value not ignored as it ought to be" msgstr "void-Wert nicht ignoriert wie es sein sollte" @@ -722,8 +722,8 @@ msgstr "Deklaration von »%s« überdeckt eine globale Deklaration" msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "Deklaration von »%s« überdeckt einen vorhergehenden lokalen Bezeichner" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 msgid "%Jshadowed declaration is here" msgstr "%Jverdeckte Deklaration ist hier" @@ -732,7 +732,7 @@ msgstr "%Jverdeckte Deklaration ist hier" msgid "nested extern declaration of `%s'" msgstr "geschachtelte extern-Deklaration von »%s«" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 msgid "%Jprevious declaration of '%D'" msgstr "%Jvorherige Deklaration von »%D«" @@ -806,7 +806,7 @@ msgid "two types specified in one empty declaration" msgstr "zwei Typen in einer leeren Deklaration angegeben" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "leere Deklaration" @@ -846,7 +846,7 @@ msgstr "Funktion »%s« ist wie eine Variable initialisiert" msgid "parameter `%s' is initialized" msgstr "Parameter »%s« ist initialisiert" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "Objekt variabler Größe darf nicht initialisiert werden" @@ -860,7 +860,7 @@ msgstr "Variable »%s« hat Initialisierung, aber unvollständigen Typ" msgid "elements of array `%s' have incomplete type" msgstr "Elemente des Feldes »%s« haben unvollständigen Typ" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 msgid "%Jinline function '%D' given attribute noinline" msgstr "%Jinline-Funktion »%D« wurde das Attribut »noinline« gegeben" @@ -1136,7 +1136,7 @@ msgstr "ISO-C90 verbietet Feld »%s«, dessen Größe nicht ausgewertet werden k msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO-C90 verbietet Feld »%s« variabler Größe" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "Feldgröße von »%s« ist zu groß" @@ -1179,7 +1179,7 @@ msgstr "ungültiger Typmodifizierer innerhalb Zeigerdeklarator" msgid "ISO C forbids const or volatile function types" msgstr "ISO-C verbietet const- oder volatile-Funktionstypen" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "Variable oder Feld »%s« als »void« deklariert" @@ -1474,7 +1474,7 @@ msgstr "weitergegebenes Argument »%D« passt nicht zum Prototypen" msgid "argument \"%D\" doesn't match prototype" msgstr "Argument »%D« passt nicht zum Prototypen" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 msgid "no return statement in function returning non-void" msgstr "keine return-Anweisung in nicht void zurückgebender Funktion" @@ -2257,7 +2257,7 @@ msgstr "Syntaxfehler: es kann nicht zurückgesetzt werden" msgid "ISO C forbids an empty source file" msgstr "ISO-C erlaubt keine leeren Quelldateien" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "Argument von »asm« ist keine konstante Zeichenkette" @@ -2352,7 +2352,7 @@ msgstr "ISO-C verbietet verschachtelte Funktionen" msgid "ISO C forbids forward references to `enum' types" msgstr "ISO-C verbietet Vorwärts-Referenzen auf »enum«-Typen" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "Komma am Ende der Aufzählungsliste" @@ -2360,7 +2360,7 @@ msgstr "Komma am Ende der Aufzählungsliste" msgid "no semicolon at end of struct or union" msgstr "kein Semikolon am Ende von »struct« oder »union«" -#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "zusätzliches Semikolon in »struct« oder »union« angegeben" @@ -2388,23 +2388,23 @@ msgstr "ISO-C verbietet Markendeklarationen" msgid "braced-group within expression allowed only inside a function" msgstr "geklammerte Gruppe innerhalb eines Ausdrucks nur in Funktion erlaubt" -#: c-parse.y:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "leerer Körper in einer else-Anweisung" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 msgid "%Hempty body in an if-statement" msgstr "%Hleerer Körper in einer if-Anweisung" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 msgid "break statement not within loop or switch" msgstr "break-Anweisung nicht innerhalb einer Schleife oder »switch«" -#: c-parse.y:2281 cp/parser.c:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 msgid "continue statement not within a loop" msgstr "continue-Anweisung nicht innerhalb einer Schleife" -#: c-parse.y:2323 objc/objc-parse.y:2380 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO-C verbietet »goto *expr;«" @@ -2414,11 +2414,11 @@ msgstr "ISO-C verbietet »goto *expr;«" #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "ISO-C erfordert ein benanntes Argument vor »...«" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "»...« in einer Bezeichnerliste alten Stils" @@ -2435,7 +2435,7 @@ msgstr "Fehler beim Parsen" msgid "parser stack overflow" msgstr "Parser-Keller-Überlauf" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "Syntaxfehler beim Token »%s«" @@ -2597,19 +2597,19 @@ msgstr "falsch geformtes #pragma redefine_extname, ignoriert" msgid "junk at end of #pragma redefine_extname" msgstr "Ausschuss am Ende von #pragma redefine_extname" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "#pragma redefine_extname steht in Konflikt mit Deklaration" -#: c-pragma.c:413 +#: c-pragma.c:414 msgid "malformed #pragma extern_prefix, ignored" msgstr "falsch geformtes #pragma extern_prefix, ignoriert" -#: c-pragma.c:418 +#: c-pragma.c:419 msgid "junk at end of #pragma extern_prefix" msgstr "Ausschuss am Ende von #pragma extern_prefix" -#: c-pragma.c:449 +#: c-pragma.c:450 msgid "asm declaration conflicts with previous rename" msgstr "asm-Deklaration steht in Konflikt mit vorheriger Umbenennung" @@ -2625,7 +2625,7 @@ msgstr "wobei die case-Marke hier auftritt" 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)" -#: c-semantics.c:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "%s-Qualifizierer für asm ignoriert" @@ -2634,788 +2634,788 @@ msgstr "%s-Qualifizierer für asm ignoriert" msgid "will never be executed" msgstr "wird niemals ausgeführt" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "»%s« hat unvollständigen Typ" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "falsche Benutzung eines void-Ausdruckes" -#: c-typeck.c:150 +#: c-typeck.c:153 msgid "invalid use of flexible array member" msgstr "falsche Benutzung eines flexiblen Feldelements" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "falsche Benutzung eines Feldes mit unbekannten Grenzen" -#: c-typeck.c:164 +#: c-typeck.c:167 #, c-format msgid "invalid use of undefined type `%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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "falsche Benutzung des unvollständigen typedef »%s«" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 msgid "function types not truly compatible in ISO C" msgstr "Funktionstypen nicht wirklich kompatibel in ISO-C" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "Typen nicht sehr kompatibel" -#: c-typeck.c:824 +#: c-typeck.c:838 msgid "function return types not compatible due to `volatile'" msgstr "Funktionsrückgabetypen nicht kompatibel wegen »volatile«" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "Arithmetik mit Zeiger auf unvollständigen Typen" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "%s hat kein Element namens »%s«" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, c-format msgid "request for member `%s' in something not a structure or union" msgstr "Anfrage nach Element »%s« in etwas, was keine Struktur oder Variante ist" -#: c-typeck.c:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "Dereferenzierung eines Zeigers auf unvollständigen Typen" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "Dereferenzierung eines »void *«-Zeigers" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "falsches Typ-Argument von »%s«" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "Index fehlt in Feldreferenz" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "Feldindex hat Typ »char«" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "Feldindex ist keine Ganzzahl" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "ISO-C verbietet, ein »register«-Array zu indizieren" -#: c-typeck.c:1511 +#: c-typeck.c:1525 msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO-C90 verbietet, ein Nicht-L-Wert-Feld zu indizieren" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "Index hat Typ »char«" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "indizierter Wert ist weder ein Feld noch ein Zeiger" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, c-format msgid "local declaration of `%s' hides instance variable" msgstr "lokale Deklaration von »%s« verdeckt Instanzvariable" -#: c-typeck.c:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "gerufenes Objekt ist keine Funktion" #. 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 +#: c-typeck.c:1729 msgid "function called through a non-compatible type" msgstr "Funktion über nicht kompatiblen Typen aufgerufen" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "Initialisierungselement ist nicht konstant" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "zu viele Argumente für Funktion" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "Typ des formalen Parameters %d ist unvollständig" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, c-format msgid "%s as integer rather than floating due to prototype" msgstr "%s als Ganzzahl statt Gleitkomma aufgrund des Prototyps" -#: c-typeck.c:1850 +#: c-typeck.c:1875 #, c-format msgid "%s as integer rather than complex due to prototype" msgstr "%s als Ganzzahl statt komplex aufgrund des Prototyps" -#: c-typeck.c:1853 +#: c-typeck.c:1878 #, c-format msgid "%s as complex rather than floating due to prototype" msgstr "%s als komplex statt Gleitkomma aufgrund des Prototyps" -#: c-typeck.c:1856 +#: c-typeck.c:1881 #, c-format msgid "%s as floating rather than integer due to prototype" msgstr "%s als Gleitkomma statt Ganzzahl aufgrund des Prototyps" -#: c-typeck.c:1859 +#: c-typeck.c:1884 #, c-format msgid "%s as complex rather than integer due to prototype" msgstr "%s als komplex statt Ganzzahl aufgrund des Prototyps" -#: c-typeck.c:1862 +#: c-typeck.c:1887 #, c-format msgid "%s as floating rather than complex due to prototype" msgstr "%s als Gleitkomma statt komplex aufgrund des Prototyps" -#: c-typeck.c:1872 +#: c-typeck.c:1897 #, c-format msgid "%s as `float' rather than `double' due to prototype" msgstr "%s als »float« statt »double« aufgrund des Prototyps" -#: c-typeck.c:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "%s mit anderer Breite aufgrund des Prototyps" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "%s als vorzeichenlos aufgrund des Prototyps" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "%s als vorzeichenbehaftet aufgrund des Prototyps" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "zu wenige Argumente für Funktion" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "Klammern um + oder - innerhalb von Schiebeoperation empfohlen" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "Klammern um && innerhalb von || empfohlen" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "Klammern um Arithmetik in Operand von | empfohlen" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "Klammern um Vergleich in Operand von | empfohlen" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "Klammern um Arithmetik in Operand von ^ empfohlen" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "Klammern um Vergleich in Operand von ^ empfohlen" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "Klammern um + oder - in Operand von & empfohlen" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "Klammern um Vergleich in Operand von & empfohlen" -#: c-typeck.c:2040 +#: c-typeck.c:2065 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:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "Zeiger des Typs »void *« in Subtraktion verwendet" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "Zeiger auf eine Funktion in Subtraktion verwendet" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "Argument falschen Typs für unäres Plus" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "Argument falschen Typs für unäres Minus" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "ISO-C unterstützt nicht »~« für komplexe Konjugation" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "Argument falschen Typs für Bit-Komplement" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "Argument falschen Typs für abs" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "Argument falschen Typs für Konjugation" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "Argument falschen Typs für unäres Ausrufungszeichen" -#: c-typeck.c:2312 +#: c-typeck.c:2337 msgid "ISO C does not support `++' and `--' on complex types" msgstr "ISO-C unterstützt kein »++« und »--« für komplexe Typen" -#: c-typeck.c:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 msgid "wrong type argument to increment" msgstr "Argument falschen Typs für Inkrementierung" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "Argument falschen Typs für Dekrementierung" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "Erhöhung eines Zeigers auf unbekannte Struktur" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "Verminderung eines Zeigers auf unbekannte Struktur" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "ungültiger L-Wert in unärem »&«" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, c-format msgid "attempt to take address of bit-field structure member `%s'" msgstr "Versuch, die Adresse des Bitfeld-Element »%s« einer Struktur zu verwenden" -#: c-typeck.c:2642 +#: c-typeck.c:2668 msgid "use of conditional expressions as lvalues is deprecated" msgstr "die Verwendung bedingter Ausdrücke als L-Werte ist veraltet" -#: c-typeck.c:2645 +#: c-typeck.c:2671 msgid "use of compound expressions as lvalues is deprecated" msgstr "Verwendung zusammengesetzter Ausdrücke als L-Werte ist veraltet" -#: c-typeck.c:2648 +#: c-typeck.c:2674 msgid "use of cast expressions as lvalues is deprecated" msgstr "die Verwendung von cast-Ausdrücken als L-Werte ist veraltet" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "%s des schreibgeschützten Elementes »%s«" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "%s der schreibgeschützten Variable »%s«" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "%s der schreibgeschützten Speicherstelle" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, c-format msgid "cannot take address of bit-field `%s'" msgstr "die Adresse des Bit-Feldes »%s« kann nicht ermittelt werden" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 treelang/treetree.c:946 #, c-format msgid "global register variable `%s' used in nested function" msgstr "globale Register-Variable »%s« in verschachtelter Funktion verwendet" -#: c-typeck.c:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 treelang/treetree.c:950 #, c-format msgid "register variable `%s' used in nested function" msgstr "Register-Variable »%s« in verschachtelter Funktion verwendet" -#: c-typeck.c:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 treelang/treetree.c:957 #, c-format msgid "address of global register variable `%s' requested" msgstr "Adresse der globalen Variable »%s« angefordert" -#: c-typeck.c:2739 +#: c-typeck.c:2765 msgid "cannot put object with volatile field into register" msgstr "kann kein Objekt mit volatile-Feld in Register laden" -#: c-typeck.c:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, c-format msgid "address of register variable `%s' requested" msgstr "Adresse der Register-Variablen »%s« angefordert" -#: c-typeck.c:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "Vorzeichenloser und -behafteter Typ in bedingtem Ausdruck" -#: c-typeck.c:2835 +#: c-typeck.c:2861 msgid "ISO C forbids conditional expr with only one void side" msgstr "ISO-C verbietet bedingten Ausdruck mit nur einer void-Seite" -#: c-typeck.c:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 msgid "ISO C forbids conditional expr between `void *' and function pointer" msgstr "ISO-C verbietet bedingten Ausdruck zwischen »void *« und Funktionszeiger" -#: c-typeck.c:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "Zeigertyp passt nicht in bedingtem Ausdruck" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "Zeiger-/Ganzzahltyp passt nicht in bedingtem Ausdruck" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "Typ passt nicht in bedingtem Ausdruck" -#: c-typeck.c:2955 +#: c-typeck.c:2981 msgid "left-hand operand of comma expression has no effect" msgstr "linker Operand des Komma-Ausdrucks hat keinen Effekt" -#: c-typeck.c:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "Typkonvertierung gibt Feldtyp an" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "Typkonvertierung gibt Funktionstyp an" -#: c-typeck.c:3002 +#: c-typeck.c:3028 msgid "ISO C forbids casting nonscalar to the same type" msgstr "ISO-C verbietet Typkonvertierung von Nicht-Skalar auf selben Typen" -#: c-typeck.c:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "ISO-C verbietet Typkonvertierung auf union-Typ" -#: c-typeck.c:3028 +#: c-typeck.c:3054 msgid "cast to union type from type not present in union" msgstr "Typkonvertierung in union-Typ von nicht in union vorhandenem Typen" -#: c-typeck.c:3079 +#: c-typeck.c:3105 msgid "cast adds new qualifiers to function type" 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "Typkonvertierung streicht Qualifizierer von Zeiger-Zieltyp" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "Typkonvertierung erfordert Ausrichtung des Zieltyps" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "Typkonvertierung von Zeiger auf Ganzzahl anderer Breite" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "Typkonvertierung passt nicht zum Funktionstypen" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "Typkonvertierung in Zeiger von Ganzzahl anderer Breite" -#: c-typeck.c:3129 +#: c-typeck.c:3155 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "Type-Punning auf unvollständigen Typen kann strict-aliasing-Regeln verletzen" -#: c-typeck.c:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "Dereferenzierung eines Type-Pun-Zeigers verletzt strict-aliasing-Regeln" -#: c-typeck.c:3144 +#: c-typeck.c:3170 msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "ISO-C verbietet Konvertierung von Funktionszeigern in Objektzeigertyp" -#: c-typeck.c:3153 +#: c-typeck.c:3179 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:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "ungültiger L-Wert in Zuweisung" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "Zuweisung" -#: c-typeck.c:3429 +#: c-typeck.c:3455 msgid "cannot pass rvalue to reference parameter" msgstr "kann R-Wert nicht an Referenzparameter übergeben" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "%s erzeugt aus unqualifiziertem einen qualifizierten Funktionszeiger" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "%s streicht Qualifizierer von Zeiger-Zieltypen" -#: c-typeck.c:3548 +#: c-typeck.c:3574 msgid "ISO C prohibits argument conversion to union type" msgstr "ISO-C verbietet Argumentkonvertierung in union-Typ" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, c-format msgid "ISO C forbids %s between function pointer and `void *'" msgstr "ISO-C verbietet %s zwischen Funktionszeiger und »void *«" -#: c-typeck.c:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "Zeigerziele in %s unterscheiden sich im Vorzeichenbesitz" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "%s von inkompatiblem Zeigertyp" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "ungültige Verwendung eines Nicht-L-Wert-Feldes" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, c-format msgid "%s makes pointer from integer without a cast" msgstr "%s erzeugt Zeiger von Ganzzahl ohne Typkonvertierung" -#: c-typeck.c:3646 +#: c-typeck.c:3672 #, c-format msgid "%s makes integer from pointer without a cast" msgstr "%s erzeugt Ganzzahl von Zeiger ohne Typkonvertierung" -#: c-typeck.c:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "inkompatibler Typ für Argument %d von »%s«" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, c-format msgid "incompatible type for argument %d of indirect function call" msgstr "inkompatibler Typ für Argument %d eines indirekten Funktionsaufrufes" -#: c-typeck.c:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "inkompatible Typen in %s" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, c-format msgid "passing arg of `%s'" msgstr "Verarbeiten des Argumentes von »%s«" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 msgid "passing arg of pointer to function" msgstr "Verarbeiten des Zeigerargumentes an Funktion" #. Function name is known; supply it. -#: c-typeck.c:3744 +#: c-typeck.c:3770 #, c-format msgid "passing arg %d of `%s'" msgstr "Verarbeiten des Argumentes %d von »%s«" #. Function name unknown (call through ptr); just give arg number. -#: c-typeck.c:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "Verarbeiten des Argumentes %d von Zeiger auf Funktion" -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "traditionelles C lehnt automatische Gesamt-Initialisierung ab" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "(nahe der Initialisierung für »%s«)" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "char-Feld mit wide-Zeichenkette initialisiert" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "int-Feld mit Nicht-wide-Zeichenkette initialisiert" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 msgid "initializer-string for array of chars is too long" msgstr "Initialisierungs-Zeichenkette für char-Feld ist zu lang" -#: c-typeck.c:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "Feld mit nicht konstantem Feldausdruck initialisiert" -#: 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 "Initialisierungselement ist nicht konstant" - -#: c-typeck.c:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "Initialisierung" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "Initialisierungs-Element ist zur Lade-Zeit nicht berechenbar" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "ungültige Initialisierung" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 msgid "opaque vector types cannot be initialized" msgstr "opake Vektortypen können nicht initialisiert werden" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "zusätzliche geschweifte Klammern am Ende der Initialisierung" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "geschweifte Klammern fehlen um Initialisierung" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "geschweifte Klammern um Skalar-Initialisierung" -#: c-typeck.c:4842 +#: c-typeck.c:4865 msgid "initialization of flexible array member in a nested context" msgstr "Initialisierung eines flexiblen Feld-Elements in geschachteltem Kontext" -#: c-typeck.c:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "Initialisierung eines flexiblen Feld-Elements" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "fehlende Initialisierung" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "leere Skalar-Initialisierung" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "zusätzliche Elemente in Skalar-Initialisierung" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "Initialisierungs-Bezeichner dürfen nicht geschachtelt werden" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "Feldindex in Nicht-Feld-Initialisierung" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 msgid "field name not in record or union initializer" msgstr "Feldname nicht in Datensatz- oder union-Initialisierung" -#: c-typeck.c:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "nichtkonstanter Feldindex in Initialisierung" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 msgid "array index in initializer exceeds array bounds" msgstr "Feldindex in Initialisierung überschreitet Feldgrenzen" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "leerer Indexbereich in Initialisierung" -#: c-typeck.c:5101 +#: c-typeck.c:5124 msgid "array index range in initializer exceeds array bounds" msgstr "Feldindexbereich in Initialisierung überschreitet Feldgrenzen" -#: c-typeck.c:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "unbekanntes Feld »%s« in Initialisierung angegeben" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "initialisiertes Feld mit Seiteneffekten überschrieben" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "Elementüberschreitung in char-Feld-Initialisierung" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "Elementüberschreitung in struct-Initialisierung" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "nicht-statische Initialisierung eines flexiblen Feldelements" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "Elementüberschreitung in union-Initialisierung" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "traditionelles C lehnt Initialisierung von unions ab" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "Elementüberschreitung in Feldinitialisierung" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "Elementüberschreitung in Vektorinitialisierung" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "Elementüberschreitung in Skalar-Initialisierung" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "asm-Template ist keine Zeichenkettenkonstante" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "ungültiger L-Wert in asm-Anweisung" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "Modifizierung durch »asm«" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "als »noreturn« deklarierte Funktion hat »return«-Anweisung" -#: c-typeck.c:6369 +#: c-typeck.c:6392 msgid "`return' with no value, in function returning non-void" msgstr "»return« ohne Wert in nicht void zurückgebender Funktion" -#: c-typeck.c:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "»return« mit Wert in void zurückgebender Funktion" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "return" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "Funktion liefert Adresse einer lokalen Variablen zurück" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "switch-Größe keine Ganzzahl" -#: c-typeck.c:6496 +#: c-typeck.c:6519 msgid "`long' switch expression not converted to `int' in ISO C" msgstr "»long« switch-Ausdruck nicht nach »int« konvertiert in ISO C" -#: c-typeck.c:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "case-Marke nicht innerhalb einer switch-Anweisung" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "»default«-Marke nicht innerhalb einer switch-Anweisung" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "Teilung durch Null" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "Rechts-Schiebe-Weite ist negativ" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "Rechts-Schiebe-Weite >= Breite des Typs" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "Links-Schiebe-Weite ist negativ" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "Links-Schiebe-Weite >= Breite des Typs" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "Schiebeweite ist negativ" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "Schiebeweite >= Breite des Typs" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "Vergleich von Gleitkomma mit == oder != ist unsicher" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 msgid "ISO C forbids comparison of `void *' with function pointer" msgstr "ISO-C verbietet Vergleich von »void *« mit Funktionszeiger" -#: c-typeck.c:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 msgid "comparison of distinct pointer types lacks a cast" msgstr "in Vergleich verschiedener Zeigertypen fehlt Typkonvertierung" -#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "Vergleich zwischen Zeiger und Ganzzahl" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "ISO-C verbietet geordnete Vergleiche zwischen Zeigern auf Funktionen" -#: c-typeck.c:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "Vergleich von vollständigen und unvollständigen Zeigern" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "geordneter Vergleich von Zeiger mit Ganzzahlnull" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 msgid "unordered comparison on non-floating point argument" msgstr "ungeordneter Vergleich mit Nicht-Gleitkomma-Argument" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "Vergleich zwischen vorzeichenbehaftet und vorzeichenlos" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "Vergleich von weitergegebenem ~unsigned mit Konstante" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "Vergleich von weitergegebenem ~unsigned mit unsigned" @@ -3680,43 +3680,43 @@ msgstr "Anzahl der bb-Vermerke in insn-Kette (%d) != n_basic_blocks (%d)" msgid "function body not available" msgstr "Funktionskörper nicht verfügbar" -#: cgraph.c:163 cgraphunit.c:340 +#: 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:345 +#: 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:343 +#: cgraph.c:168 cgraphunit.c:344 msgid "function not inlinable" msgstr "Funktion kann nicht »inline« sein" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "%D nach Referenzierung in Assemblierung umbenannt" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "--param large-function-growth: Limit erreicht" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "--param large-function-growth: Limit bei »inline« des Aufrufers erreicht" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "--param max-inline-insns-single: Limit erreicht" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 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:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "--param inline-unit-growth: Limit erreicht" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "rekursives inline" @@ -3904,7 +3904,7 @@ msgstr "kann %s nicht als COFF-Datei öffnen" msgid "library lib%s not found" msgstr "Bibliothek lib%s nicht gefunden" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -3915,7 +3915,7 @@ msgstr "" ";; %d Erfolge.\n" "\n" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -4747,7 +4747,7 @@ msgstr "Rekursion bei Expansion des Makros »%s« entdeckt" msgid "syntax error in macro parameter list" msgstr "Syntaxfehler in Makroparameterliste" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr ";; Bearbeite Block von %d bis %d, %d Sets.\n" @@ -4825,16 +4825,16 @@ msgstr "Kellergrenzen nicht für dieses Ziel unterstützt" msgid "function using short complex types cannot be inline" msgstr "Funktion, die komplexe »short«-Typen verwendet, kann nicht »inline« sein" -#: expr.c:6385 +#: expr.c:6386 msgid "%Jprior parameter's size depends on '%D'" msgstr "%Jvorherige Parametergröße hängt von »%D« ab" -#: expr.c:6752 +#: expr.c:6753 msgid "returned value in block_exit_expr" msgstr "zurückgelieferter Wert in block_exit_expr" #. We can't make a bitwise copy of this object, so fail. -#: expr.c:8895 +#: expr.c:8894 msgid "cannot take the address of an unaligned member" msgstr "die Adresse eines nicht ausgerichteten Elements kann nicht ermittelt werden" @@ -4879,12 +4879,12 @@ msgstr "»%%l«-Operand ist keine Marke" #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "Gleitkommakonstante falsch benutzt" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "ungültiger Ausdruck als Operand" @@ -4935,23 +4935,23 @@ msgstr "%JGröße der Variable »%D« ist zu hoch" msgid "impossible constraint in `asm'" msgstr "unmögliche Bedingung in »asm«" -#: function.c:5723 +#: function.c:5733 msgid "%J'%D' might be used uninitialized in this function" msgstr "%J»%D« könnte in dieser Funktion uninitialisiert bleiben" -#: function.c:5730 +#: function.c:5740 msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "%JVariable »%D« könnte von »longjmp« oder »vfork« zerstört werden" -#: function.c:5749 +#: function.c:5759 msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "%JArgument »%D« könnte von »longjmp« oder »vfork« zerstört werden" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "Funktion gibt Aggregat zurück" -#: function.c:7006 +#: function.c:6929 msgid "%Junused parameter '%D'" msgstr "%Jnicht benutzter Parameter »%D«" @@ -6420,7 +6420,7 @@ msgstr "Ausgabeoperand %d muss »&«-Bedingung benutzen" msgid "can't use '%s' as a %s register" msgstr "»%s« kann nicht als ein %s-Register verwendet werden" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "unbekannter Registername: %s" @@ -6477,47 +6477,47 @@ msgstr "Neuladungen konnten nicht generiert werden für:" msgid "inconsistent operand constraints in an `asm'" msgstr "inkonsistente Operandenbedingungen in einem »asm«" -#: reload1.c:1212 +#: reload1.c:1222 msgid "frame size too large for reliable stack checking" msgstr "Rahmengröße zu groß für zuverlässige Kellerüberprüfung" -#: reload1.c:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "versuchen Sie, die Anzahl der lokalen Variablen zu verringern" -#: reload1.c:1868 +#: reload1.c:1878 #, c-format msgid "can't find a register in class `%s' while reloading `asm'" msgstr "in der Klasse »%s« konnte während des Neuladens von »asm« kein Register gefunden werden" -#: reload1.c:1872 +#: reload1.c:1882 #, c-format msgid "unable to find a register to spill in class `%s'" msgstr "in Klasse »%s« konnte kein Register für Überlauf gefunden werden" -#: reload1.c:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "dies ist das insn:" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "»asm«-Operand erfordert unmögliches Neuladen" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 msgid "could not find a spill register" msgstr "es konnte kein Überlaufregister gefunden werden" -#: reload1.c:4968 +#: reload1.c:4978 msgid "`asm' operand constraint incompatible with operand size" msgstr "»asm«-Operandenbedingung inkompatibel mit Operandengröße" #. It's the compiler's fault. -#: reload1.c:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "VOIDmode bei einer Ausgabe" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "Ausgabeoperand ist in »asm« konstant" @@ -6569,7 +6569,7 @@ msgstr "RTL-Kennzeichenüberprüfung: %s mit unerwartetem RTX-Code »%s« in %s msgid "jump to `%s' invalidly jumps into binding contour" msgstr "Sprung zu »%s« springt ungültig in bindenden Querschnitt" -#: stmt.c:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 msgid "%Jlabel '%D' used before containing binding contour" msgstr "%JMarke »%D« verwendet vor enthaltendem bindenden Querschnitt" @@ -6586,7 +6586,7 @@ msgstr "Ausgabebedingung »%c« für Operand %d steht nicht am Anfang" msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "Operandenbedingung enthält falsch positioniertes »+« oder »=«" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "»%%«-Bedingung mit letztem Operanden verwendet" @@ -6595,125 +6595,121 @@ msgstr "»%%«-Bedingung mit letztem Operanden verwendet" msgid "matching constraint not valid in output operand" msgstr "dazu passende Bedingung in Ausgabeoperanden ungültig" -#: stmt.c:1260 -msgid "read-write constraint does not allow a register" -msgstr "Schreib- und Lesebeschränkungen erlauben kein Register" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "Bedingung für Eingabeoperanden enthält »%c«" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "dazu passende Bedingung referenziert ungültige Operandennummer" -#: stmt.c:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "ungültiges Zeichen »%c« in Bedingung" -#: stmt.c:1396 +#: stmt.c:1393 msgid "matching constraint does not allow a register" msgstr "dazu passende Bedingung erlaubt kein Register" -#: stmt.c:1424 +#: stmt.c:1421 #, c-format msgid "asm-specifier for variable `%s' conflicts with asm clobber list" msgstr "asm-Spezifizierer für Variable »%s« steht in Konflikt mit asm-Konflikt-Liste" -#: stmt.c:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "unbekannter Registername »%s« in »asm«" -#: stmt.c:1522 +#: stmt.c:1519 #, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "PIC-Register »%s« wird in »asm« zerstört" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "mehr als %d Operanden in »asm«" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "Ausgabezahl %d nicht direkt adressierbar" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "asm-Operand %d passt wahrscheinlich nicht zu den Bedingungen" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "die Verwendung einer Speichereingabe ohne L-Wert in asm-Operand %d ist veraltet" -#: stmt.c:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "asm-Konflikt mit Ausgabeoperand" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "asm-Konflikt mit Eingabeoperand" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "zu viele Alternativen in »asm«" -#: stmt.c:1926 +#: stmt.c:1923 msgid "operand constraints for `asm' differ in number of alternatives" msgstr "Operandenbedingungen für »asm« unterscheiden sich in der Anzahl der Alternativen" -#: stmt.c:1978 +#: stmt.c:1975 #, c-format msgid "duplicate asm operand name '%s'" msgstr "doppelter asm-Operandenname »%s«" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "schließende geschweifte Klammer für benannten Operanden fehlt" -#: stmt.c:2104 +#: stmt.c:2101 #, c-format msgid "undefined named operand '%s'" msgstr "benannter Operand »%s« ist nicht definiert" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "%HAnweisung ohne Effekt" -#: stmt.c:2317 +#: stmt.c:2314 msgid "%Hvalue computed is not used" msgstr "%Hberechneter Wert ist unbenutzt" -#: stmt.c:3733 +#: stmt.c:3730 msgid "%Junused variable '%D'" msgstr "%JVariable »%D« wird nicht verwendet" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "%Hunerreichbarer Code am Anfang von %s" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "Aufzählungswert »%s« wird nicht von switch behandelt" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "case-Wert »%ld« nicht in Aufzählungstyp" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, c-format msgid "case value `%ld' not in enumerated type `%s'" msgstr "case-Wert »%ld« nicht in Aufzählungstyp »%s«" -#: stmt.c:5401 +#: stmt.c:5398 msgid "switch missing default case" msgstr "die Standardfallbehandlung in switch fehlt" @@ -6745,25 +6741,25 @@ msgstr "%Jgepacktes Attribut ist unnötig für »%D«" msgid "%Jpadding struct to align '%D'" msgstr "%Jstruct wird aufgefüllt, um »%D« auszurichten" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "struct wird bis zur Ausrichtungsgrenze aufgefüllt" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "gepacktes Attribut verursacht ineffiziente Ausrichtung für »%s«" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "gepacktes Attribut ist unnötig für »%s«" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "gepacktes Attribut führt zu ineffizienter Ausrichtung" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "gepacktes Attribut ist unnötig" @@ -6913,7 +6909,7 @@ msgstr " Es gibt sie, aber sie sind nicht dokumentiert.\n" msgid "unrecognized gcc debugging option: %c" msgstr "gcc-Debuggingoption nicht erkannt: %c" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, c-format msgid "invalid option `%s'" msgstr "ungültige Option »%s«" @@ -6942,25 +6938,25 @@ msgstr "angegebene Optionen: " msgid "options enabled: " msgstr "angeschaltete Optionen: " -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, c-format msgid "can't open %s for writing: %m" msgstr "Datei »%s« kann nicht zum Schreiben geöffnet werden: %m" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "erzeugt und mit anderen Einstellungen von -fpic verwendet" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "erzeugt und mit anderen Einstellungen von -fpie verwendet" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "erzeugt und mit anderen Einstellungen von »-m%s« verwendet" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "Platz im Hauptspeicher reicht nicht aus" @@ -7015,7 +7011,7 @@ msgstr "-ffunction-sections kann für verschiedene Ziele die Fehlersuche beeintr msgid "error writing to %s: %m" msgstr "Fehler beim Schreiben der Datei %s: %m" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, c-format msgid "error closing %s: %m" msgstr "Fehler beim Schließen von %s: %m" @@ -7074,34 +7070,34 @@ msgstr "%JGröße des Rückgabewertes von »%D« ist %u Bytes" 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:3800 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "Felder von Funktionen sind sinnlos" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "Rückgabetyp der Funktion kann keine Funktion sein" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "ungültige Initialisierung für Bitstring" -#: tree.c:4736 +#: tree.c:4737 #, c-format msgid "tree check: expected %s, have %s in %s, at %s:%d" msgstr "Baumprüfung: %s erwartet, haben %s in %s, bei %s:%d" -#: tree.c:4749 +#: tree.c:4750 #, c-format msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d" msgstr "Baumprüfung: Klasse %c erwartet, haben '%c' (%s) in %s, bei %s:%d" -#: tree.c:4762 +#: tree.c:4763 #, c-format msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "Baumprüfung: auf Elt %d von tree_vec mit %d Elts in %s bei %s:%d zugegriffen" -#: tree.c:4774 +#: tree.c:4775 #, c-format 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" @@ -7461,7 +7457,7 @@ msgstr "" msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "" @@ -7512,24 +7508,24 @@ msgstr "" msgid "invalid %%J value" msgstr "" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "" @@ -7539,17 +7535,17 @@ msgstr "" msgid "invalid %%h value" msgstr "" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "" @@ -7560,7 +7556,7 @@ msgid "invalid %%U value" msgstr "" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "" @@ -7570,7 +7566,8 @@ msgstr "" msgid "invalid %%C value" msgstr "" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "" @@ -7579,7 +7576,7 @@ msgstr "" msgid "unknown relocation unspec" msgstr "" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "" @@ -7739,17 +7736,17 @@ msgstr "" msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\"" msgstr "" -#: config/arc/arc.c:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, c-format msgid "invalid operand to %%R code" msgstr "" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, c-format msgid "invalid operand to %%U code" msgstr "" @@ -7760,7 +7757,7 @@ msgid "invalid operand to %%V code" msgstr "" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "" @@ -7769,7 +7766,7 @@ msgstr "" msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "" @@ -7853,12 +7850,12 @@ msgid "unable to use '%s' for PIC register" msgstr "" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173 #, c-format msgid "`%s' attribute only applies to functions" msgstr "" @@ -7873,7 +7870,7 @@ msgid "selector must be an immediate" msgstr "" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "" @@ -9229,176 +9226,176 @@ msgstr "" msgid "Do not generate char instructions" msgstr "" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, c-format msgid "code model %s not supported in PIC mode" msgstr "" -#: config/i386/i386.c:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 config/sparc/sparc.c:387 #, c-format msgid "bad value (%s) for -mcmodel= switch" msgstr "" -#: config/i386/i386.c:1195 +#: config/i386/i386.c:1204 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, c-format msgid "code model `%s' not supported in the %s bit mode" msgstr "" -#: config/i386/i386.c:1201 +#: config/i386/i386.c:1210 msgid "code model `large' not supported yet" msgstr "" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 msgid "CPU you selected does not support x86-64 instruction set" msgstr "" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 config/iq2000/iq2000.c:1840 #, c-format msgid "bad value (%s) for -march= switch" msgstr "" -#: config/i386/i386.c:1248 +#: config/i386/i386.c:1260 #, c-format msgid "bad value (%s) for -mtune= switch" msgstr "" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, c-format msgid "-malign-loops=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, c-format msgid "-mpreferred-stack-boundary=%d is not between %d and 12" msgstr "" -#: config/i386/i386.c:1354 +#: config/i386/i386.c:1366 #, c-format msgid "-mbranch-cost=%d is not between 0 and 5" msgstr "" -#: config/i386/i386.c:1366 +#: config/i386/i386.c:1378 #, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 msgid "-mrtd calling convention not supported in the 64bit mode" msgstr "" -#: config/i386/i386.c:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "" -#: config/i386/i386.c:1435 +#: config/i386/i386.c:1447 msgid "387 instruction set disabled, using SSE arithmetics" msgstr "" -#: config/i386/i386.c:1442 +#: config/i386/i386.c:1454 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 msgid "fastcall and stdcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 msgid "fastcall and regparm attributes are not compatible" msgstr "" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, c-format msgid "argument to `%s' attribute larger than %d" msgstr "" -#: config/i386/i386.c:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 msgid "operand is neither a constant nor a condition code, invalid operand code 'c'" msgstr "" -#: config/i386/i386.c:7457 +#: config/i386/i386.c:7474 #, c-format msgid "invalid operand code `%c'" msgstr "" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 msgid "invalid constraints for operand" msgstr "" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 msgid "unknown insn mode" msgstr "" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 msgid "shift must be an immediate" msgstr "" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, c-format msgid "`%s' incompatible attribute ignored" msgstr "»%s«-inkompatibles Attribut wird ignoriert" @@ -9457,43 +9454,43 @@ msgstr "" msgid "%J'%D' causes a section type conflict" msgstr "" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, c-format msgid "-f%s ignored for target (all code is position independent)" msgstr "" @@ -9687,7 +9684,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "" @@ -9805,7 +9802,7 @@ msgstr "" msgid "iC2.0 and iC3.0 are incompatible - using iC3.0" msgstr "" -#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "" @@ -9928,8 +9925,8 @@ msgstr "" msgid "Do not layout types like Intel's v1.3 gcc" msgstr "" -#: 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 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "" @@ -9962,41 +9959,41 @@ msgstr "%JAdressabschnitt von »%s« in Konflikt mit vorheriger Deklaration" msgid "%Jaddress area attribute cannot be specified for functions" msgstr "%JAdressabschnittsattribut kann nicht für Funktionen angegeben werden" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 msgid "value of -mfixed-range must have form REG1-REG2" msgstr "" -#: config/ia64/ia64.c:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 msgid "cannot optimize floating point division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4726 +#: config/ia64/ia64.c:4729 msgid "cannot optimize integer division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4732 +#: config/ia64/ia64.c:4735 msgid "cannot optimize square root for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, c-format msgid "bad value (%s) for -tune= switch" msgstr "" @@ -10132,7 +10129,7 @@ msgstr "" msgid "argument `%d' is not a constant" msgstr "Argument »%d« ist keine Konstante" -#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "" @@ -10142,7 +10139,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "" @@ -10151,7 +10148,7 @@ msgstr "" msgid "invalid %%P operand" msgstr "" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "" @@ -10212,89 +10209,89 @@ msgstr "" msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 msgid "typename type `%#T' declared `friend'" msgstr "" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 msgid "template parameter type `%T' declared `friend'" msgstr "" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 msgid "`%#T' is not a template" msgstr "" -#: cp/friend.c:277 +#: cp/friend.c:281 msgid "`%D' is already a friend of `%T'" msgstr "" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "" -#: cp/friend.c:409 +#: cp/friend.c:413 msgid "member `%D' declared as friend before type `%T' defined" msgstr "" -#: cp/friend.c:465 +#: cp/friend.c:469 msgid "friend declaration `%#D' declares a non-template function" msgstr "" -#: cp/friend.c:468 +#: cp/friend.c:472 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 "" @@ -15126,7 +15128,7 @@ msgstr "" msgid "type `%T' is of non-aggregate type" msgstr "" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "" @@ -15162,72 +15164,72 @@ msgstr "" msgid "zero size array reserves no space" msgstr "" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "" -#: cp/init.c:1876 +#: cp/init.c:1877 msgid "can't find class$" msgstr "" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "" -#: cp/init.c:2013 +#: cp/init.c:2014 msgid "uninitialized const in `new' of `%#T'" msgstr "" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +#, fuzzy +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "kein geeigneter »operator %s« für »%T«" + +#: cp/init.c:2083 msgid "request for member `%D' is ambiguous" msgstr "" -#: cp/init.c:2193 +#: cp/init.c:2203 msgid "ISO C++ forbids initialization in array new" msgstr "" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "" -#: cp/init.c:2885 +#: cp/init.c:2895 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 " +#: cp/init.c:2898 +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:2890 -msgid "declared when the class is defined." -msgstr "" - -#: cp/init.c:2909 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "" @@ -15316,11 +15318,11 @@ msgstr "" msgid "non-static reference member `%#D', can't use default assignment operator" msgstr "" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 msgid "`%#D' used prior to declaration" msgstr "" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 msgid "redeclaration of `wchar_t' as `%T'" msgstr "" @@ -15330,236 +15332,236 @@ msgstr "" #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 msgid "invalid redeclaration of `%D'" msgstr "" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 msgid "type mismatch with previous external decl of `%#D'" msgstr "Typen passen nicht zu vorheriger externer Deklaration von »%#D«" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 msgid "previous external decl of `%#D'" msgstr "" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 msgid "`%D' was previously implicitly declared to return `int'" msgstr "" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 msgid "extern declaration of `%#D' doesn't match" msgstr "" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 msgid "global declaration `%#D'" msgstr "" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 #, fuzzy msgid "declaration of '%#D' shadows a parameter" msgstr "Deklaration von »%s« überdeckt einen Parameter" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 #, fuzzy msgid "declaration of '%D' shadows a member of 'this'" msgstr "Deklaration von »%s« überdeckt einen Parameter" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 #, fuzzy msgid "declaration of '%D' shadows a previous local" msgstr "Deklaration von »%s« überdeckt einen vorhergehenden lokalen Bezeichner" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 #, fuzzy msgid "declaration of '%D' shadows a global declaration" msgstr "Deklaration von »%s« überdeckt eine globale Deklaration" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr "" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr "" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 msgid " cannot use obsolete binding at `%D' because it has a destructor" msgstr "" -#: cp/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr "" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, c-format msgid "%s %s %p %d\n" msgstr "%s %s %p %d\n" -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 msgid "`%#D' hides constructor for `%#T'" msgstr "" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 msgid "previous non-function declaration `%#D'" msgstr "" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 msgid "conflicts with function declaration `%#D'" msgstr "" #. 7.3.3/5 #. A using-declaration shall not name a template-id. -#: cp/name-lookup.c:2101 +#: cp/name-lookup.c:2112 msgid "a using-declaration cannot specify a template-id. Try `using %D'" msgstr "" -#: cp/name-lookup.c:2107 +#: cp/name-lookup.c:2118 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 msgid "`%D' not declared" msgstr "" #. If the OLD_FN was really declared, the #. declarations don't match. -#: cp/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:2898 +#: cp/name-lookup.c:2909 msgid "using-declaration cannot name destructor" msgstr "" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 msgid "declaration of `%D' not in a namespace surrounding `%D'" msgstr "" -#: cp/name-lookup.c:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 msgid "unknown namespace `%D'" msgstr "" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 msgid "namespace `%T' undeclared" msgstr "" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 msgid "`%D' attribute directive ignored" msgstr "Attribut-Anweisung »%D« wird ignoriert" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 msgid "use of `%D' is ambiguous" msgstr "" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 msgid "%J first type here" msgstr "" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 msgid "invalid use of `%D'" msgstr "" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 msgid "`%D::%D' is not a template" msgstr "" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 msgid "`%D' is not a function," msgstr "" -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 msgid " conflict with `%D'" msgstr "" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -15643,172 +15645,181 @@ msgstr "" msgid "typedef-name `%D' used as destructor declarator" msgstr "" -#: cp/parser.c:3635 +#: cp/parser.c:3638 msgid "ISO C++ forbids compound-literals" msgstr "ISO-C++ verbietet zusammengesetzte Literale" -#: cp/parser.c:4456 +#: cp/parser.c:4461 #, fuzzy msgid "array bound forbidden after parenthesized type-id" msgstr "Attribute hinter geklammerter Initialisierung werden ignoriert" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4619 +#: cp/parser.c:4624 msgid "expression in new-declarator must have integral or enumeration type" msgstr "" -#: cp/parser.c:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, c-format msgid "case label `%E' not within a switch statement" msgstr "" -#: cp/parser.c:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6640 +#: cp/parser.c:6645 msgid "duplicate `friend'" msgstr "doppeltes »friend«" -#: cp/parser.c:6789 +#: cp/parser.c:6794 msgid "class definition may not be declared a friend" msgstr "" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "" -#: cp/parser.c:7155 +#: cp/parser.c:7160 msgid "anachronistic old-style base class initializer" msgstr "" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 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:7908 +#: cp/parser.c:7923 msgid "`<::' cannot begin a template-argument list" msgstr "" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 msgid "non-template `%D' used as template" msgstr "" -#: cp/parser.c:8089 -msgid "(use `%T::template %D' to indicate that it is a template)" +#: cp/parser.c:8107 +msgid "use `%T::template %D' to indicate that it is a template" msgstr "" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "" -#: cp/parser.c:9148 +#: cp/parser.c:9180 msgid "expected type-name" msgstr "" -#: cp/parser.c:9207 +#: cp/parser.c:9239 msgid "type attributes are honored only at type definition" msgstr "" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 msgid "a template-id may not appear in a using-declaration" msgstr "" -#: cp/parser.c:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:9919 +#: cp/parser.c:9951 msgid "attributes are not allowed on a function-definition" msgstr "bei einer Funktionsdefinition sind keine Attribute erlaubt" -#: cp/parser.c:10052 +#: cp/parser.c:10084 msgid "attributes after parenthesized initializer ignored" msgstr "Attribute hinter geklammerter Initialisierung werden ignoriert" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +#, fuzzy +msgid "`%T::%D' is not a type" +msgstr "»%s« ist kein Template" + +#: cp/parser.c:11288 msgid "file ends in default argument" msgstr "" -#: cp/parser.c:11310 +#: cp/parser.c:11344 msgid "deprecated use of default argument for parameter of non-function" msgstr "" -#: cp/parser.c:11313 +#: cp/parser.c:11347 msgid "default arguments are only permitted for function parameters" msgstr "" -#: cp/parser.c:12043 +#: cp/parser.c:12078 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "" -#: cp/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "" -#: cp/parser.c:12067 +#: cp/parser.c:12102 msgid "an explicit specialization must be preceded by 'template <>'" msgstr "" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12399 +#: cp/parser.c:12434 msgid "friend declaration does not name a class or function" msgstr "»friend«-Deklaration benennt keine Klasse oder Funktion" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" msgstr "" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" msgstr "" -#: cp/parser.c:13665 +#: cp/parser.c:13700 msgid "reference to `%D' is ambiguous" msgstr "" -#: cp/parser.c:13839 +#: cp/parser.c:13874 msgid "too few template-parameter-lists" msgstr "" @@ -15816,45 +15827,45 @@ msgstr "" #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 msgid "too many template-parameter-lists" msgstr "" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 msgid "invalid function declaration" msgstr "ungültige Funktionsdeklaration" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 msgid "named return values are no longer supported" msgstr "benannte Rückgabewerte werden nicht mehr unterstützt" -#: cp/parser.c:14522 +#: cp/parser.c:14561 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 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14535 +#: cp/parser.c:14574 #, fuzzy msgid "missing `>' to terminate the template argument list" msgstr "fehlendes ')' in Makroparameterliste" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "" -#: cp/parser.c:15043 +#: cp/parser.c:15082 msgid "%D redeclared with different access" msgstr "%D mit anderem Zugriff redeklariert" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -16197,150 +16208,150 @@ msgstr "" msgid "%s %+#T" msgstr "" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "" -#: cp/pt.c:6469 +#: cp/pt.c:6470 msgid "invalid parameter type `%T'" msgstr "" -#: cp/pt.c:6471 +#: cp/pt.c:6472 msgid "in declaration `%D'" msgstr "" -#: cp/pt.c:6545 +#: cp/pt.c:6546 msgid "creating pointer to member function of non-class type `%T'" msgstr "" -#: cp/pt.c:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "" -#: cp/pt.c:6976 +#: cp/pt.c:6977 msgid "creating pointer to member of non-class type `%T'" msgstr "" -#: cp/pt.c:6982 +#: cp/pt.c:6983 msgid "creating pointer to member reference type `%T'" msgstr "" -#: cp/pt.c:7068 +#: cp/pt.c:7069 msgid "creating array of `%T'" msgstr "" -#: cp/pt.c:7074 +#: cp/pt.c:7075 msgid "creating array of `%T', which is an abstract class type" msgstr "" -#: cp/pt.c:7118 +#: cp/pt.c:7119 msgid "`%T' is not a class, struct, or union type" msgstr "" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr "" -#: cp/pt.c:8609 +#: cp/pt.c:8613 msgid "`%T' uses anonymous type" msgstr "»%T« verwendet anonymen Typen" -#: cp/pt.c:8611 +#: cp/pt.c:8615 msgid "`%T' uses local type `%T'" msgstr "»%T« verwendet lokalen Typen »%T«" -#: cp/pt.c:8619 +#: cp/pt.c:8623 msgid "`%T' is a variably modified type" msgstr "" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, c-format msgid "integral expression `%E' is not constant" msgstr "Integralausdruck »%E« ist nicht konstant" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr "" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "" -#: cp/pt.c:10551 +#: cp/pt.c:10568 msgid "explicit instantiation of `%#D'" msgstr "" -#: cp/pt.c:10588 +#: cp/pt.c:10605 msgid "duplicate explicit instantiation of `%#D'" msgstr "" -#: cp/pt.c:10610 +#: cp/pt.c:10627 msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "" -#: cp/pt.c:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" msgstr "" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" msgstr "" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, c-format msgid "ISO C++ forbids the use of `%s' on explicit instantiations" msgstr "" -#: cp/pt.c:10728 +#: cp/pt.c:10745 msgid "duplicate explicit instantiation of `%#T'" msgstr "" -#: cp/pt.c:11109 +#: cp/pt.c:11126 msgid "explicit instantiation of `%D' but no definition available" msgstr "" -#: cp/pt.c:11543 +#: cp/pt.c:11562 msgid "`%#T' is not a valid type for a template constant parameter" msgstr "" @@ -16507,7 +16518,7 @@ msgstr "" msgid "incomplete type `%T' used in nested name specifier" msgstr "" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 msgid "`%D' is not a member of `%T'" msgstr "" @@ -16550,239 +16561,239 @@ msgstr "" msgid "type of `%E' is unknown" msgstr "" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "" -#: cp/tree.c:539 +#: cp/tree.c:532 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, c-format msgid "`%s' attribute can only be applied to Java class definitions" msgstr "" -#: cp/tree.c:1857 +#: cp/tree.c:1850 #, c-format msgid "`%s' attribute can only be applied to class definitions" msgstr "" -#: cp/tree.c:1863 +#: cp/tree.c:1856 #, c-format msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default" msgstr "" -#: cp/tree.c:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, c-format msgid "can only use `%s' attribute on file-scope definitions of objects of class type" msgstr "" -#: cp/tree.c:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, c-format msgid "`%s' attribute is not supported on this platform" msgstr "" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 msgid "%s between distinct pointer types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:513 +#: cp/typeck.c:512 #, c-format msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function" msgstr "" -#: cp/typeck.c:563 +#: cp/typeck.c:562 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 +#: cp/typeck.c:1234 #, c-format msgid "invalid application of `%s' to a member function" msgstr "" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, c-format msgid "invalid application of `%s' to a bit-field" msgstr "ungültige Anwendung von »%s« auf ein Bitfeld" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, 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:1342 +#: cp/typeck.c:1308 msgid "invalid use of non-static member function" msgstr "falsche Benutzung einer nicht-statischen Elementfunktion" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 msgid "request for member `%D' in `%E', which is of non-class type `%T'" msgstr "" -#: cp/typeck.c:1610 +#: cp/typeck.c:1633 #, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "ungültige Benutzung des nicht-statischen Datenelements »%E«" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 msgid "invalid access to non-static data member `%D' of NULL object" msgstr "" -#: cp/typeck.c:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 msgid "`%D::%D' is not a member of `%T'" msgstr "" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 msgid "`%T' is not a base of `%T'" msgstr "" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 msgid "'%D' has no member named '%E'" msgstr "" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 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:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, c-format msgid "object missing in use of `%E'" msgstr "" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, c-format msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'" msgstr "" -#: cp/typeck.c:2446 +#: cp/typeck.c:2469 #, c-format msgid "`%E' cannot be used as a function" msgstr "" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 msgid "too many arguments to %s `%+#D'" msgstr "" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "Parameter %P von »%D« hat unvollständigen Typen »%T«" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 msgid "parameter %P has incomplete type `%T'" msgstr "Parameter %P hat unvollständigen Typen »%T«" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 msgid "too few arguments to %s `%+#D'" msgstr "" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 msgid "assuming cast to type `%T' from overloaded function" msgstr "" -#: cp/typeck.c:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, c-format msgid "division by zero in `%E %% 0'" msgstr "" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 msgid "comparison between types `%#T' and `%#T'" msgstr "" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "" @@ -16790,281 +16801,281 @@ 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:3418 +#: cp/typeck.c:3441 msgid "NULL used in arithmetic" msgstr "" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 msgid "ISO C++ forbids using pointer of type `void *' in subtraction" msgstr "" -#: cp/typeck.c:3483 +#: cp/typeck.c:3506 msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "" -#: cp/typeck.c:3485 +#: cp/typeck.c:3508 msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "" -#: cp/typeck.c:3497 +#: cp/typeck.c:3520 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "" -#: cp/typeck.c:3553 +#: cp/typeck.c:3582 #, c-format msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id." msgstr "" -#: cp/typeck.c:3559 +#: cp/typeck.c:3588 #, c-format msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 msgid "cannot %s a pointer to incomplete type `%T'" msgstr "" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 msgid "ISO C++ forbids %sing a pointer of type `%T'" msgstr "" -#: cp/typeck.c:3858 +#: cp/typeck.c:3887 msgid "cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:3892 +#: cp/typeck.c:3921 msgid "invalid use of `--' on bool variable `%D'" msgstr "" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 msgid "ISO C++ forbids taking address of function `::main'" msgstr "" #. An expression like &memfn. -#: cp/typeck.c:3994 +#: cp/typeck.c:4027 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:3999 +#: cp/typeck.c:4032 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:4027 +#: cp/typeck.c:4060 msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression" msgstr "" -#: cp/typeck.c:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 msgid "attempt to take address of bit-field structure member `%D'" msgstr "" -#: cp/typeck.c:4190 +#: cp/typeck.c:4227 msgid "taking address of destructor" msgstr "" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 msgid "taking address of bound pointer-to-member expression" msgstr "" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 msgid "cannot create pointer to reference member `%D'" msgstr "" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 msgid "cannot take the address of `this', which is an rvalue expression" msgstr "" -#: cp/typeck.c:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "" -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, c-format msgid "%s expression list treated as compound expression" msgstr "%s Ausdrucksliste als zusammengesetzten Ausdruck behandelt" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "" -#: cp/typeck.c:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object" msgstr "" -#: cp/typeck.c:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type" msgstr "" -#: cp/typeck.c:4765 +#: cp/typeck.c:4813 msgid "invalid const_cast of an rvalue of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4782 +#: cp/typeck.c:4830 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 msgid "ISO C++ forbids casting to an array type `%T'" msgstr "" -#: cp/typeck.c:4835 +#: cp/typeck.c:4883 msgid "invalid cast to function type `%T'" msgstr "" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 msgid "cast from `%T' to `%T' discards qualifiers from pointer target type" msgstr "" -#: cp/typeck.c:4937 +#: cp/typeck.c:4985 msgid "cast from `%T' to `%T' increases required alignment of target type" msgstr "" -#: cp/typeck.c:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr "" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 msgid "ISO C++ forbids cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:5219 +#: cp/typeck.c:5267 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr "" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 msgid " in pointer to member conversion" msgstr "" #. This is a reinterpret cast, we choose to do nothing. -#: cp/typeck.c:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 msgid "pointer to member cast via virtual base `%T'" msgstr "Typumwandlung von Zeiger in Element über virtuelle Basis »%T«" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 msgid "pointer to member conversion via virtual base `%T'" msgstr "Konvertierung von Zeiger in Element über virtuelle Basis »%T«" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 msgid "invalid conversion to type `%T' from type `%T'" msgstr "" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 msgid "passing NULL used for non-pointer %s %P of `%D'" msgstr "" -#: cp/typeck.c:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 msgid "passing `%T' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 msgid "passing negative value `%E' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'" msgstr "" -#: cp/typeck.c:5706 +#: cp/typeck.c:5754 msgid "cannot convert `%T' to `%T' in %s" msgstr "" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 msgid "in passing argument %P of `%+D'" msgstr "" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 msgid "reference to local variable `%D' returned" msgstr "" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 msgid "address of local variable `%D' returned" msgstr "" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 msgid "return-statement with no value, in function returning '%T'" msgstr "Return-Anweisung ohne Wert, in »%T« zurückgebender Funktion" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 msgid "return-statement with a value, in function returning 'void'" msgstr "Return-Anweisung mit Wert in »void« zurückgebender Funktion" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)" msgstr "" @@ -18694,12 +18705,12 @@ msgstr "" msgid "field initializer type mismatch" msgstr "" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, c-format msgid "can't create directory %s: %m" msgstr "das Verzeichnis %s kann nicht erzeugt werden: %m" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, c-format msgid "can't create %s: %m" msgstr "Es ist nicht möglich, %s zu erzeugen: %m" @@ -18778,260 +18789,323 @@ 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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2977 msgid "Constructor invocation must be first thing in a constructor" msgstr "" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr "" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" "%s" msgstr "" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "" @@ -19088,8 +19162,8 @@ msgstr "" msgid "cannot find protocol declaration for `%s'" msgstr "" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, c-format msgid "cannot find interface declaration for `%s'" msgstr "" @@ -19114,8 +19188,8 @@ msgstr "" 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "" @@ -19129,7 +19203,7 @@ msgstr "" msgid "class `%s' already exists" msgstr "" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "»%s« redeklariert als andere Symbolart" @@ -19288,1450 +19362,1770 @@ msgstr "" msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, c-format msgid "instance variable `%s' is %s; this will be a hard error in the future" msgstr "" -#: objc/objc-act.c:6546 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, 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:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "vorherige Deklaration von »%s«" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 msgid "%J%s `%c%s'" msgstr "" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, c-format msgid "no super class declared in interface for `%s'" msgstr "" -#: objc/objc-act.c:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 msgid "Display this information" msgstr "Diese Informationen anzeigen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 msgid "Do not discard comments" msgstr "Kommentare nicht verwerfen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 msgid "Print the name of header files as they are used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd 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 -#, fuzzy -msgid "Generate make dependencies" -msgstr "dynamische Abhängigkeiten.\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 msgid "Generate make dependencies and compile" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -#, fuzzy -msgid "Generate phony targets for all headers" -msgstr "Code für einen 5206e erzeugen" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 msgid "-O\tSet optimization level to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 msgid "Optimize for space rather than speed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 msgid "Do not generate #line directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 msgid "Warn about subscripts whose type is \"char\"" msgstr "Vor Indizes mit Typ \"char\" warnen" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 msgid "Warn when all constructors and destructors are private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 msgid "Warn when a declaration is found after a statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -msgid "Warn about deprecated compiler features" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 msgid "Warn about compile-time integer division by zero" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 msgid "Make implicit function declarations an error" msgstr "Fehler bei impliziten Funktionsdeklaration erzeugen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 msgid "Warn if testing floating point numbers for equality" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 msgid "Warn about format strings that are not literals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 msgid "Warn about strftime formats yielding 2-digit years" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 -msgid "Warn about implicit function declarations" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +msgid "Enable warnings about inter-procedural problems" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 -msgid "Warn when a declaration does not specify a type" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 +msgid "Warn about implicit function declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:198 -msgid "Deprecated. This switch has no effect." +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 +msgid "Warn when a declaration does not specify a type" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:201 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 msgid "Warn about suspicious declarations of \"main\"" msgstr "Vor verdächtigen Deklarationen von \"main\" warnen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 msgid "Warn about possibly missing braces around initializers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 msgid "Warn about global functions without previous declarations" msgstr "Vor globalen Funktionen ohne vorherige Deklaration warnen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 msgid "Warn about functions which might be candidates for format attributes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "Vor Funktionen, die Kandidaten für __attribute__((noreturn)) sind, warnen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 msgid "Warn about global functions without prototypes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 msgid "Warn about use of multi-character character constants" msgstr "Bei Verwendung von Zeichenkonstanten mit mehreren Zeichen warnen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 msgid "Warn about \"extern\" declarations not at file scope" msgstr "Vor \"extern\"-Deklarationen außerhalb des Dateisichtbarkeitsbereiches warnen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 msgid "Warn when non-templatized friend functions are declared within a template" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 msgid "Warn about non-virtual destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 msgid "Warn if a C-style cast is used in a program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 msgid "Warn if an old-style parameter definition is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 msgid "Warn when padding is required to align structure members" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 msgid "Warn about possibly missing parentheses" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 msgid "Warn when converting the type of pointers to member functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 msgid "Warn if inherited methods are unimplemented" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 msgid "Warn about signed-unsigned comparisons" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 msgid "Warn about code which might break strict aliasing rules" msgstr "Vor Code warnen, der strict-aliasing-Regeln verletzen könnte" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 msgid "Warn about unprototyped function declarations" msgstr "Vor Funktionsdeklarationen ohne Prototyp warnen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 msgid "Warn about enumerated switches, with no default, missing a case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 msgid "Warn about all enumerated switches missing a specific case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 msgid "Warn about features not present in traditional C" msgstr "Vor Sprachmerkmalen, die in traditionellem C nicht verfügbar sind, warnen" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 msgid "Warn if an undefined macro is used in an #if directive" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 msgid "-aux-info \tEmit declaration information into " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 msgid "-d\tEnable dumps from specific passes of the compiler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 msgid "Enforce class member access control semantics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 msgid "Specify that arguments may alias each other and globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 msgid "Assume arguments may alias globals but not each other" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 msgid "Assume arguments alias neither each other nor globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 msgid "Recognize the \"asm\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 msgid "Generate code to check bounds before indexing arrays" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 msgid "Replace add, compare, branch with branch on count register" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 msgid "Recognize built-in functions" msgstr "Eingebaute Funktionen erkennen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 msgid "-fcall-saved-\tMark as being preserved across functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 msgid "Save registers around function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +msgid "Preserve case used in program" +msgstr "Im Programm verwendete Groß-/Kleinschreibung beibehalten" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 msgid "Reduce the size of object files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 msgid "Perform a register copy-propagation optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 msgid "Place data items into their own section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 msgid "Inline member functions by default" msgstr "Standardmäßig »inline«-Elementfunktionen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +msgid "Allow '$' in symbol names" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 msgid "Permit '$' as an identifier character" msgstr "'$' als Bezeichnerzeichen zulassen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 msgid "Suppress output of instruction numbers and line number notes in debugging dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 msgid "Generate code to check exception specifications" msgstr "Code zur Überprüfung von Exception-Spezifikationen erzeugen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +msgid "f2c-compatible code can be generated" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +msgid "Unsupported; generate libf2c-calling code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +msgid "Program is written in typical Unix-f77 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +msgid "Unsupported; affects code generation of arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 msgid "Scope of for-init-statement variables is local to the loop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 msgid "Copy memory address constants into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 msgid "Copy memory operands into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 msgid "Place each function into its own section" msgstr "Jede Funktion in ihren eigenen Abschnitt platzieren" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 msgid "Perform global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 msgid "Perform redundant load after store elimination in global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 msgid "Perform store motion after global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 msgid "Recognize GNU-defined keywords" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "Code für die GNU-Laufzeitumgebung erzeugen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 msgid "Enable guessing of branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 msgid "Emit implicit instantiations of inline templates" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 msgid "Emit implicit instantiations of templates" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 -msgid "Pay attention to the \"inline\" keyword" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -#, fuzzy -msgid "Integrate simple functions into their callers" -msgstr "Zeiger auf Elementfunktion in Arithmetik verwendet" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 +msgid "Pay attention to the \"inline\" keyword" +msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 msgid "Instrument function entry and exit with profiling calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +msgid "Intrinsics in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 msgid "Generate code for functions even if they are fully inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 msgid "Give external symbols a leading underscore" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 msgid "Perform loop optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +msgid "Language keywords in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 msgid "Report on permanent memory allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 msgid "Don't warn about uses of Microsoft extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 msgid "Use graph-coloring register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "Code für die NeXT (Apple Mac OS X) Laufzeitumgebung erzeugen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 msgid "Do the full register move optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +msgid "Enable optimization of static class initialization code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 msgid "Enable optional diagnostics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 msgid "Return small aggregates in memory, not registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +msgid "Warn about use of (only a few for now) Fortran extensions" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 msgid "Perform loop peeling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 msgid "Enable an RTL peephole pass before sched2" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 msgid "Generate position-independent code if possible" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 msgid "Generate position-independent code for executables if possible" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 msgid "Insert arc-based program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 msgid "Return small aggregates in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 msgid "Perform a register renaming optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 msgid "Generate run time type descriptor information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +msgid "Allow appending a second underscore to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 msgid "Make \"char\" signed by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +msgid "Do not print names of program units as they are compiled" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 msgid "Convert floating point constants to single precision constants" msgstr "Fließkommakonstanten in Konstanten einfacher Genauigkeit konvertieren" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +msgid "Internally convert most source to lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 msgid "Create data files needed by \"gcov\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 msgid "Report the time taken by each compiler pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 msgid "Assume floating-point operations can trap" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +msgid "Allow all ugly features" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +msgid "Hollerith and typeless can be passed as arguments" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +msgid "Append underscores to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 msgid "Compile whole compilation unit at a time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +msgid "Enable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 msgid "Make \"char\" unsigned by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 msgid "Perform loop unswitching" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +msgid "Print g77-specific version information and run internal tests" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 msgid "Use expression value profiles in optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +msgid "Print internal debugging-related information" +msgstr "Interne Testinformationen ausgeben" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 msgid "Generate debug information in default format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 msgid "Generate debug information in COFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 msgid "Generate debug information in DWARF v2 format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 msgid "Dump declarations to a .decl file" msgstr "Deklaration in .decl-Datei ausgeben" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 msgid "Generate debug information in default extended format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 msgid "Generate debug information in STABS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 msgid "Generate debug information in extended STABS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 msgid "Generate debug information in VMS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 msgid "Generate debug information in XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 msgid "Generate debug information in extended XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 msgid "-o \tPlace output into " msgstr "-o \tAusgabe in schreiben" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 msgid "Enable function profiling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 msgid "Issue warnings needed for strict compliance to the standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 msgid "Generate C header of platform-specific features" msgstr "C-Header mit Plattform-spezifischen Merkmalen erzeugen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 msgid "Do not display functions compiled or elapsed time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 msgid "Remap file names when including files" msgstr "Dateinamen beim Einfügen von Dateien neu abbilden" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 msgid "Enable traditional preprocessing" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 msgid "Enable verbose output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -#, fuzzy -msgid "Display the compiler's version" -msgstr "Diese Informationen anzeigen" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 msgid "Suppress warnings" msgstr "" -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "»-p« wird nicht unterstützt; verwenden Sie »-pg« und gprof(1)" @@ -20743,7 +21137,7 @@ msgstr "GCC unterstützt nicht -C ohne -E" msgid "GCC does not support -CC without using -E" msgstr "GCC unterstützt nicht -CC ohne -E" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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" @@ -20895,11 +21289,8 @@ msgstr "" #~ msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n" #~ msgstr "Copyright © 2003 Free Software Foundation, Inc.\n" -#~ msgid "Preserve case used in program" -#~ msgstr "Im Programm verwendete Groß-/Kleinschreibung beibehalten" - -#~ msgid "Print internal debugging-related information" -#~ msgstr "Interne Testinformationen ausgeben" +#~ msgid "read-write constraint does not allow a register" +#~ msgstr "Schreib- und Lesebeschränkungen erlauben kein Register" #~ msgid "concatenation of string literals with __FUNCTION__ is deprecated" #~ msgstr "Verkettung von Zeichenkettenliteralen mit __FUNCTION__ ist veraltet" diff --git a/gcc/po/el.po b/gcc/po/el.po index 4666eb71843..ac5460003c5 100644 --- a/gcc/po/el.po +++ b/gcc/po/el.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.2\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2002-08-18 15:46+0100\n" "Last-Translator: Simos Xenitellis \n" "Language-Team: Greek \n" @@ -34,15 +34,15 @@ msgstr "" msgid "`%s' attribute only applies to function types" msgstr "" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -119,7 +119,7 @@ msgstr "" #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "" @@ -289,274 +289,274 @@ msgid "invalid application of `%s' to a void type" msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'" #: c-common.c:2951 -#, fuzzy, c-format -msgid "invalid application of `%s' to an incomplete type" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " msgstr "ìç Ýãêõñïò äåýôåñïò ôåëåóôÞò óå êáôÜóôáóç óõìâáôüôçôáò `%s'" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "" -#: c-common.c:3483 +#: c-common.c:3484 #, fuzzy, c-format msgid "cannot disable built-in function `%s'" msgstr "áäõíáìßá åêôÝëåóçò ioctl óôï `%s'" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, fuzzy, c-format msgid "too few arguments to function `%s'" msgstr "Ðñïåéäïðïßçóç: Ðïëý ëßãá ïñßóìáôá óôï åóùäïìçìÝíï `%s'" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, fuzzy, c-format msgid "too many arguments to function `%s'" msgstr "ðÜñá ðïëëÜ ïñßóìáôá" -#: c-common.c:3669 +#: c-common.c:3670 #, fuzzy, c-format msgid "non-floating-point argument to function `%s'" msgstr "ðÜñá ðïëëÜ ïñßóìáôá" -#: c-common.c:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "" -#: c-common.c:3900 +#: c-common.c:3901 msgid "range expressions in switch statements are non-standard" msgstr "" -#: c-common.c:3929 +#: c-common.c:3930 #, fuzzy msgid "empty range specified" msgstr "ìç ïñéóìÝíï" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "" -#: c-common.c:3981 +#: c-common.c:3982 #, fuzzy msgid "%Jthis is the first entry overlapping that value" msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò" -#: c-common.c:3985 +#: c-common.c:3986 #, fuzzy msgid "duplicate case value" msgstr "äéðëüò áñéèìüò ìçíýìáôïò" -#: c-common.c:3986 +#: c-common.c:3987 #, fuzzy msgid "%Jpreviously used here" msgstr "Äåí õðÜñ÷åé ðñïçãïýìåíç êáíïíéêÞ Ýêöñáóç" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "" -#: c-common.c:3991 +#: c-common.c:3992 #, fuzzy msgid "%Jthis is the first default label" msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò" -#: c-common.c:4016 +#: c-common.c:4017 msgid "taking the address of a label is non-standard" msgstr "" -#: c-common.c:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4648 +#: c-common.c:4649 #, fuzzy, c-format msgid "unknown machine mode `%s'" msgstr "Üãíùóôï óåô `%s'" -#: c-common.c:4651 +#: c-common.c:4652 #, fuzzy, c-format msgid "no data type for mode `%s'" msgstr "äåí ïñßóôçêå âáñýôçôá ãéá ôï óýìâïëï `%s'" -#: c-common.c:4655 +#: c-common.c:4656 #, fuzzy, c-format msgid "invalid pointer mode `%s'" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, fuzzy, c-format msgid "unable to emulate '%s'" msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s" -#: c-common.c:4706 +#: c-common.c:4707 #, fuzzy msgid "%Jsection attribute cannot be specified for local variables" msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü" -#: c-common.c:4717 +#: c-common.c:4718 #, fuzzy msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò" -#: c-common.c:4726 +#: c-common.c:4727 #, fuzzy msgid "%Jsection attribute not allowed for '%D'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: c-common.c:4732 +#: c-common.c:4733 #, fuzzy msgid "%Jsection attributes are not supported for this target" msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "" -#: c-common.c:4780 +#: c-common.c:4781 #, fuzzy msgid "requested alignment is too large" msgstr "ÊáêÞ áßôçóç ðáñáìÝôñùí" -#: c-common.c:4806 +#: c-common.c:4807 #, fuzzy msgid "%Jalignment may not be specified for '%D'" msgstr "ìüíï Ýíá üñéóìá ìðïñåß íá äçëùèåß" -#: c-common.c:4844 +#: c-common.c:4845 msgid "%J'%D' defined both normally and as an alias" msgstr "" -#: c-common.c:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "" -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "" -#: c-common.c:4910 +#: c-common.c:4911 msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\"" msgstr "" -#: c-common.c:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "" -#: c-common.c:4945 +#: c-common.c:4946 msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\"" msgstr "" -#: c-common.c:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 msgid "%J'%E' attribute applies only to functions" msgstr "" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 #, fuzzy msgid "%Jcan't set '%E' attribute after definition" msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò" -#: c-common.c:5094 +#: c-common.c:5095 #, fuzzy, c-format msgid "`%s' attribute ignored for `%s'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: c-common.c:5157 +#: c-common.c:5158 #, fuzzy, c-format msgid "invalid vector type for attribute `%s'" msgstr "ìç Ýãêõñï åßäïò áëöáñéèìçôéêïý `%s'" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 msgid "no vector mode with the size and type specified could be found" msgstr "" -#: c-common.c:5315 +#: c-common.c:5316 msgid "nonnull attribute without arguments on a non-prototype" msgstr "" -#: c-common.c:5330 +#: c-common.c:5331 #, c-format msgid "nonnull argument has invalid operand number (arg %lu)" msgstr "" -#: c-common.c:5349 +#: c-common.c:5350 #, c-format msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5357 +#: c-common.c:5358 #, c-format msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "" -#: c-common.c:5508 +#: c-common.c:5509 #, fuzzy msgid "cleanup arg not an identifier" msgstr "äéðëüò ðñïóäéïñéóôÞò ìçíýìáôïò" -#: c-common.c:5515 +#: c-common.c:5516 #, fuzzy msgid "cleanup arg not a function" msgstr "Ôï åðþíõìï áíôéêåßìåíï äåí åßíáé áíáæçôÞóéìï" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s óôï ôÝëïò ôçò åéóüäïõ" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s ðñéí áðü %s'%c'" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s ðñéí áðü %s'\\x%x'" -#: c-common.c:5888 +#: c-common.c:5889 #, fuzzy, c-format msgid "%s before string constant" msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "%s ðñéí áðü áñéèìçôéêÞ óôáèåñÜ" # src/request.c:37 -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s ðñéí áðü \"%s\"" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s ðñéí áðü ôï óýìâïëï '%s'" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 treelang/tree-convert.c:79 msgid "void value not ignored as it ought to be" msgstr "" @@ -755,8 +755,8 @@ msgstr "" 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 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 msgid "%Jshadowed declaration is here" msgstr "" @@ -765,7 +765,7 @@ msgstr "" msgid "nested extern declaration of `%s'" msgstr "" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 #, fuzzy msgid "%Jprevious declaration of '%D'" msgstr "ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç ôïõ `%s'" @@ -844,7 +844,7 @@ msgid "two types specified in one empty declaration" msgstr "" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 #, fuzzy msgid "empty declaration" msgstr "êåíü áëöáñéèìçôéêü" @@ -886,7 +886,7 @@ msgstr "" msgid "parameter `%s' is initialized" msgstr "" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "" @@ -900,7 +900,7 @@ msgstr "" msgid "elements of array `%s' have incomplete type" msgstr "" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 msgid "%Jinline function '%D' given attribute noinline" msgstr "" @@ -1186,7 +1186,7 @@ msgstr "" msgid "ISO C90 forbids variable-size array `%s'" msgstr "" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, fuzzy, c-format msgid "size of array `%s' is too large" msgstr "Ï êáôÜëïãïò `%s' äåí åßíáé ðñïóéôüò." @@ -1230,7 +1230,7 @@ msgstr "" msgid "ISO C forbids const or volatile function types" msgstr "" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "" @@ -1550,7 +1550,7 @@ msgstr "" msgid "argument \"%D\" doesn't match prototype" msgstr "" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 #, fuzzy msgid "no return statement in function returning non-void" msgstr "`return' ÷ùñßò ôéìÞ, óå óõíÜñôçóç ðïõ åðéóôñÝöåé ìç-êåíü" @@ -2350,7 +2350,7 @@ msgstr " msgid "ISO C forbids an empty source file" msgstr "" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "" @@ -2444,7 +2444,7 @@ msgstr "" msgid "ISO C forbids forward references to `enum' types" msgstr "" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 #, fuzzy msgid "comma at end of enumerator list" msgstr "óêïõðßäéá óôï ôÝëïò ôïõ áñéèìïý" @@ -2453,7 +2453,7 @@ msgstr " msgid "no semicolon at end of struct or union" msgstr "" -#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "" @@ -2481,23 +2481,23 @@ msgstr "" msgid "braced-group within expression allowed only inside a function" msgstr "" -#: c-parse.y:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 msgid "%Hempty body in an if-statement" msgstr "" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 msgid "break statement not within loop or switch" msgstr "" -#: c-parse.y:2281 cp/parser.c:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 msgid "continue statement not within a loop" msgstr "" -#: c-parse.y:2323 objc/objc-parse.y:2380 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "" @@ -2507,11 +2507,11 @@ 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:2440 objc/objc-parse.y:2548 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "" @@ -2529,7 +2529,7 @@ msgstr " msgid "parser stack overflow" msgstr "Õðåñ÷åßëéóç ðßíáêá áñ÷åßïõ" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "óõíôáêôéêü óöÜëìá óôï óýìâïëï '%s'" @@ -2701,21 +2701,21 @@ msgstr " msgid "junk at end of #pragma redefine_extname" msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "" -#: c-pragma.c:413 +#: c-pragma.c:414 #, fuzzy msgid "malformed #pragma extern_prefix, ignored" msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå" -#: c-pragma.c:418 +#: c-pragma.c:419 #, fuzzy msgid "junk at end of #pragma extern_prefix" msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü" -#: c-pragma.c:449 +#: c-pragma.c:450 msgid "asm declaration conflicts with previous rename" msgstr "" @@ -2732,7 +2732,7 @@ msgstr "" msgid "(enclose actions of previous case statements requiring destructors in their own scope.)" msgstr "" -#: c-semantics.c:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "" @@ -2741,109 +2741,109 @@ msgstr "" msgid "will never be executed" msgstr "" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 #, fuzzy msgid "invalid use of void expression" msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç" -#: c-typeck.c:150 +#: c-typeck.c:153 #, fuzzy msgid "invalid use of flexible array member" msgstr "ìç Ýãêõñç þñá ôçò ìÝñáò" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, fuzzy, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "ìç Ýãêõñïò äåýôåñïò ôåëåóôÞò óå êáôÜóôáóç óõìâáôüôçôáò `%s'" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 msgid "function types not truly compatible in ISO C" msgstr "" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "" -#: c-typeck.c:824 +#: c-typeck.c:838 msgid "function return types not compatible due to `volatile'" msgstr "" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, c-format msgid "request for member `%s' in something not a structure or union" msgstr "" -#: c-typeck.c:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, fuzzy, c-format msgid "invalid type argument of `%s'" msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç." -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "" -#: c-typeck.c:1511 +#: c-typeck.c:1525 msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, c-format msgid "local declaration of `%s' hides instance variable" msgstr "" -#: c-typeck.c:1683 +#: c-typeck.c:1697 #, fuzzy msgid "called object is not a function" msgstr "Ôï åðþíõìï áíôéêåßìåíï äåí åßíáé áíáæçôÞóéìï" @@ -2851,701 +2851,701 @@ msgstr " #. 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 +#: c-typeck.c:1729 msgid "function called through a non-compatible type" msgstr "" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +#, fuzzy +msgid "initializer element is not constant" +msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò" + +#: c-typeck.c:1838 cp/typeck.c:2567 #, fuzzy msgid "too many arguments to function" msgstr "ðÜñá ðïëëÜ ïñßóìáôá" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, c-format msgid "%s as integer rather than floating due to prototype" msgstr "" -#: c-typeck.c:1850 +#: c-typeck.c:1875 #, c-format msgid "%s as integer rather than complex due to prototype" msgstr "" -#: c-typeck.c:1853 +#: c-typeck.c:1878 #, c-format msgid "%s as complex rather than floating due to prototype" msgstr "" -#: c-typeck.c:1856 +#: c-typeck.c:1881 #, c-format msgid "%s as floating rather than integer due to prototype" msgstr "" -#: c-typeck.c:1859 +#: c-typeck.c:1884 #, c-format msgid "%s as complex rather than integer due to prototype" msgstr "" -#: c-typeck.c:1862 +#: c-typeck.c:1887 #, c-format msgid "%s as floating rather than complex due to prototype" msgstr "" -#: c-typeck.c:1872 +#: c-typeck.c:1897 #, c-format msgid "%s as `float' rather than `double' due to prototype" msgstr "" -#: c-typeck.c:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 #, fuzzy msgid "too few arguments to function" msgstr "ðïëý ëßãá ïñßóìáôá" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "" -#: c-typeck.c:2040 +#: c-typeck.c:2065 msgid "comparisons like X<=Y<=Z do not have their mathematical meaning" msgstr "" -#: c-typeck.c:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "" -#: c-typeck.c:2243 +#: c-typeck.c:2268 #, fuzzy msgid "wrong type argument to abs" msgstr "ëÜèïò áñéèìüò ïñéóìÜôùí" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "" -#: c-typeck.c:2312 +#: c-typeck.c:2337 msgid "ISO C does not support `++' and `--' on complex types" msgstr "" -#: c-typeck.c:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 msgid "wrong type argument to increment" msgstr "" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "" -#: c-typeck.c:2477 +#: c-typeck.c:2502 #, fuzzy msgid "invalid lvalue in unary `&'" msgstr "ìç Ýãêõñïò ÷ñüíïò áíáðÞäçò" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, c-format msgid "attempt to take address of bit-field structure member `%s'" msgstr "" -#: c-typeck.c:2642 +#: c-typeck.c:2668 #, fuzzy msgid "use of conditional expressions as lvalues is deprecated" msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç (ëÜèïò åßóïäïò): %s" -#: c-typeck.c:2645 +#: c-typeck.c:2671 msgid "use of compound expressions as lvalues is deprecated" msgstr "" -#: c-typeck.c:2648 +#: c-typeck.c:2674 msgid "use of cast expressions as lvalues is deprecated" msgstr "" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, fuzzy, c-format msgid "%s of read-only variable `%s'" msgstr "Ìç áíáãíùñßóéìç ìåôáâëçôÞ `%s'" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, fuzzy, c-format msgid "cannot take address of bit-field `%s'" msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï áñ÷åßï fifo `%s'" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 treelang/treetree.c:946 #, c-format msgid "global register variable `%s' used in nested function" msgstr "" -#: c-typeck.c:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 treelang/treetree.c:950 #, c-format msgid "register variable `%s' used in nested function" msgstr "" -#: c-typeck.c:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 treelang/treetree.c:957 #, c-format msgid "address of global register variable `%s' requested" msgstr "" -#: c-typeck.c:2739 +#: c-typeck.c:2765 msgid "cannot put object with volatile field into register" msgstr "" -#: c-typeck.c:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, c-format msgid "address of register variable `%s' requested" msgstr "" -#: c-typeck.c:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "" -#: c-typeck.c:2835 +#: c-typeck.c:2861 msgid "ISO C forbids conditional expr with only one void side" msgstr "" -#: c-typeck.c:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 msgid "ISO C forbids conditional expr between `void *' and function pointer" msgstr "" -#: c-typeck.c:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2955 +#: c-typeck.c:2981 msgid "left-hand operand of comma expression has no effect" msgstr "" -#: c-typeck.c:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "" -#: c-typeck.c:3002 +#: c-typeck.c:3028 msgid "ISO C forbids casting nonscalar to the same type" msgstr "" -#: c-typeck.c:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "" -#: c-typeck.c:3028 +#: c-typeck.c:3054 msgid "cast to union type from type not present in union" msgstr "" -#: c-typeck.c:3079 +#: c-typeck.c:3105 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "" -#: c-typeck.c:3129 +#: c-typeck.c:3155 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "" -#: c-typeck.c:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "" -#: c-typeck.c:3144 +#: c-typeck.c:3170 msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "" -#: c-typeck.c:3153 +#: c-typeck.c:3179 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:3311 +#: c-typeck.c:3337 #, fuzzy msgid "invalid lvalue in assignment" msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 #, fuzzy msgid "assignment" msgstr "ðñïóðÝñáóìá ïñßóìáôïò" -#: c-typeck.c:3429 +#: c-typeck.c:3455 #, fuzzy msgid "cannot pass rvalue to reference parameter" msgstr "äåí åßíáé äõíáôüí íá ãßíåé `stat' ôï locale áñ÷åßï `%s'" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:3548 +#: c-typeck.c:3574 msgid "ISO C prohibits argument conversion to union type" msgstr "" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, c-format msgid "ISO C forbids %s between function pointer and `void *'" msgstr "" -#: c-typeck.c:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 #, fuzzy msgid "invalid use of non-lvalue array" msgstr "ìç Ýãêõñç þñá ôçò ìÝñáò" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, c-format msgid "%s makes pointer from integer without a cast" msgstr "%s ìåôáôñÝðåé áêÝñáéï óå äåßêôç ÷ùñßò ìåôáôñïðÝá" -#: c-typeck.c:3646 +#: c-typeck.c:3672 #, c-format msgid "%s makes integer from pointer without a cast" msgstr "" -#: c-typeck.c:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, fuzzy, c-format msgid "incompatible type for argument %d of `%s'" msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, c-format msgid "incompatible type for argument %d of indirect function call" msgstr "" -#: c-typeck.c:3671 +#: c-typeck.c:3697 #, fuzzy, c-format msgid "incompatible types in %s" msgstr "ìç Ýãêõñï åßäïò áëöáñéèìçôéêïý `%s'" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, fuzzy, c-format msgid "passing arg of `%s'" msgstr "ôï ðÝñáóìá ôïõ ïñßóìáôïò %d áðü `%s'" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 #, fuzzy msgid "passing arg of pointer to function" msgstr "ôï ðÝñáóìá ôïõ ïñßóìáôïò %d ôïõ äåßêôç óôç óõíÜñôçóç" #. Function name is known; supply it. -#: c-typeck.c:3744 +#: c-typeck.c:3770 #, c-format msgid "passing arg %d of `%s'" msgstr "ôï ðÝñáóìá ôïõ ïñßóìáôïò %d áðü `%s'" #. Function name unknown (call through ptr); just give arg number. -#: c-typeck.c:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "ôï ðÝñáóìá ôïõ ïñßóìáôïò %d ôïõ äåßêôç óôç óõíÜñôçóç" -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "" # src/request.c:263 -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, fuzzy, c-format msgid "(near initialization for `%s')" msgstr "Ôï âÞìá áñ÷éêïðïßçóçò áðÝôõ÷å" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 msgid "initializer-string for array of chars is too long" msgstr "" -#: c-typeck.c:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "" -#: c-typeck.c:4172 c-typeck.c:4174 c-typeck.c:4190 c-typeck.c:4211 -#: c-typeck.c:5593 -#, fuzzy -msgid "initializer element is not constant" -msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò" - # src/request.c:263 -#: c-typeck.c:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "áñ÷éêïðïßçóç" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 #, fuzzy msgid "invalid initializer" msgstr "ìç Ýãêõñï ìÝãåèïò ïñéæüíôéïõ óôçëïèÝôç: %s" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 #, fuzzy msgid "opaque vector types cannot be initialized" msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß" -#: c-typeck.c:4711 +#: c-typeck.c:4734 #, fuzzy msgid "extra brace group at end of initializer" msgstr "áêïëïõèïýí óêïõðßäéá óôï ôÝëïò ôçò ãñáììÞò" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "" -#: c-typeck.c:4842 +#: c-typeck.c:4865 msgid "initialization of flexible array member in a nested context" msgstr "" -#: c-typeck.c:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "" -#: c-typeck.c:4875 +#: c-typeck.c:4898 #, fuzzy msgid "missing initializer" msgstr "Ý÷åé ðáñáëçöèåß ôï áñ÷åßï ðñïïñéóìïý" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 msgid "field name not in record or union initializer" msgstr "" -#: c-typeck.c:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 msgid "array index in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "" -#: c-typeck.c:5101 +#: c-typeck.c:5124 msgid "array index range in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "" -#: c-typeck.c:6240 +#: c-typeck.c:6263 #, fuzzy msgid "asm template is not a string constant" msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 #, fuzzy msgid "modification by `asm'" msgstr "Ç ôñïðïðïßçóç áðÝôõ÷å" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "" -#: c-typeck.c:6369 +#: c-typeck.c:6392 msgid "`return' with no value, in function returning non-void" msgstr "`return' ÷ùñßò ôéìÞ, óå óõíÜñôçóç ðïõ åðéóôñÝöåé ìç-êåíü" -#: c-typeck.c:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "åðéóôñïöÞ" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "" -#: c-typeck.c:6496 +#: c-typeck.c:6519 msgid "`long' switch expression not converted to `int' in ISO C" msgstr "" -#: c-typeck.c:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "äéáßñåóç ìå ìçäÝí" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 msgid "ISO C forbids comparison of `void *' with function pointer" msgstr "" -#: c-typeck.c:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 msgid "comparison of distinct pointer types lacks a cast" msgstr "" -#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "" -#: c-typeck.c:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 #, fuzzy msgid "unordered comparison on non-floating point argument" msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "" @@ -3813,45 +3813,45 @@ msgstr "" msgid "function body not available" msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß" -#: cgraph.c:163 cgraphunit.c:340 +#: cgraph.c:163 cgraphunit.c:341 msgid "redefined extern inline functions are not considered for inlining" msgstr "" -#: cgraph.c:166 cgraphunit.c:345 +#: cgraph.c:166 cgraphunit.c:346 #, fuzzy msgid "function not considered for inlining" msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß" -#: cgraph.c:168 cgraphunit.c:343 +#: cgraph.c:168 cgraphunit.c:344 #, fuzzy msgid "function not inlinable" msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "" @@ -4039,7 +4039,7 @@ msgstr " msgid "library lib%s not found" msgstr "Ðéèáíüí äå âñÝèçêå" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -4047,7 +4047,7 @@ msgid "" "\n" msgstr "" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -4913,7 +4913,7 @@ msgstr "" msgid "syntax error in macro parameter list" msgstr "óõíôáêôéêü óöÜëìá óôïí ïñéóìü êëÜóçò ÷áñáêôÞñùí" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr "" @@ -4995,16 +4995,16 @@ msgstr " msgid "function using short complex types cannot be inline" msgstr "" -#: expr.c:6385 +#: expr.c:6386 msgid "%Jprior parameter's size depends on '%D'" msgstr "" -#: expr.c:6752 +#: expr.c:6753 msgid "returned value in block_exit_expr" msgstr "" #. We can't make a bitwise copy of this object, so fail. -#: expr.c:8895 +#: expr.c:8894 #, fuzzy msgid "cannot take the address of an unaligned member" msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï áñ÷åßï fifo `%s'" @@ -5054,12 +5054,12 @@ msgstr "" #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 #, fuzzy msgid "invalid expression as operand" @@ -5113,23 +5113,23 @@ msgstr "%s: msgid "impossible constraint in `asm'" msgstr "" -#: function.c:5723 +#: function.c:5733 msgid "%J'%D' might be used uninitialized in this function" msgstr "" -#: function.c:5730 +#: function.c:5740 msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "" -#: function.c:5749 +#: function.c:5759 msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "" -#: function.c:7006 +#: function.c:6929 #, fuzzy msgid "%Junused parameter '%D'" msgstr "Üãíùóôïò ÷áñáêôÞñáò `%s'" @@ -6599,7 +6599,7 @@ msgstr "" msgid "can't use '%s' as a %s register" msgstr "" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, fuzzy, c-format msgid "unknown register name: %s" msgstr "Üãíùóôïò ÷áñáêôÞñáò `%s'" @@ -6657,49 +6657,49 @@ msgstr " msgid "inconsistent operand constraints in an `asm'" msgstr "" -#: reload1.c:1212 +#: reload1.c:1222 msgid "frame size too large for reliable stack checking" msgstr "" -#: reload1.c:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "" -#: reload1.c:1868 +#: reload1.c:1878 #, c-format msgid "can't find a register in class `%s' while reloading `asm'" msgstr "" -#: reload1.c:1872 +#: reload1.c:1882 #, c-format msgid "unable to find a register to spill in class `%s'" msgstr "" -#: reload1.c:1874 +#: reload1.c:1884 #, fuzzy msgid "this is the insn:" msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 #, fuzzy msgid "could not find a spill register" msgstr "áäõíáìßá åýñåóçò âñü÷ïõ" -#: reload1.c:4968 +#: reload1.c:4978 msgid "`asm' operand constraint incompatible with operand size" msgstr "" #. It's the compiler's fault. -#: reload1.c:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "" @@ -6752,7 +6752,7 @@ msgstr "" msgid "jump to `%s' invalidly jumps into binding contour" msgstr "" -#: stmt.c:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 msgid "%Jlabel '%D' used before containing binding contour" msgstr "" @@ -6769,7 +6769,7 @@ msgstr "" msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "" @@ -6778,129 +6778,124 @@ msgstr "" msgid "matching constraint not valid in output operand" msgstr "" -#: stmt.c:1260 -#, fuzzy -msgid "read-write constraint does not allow a register" -msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "" -#: stmt.c:1372 +#: stmt.c:1369 #, fuzzy, c-format msgid "invalid punctuation `%c' in constraint" msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]" -#: stmt.c:1396 +#: stmt.c:1393 #, fuzzy msgid "matching constraint does not allow a register" msgstr "ó÷åôéêÞ èÝóç áñ÷åßïõ åßíáé åêôüò ïñßùí" -#: stmt.c:1424 +#: stmt.c:1421 #, c-format msgid "asm-specifier for variable `%s' conflicts with asm clobber list" msgstr "" -#: stmt.c:1514 +#: stmt.c:1511 #, fuzzy, c-format msgid "unknown register name `%s' in `asm'" msgstr "Üãíùóôïò ÷áñáêôÞñáò óôï ðåäßï `%s' ôçò êáôçãïñßáò `%s'" -#: stmt.c:1522 +#: stmt.c:1519 #, fuzzy, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "Üãíùóôïò ÷áñáêôÞñáò óôï ðåäßï `%s' ôçò êáôçãïñßáò `%s'" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "" -#: stmt.c:1914 +#: stmt.c:1911 #, fuzzy msgid "too many alternatives in `asm'" msgstr "Õðåñâïëéêá ðïëëÜ áíïéêôÜ áñ÷åßá óôï óýóôçìá" -#: stmt.c:1926 +#: stmt.c:1923 msgid "operand constraints for `asm' differ in number of alternatives" msgstr "" -#: stmt.c:1978 +#: stmt.c:1975 #, fuzzy, c-format msgid "duplicate asm operand name '%s'" msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "" -#: stmt.c:2104 +#: stmt.c:2101 #, fuzzy, c-format msgid "undefined named operand '%s'" msgstr "Ìç ïñéóìÝíï üíïìá %s" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "" -#: stmt.c:2317 +#: stmt.c:2314 msgid "%Hvalue computed is not used" msgstr "" -#: stmt.c:3733 +#: stmt.c:3730 #, fuzzy msgid "%Junused variable '%D'" msgstr "á÷ñçóéìïðïßçôç ìåôáâëçôÞ `%s'" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, c-format msgid "case value `%ld' not in enumerated type `%s'" msgstr "" -#: stmt.c:5401 +#: stmt.c:5398 #, fuzzy msgid "switch missing default case" msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò" @@ -6936,25 +6931,25 @@ msgstr " msgid "%Jpadding struct to align '%D'" msgstr "" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "" @@ -7100,7 +7095,7 @@ msgstr "" msgid "unrecognized gcc debugging option: %c" msgstr "ìç áíáãíùñßóçìç åðéëïãÞ `-%c'" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, c-format msgid "invalid option `%s'" msgstr "ìç Ýãêõñç åðéëïãÞ `%s'" @@ -7132,25 +7127,25 @@ msgstr " msgid "options enabled: " msgstr "åðéëïãÞ á\n" -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, fuzzy, c-format msgid "can't open %s for writing: %m" msgstr "%s: ÓöÜëìá åããñáöÞò " -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "" @@ -7210,7 +7205,7 @@ msgstr "" msgid "error writing to %s: %m" msgstr "óöÜëìá åããñáöÞò %s" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, fuzzy, c-format msgid "error closing %s: %m" msgstr "óöÜëìá áíÜãíùóçò %s" @@ -7271,35 +7266,35 @@ msgstr "%s: msgid "%Jsize of return value of '%D' is larger than %wd bytes" msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d" -#: tree.c:3800 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "" -#: tree.c:4684 +#: tree.c:4685 #, fuzzy msgid "invalid initializer for bit string" msgstr "Ç áëõóßäá ìïñöÞò äåí åßíáé Ýãêõñç: `%s'" -#: tree.c:4736 +#: tree.c:4737 #, c-format msgid "tree check: expected %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:4749 +#: tree.c:4750 #, c-format msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d" msgstr "" -#: tree.c:4762 +#: tree.c:4763 #, c-format msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "" -#: tree.c:4774 +#: tree.c:4775 #, c-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "" @@ -7677,7 +7672,7 @@ msgstr "" msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, fuzzy, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags" @@ -7731,24 +7726,24 @@ msgstr " msgid "invalid %%J value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, fuzzy, c-format msgid "invalid %%r value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, fuzzy, c-format msgid "invalid %%R value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, fuzzy, c-format msgid "invalid %%N value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, fuzzy, c-format msgid "invalid %%P value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" @@ -7758,17 +7753,17 @@ msgstr " msgid "invalid %%h value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, fuzzy, c-format msgid "invalid %%L value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, fuzzy, c-format msgid "invalid %%m value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, fuzzy, c-format msgid "invalid %%M value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" @@ -7779,7 +7774,7 @@ msgid "invalid %%U value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, fuzzy, c-format msgid "invalid %%s value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" @@ -7789,7 +7784,8 @@ msgstr " msgid "invalid %%C value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, fuzzy, c-format msgid "invalid %%E value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" @@ -7799,7 +7795,7 @@ msgstr " msgid "unknown relocation unspec" msgstr "Äåí åßíáé äõíáôüí íá âñåèåß ï ôýðïò ôïõ åðåîåñãáóôÞ." -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, fuzzy, c-format msgid "invalid %%xn code" msgstr "ìç Ýãêõñï äéêáßùìá" @@ -7961,17 +7957,17 @@ msgstr " msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\"" msgstr "" -#: config/arc/arc.c:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, fuzzy, c-format msgid "invalid operand to %%R code" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, fuzzy, c-format msgid "invalid operand to %%H/%%L code" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, fuzzy, c-format msgid "invalid operand to %%U code" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" @@ -7982,7 +7978,7 @@ msgid "invalid operand to %%V code" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 #, fuzzy msgid "invalid operand output code" msgstr "Ìç Ýãêõñïò êþäéêáò áßôçóçò" @@ -7992,7 +7988,7 @@ msgstr " msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "" @@ -8076,12 +8072,12 @@ msgid "unable to use '%s' for PIC register" msgstr "" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173 #, c-format msgid "`%s' attribute only applies to functions" msgstr "" @@ -8097,7 +8093,7 @@ msgid "selector must be an immediate" msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 #, fuzzy msgid "mask must be an immediate" msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò" @@ -9509,182 +9505,182 @@ msgstr " msgid "Do not generate char instructions" msgstr "" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, c-format msgid "code model %s not supported in PIC mode" msgstr "" -#: config/i386/i386.c:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 config/sparc/sparc.c:387 #, c-format msgid "bad value (%s) for -mcmodel= switch" msgstr "" -#: config/i386/i386.c:1195 +#: config/i386/i386.c:1204 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, c-format msgid "code model `%s' not supported in the %s bit mode" msgstr "" -#: config/i386/i386.c:1201 +#: config/i386/i386.c:1210 #, fuzzy msgid "code model `large' not supported yet" msgstr "åéäéêÜ áñ÷åßá ìðëïê äåí õðïóôçñßæïíôáé" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, fuzzy, c-format msgid "%i-bit mode not compiled in" msgstr "%s: ç õðïóôÞñéîç åêóöáëìÜôùóçò äåí Ý÷åé óõìðåñéëçöèåß óôç ìåôáãëþôôéóç.\n" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 msgid "CPU you selected does not support x86-64 instruction set" msgstr "" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 config/iq2000/iq2000.c:1840 #, c-format msgid "bad value (%s) for -march= switch" msgstr "" -#: config/i386/i386.c:1248 +#: config/i386/i386.c:1260 #, c-format msgid "bad value (%s) for -mtune= switch" msgstr "" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, c-format msgid "-malign-loops=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, c-format msgid "-mpreferred-stack-boundary=%d is not between %d and 12" msgstr "" -#: config/i386/i386.c:1354 +#: config/i386/i386.c:1366 #, c-format msgid "-mbranch-cost=%d is not between 0 and 5" msgstr "" -#: config/i386/i386.c:1366 +#: config/i386/i386.c:1378 #, fuzzy, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 msgid "-mrtd calling convention not supported in the 64bit mode" msgstr "" -#: config/i386/i386.c:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "" -#: config/i386/i386.c:1435 +#: config/i386/i386.c:1447 msgid "387 instruction set disabled, using SSE arithmetics" msgstr "" -#: config/i386/i386.c:1442 +#: config/i386/i386.c:1454 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 msgid "fastcall and stdcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 msgid "fastcall and regparm attributes are not compatible" msgstr "" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, fuzzy, c-format msgid "argument to `%s' attribute larger than %d" msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d" -#: config/i386/i386.c:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 #, fuzzy msgid "invalid UNSPEC as operand" msgstr "ìç Ýãêõñç ìåôáôüðéóç UTC" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 msgid "operand is neither a constant nor a condition code, invalid operand code 'c'" msgstr "" -#: config/i386/i386.c:7457 +#: config/i386/i386.c:7474 #, fuzzy, c-format msgid "invalid operand code `%c'" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 #, fuzzy msgid "invalid constraints for operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" # src/grep.c:1133 -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 #, fuzzy msgid "unknown insn mode" msgstr "Üãíùóôç ìÝèïäïò êáôáëüãùí" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, fuzzy, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 #, fuzzy msgid "shift must be an immediate" msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, fuzzy, c-format msgid "`%s' incompatible attribute ignored" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" @@ -9743,43 +9739,43 @@ msgstr "" msgid "%J'%D' causes a section type conflict" msgstr "" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, c-format msgid "-f%s ignored for target (all code is position independent)" msgstr "" @@ -9975,7 +9971,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "" @@ -10094,7 +10090,7 @@ msgstr "" msgid "iC2.0 and iC3.0 are incompatible - using iC3.0" msgstr "" -#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 #, fuzzy msgid "stack limit expression is not supported" msgstr "åéäéêÜ áñ÷åßá ìðëïê äåí õðïóôçñßæïíôáé" @@ -10219,8 +10215,8 @@ msgstr "" msgid "Do not layout types like Intel's v1.3 gcc" msgstr "" -#: 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 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "" @@ -10256,41 +10252,41 @@ msgstr "" msgid "%Jaddress area attribute cannot be specified for functions" msgstr "" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 msgid "value of -mfixed-range must have form REG1-REG2" msgstr "" -#: config/ia64/ia64.c:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 msgid "cannot optimize floating point division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4726 +#: config/ia64/ia64.c:4729 msgid "cannot optimize integer division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4732 +#: config/ia64/ia64.c:4735 msgid "cannot optimize square root for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, fuzzy, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, fuzzy, c-format msgid "bad value (%s) for -tune= switch" msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags" @@ -10428,7 +10424,7 @@ msgstr "" msgid "argument `%d' is not a constant" msgstr "Ç ðáñÜìåôñïò óôï `%s' ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò" -#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "" @@ -10438,7 +10434,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "" @@ -10447,7 +10443,7 @@ msgstr "" msgid "invalid %%P operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, fuzzy, c-format msgid "invalid %%p value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" @@ -10508,91 +10504,91 @@ msgstr "" msgid "bad value (%s) for -flush-trap=n (0= ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò" -#: config/rs6000/rs6000.c:6327 +#: config/rs6000/rs6000.c:6550 msgid "argument 1 of __builtin_spe_predicate is out of range" msgstr "" -#: config/rs6000/rs6000.c:8531 -msgid "your function will be miscompiled" -msgstr "" - -#: config/rs6000/rs6000.c:8779 +#: config/rs6000/rs6000.c:9008 #, fuzzy, c-format msgid "invalid %%f value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:8788 +#: config/rs6000/rs6000.c:9017 #, fuzzy, c-format msgid "invalid %%F value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:8797 +#: config/rs6000/rs6000.c:9026 #, fuzzy, c-format msgid "invalid %%G value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:8832 +#: config/rs6000/rs6000.c:9061 #, fuzzy, c-format msgid "invalid %%j code" msgstr "ìç Ýãêõñï äéêáßùìá" -#: config/rs6000/rs6000.c:8842 +#: config/rs6000/rs6000.c:9071 #, fuzzy, c-format msgid "invalid %%J code" msgstr "ìç Ýãêõñï äéêáßùìá" -#: config/rs6000/rs6000.c:8852 +#: config/rs6000/rs6000.c:9081 #, fuzzy, c-format msgid "invalid %%k value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:8872 config/xtensa/xtensa.c:1999 +#: config/rs6000/rs6000.c:9101 config/xtensa/xtensa.c:2000 #, fuzzy, c-format msgid "invalid %%K value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:8939 +#: config/rs6000/rs6000.c:9168 #, fuzzy, c-format msgid "invalid %%O value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:8986 +#: config/rs6000/rs6000.c:9215 #, fuzzy, c-format msgid "invalid %%q value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:9030 +#: config/rs6000/rs6000.c:9259 #, fuzzy, c-format msgid "invalid %%S value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:9072 +#: config/rs6000/rs6000.c:9301 #, fuzzy, c-format msgid "invalid %%T value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:9082 +#: config/rs6000/rs6000.c:9311 #, fuzzy, c-format msgid "invalid %%u value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:9091 config/xtensa/xtensa.c:1969 +#: config/rs6000/rs6000.c:9320 config/xtensa/xtensa.c:1970 #, fuzzy, c-format msgid "invalid %%v value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/rs6000/rs6000.c:13581 +#: config/rs6000/rs6000.c:13815 msgid "no profiling of 64-bit code for this ABI" msgstr "" @@ -12148,11 +12144,11 @@ msgstr " msgid "-m64 requires a PowerPC64 cpu" msgstr "" -#: config/rs6000/linux64.h:201 +#: config/rs6000/linux64.h:206 msgid "Call mcount for profiling before a function prologue" msgstr "" -#: config/rs6000/linux64.h:203 +#: config/rs6000/linux64.h:208 msgid "Call mcount for profiling after a function prologue" msgstr "" @@ -12163,203 +12159,203 @@ 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:262 +#: config/rs6000/rs6000.h:273 msgid "Use POWER instruction set" msgstr "" -#: config/rs6000/rs6000.h:265 +#: config/rs6000/rs6000.h:276 msgid "Use POWER2 instruction set" msgstr "" -#: config/rs6000/rs6000.h:267 +#: config/rs6000/rs6000.h:278 msgid "Do not use POWER2 instruction set" msgstr "" -#: config/rs6000/rs6000.h:270 +#: config/rs6000/rs6000.h:281 msgid "Do not use POWER instruction set" msgstr "" -#: config/rs6000/rs6000.h:272 +#: config/rs6000/rs6000.h:283 msgid "Use PowerPC instruction set" msgstr "" -#: config/rs6000/rs6000.h:275 +#: config/rs6000/rs6000.h:286 msgid "Do not use PowerPC instruction set" msgstr "" -#: config/rs6000/rs6000.h:277 +#: config/rs6000/rs6000.h:288 msgid "Use PowerPC General Purpose group optional instructions" msgstr "" -#: config/rs6000/rs6000.h:279 +#: config/rs6000/rs6000.h:290 msgid "Do not use PowerPC General Purpose group optional instructions" msgstr "" -#: config/rs6000/rs6000.h:281 +#: config/rs6000/rs6000.h:292 msgid "Use PowerPC Graphics group optional instructions" msgstr "" -#: config/rs6000/rs6000.h:283 +#: config/rs6000/rs6000.h:294 msgid "Do not use PowerPC Graphics group optional instructions" msgstr "" -#: config/rs6000/rs6000.h:285 +#: config/rs6000/rs6000.h:296 msgid "Use PowerPC-64 instruction set" msgstr "" -#: config/rs6000/rs6000.h:287 +#: config/rs6000/rs6000.h:298 #, fuzzy msgid "Do not use PowerPC-64 instruction set" msgstr "Äåí åßíáé äõíáôÞ ç êáôá÷þñçóç ôçò õðçñåóßáò" -#: config/rs6000/rs6000.h:289 +#: config/rs6000/rs6000.h:300 #, fuzzy msgid "Use AltiVec instructions" msgstr "ÁêáôÜëëçëç åíôïëÞ" -#: config/rs6000/rs6000.h:291 +#: config/rs6000/rs6000.h:302 #, fuzzy msgid "Do not use AltiVec instructions" msgstr "ÁêáôÜëëçëç åíôïëÞ" -#: config/rs6000/rs6000.h:293 +#: config/rs6000/rs6000.h:304 msgid "Use new mnemonics for PowerPC architecture" msgstr "" -#: config/rs6000/rs6000.h:295 +#: config/rs6000/rs6000.h:306 msgid "Use old mnemonics for PowerPC architecture" msgstr "" -#: config/rs6000/rs6000.h:298 +#: config/rs6000/rs6000.h:309 msgid "Put everything in the regular TOC" msgstr "" -#: config/rs6000/rs6000.h:300 +#: config/rs6000/rs6000.h:311 msgid "Place floating point constants in TOC" msgstr "" -#: config/rs6000/rs6000.h:302 +#: config/rs6000/rs6000.h:313 #, fuzzy msgid "Do not place floating point constants in TOC" msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s" -#: config/rs6000/rs6000.h:304 +#: config/rs6000/rs6000.h:315 msgid "Place symbol+offset constants in TOC" msgstr "" -#: config/rs6000/rs6000.h:306 +#: config/rs6000/rs6000.h:317 msgid "Do not place symbol+offset constants in TOC" msgstr "" -#: config/rs6000/rs6000.h:312 +#: config/rs6000/rs6000.h:323 msgid "Place variable addresses in the regular TOC" msgstr "" -#: config/rs6000/rs6000.h:318 +#: config/rs6000/rs6000.h:329 msgid "Generate load/store multiple instructions" msgstr "" -#: config/rs6000/rs6000.h:320 +#: config/rs6000/rs6000.h:331 msgid "Do not generate load/store multiple instructions" msgstr "" -#: config/rs6000/rs6000.h:322 +#: config/rs6000/rs6000.h:333 msgid "Generate string instructions for block moves" msgstr "" -#: config/rs6000/rs6000.h:324 +#: config/rs6000/rs6000.h:335 msgid "Do not generate string instructions for block moves" msgstr "" -#: config/rs6000/rs6000.h:326 +#: config/rs6000/rs6000.h:337 msgid "Generate load/store with update instructions" msgstr "" -#: config/rs6000/rs6000.h:328 +#: config/rs6000/rs6000.h:339 msgid "Do not generate load/store with update instructions" msgstr "" -#: config/rs6000/rs6000.h:332 +#: config/rs6000/rs6000.h:343 #, fuzzy msgid "Do not generate fused multiply/add instructions" msgstr "ÁêáôÜëëçëç åíôïëÞ" -#: config/rs6000/rs6000.h:336 +#: config/rs6000/rs6000.h:347 msgid "Do not schedule the start and end of the procedure" msgstr "" -#: config/rs6000/rs6000.h:342 +#: config/rs6000/rs6000.h:353 msgid "Return all structures in memory (AIX default)" msgstr "" -#: config/rs6000/rs6000.h:344 +#: config/rs6000/rs6000.h:355 msgid "Return small structures in registers (SVR4 default)" msgstr "" -#: config/rs6000/rs6000.h:350 +#: config/rs6000/rs6000.h:361 #, fuzzy msgid "Generate single field mfcr instruction" msgstr "ÁêáôÜëëçëç åíôïëÞ" -#: config/rs6000/rs6000.h:352 +#: config/rs6000/rs6000.h:363 #, fuzzy msgid "Do not generate single field mfcr instruction" msgstr "ÁêáôÜëëçëç åíôïëÞ" -#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:654 +#: config/rs6000/rs6000.h:447 config/sparc/sparc.h:654 msgid "Use features of and schedule code for given CPU" msgstr "" -#: config/rs6000/rs6000.h:438 +#: config/rs6000/rs6000.h:450 msgid "Enable debug output" msgstr "" -#: config/rs6000/rs6000.h:440 +#: config/rs6000/rs6000.h:452 msgid "Select full, part, or no traceback table" msgstr "" -#: config/rs6000/rs6000.h:441 +#: config/rs6000/rs6000.h:453 msgid "Specify ABI to use" msgstr "" -#: config/rs6000/rs6000.h:443 +#: config/rs6000/rs6000.h:455 msgid "Specify size of long double (64 or 128 bits)" msgstr "" -#: config/rs6000/rs6000.h:445 +#: config/rs6000/rs6000.h:457 msgid "Specify yes/no if isel instructions should be generated" msgstr "" -#: config/rs6000/rs6000.h:447 +#: config/rs6000/rs6000.h:459 msgid "Specify yes/no if SPE SIMD instructions should be generated" msgstr "" -#: config/rs6000/rs6000.h:449 +#: config/rs6000/rs6000.h:461 msgid "Specify yes/no if using floating point in the GPRs" msgstr "" -#: config/rs6000/rs6000.h:451 +#: config/rs6000/rs6000.h:463 msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec" msgstr "" -#: config/rs6000/rs6000.h:453 +#: config/rs6000/rs6000.h:465 #, fuzzy msgid "Avoid all range limits on call instructions" msgstr "ÁêáôÜëëçëç åíôïëÞ" -#: config/rs6000/rs6000.h:456 +#: config/rs6000/rs6000.h:468 msgid "Determine which dependences between insns are considered costly" msgstr "" -#: config/rs6000/rs6000.h:458 +#: config/rs6000/rs6000.h:470 msgid "Specify which post scheduling nop insertion scheme to apply" msgstr "" -#: config/rs6000/rs6000.h:460 +#: config/rs6000/rs6000.h:472 msgid "Specify alignment of structure fields default/natural" msgstr "" -#: config/rs6000/rs6000.h:462 +#: config/rs6000/rs6000.h:474 msgid "Specify scheduling priority for dispatch slot restricted insns" msgstr "" @@ -12375,7 +12371,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:1929 +#: config/rs6000/rs6000.h:1923 msgid "RETURN_ADDRESS_OFFSET not supported" msgstr "" @@ -12651,29 +12647,29 @@ msgstr " msgid "enable fused multiply/add instructions" msgstr "ÁêáôÜëëçëç åíôïëÞ" -#: config/sh/sh.c:5841 +#: config/sh/sh.c:5977 #, fuzzy msgid "__builtin_saveregs not supported by this subtarget" msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü" -#: config/sh/sh.c:6743 +#: config/sh/sh.c:6879 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:6765 config/sh/sh.c:6800 +#: config/sh/sh.c:6901 config/sh/sh.c:6936 #, c-format msgid "`%s' attribute only applies to interrupt functions" msgstr "" #. The argument must be a constant string. -#: config/sh/sh.c:6772 +#: config/sh/sh.c:6908 #, fuzzy, c-format msgid "`%s' attribute argument not a string constant" msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò" #. The argument must be a constant integer. -#: config/sh/sh.c:6807 +#: config/sh/sh.c:6943 #, c-format msgid "`%s' attribute argument not an integer constant" msgstr "" @@ -12700,61 +12696,61 @@ msgstr "" msgid "-mcmodel= is not supported on 32 bit systems" msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü" -#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799 +#: config/sparc/sparc.c:6818 config/sparc/sparc.c:6824 #, fuzzy, c-format msgid "invalid %%Y operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/sparc/sparc.c:6869 +#: config/sparc/sparc.c:6894 #, fuzzy, c-format msgid "invalid %%A operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/sparc/sparc.c:6879 +#: config/sparc/sparc.c:6904 #, fuzzy, c-format msgid "invalid %%B operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/sparc/sparc.c:6918 +#: config/sparc/sparc.c:6943 #, fuzzy, c-format msgid "invalid %%c operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/sparc/sparc.c:6919 +#: config/sparc/sparc.c:6944 #, fuzzy, c-format msgid "invalid %%C operand" msgstr "ìç Ýãêõñç ìåôáôüðéóç UTC" -#: config/sparc/sparc.c:6940 +#: config/sparc/sparc.c:6965 #, fuzzy, c-format msgid "invalid %%d operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/sparc/sparc.c:6941 +#: config/sparc/sparc.c:6966 #, fuzzy, c-format msgid "invalid %%D operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/sparc/sparc.c:6957 +#: config/sparc/sparc.c:6982 #, fuzzy, c-format msgid "invalid %%f operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/sparc/sparc.c:6971 +#: config/sparc/sparc.c:6996 #, fuzzy, c-format msgid "invalid %%s operand" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/sparc/sparc.c:7025 +#: config/sparc/sparc.c:7050 msgid "long long constant not a valid immediate operand" msgstr "" -#: config/sparc/sparc.c:7028 +#: config/sparc/sparc.c:7053 msgid "floating point constant not a valid immediate operand" msgstr "" -#: config/sparc/freebsd.h:81 config/sparc/linux.h:92 -#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216 +#: config/sparc/freebsd.h:82 config/sparc/linux.h:92 +#: config/sparc/linux64.h:107 config/sparc/netbsd-elf.h:216 msgid "Use 128 bit long doubles" msgstr "" @@ -13141,60 +13137,60 @@ msgstr "" msgid "Set the max size of data eligible for the ZDA area" msgstr "" -#: config/xtensa/xtensa.c:1828 +#: config/xtensa/xtensa.c:1829 msgid "boolean registers required for the floating-point option" msgstr "" -#: config/xtensa/xtensa.c:1882 +#: config/xtensa/xtensa.c:1883 #, fuzzy, c-format msgid "-f%s is not supported with CONST16 instructions" msgstr "Ç ïéêïãÝíåéá äéåõèýíóåùí äåí õðïóôçñßæåôáé áðü ôçí ïéêïãÝíåéá ðñùôïêüëëïõ" -#: config/xtensa/xtensa.c:1887 +#: config/xtensa/xtensa.c:1888 msgid "PIC is required but not supported with CONST16 instructions" msgstr "" -#: config/xtensa/xtensa.c:1957 +#: config/xtensa/xtensa.c:1958 #, fuzzy, c-format msgid "invalid %%D value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/xtensa/xtensa.c:1994 +#: config/xtensa/xtensa.c:1995 #, fuzzy msgid "invalid mask" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/xtensa/xtensa.c:2020 +#: config/xtensa/xtensa.c:2021 #, fuzzy, c-format msgid "invalid %%x value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/xtensa/xtensa.c:2027 +#: config/xtensa/xtensa.c:2028 #, fuzzy, c-format msgid "invalid %%d value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/xtensa/xtensa.c:2048 config/xtensa/xtensa.c:2058 +#: config/xtensa/xtensa.c:2049 config/xtensa/xtensa.c:2059 #, fuzzy, c-format msgid "invalid %%t/%%b value" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: config/xtensa/xtensa.c:2100 +#: config/xtensa/xtensa.c:2101 #, fuzzy msgid "invalid address" msgstr "ÁêáôÜëëçëç ÷ñÞóç ôïõ äéáìïñöùôÞ äéåýèõíóçò" -#: config/xtensa/xtensa.c:2125 +#: config/xtensa/xtensa.c:2126 #, fuzzy msgid "no register in address" msgstr "ìç Ýãêõñïò ÷ñüíïò Ýíáñîçò" -#: config/xtensa/xtensa.c:2133 +#: config/xtensa/xtensa.c:2134 #, fuzzy msgid "address offset not a constant" msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò." -#: config/xtensa/xtensa.c:2744 +#: config/xtensa/xtensa.c:2745 msgid "only uninitialized variables can be placed in a .bss section" msgstr "" @@ -13424,100 +13420,100 @@ msgstr " msgid "cannot bind rvalue `%E' to `%T'" msgstr "äåí åßíáé äõíáôü íá ìåôáíïìáóôåß ôï `.' Þ ôï `..'" -#: cp/call.c:4173 +#: cp/call.c:4170 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:4197 +#: cp/call.c:4196 msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime" msgstr "" -#: cp/call.c:4237 +#: cp/call.c:4240 msgid "the default argument for parameter %d of `%D' has not yet been parsed" msgstr "" -#: cp/call.c:4432 +#: cp/call.c:4437 msgid "passing `%T' as `this' argument of `%#D' discards qualifiers" msgstr "" -#: cp/call.c:4451 +#: cp/call.c:4456 #, fuzzy msgid "`%T' is not an accessible base of `%T'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/call.c:4720 +#: cp/call.c:4725 msgid "could not find class$ field in java interface type `%T'" msgstr "" -#: cp/call.c:4975 +#: cp/call.c:4980 #, fuzzy msgid "call to non-function `%D'" msgstr "Äåí âñÝèçêáí URL óôï %s.\n" -#: cp/call.c:5001 +#: cp/call.c:5006 msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'" msgstr "" -#: cp/call.c:5079 +#: cp/call.c:5084 msgid "no matching function for call to `%T::%s(%A)%#V'" msgstr "" # src/getopt.c:813 # src/getopt.c:813 -#: cp/call.c:5096 +#: cp/call.c:5101 #, fuzzy, c-format msgid "call of overloaded `%s(%A)' is ambiguous" msgstr "%s: ç åðéëïãÞ `-W %s' åßíáé äéöïñïýìåíç\n" -#: cp/call.c:5117 +#: cp/call.c:5122 msgid "cannot call member function `%D' without object" msgstr "" -#: cp/call.c:5702 +#: cp/call.c:5707 msgid "passing `%T' chooses `%T' over `%T'" msgstr "" -#: cp/call.c:5704 cp/name-lookup.c:4143 +#: cp/call.c:5709 cp/name-lookup.c:4155 #, fuzzy msgid " in call to `%D'" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" -#: cp/call.c:5761 +#: cp/call.c:5766 msgid "choosing `%D' over `%D'" msgstr "" -#: cp/call.c:5762 +#: cp/call.c:5767 #, fuzzy msgid " for conversion from `%T' to `%T'" msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå" -#: cp/call.c:5764 +#: cp/call.c:5769 msgid " because conversion sequence for the argument is better" msgstr "" -#: cp/call.c:5884 +#: cp/call.c:5889 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:5888 +#: cp/call.c:5893 msgid "candidate 1:" msgstr "" -#: cp/call.c:5889 +#: cp/call.c:5894 msgid "candidate 2:" msgstr "" -#: cp/call.c:5998 +#: cp/call.c:6003 #, fuzzy msgid "could not convert `%E' to `%T'" msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'" -#: cp/call.c:6103 +#: cp/call.c:6108 msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'" msgstr "" -#: cp/call.c:6107 +#: cp/call.c:6112 msgid "invalid initialization of reference of type '%T' from expression of type '%T'" msgstr "" @@ -13605,15 +13601,15 @@ msgstr "" msgid " by `%D'" msgstr " êáôÜ `%D'" -#: cp/class.c:2484 cp/decl2.c:1160 +#: cp/class.c:2484 cp/decl2.c:1161 msgid "`%#D' invalid; an anonymous union can only have non-static data members" msgstr "" -#: cp/class.c:2490 cp/decl2.c:1167 +#: cp/class.c:2490 cp/decl2.c:1168 msgid "private member `%#D' in anonymous union" msgstr "" -#: cp/class.c:2493 cp/decl2.c:1169 +#: cp/class.c:2493 cp/decl2.c:1170 msgid "protected member `%#D' in anonymous union" msgstr "" @@ -13716,101 +13712,101 @@ msgstr "" msgid " but does not override `operator=(const %T&)'" msgstr "" -#: cp/class.c:3513 +#: cp/class.c:3517 msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC" msgstr "" -#: cp/class.c:3623 +#: cp/class.c:3627 msgid "class `%T' will be considered nearly empty in a future version of GCC" msgstr "" -#: cp/class.c:3710 +#: cp/class.c:3714 msgid "initializer specified for non-virtual method `%D'" msgstr "" -#: cp/class.c:4398 +#: cp/class.c:4402 msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC" msgstr "" -#: cp/class.c:4488 +#: cp/class.c:4492 msgid "direct base `%T' inaccessible in `%T' due to ambiguity" msgstr "" -#: cp/class.c:4501 +#: cp/class.c:4505 msgid "virtual base `%T' inaccessible in `%T' due to ambiguity" msgstr "" -#: cp/class.c:4675 +#: cp/class.c:4679 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:4714 +#: cp/class.c:4718 msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC" msgstr "" -#: cp/class.c:4737 +#: cp/class.c:4741 msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC" msgstr "" -#: cp/class.c:4746 +#: cp/class.c:4750 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:4805 +#: cp/class.c:4809 msgid "layout of classes derived from empty class `%T' may change in a future version of GCC" msgstr "" -#: cp/class.c:4935 cp/semantics.c:2044 +#: cp/class.c:4939 cp/semantics.c:2044 #, fuzzy msgid "redefinition of `%#T'" msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'" -#: cp/class.c:5105 +#: cp/class.c:5109 msgid "`%#T' has virtual functions but non-virtual destructor" msgstr "" -#: cp/class.c:5184 +#: cp/class.c:5188 msgid "trying to finish struct, but kicked out due to previous parse errors" msgstr "" -#: cp/class.c:5626 +#: cp/class.c:5630 #, c-format msgid "language string `\"%s\"' not recognized" msgstr "" -#: cp/class.c:5714 +#: cp/class.c:5718 msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'" msgstr "" -#: cp/class.c:5839 +#: cp/class.c:5843 msgid "no matches converting function `%D' to type `%#T'" msgstr "" -#: cp/class.c:5862 +#: cp/class.c:5866 msgid "converting overloaded function `%D' to type `%#T' is ambiguous" msgstr "" -#: cp/class.c:5888 +#: cp/class.c:5892 msgid "assuming pointer to member `%D'" msgstr "" -#: cp/class.c:5891 +#: cp/class.c:5895 #, c-format msgid "(a pointer to member can only be formed with `&%E')" msgstr "" -#: cp/class.c:5936 cp/class.c:6118 cp/class.c:6125 +#: cp/class.c:5940 cp/class.c:6122 cp/class.c:6129 #, fuzzy msgid "not enough type information" msgstr "åìöÜíéóç ðëçñïöïñéþí ðñïüäïõ" -#: cp/class.c:5953 +#: cp/class.c:5957 msgid "argument of type `%T' does not match `%T'" msgstr "" -#: cp/class.c:6102 +#: cp/class.c:6106 msgid "invalid operation on uninstantiated type" msgstr "" @@ -13819,12 +13815,12 @@ 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:6360 cp/decl.c:1222 cp/name-lookup.c:502 cp/pt.c:2097 +#: cp/class.c:6364 cp/decl.c:1222 cp/name-lookup.c:514 cp/pt.c:2097 #, fuzzy msgid "declaration of `%#D'" msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n" -#: cp/class.c:6361 +#: cp/class.c:6365 msgid "changes meaning of `%D' from `%+#D'" msgstr "" @@ -13893,46 +13889,46 @@ msgstr "" msgid "conversion from `%T' to non-scalar type `%T' requested" msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå" -#: cp/cvt.c:850 +#: cp/cvt.c:852 msgid "object of incomplete type `%T' will not be accessed in %s" msgstr "" -#: cp/cvt.c:853 +#: cp/cvt.c:855 msgid "object of type `%T' will not be accessed in %s" msgstr "" -#: cp/cvt.c:869 +#: cp/cvt.c:871 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:885 +#: cp/cvt.c:887 #, c-format msgid "%s cannot resolve address of overloaded function" msgstr "" #. Only warn when there is no &. -#: cp/cvt.c:891 +#: cp/cvt.c:893 #, c-format msgid "%s is a reference, not call, to function `%E'" msgstr "" # src/request.c:37 -#: cp/cvt.c:898 +#: cp/cvt.c:900 #, fuzzy, c-format msgid "%s has no effect" msgstr "%s óå %s" -#: cp/cvt.c:1009 +#: cp/cvt.c:1011 msgid "converting NULL to non-pointer type" msgstr "" -#: cp/cvt.c:1082 +#: cp/cvt.c:1084 msgid "ambiguous default type conversion from `%T'" msgstr "" -#: cp/cvt.c:1084 +#: cp/cvt.c:1086 msgid " candidate conversions include `%D' and `%D'" msgstr "" @@ -13998,7 +13994,7 @@ msgstr "" msgid "declaration of template `%#D'" msgstr "" -#: cp/decl.c:1340 cp/name-lookup.c:503 +#: cp/decl.c:1340 cp/name-lookup.c:515 msgid "conflicts with previous declaration `%#D'" msgstr "" @@ -14222,7 +14218,7 @@ msgstr "" msgid "`%D' can only be specified for objects and functions" msgstr "" -#: cp/decl.c:3721 cp/decl2.c:854 +#: cp/decl.c:3721 cp/decl2.c:855 msgid "typedef `%D' is initialized (use __typeof__ instead)" msgstr "" @@ -14468,7 +14464,7 @@ msgstr "" msgid "definition of implicitly-declared `%D'" msgstr "" -#: cp/decl.c:5785 cp/decl2.c:737 +#: cp/decl.c:5785 cp/decl2.c:738 msgid "no `%#D' member function declared in class `%T'" msgstr "" @@ -14746,159 +14742,159 @@ msgstr " msgid "cannot declare pointer to `%#T' member" msgstr "" -#: cp/decl.c:7654 +#: cp/decl.c:7655 msgid "extra qualification `%T::' on member `%s' ignored" msgstr "" -#: cp/decl.c:7670 +#: cp/decl.c:7671 msgid "cannot declare member function `%T::%s' within `%T'" msgstr "" -#: cp/decl.c:7685 +#: cp/decl.c:7686 #, fuzzy msgid "cannot declare member `%T::%s' within `%T'" msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'" -#: cp/decl.c:7765 +#: cp/decl.c:7766 msgid "data member may not have variably modified type `%T'" msgstr "" -#: cp/decl.c:7767 +#: cp/decl.c:7768 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:7775 +#: cp/decl.c:7776 msgid "only declarations of constructors can be `explicit'" msgstr "" -#: cp/decl.c:7783 +#: cp/decl.c:7784 #, c-format msgid "non-member `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7788 +#: cp/decl.c:7789 #, c-format msgid "non-object member `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7794 +#: cp/decl.c:7795 #, c-format msgid "function `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7799 +#: cp/decl.c:7800 #, c-format msgid "static `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7804 +#: cp/decl.c:7805 #, c-format msgid "const `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7817 +#: cp/decl.c:7818 msgid "template-id `%D' used as a declarator" msgstr "" -#: cp/decl.c:7838 +#: cp/decl.c:7839 msgid "ISO C++ forbids nested type `%D' with same name as enclosing class" msgstr "" -#: cp/decl.c:7846 +#: cp/decl.c:7847 msgid "%Jtypedef name may not be a nested-name-specifier" msgstr "" -#: cp/decl.c:7892 +#: cp/decl.c:7893 msgid "%Jinvalid type qualifier for non-member function type" msgstr "" -#: cp/decl.c:7955 +#: cp/decl.c:7956 msgid "type qualifiers specified for friend class declaration" msgstr "" -#: cp/decl.c:7960 +#: cp/decl.c:7961 msgid "`inline' specified for friend class declaration" msgstr "" -#: cp/decl.c:7968 +#: cp/decl.c:7969 #, fuzzy msgid "template parameters cannot be friends" msgstr "ï äéá÷ùñéóôÞò äå ìðïñåß íá åßíáé êåíüò" -#: cp/decl.c:7970 +#: cp/decl.c:7971 msgid "friend declaration requires class-key, i.e. `friend class %T::%D'" msgstr "" -#: cp/decl.c:7974 +#: cp/decl.c:7975 msgid "friend declaration requires class-key, i.e. `friend %#T'" msgstr "" -#: cp/decl.c:7987 +#: cp/decl.c:7988 msgid "trying to make class `%T' a friend of global scope" msgstr "" -#: cp/decl.c:7998 +#: cp/decl.c:7999 msgid "invalid qualifiers on non-member function type" msgstr "" -#: cp/decl.c:8017 +#: cp/decl.c:8018 msgid "abstract declarator `%T' used as declaration" msgstr "" -#: cp/decl.c:8029 +#: cp/decl.c:8030 msgid "unnamed variable or field declared void" msgstr "" -#: cp/decl.c:8038 +#: cp/decl.c:8039 msgid "variable or field declared void" msgstr "" -#: cp/decl.c:8048 +#: cp/decl.c:8049 msgid "cannot use `::' in parameter declaration" msgstr "" #. Something like struct S { int N::j; }; -#: cp/decl.c:8093 +#: cp/decl.c:8094 #, fuzzy msgid "invalid use of `::'" msgstr "ìç Ýãêõñïò ÷ñÞóôçò" -#: cp/decl.c:8105 +#: cp/decl.c:8106 msgid "function `%D' cannot be declared friend" msgstr "" -#: cp/decl.c:8117 +#: cp/decl.c:8118 msgid "can't make `%D' into a method -- not in a class" msgstr "" -#: cp/decl.c:8126 +#: cp/decl.c:8127 msgid "function `%D' declared virtual inside a union" msgstr "" -#: cp/decl.c:8135 +#: cp/decl.c:8136 msgid "`%D' cannot be declared virtual, since it is always static" msgstr "" -#: cp/decl.c:8214 +#: cp/decl.c:8215 msgid "field `%D' has incomplete type" msgstr "" -#: cp/decl.c:8216 +#: cp/decl.c:8217 msgid "name `%T' has incomplete type" msgstr "" -#: cp/decl.c:8225 +#: cp/decl.c:8226 msgid " in instantiation of template `%T'" msgstr "" -#: cp/decl.c:8235 +#: cp/decl.c:8236 #, c-format msgid "`%s' is neither function nor member function; cannot be declared friend" msgstr "" -#: cp/decl.c:8246 +#: cp/decl.c:8247 msgid "member functions are implicitly friends of their class" msgstr "" @@ -14914,91 +14910,91 @@ 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:8286 +#: cp/decl.c:8287 msgid "ISO C++ forbids initialization of member `%D'" msgstr "" -#: cp/decl.c:8288 +#: cp/decl.c:8289 msgid "making `%D' static" msgstr "" -#: cp/decl.c:8344 +#: cp/decl.c:8345 #, c-format msgid "storage class `auto' invalid for function `%s'" msgstr "" -#: cp/decl.c:8346 +#: cp/decl.c:8347 #, c-format msgid "storage class `register' invalid for function `%s'" msgstr "" -#: cp/decl.c:8348 +#: cp/decl.c:8349 #, fuzzy, c-format msgid "storage class `__thread' invalid for function `%s'" msgstr "ìç Ýãêõñç ôÜîç ÷áñáêôÞñùí `%s'" -#: cp/decl.c:8359 +#: cp/decl.c:8360 #, c-format msgid "storage class `static' invalid for function `%s' declared out of global scope" msgstr "" -#: cp/decl.c:8361 +#: cp/decl.c:8362 #, c-format msgid "storage class `inline' invalid for function `%s' declared out of global scope" msgstr "" -#: cp/decl.c:8368 +#: cp/decl.c:8369 #, c-format msgid "virtual non-class function `%s'" msgstr "" -#: cp/decl.c:8399 +#: cp/decl.c:8400 msgid "cannot declare member function `%D' to have static linkage" msgstr "" #. FIXME need arm citation -#: cp/decl.c:8405 +#: cp/decl.c:8406 msgid "cannot declare static function inside another function" msgstr "" -#: cp/decl.c:8433 +#: cp/decl.c:8434 msgid "`static' may not be used when defining (as opposed to declaring) a static data member" msgstr "" -#: cp/decl.c:8439 +#: cp/decl.c:8440 msgid "static member `%D' declared `register'" msgstr "" -#: cp/decl.c:8444 +#: cp/decl.c:8445 msgid "cannot explicitly declare member `%#D' to have extern linkage" msgstr "" -#: cp/decl.c:8584 +#: cp/decl.c:8585 msgid "default argument for `%#D' has type `%T'" msgstr "" -#: cp/decl.c:8587 +#: cp/decl.c:8588 msgid "default argument for parameter of type `%T' has type `%T'" msgstr "" -#: cp/decl.c:8604 +#: cp/decl.c:8605 msgid "default argument `%E' uses local variable `%D'" msgstr "" -#: cp/decl.c:8648 +#: cp/decl.c:8649 #, fuzzy, c-format msgid "invalid string constant `%E'" msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò" -#: cp/decl.c:8650 +#: cp/decl.c:8651 msgid "invalid integer constant in parameter list, did you forget to give parameter name?" msgstr "" -#: cp/decl.c:8688 +#: cp/decl.c:8689 msgid "parameter `%D' invalidly declared method type" msgstr "" -#: cp/decl.c:8712 +#: cp/decl.c:8713 msgid "parameter `%D' includes %s to array of unknown bound `%T'" msgstr "" @@ -15017,94 +15013,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:8871 +#: cp/decl.c:8872 msgid "invalid constructor; you probably meant `%T (const %T&)'" msgstr "" -#: cp/decl.c:8999 +#: cp/decl.c:9000 msgid "`%D' must be a nonstatic member function" msgstr "" -#: cp/decl.c:9005 +#: cp/decl.c:9006 msgid "`%D' must be either a non-static member function or a non-member function" msgstr "" -#: cp/decl.c:9022 +#: cp/decl.c:9023 msgid "`%D' must have an argument of class or enumerated type" msgstr "" -#: cp/decl.c:9057 +#: cp/decl.c:9058 #, c-format msgid "conversion to %s%s will never use a type conversion operator" msgstr "" #. 13.4.0.3 -#: cp/decl.c:9064 +#: cp/decl.c:9065 msgid "ISO C++ prohibits overloading operator ?:" msgstr "" -#: cp/decl.c:9114 +#: cp/decl.c:9115 msgid "postfix `%D' must take `int' as its argument" msgstr "" -#: cp/decl.c:9118 +#: cp/decl.c:9119 msgid "postfix `%D' must take `int' as its second argument" msgstr "" -#: cp/decl.c:9125 +#: cp/decl.c:9126 msgid "`%D' must take either zero or one argument" msgstr "" -#: cp/decl.c:9127 +#: cp/decl.c:9128 msgid "`%D' must take either one or two arguments" msgstr "" -#: cp/decl.c:9148 +#: cp/decl.c:9149 msgid "prefix `%D' should return `%T'" msgstr "" -#: cp/decl.c:9154 +#: cp/decl.c:9155 msgid "postfix `%D' should return `%T'" msgstr "" -#: cp/decl.c:9163 +#: cp/decl.c:9164 msgid "`%D' must take `void'" msgstr "" -#: cp/decl.c:9165 cp/decl.c:9173 +#: cp/decl.c:9166 cp/decl.c:9174 msgid "`%D' must take exactly one argument" msgstr "" -#: cp/decl.c:9175 +#: cp/decl.c:9176 msgid "`%D' must take exactly two arguments" msgstr "" -#: cp/decl.c:9183 +#: cp/decl.c:9184 msgid "user-defined `%D' always evaluates both arguments" msgstr "" -#: cp/decl.c:9197 +#: cp/decl.c:9198 msgid "`%D' should return by value" msgstr "" -#: cp/decl.c:9209 cp/decl.c:9212 +#: cp/decl.c:9210 cp/decl.c:9213 msgid "`%D' cannot have default arguments" msgstr "" -#: cp/decl.c:9272 +#: cp/decl.c:9273 msgid "using typedef-name `%D' after `%s'" msgstr "" -#: cp/decl.c:9278 +#: cp/decl.c:9279 msgid "using template type parameter `%T' after `%s'" msgstr "" -#: cp/decl.c:9286 +#: cp/decl.c:9287 #, fuzzy msgid "`%T' referred to as `%s'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/decl.c:9292 +#: cp/decl.c:9293 msgid "`%T' referred to as enum" msgstr "" @@ -15115,46 +15111,51 @@ msgstr "" #. void f(class C); // No template header here #. #. then the required template argument is missing. -#: cp/decl.c:9307 +#: cp/decl.c:9308 #, fuzzy msgid "template argument required for `%s %T'" msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'" -#: cp/decl.c:9452 +#: cp/decl.c:9453 msgid "use of enum `%#D' without previous declaration" msgstr "" -#: cp/decl.c:9509 +#: cp/decl.c:9471 +#, fuzzy +msgid "redeclaration of `%T' as a non-template" +msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé" + +#: cp/decl.c:9517 msgid "derived union `%T' invalid" msgstr "" -#: cp/decl.c:9562 +#: cp/decl.c:9570 msgid "base type `%T' fails to be a struct or class type" msgstr "" -#: cp/decl.c:9570 +#: cp/decl.c:9578 msgid "recursive type `%T' undefined" msgstr "" -#: cp/decl.c:9572 +#: cp/decl.c:9580 #, fuzzy msgid "duplicate base type `%T' invalid" msgstr "äéðëüò ïñéóìüò óõíüëïõ" -#: cp/decl.c:9650 +#: cp/decl.c:9658 msgid "Java class '%T' cannot have multiple bases" msgstr "" -#: cp/decl.c:9652 +#: cp/decl.c:9660 msgid "Java class '%T' cannot have virtual bases" msgstr "" -#: cp/decl.c:9692 +#: cp/decl.c:9700 #, fuzzy msgid "multiple definition of `%#T'" msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'" -#: cp/decl.c:9693 +#: cp/decl.c:9701 #, fuzzy msgid "%Jprevious definition here" msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'" @@ -15163,48 +15164,48 @@ msgstr " #. #. IF no integral type can represent all the enumerator values, the #. enumeration is ill-formed. -#: cp/decl.c:9828 +#: cp/decl.c:9836 msgid "no integral type can represent all of the enumerator values for `%T'" msgstr "" -#: cp/decl.c:9918 +#: cp/decl.c:9926 msgid "enumerator value for `%D' not integer constant" msgstr "" -#: cp/decl.c:9938 +#: cp/decl.c:9946 msgid "overflow in enumeration values at `%D'" msgstr "" -#: cp/decl.c:10007 +#: cp/decl.c:10015 msgid "return type `%#T' is incomplete" msgstr "" -#: cp/decl.c:10125 +#: cp/decl.c:10133 msgid "return type for `main' changed to `int'" msgstr "" -#: cp/decl.c:10154 +#: cp/decl.c:10162 msgid "`%D' implicitly declared before its definition" msgstr "" -#: cp/decl.c:10176 cp/typeck.c:6023 +#: cp/decl.c:10184 cp/typeck.c:6071 msgid "`operator=' should return a reference to `*this'" msgstr "" -#: cp/decl.c:10445 +#: cp/decl.c:10453 msgid "parameter `%D' declared void" msgstr "" -#: cp/decl.c:10911 +#: cp/decl.c:10919 #, fuzzy msgid "invalid member function declaration" msgstr "ìç Ýãêõñïò áñéèìüò áðü êåíÝò ãñáììÝò: `%s'" -#: cp/decl.c:10928 +#: cp/decl.c:10936 msgid "`%D' is already defined in class `%T'" msgstr "" -#: cp/decl.c:11141 +#: cp/decl.c:11149 msgid "static member function `%#D' declared with type qualifiers" msgstr "" @@ -15225,137 +15226,137 @@ msgstr "" msgid "invalid types `%T[%T]' for array subscript" msgstr "" -#: cp/decl2.c:460 +#: cp/decl2.c:461 msgid "deleting array `%#D'" msgstr "" -#: cp/decl2.c:466 +#: cp/decl2.c:467 msgid "type `%#T' argument given to `delete', expected pointer" msgstr "" -#: cp/decl2.c:478 +#: cp/decl2.c:479 msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'" msgstr "" -#: cp/decl2.c:485 +#: cp/decl2.c:486 msgid "deleting `%T' is undefined" msgstr "" #. 14.5.2.2 [temp.mem] #. #. A local class shall not have member templates. -#: cp/decl2.c:521 +#: cp/decl2.c:522 msgid "invalid declaration of member template `%#D' in local class" msgstr "" -#: cp/decl2.c:530 +#: cp/decl2.c:531 msgid "invalid use of `virtual' in template declaration of `%#D'" msgstr "" -#: cp/decl2.c:540 cp/pt.c:2834 +#: cp/decl2.c:541 cp/pt.c:2834 msgid "template declaration of `%#D'" msgstr "" -#: cp/decl2.c:589 +#: cp/decl2.c:590 msgid "Java method '%D' has non-Java return type `%T'" msgstr "" -#: cp/decl2.c:605 +#: cp/decl2.c:606 msgid "Java method '%D' has non-Java parameter type `%T'" msgstr "" -#: cp/decl2.c:698 +#: cp/decl2.c:699 #, fuzzy msgid "prototype for `%#D' does not match any in class `%T'" msgstr "ôï áñ÷åßï äåäïìÝíùí ðñïößë `%s' äåí ôáéñéÜæåé ìå ôï äéáìïéñáæüìåíï áíôéêåßìåíï `%s'" -#: cp/decl2.c:777 +#: cp/decl2.c:778 #, fuzzy msgid "local class `%#T' shall not have static data member `%#D'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/decl2.c:785 +#: cp/decl2.c:786 msgid "initializer invalid for static member with constructor" msgstr "" -#: cp/decl2.c:788 +#: cp/decl2.c:789 msgid "(an out of class initialization is required)" msgstr "" -#: cp/decl2.c:871 +#: cp/decl2.c:872 msgid "member `%D' conflicts with virtual function table field name" msgstr "" -#: cp/decl2.c:888 +#: cp/decl2.c:889 msgid "`%D' is already defined in `%T'" msgstr "" -#: cp/decl2.c:935 +#: cp/decl2.c:936 msgid "field initializer is not constant" msgstr "" -#: cp/decl2.c:963 +#: cp/decl2.c:964 msgid "`asm' specifiers are not permitted on non-static data members" msgstr "" -#: cp/decl2.c:1013 +#: cp/decl2.c:1014 msgid "cannot declare `%D' to be a bit-field type" msgstr "" -#: cp/decl2.c:1023 +#: cp/decl2.c:1024 msgid "cannot declare bit-field `%D' with function type" msgstr "" -#: cp/decl2.c:1030 +#: cp/decl2.c:1031 msgid "`%D' is already defined in the class %T" msgstr "" -#: cp/decl2.c:1037 +#: cp/decl2.c:1038 msgid "static member `%D' cannot be a bit-field" msgstr "" -#: cp/decl2.c:1096 +#: cp/decl2.c:1097 msgid "initializer specified for non-member function `%D'" msgstr "" -#: cp/decl2.c:1100 +#: cp/decl2.c:1101 #, fuzzy msgid "invalid initializer for virtual method `%D'" msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'" -#: cp/decl2.c:1147 +#: cp/decl2.c:1148 msgid "anonymous struct not inside named type" msgstr "" -#: cp/decl2.c:1217 +#: cp/decl2.c:1218 msgid "namespace-scope anonymous aggregates must be static" msgstr "" -#: cp/decl2.c:1224 +#: cp/decl2.c:1225 msgid "anonymous union with no members" msgstr "" -#: cp/decl2.c:1258 +#: cp/decl2.c:1259 msgid "`operator new' must return type `%T'" msgstr "" -#: cp/decl2.c:1266 +#: cp/decl2.c:1267 msgid "`operator new' takes type `size_t' (`%T') as first parameter" msgstr "" -#: cp/decl2.c:1292 +#: cp/decl2.c:1293 msgid "`operator delete' must return type `%T'" msgstr "" -#: cp/decl2.c:1300 +#: cp/decl2.c:1301 msgid "`operator delete' takes type `%T' as first parameter" msgstr "" -#: cp/decl2.c:2807 +#: cp/decl2.c:2810 msgid "inline function `%D' used but never defined" msgstr "" -#: cp/decl2.c:2953 +#: cp/decl2.c:2956 msgid "default argument missing for parameter %P of `%+#D'" msgstr "" @@ -15387,7 +15388,7 @@ msgstr "" msgid "throwing NULL, which has integral, not pointer type" msgstr "" -#: cp/except.c:598 cp/init.c:2037 +#: cp/except.c:598 cp/init.c:2038 msgid "`%D' should never be overloaded" msgstr "" @@ -15395,19 +15396,19 @@ msgstr "" msgid " in thrown expression" msgstr "" -#: cp/except.c:811 +#: cp/except.c:812 msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression" msgstr "" -#: cp/except.c:893 +#: cp/except.c:894 msgid "exception of type `%T' will be caught" msgstr "" -#: cp/except.c:896 +#: cp/except.c:897 msgid " by earlier handler for `%T'" msgstr "" -#: cp/except.c:917 +#: cp/except.c:918 msgid "`...' handler must be the last handler for its try block" msgstr "" @@ -15415,56 +15416,56 @@ msgstr "" msgid "`%D' is already a friend of class `%T'" msgstr "" -#: cp/friend.c:202 +#: cp/friend.c:206 msgid "invalid type `%T' declared `friend'" msgstr "" #. [temp.friend] #. Friend declarations shall not declare partial #. specializations. -#: cp/friend.c:218 +#: cp/friend.c:222 msgid "partial specialization `%T' declared `friend'" msgstr "" -#: cp/friend.c:228 +#: cp/friend.c:232 msgid "class `%T' is implicitly friends with itself" msgstr "" #. template friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 msgid "typename type `%#T' declared `friend'" msgstr "" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 msgid "template parameter type `%T' declared `friend'" msgstr "" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 #, fuzzy msgid "`%#T' is not a template" msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï" -#: cp/friend.c:277 +#: cp/friend.c:281 #, fuzzy msgid "`%D' is already a friend of `%T'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/friend.c:287 +#: cp/friend.c:291 #, fuzzy msgid "`%T' is already a friend of `%T'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/friend.c:409 +#: cp/friend.c:413 msgid "member `%D' declared as friend before type `%T' defined" msgstr "" -#: cp/friend.c:465 +#: cp/friend.c:469 msgid "friend declaration `%#D' declares a non-template function" msgstr "" -#: cp/friend.c:468 +#: cp/friend.c:472 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 "" @@ -15595,7 +15596,7 @@ msgstr "" msgid "type `%T' is of non-aggregate type" msgstr "" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "" @@ -15635,76 +15636,75 @@ msgstr "" msgid "zero size array reserves no space" msgstr "" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "" -#: cp/init.c:1876 +#: cp/init.c:1877 msgid "can't find class$" msgstr "" -#: cp/init.c:2003 +#: cp/init.c:2004 #, fuzzy msgid "invalid type `void' for new" msgstr "ìç Ýãêõñç êáôÜóôáóç ãéá ôçí dlopen()" -#: cp/init.c:2013 +#: cp/init.c:2014 msgid "uninitialized const in `new' of `%#T'" msgstr "" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "" +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "" + # src/getopt.c:628 # src/getopt.c:628 -#: cp/init.c:2073 +#: cp/init.c:2083 #, fuzzy msgid "request for member `%D' is ambiguous" msgstr "%s: ç åðéëïãÞ `%s' åßíáé áóáöÞò\n" -#: cp/init.c:2193 +#: cp/init.c:2203 msgid "ISO C++ forbids initialization in array new" msgstr "" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "" -#: cp/init.c:2885 +#: cp/init.c:2895 msgid "possible problem detected in invocation of delete operator:" msgstr "" -#: cp/init.c:2888 -msgid "neither the destructor nor the class-specific " +#: cp/init.c:2898 +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: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 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "" @@ -15795,11 +15795,11 @@ msgstr "" msgid "non-static reference member `%#D', can't use default assignment operator" msgstr "" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 msgid "`%#D' used prior to declaration" msgstr "" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 msgid "redeclaration of `wchar_t' as `%T'" msgstr "" @@ -15809,250 +15809,250 @@ msgstr "" #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 #, fuzzy msgid "invalid redeclaration of `%D'" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 #, fuzzy msgid "type mismatch with previous external decl of `%#D'" msgstr "óöÜëìá ôáéñéÜóìáôïò ôýðïõ ìå ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 msgid "previous external decl of `%#D'" msgstr "" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 msgid "`%D' was previously implicitly declared to return `int'" msgstr "" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 msgid "extern declaration of `%#D' doesn't match" msgstr "" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 msgid "global declaration `%#D'" msgstr "" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 #, fuzzy msgid "declaration of '%#D' shadows a parameter" msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 msgid "declaration of '%D' shadows a member of 'this'" msgstr "" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 msgid "declaration of '%D' shadows a previous local" msgstr "" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 msgid "declaration of '%D' shadows a global declaration" msgstr "" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 #, fuzzy msgid "name lookup of `%D' changed" msgstr "ç ïìÜäá ôïõ %s Üëëáîå óå %s\n" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr "" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr "" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 #, fuzzy msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "ç ïìÜäá ôïõ %s Üëëáîå óå %s\n" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 msgid " cannot use obsolete binding at `%D' because it has a destructor" msgstr "" -#: cp/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr "" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" # src/request.c:37 -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, fuzzy, c-format msgid "%s %s %p %d\n" msgstr "%s: %s: " -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 #, fuzzy msgid "`%#D' hides constructor for `%#T'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 msgid "previous non-function declaration `%#D'" msgstr "" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 msgid "conflicts with function declaration `%#D'" msgstr "" #. 7.3.3/5 #. A using-declaration shall not name a template-id. -#: cp/name-lookup.c:2101 +#: cp/name-lookup.c:2112 msgid "a using-declaration cannot specify a template-id. Try `using %D'" msgstr "" -#: cp/name-lookup.c:2107 +#: cp/name-lookup.c:2118 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 #, fuzzy msgid "`%T' is not a namespace" msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 #, fuzzy msgid "`%D' not declared" msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï" #. If the OLD_FN was really declared, the #. declarations don't match. -#: cp/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:2898 +#: cp/name-lookup.c:2909 #, fuzzy msgid "using-declaration cannot name destructor" msgstr "óõíôáêôéêü óöÜëìá óôïí ïñéóìü êëÜóçò ÷áñáêôÞñùí" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 msgid "declaration of `%D' not in a namespace surrounding `%D'" msgstr "" -#: cp/name-lookup.c:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 #, fuzzy msgid "unknown namespace `%D'" msgstr "Üãíùóôï óåô `%s'" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 msgid "namespace `%T' undeclared" msgstr "" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 #, fuzzy msgid "`%D' attribute directive ignored" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" # src/getopt.c:628 # src/getopt.c:628 -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 #, fuzzy msgid "use of `%D' is ambiguous" msgstr "%s: ç åðéëïãÞ `%s' åßíáé áóáöÞò\n" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 msgid "%J first type here" msgstr "" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 #, fuzzy msgid "invalid use of `%D'" msgstr "Ìç Ýãêõñç çìåñïìçíßá `%s'." -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 #, fuzzy msgid "`%D::%D' is not a template" msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 #, fuzzy msgid "`%D' is not a function," msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò." -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 msgid " conflict with `%D'" msgstr "" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -16144,182 +16144,191 @@ msgstr "" msgid "typedef-name `%D' used as destructor declarator" msgstr "" -#: cp/parser.c:3635 +#: cp/parser.c:3638 msgid "ISO C++ forbids compound-literals" msgstr "" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4619 +#: cp/parser.c:4624 msgid "expression in new-declarator must have integral or enumeration type" msgstr "" -#: cp/parser.c:4800 +#: cp/parser.c:4805 #, fuzzy msgid "use of old-style cast" msgstr "ðáëáéïý åßäïõò èÝóç" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, c-format msgid "case label `%E' not within a switch statement" msgstr "" -#: cp/parser.c:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6640 +#: cp/parser.c:6645 #, fuzzy msgid "duplicate `friend'" msgstr "äéðëü êëåéäß" -#: cp/parser.c:6789 +#: cp/parser.c:6794 msgid "class definition may not be declared a friend" msgstr "" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "" -#: cp/parser.c:7155 +#: cp/parser.c:7160 msgid "anachronistic old-style base class initializer" msgstr "" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 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:7908 +#: cp/parser.c:7923 #, fuzzy msgid "`<::' cannot begin a template-argument list" msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò." -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 msgid "non-template `%D' used as template" msgstr "" -#: cp/parser.c:8089 -msgid "(use `%T::template %D' to indicate that it is a template)" +#: cp/parser.c:8107 +msgid "use `%T::template %D' to indicate that it is a template" msgstr "" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "" -#: cp/parser.c:9148 +#: cp/parser.c:9180 #, fuzzy msgid "expected type-name" msgstr "%s: áíáìåíüôáí áñéèìçôéêÞ ôéìÞ." -#: cp/parser.c:9207 +#: cp/parser.c:9239 msgid "type attributes are honored only at type definition" msgstr "" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 msgid "a template-id may not appear in a using-declaration" msgstr "" -#: cp/parser.c:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:9919 +#: cp/parser.c:9951 msgid "attributes are not allowed on a function-definition" msgstr "" -#: cp/parser.c:10052 +#: cp/parser.c:10084 msgid "attributes after parenthesized initializer ignored" msgstr "" +#: cp/parser.c:10540 +#, fuzzy +msgid "`%T::%D' is not a type" +msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï" + # src/grep.c:785 src/grep.c:792 # src/grep.c:1060 src/grep.c:1067 src/grep.c:1076 -#: cp/parser.c:11254 +#: cp/parser.c:11288 #, fuzzy msgid "file ends in default argument" msgstr "ìç Ýãêõñï üñéóìá ìÞêïõò ðåñéå÷ïìÝíïõ" -#: cp/parser.c:11310 +#: cp/parser.c:11344 msgid "deprecated use of default argument for parameter of non-function" msgstr "" -#: cp/parser.c:11313 +#: cp/parser.c:11347 msgid "default arguments are only permitted for function parameters" msgstr "" -#: cp/parser.c:12043 +#: cp/parser.c:12078 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "" -#: cp/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "" -#: cp/parser.c:12067 +#: cp/parser.c:12102 msgid "an explicit specialization must be preceded by 'template <>'" msgstr "" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12399 +#: cp/parser.c:12434 #, fuzzy msgid "friend declaration does not name a class or function" msgstr "óõíôáêôéêü óöÜëìá óôïí ïñéóìü êëÜóçò ÷áñáêôÞñùí" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" msgstr "" -#: cp/parser.c:12845 +#: cp/parser.c:12880 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:13665 +#: cp/parser.c:13700 #, fuzzy msgid "reference to `%D' is ambiguous" msgstr "%s: ç åðéëïãÞ `%s' åßíáé áóáöÞò\n" -#: cp/parser.c:13839 +#: cp/parser.c:13874 #, fuzzy msgid "too few template-parameter-lists" msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'" @@ -16328,47 +16337,47 @@ msgstr " #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 msgid "too many template-parameter-lists" msgstr "" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 #, fuzzy msgid "invalid function declaration" msgstr "Ìç Ýãêõñç áíôáëëáãÞ" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 #, fuzzy msgid "named return values are no longer supported" msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé" -#: cp/parser.c:14522 +#: cp/parser.c:14561 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 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14535 +#: cp/parser.c:14574 msgid "missing `>' to terminate the template argument list" msgstr "" -#: cp/parser.c:15023 +#: cp/parser.c:15062 #, fuzzy msgid "`%s' tag used in naming `%#T'" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" -#: cp/parser.c:15043 +#: cp/parser.c:15082 msgid "%D redeclared with different access" msgstr "" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -16725,159 +16734,159 @@ msgstr "" msgid "%s %+#T" msgstr "" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "" -#: cp/pt.c:6469 +#: cp/pt.c:6470 #, fuzzy msgid "invalid parameter type `%T'" msgstr "Ìç Ýãêõñç ðñïôåñáéüôçôá `%s'" -#: cp/pt.c:6471 +#: cp/pt.c:6472 msgid "in declaration `%D'" msgstr "" -#: cp/pt.c:6545 +#: cp/pt.c:6546 msgid "creating pointer to member function of non-class type `%T'" msgstr "" -#: cp/pt.c:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "" -#: cp/pt.c:6976 +#: cp/pt.c:6977 msgid "creating pointer to member of non-class type `%T'" msgstr "" -#: cp/pt.c:6982 +#: cp/pt.c:6983 #, fuzzy msgid "creating pointer to member reference type `%T'" msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'" -#: cp/pt.c:7068 +#: cp/pt.c:7069 #, fuzzy msgid "creating array of `%T'" msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n" -#: cp/pt.c:7074 +#: cp/pt.c:7075 msgid "creating array of `%T', which is an abstract class type" msgstr "" -#: cp/pt.c:7118 +#: cp/pt.c:7119 msgid "`%T' is not a class, struct, or union type" msgstr "" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr "" -#: cp/pt.c:8609 +#: cp/pt.c:8613 msgid "`%T' uses anonymous type" msgstr "" -#: cp/pt.c:8611 +#: cp/pt.c:8615 #, fuzzy msgid "`%T' uses local type `%T'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/pt.c:8619 +#: cp/pt.c:8623 #, fuzzy msgid "`%T' is a variably modified type" msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, fuzzy, c-format msgid "integral expression `%E' is not constant" msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr "" -#: cp/pt.c:9148 +#: cp/pt.c:9156 #, fuzzy msgid "incomplete type unification" msgstr "Ìåôáãëùôôéóìüò ðñïäéáãñáöþí ôïðéêþí ñõèìßóåùí" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 #, fuzzy msgid "no matching template for `%D' found" msgstr "Ï Ýëåã÷ïò ìïíïðáôéïý ãéá ôï `%s' âñÞêå `%s'" -#: cp/pt.c:10551 +#: cp/pt.c:10568 msgid "explicit instantiation of `%#D'" msgstr "" -#: cp/pt.c:10588 +#: cp/pt.c:10605 #, fuzzy msgid "duplicate explicit instantiation of `%#D'" msgstr "äéðëüò ïñéóìüò óõíüëïõ" -#: cp/pt.c:10610 +#: cp/pt.c:10627 msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "" -#: cp/pt.c:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" msgstr "" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" msgstr "" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, c-format msgid "ISO C++ forbids the use of `%s' on explicit instantiations" msgstr "" -#: cp/pt.c:10728 +#: cp/pt.c:10745 #, fuzzy msgid "duplicate explicit instantiation of `%#T'" msgstr "äéðëüò ïñéóìüò óõíüëïõ" -#: cp/pt.c:11109 +#: cp/pt.c:11126 msgid "explicit instantiation of `%D' but no definition available" msgstr "" -#: cp/pt.c:11543 +#: cp/pt.c:11562 #, fuzzy msgid "`%#T' is not a valid type for a template constant parameter" msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò." @@ -17059,7 +17068,7 @@ msgstr "" msgid "incomplete type `%T' used in nested name specifier" msgstr "" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 #, fuzzy msgid "`%D' is not a member of `%T'" msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'" @@ -17105,252 +17114,252 @@ msgstr "" msgid "type of `%E' is unknown" msgstr "ç åðéóôñåöüìåíç ôéìÞ ôçò `%s' äåí åßíáé `int'" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "" -#: cp/tree.c:539 +#: cp/tree.c:532 #, fuzzy msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, c-format msgid "`%s' attribute can only be applied to Java class definitions" msgstr "" -#: cp/tree.c:1857 +#: cp/tree.c:1850 #, c-format msgid "`%s' attribute can only be applied to class definitions" msgstr "" -#: cp/tree.c:1863 +#: cp/tree.c:1856 #, c-format msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default" msgstr "" -#: cp/tree.c:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, c-format msgid "can only use `%s' attribute on file-scope definitions of objects of class type" msgstr "" -#: cp/tree.c:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, fuzzy, c-format msgid "`%s' attribute is not supported on this platform" msgstr "ðñïåéäïðïßçóç: ôï --pid=PID äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 msgid "%s between distinct pointer types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:513 +#: cp/typeck.c:512 #, c-format msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function" msgstr "" -#: cp/typeck.c:563 +#: cp/typeck.c:562 msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:1235 +#: cp/typeck.c:1234 #, c-format msgid "invalid application of `%s' to a member function" msgstr "" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, fuzzy, c-format msgid "invalid application of `%s' to a bit-field" msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç." -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, c-format msgid "ISO C++ forbids applying `%s' to an expression of function type" msgstr "" -#: cp/typeck.c:1342 +#: cp/typeck.c:1308 #, fuzzy msgid "invalid use of non-static member function" msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 msgid "request for member `%D' in `%E', which is of non-class type `%T'" msgstr "" -#: cp/typeck.c:1610 +#: cp/typeck.c:1633 #, fuzzy, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 #, fuzzy msgid "invalid access to non-static data member `%D' of NULL object" msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'" -#: cp/typeck.c:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 #, fuzzy msgid "`%D::%D' is not a member of `%T'" msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 #, fuzzy msgid "`%T' is not a base of `%T'" msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 #, fuzzy msgid "'%D' has no member named '%E'" msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 #, 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:2075 +#: cp/typeck.c:2098 #, fuzzy msgid "`%T' is not a pointer-to-object type" msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò." -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 #, fuzzy msgid "invalid type argument" msgstr "Ìç Ýãêõñç ðáñÜìåôñïò" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, c-format msgid "object missing in use of `%E'" msgstr "" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, c-format msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'" msgstr "" -#: cp/typeck.c:2446 +#: cp/typeck.c:2469 #, c-format msgid "`%E' cannot be used as a function" msgstr "" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 #, fuzzy msgid "too many arguments to %s `%+#D'" msgstr "ðÜñá ðïëëÜ ïñßóìáôá" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 #, fuzzy msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "ìç ðëÞñçò åããñáöÞ" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 #, fuzzy msgid "parameter %P has incomplete type `%T'" msgstr "ìç ðëÞñçò åããñáöÞ" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 #, fuzzy msgid "too few arguments to %s `%+#D'" msgstr "ðïëý ëßãá ïñßóìáôá" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 msgid "assuming cast to type `%T' from overloaded function" msgstr "" -#: cp/typeck.c:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, fuzzy, c-format msgid "division by zero in `%E %% 0'" msgstr "Äéáßñåóç ìå ìçäÝí óôçí áðïôßìçóç: %s" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, fuzzy, c-format msgid "division by zero in `%E %% 0.'" msgstr "Äéáßñåóç ìå ìçäÝí óôçí áðïôßìçóç: %s" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 msgid "comparison between types `%#T' and `%#T'" msgstr "" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "" @@ -17358,293 +17367,293 @@ 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:3418 +#: cp/typeck.c:3441 msgid "NULL used in arithmetic" msgstr "" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 msgid "ISO C++ forbids using pointer of type `void *' in subtraction" msgstr "" -#: cp/typeck.c:3483 +#: cp/typeck.c:3506 msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "" -#: cp/typeck.c:3485 +#: cp/typeck.c:3508 msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "" -#: cp/typeck.c:3497 +#: cp/typeck.c:3520 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "" -#: cp/typeck.c:3553 +#: cp/typeck.c:3582 #, c-format msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id." msgstr "" -#: cp/typeck.c:3559 +#: cp/typeck.c:3588 #, c-format msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 msgid "cannot %s a pointer to incomplete type `%T'" msgstr "" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 msgid "ISO C++ forbids %sing a pointer of type `%T'" msgstr "" -#: cp/typeck.c:3858 +#: cp/typeck.c:3887 msgid "cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:3892 +#: cp/typeck.c:3921 #, fuzzy msgid "invalid use of `--' on bool variable `%D'" msgstr "ìç Ýãêõñïò áñéèìüò áðü êåíÝò ãñáììÝò: `%s'" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 msgid "ISO C++ forbids taking address of function `::main'" msgstr "" #. An expression like &memfn. -#: cp/typeck.c:3994 +#: cp/typeck.c:4027 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:3999 +#: cp/typeck.c:4032 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:4027 +#: cp/typeck.c:4060 msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression" msgstr "" -#: cp/typeck.c:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 msgid "attempt to take address of bit-field structure member `%D'" msgstr "" -#: cp/typeck.c:4190 +#: cp/typeck.c:4227 msgid "taking address of destructor" msgstr "" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 msgid "taking address of bound pointer-to-member expression" msgstr "" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 #, fuzzy msgid "cannot create pointer to reference member `%D'" msgstr "äåí åßíáé äõíáôüí íá ãßíåé `stat' ôï locale áñ÷åßï `%s'" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 msgid "cannot take the address of `this', which is an rvalue expression" msgstr "" -#: cp/typeck.c:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "" -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, fuzzy, c-format msgid "%s expression list treated as compound expression" msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç: %s" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "" -#: cp/typeck.c:4626 +#: cp/typeck.c:4674 #, fuzzy msgid "invalid static_cast from type `%T' to type `%T'" msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object" msgstr "" -#: cp/typeck.c:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type" msgstr "" -#: cp/typeck.c:4765 +#: cp/typeck.c:4813 msgid "invalid const_cast of an rvalue of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4782 +#: cp/typeck.c:4830 #, fuzzy msgid "invalid const_cast from type `%T' to type `%T'" msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 msgid "ISO C++ forbids casting to an array type `%T'" msgstr "" -#: cp/typeck.c:4835 +#: cp/typeck.c:4883 #, fuzzy msgid "invalid cast to function type `%T'" msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 msgid "cast from `%T' to `%T' discards qualifiers from pointer target type" msgstr "" -#: cp/typeck.c:4937 +#: cp/typeck.c:4985 msgid "cast from `%T' to `%T' increases required alignment of target type" msgstr "" -#: cp/typeck.c:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr "" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 msgid "ISO C++ forbids cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:5219 +#: cp/typeck.c:5267 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr "" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 msgid " in pointer to member conversion" msgstr "" #. This is a reinterpret cast, we choose to do nothing. -#: cp/typeck.c:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 #, fuzzy msgid "pointer to member cast via virtual base `%T'" msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 #, fuzzy msgid "pointer to member conversion via virtual base `%T'" msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 msgid "invalid conversion to type `%T' from type `%T'" msgstr "" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 msgid "passing NULL used for non-pointer %s %P of `%D'" msgstr "" -#: cp/typeck.c:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 msgid "passing `%T' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 msgid "passing negative value `%E' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'" msgstr "" -#: cp/typeck.c:5706 +#: cp/typeck.c:5754 #, fuzzy msgid "cannot convert `%T' to `%T' in %s" msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 #, fuzzy msgid "in passing argument %P of `%+D'" msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 #, fuzzy msgid "returning reference to temporary" msgstr "xdr_reference: ç ìíÞìç åîáíôëÞèçêå\n" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 msgid "reference to local variable `%D' returned" msgstr "" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 msgid "address of local variable `%D' returned" msgstr "" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 #, fuzzy msgid "return-statement with no value, in function returning '%T'" msgstr "`return' ÷ùñßò ôéìÞ, óå óõíÜñôçóç ðïõ åðéóôñÝöåé ìç-êåíü" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 #, fuzzy msgid "return-statement with a value, in function returning 'void'" msgstr "`return' ÷ùñßò ôéìÞ, óå óõíÜñôçóç ðïõ åðéóôñÝöåé ìç-êåíü" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)" msgstr "" @@ -19309,12 +19318,12 @@ msgstr "" msgid "field initializer type mismatch" msgstr "Êáêïóõíôáßñéáóìá ôýðùí êáôá÷þñçóçò/ðßíáêá" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, fuzzy, c-format msgid "can't create directory %s: %m" msgstr "%s: Äåí åßíáé äõíáôüí íá äçìéïõñãçèåß ï êáôÜëïãïò %s: %s\n" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, fuzzy, c-format msgid "can't create %s: %m" msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'" @@ -19398,92 +19407,135 @@ msgstr " msgid "internal error - invalid Utf8 name" msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2610 #, fuzzy 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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "áíáìåíüôáí ';'" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 #, fuzzy msgid "Missing name" msgstr "¸÷åé ðáñáëçöèåß åíôïëÞ" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "áíáìåíüôáí '*'" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:835 #, fuzzy 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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "áíáìåíüôáí '{'" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 #, fuzzy msgid "Missing interface name" msgstr "ðáñÜëçøç ïñßóìáôïò áñ÷åßïõ" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:981 #, fuzzy 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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "áíáìåíüôáí ']'" @@ -19491,161 +19543,181 @@ 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 -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 #, fuzzy msgid "Unbalanced ']'" msgstr "Ìç éóóïñïðçìÝíï [" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 #, fuzzy msgid "Identifier expected" msgstr "ÐñïóäéïñéóôÞò áöáéñÝèçêå" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "áíáìåíüôáí '('" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 #, fuzzy msgid "Missing formal parameter term" msgstr "ÅëëéðÞò Þ êáêïó÷çìáôéóìÝíç éäéüôçôá" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 #, fuzzy msgid "Missing identifier" msgstr "Ý÷åé ðáñáëçöèåß ôï áñ÷åßï ðñïïñéóìïý" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1288 #, fuzzy msgid "Invalid interface type" msgstr "Ìç Ýãêõñïò åîáêñéâùôÞò(verifier) åîõðçñåôïýìåíïõ" -#: ../../gcc/java/parse.y:1475 ../../gcc/java/parse.y:1644 -#: ../../gcc/java/parse.y:1646 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "áíáìåíüôáí ':'" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1507 #, fuzzy 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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "áíáìåíüôáí '('" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 #, fuzzy msgid "Missing term or ')'" msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 #, fuzzy msgid "Missing or invalid constant expression" msgstr "%s: ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç: %s" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 #, fuzzy msgid "Invalid control expression" msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 #, fuzzy msgid "Invalid update expression" msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 #, fuzzy msgid "Invalid init statement" msgstr "Ìç Ýãêõñç ðáñÜìåôñïò" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 #, fuzzy msgid "'class' expected" msgstr "áíáìåíüôáí ')'\n" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 #, fuzzy msgid "')' or term expected" msgstr "áíáìåíüôáí ')'\n" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "áíáìåíüôáí '['" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 #, fuzzy msgid "Field expected" msgstr "Ç èõãáôñéêÞ äéåñãáóßá ôåñìáôßóôçêå" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 #, fuzzy msgid "']' expected, invalid type expression" msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 #, fuzzy msgid "Invalid type expression" msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 #, fuzzy msgid "Invalid reference type" msgstr "Ìç Ýãêõñç ðéóù-ðáñáðïìðÞ" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2977 msgid "Constructor invocation must be first thing in a constructor" msgstr "" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr "" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" @@ -19654,32 +19726,32 @@ msgstr "" "%s.\n" "%s" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, fuzzy, c-format msgid "missing static field `%s'" msgstr "Ý÷åé ðáñáëçöèåß ç ëßóôá ìå ôá ðåäßá" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, fuzzy, c-format msgid "not a static field `%s'" msgstr "áäõíáìßá ðñïóðÝëáóçò(stat()) áñ÷åßïõ `%s': %s" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, fuzzy, c-format msgid "No case for %s" msgstr "ÓöÜëìá åðåîåñãáóßáò: %s" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, fuzzy, c-format msgid "unregistered operator %s" msgstr "ðïôÝ äåí äçëþèçêå ôï ðñüãñáììá %d\n" @@ -19738,8 +19810,8 @@ msgstr "" msgid "cannot find protocol declaration for `%s'" msgstr "áäõíáìßá åéóáãùãÞò óôïé÷åßï ðáñáâïëÞò `%.*s'" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, fuzzy, c-format msgid "cannot find interface declaration for `%s'" msgstr "áäõíáìßá áíÜãíùóçò êåöáëßäáò áðü ôï `%s'" @@ -19764,8 +19836,8 @@ msgstr "" 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "" @@ -19779,7 +19851,7 @@ msgstr " msgid "class `%s' already exists" msgstr "(ôï áñ÷åßï Þäç õðÜñ÷åé)" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "" @@ -19943,1472 +20015,1799 @@ msgstr " msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, c-format msgid "instance variable `%s' is %s; this will be a hard error in the future" msgstr "" -#: objc/objc-act.c:6546 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, fuzzy, c-format msgid "incomplete implementation of category `%s'" msgstr "áðïôõ÷ßá êáôÜ ôçí åããñáöÞ äåäïìÝíùí ãéá ôçí êáôçãïñßá `%s'" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, c-format msgid "%s `%s' does not fully implement the `%s' protocol" msgstr "" -#: objc/objc-act.c:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "" # src/request.c:806 src/request.c:912 -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, fuzzy, c-format msgid "conflicting super class name `%s'" msgstr "Ìç áíáãíùñßóçìï üíïìá åðéöÜíåéáò `%s'" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, fuzzy, c-format msgid "duplicate interface declaration for class `%s'" msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, fuzzy, c-format msgid "duplicate declaration for protocol `%s'" msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 msgid "%J%s `%c%s'" msgstr "" # src/outer.c:102 -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, fuzzy, c-format msgid "no super class declared in interface for `%s'" msgstr "Ï áíôéôïðïèåôçôÞò åðéöÜíåéáò Ý÷åé ôåèåß ðåñéóóüôåñï áðü ìéá öïñÜ ãéá ôï `%s'" -#: objc/objc-act.c:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 #, fuzzy msgid "Display this information" msgstr " --help ÅìöÜíéóç áõôþí ôùí ðëçñïöïñéþí\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 #, fuzzy msgid "Do not discard comments" msgstr "Ìç ôåñìáôéóìÝíç åíôïëÞ `s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 msgid "Print the name of header files as they are used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd 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 -#, fuzzy -msgid "Generate make dependencies" -msgstr "äõíáìéêÝò åîáñôÞóåéò.\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 msgid "Generate make dependencies and compile" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -#, fuzzy -msgid "Generate phony targets for all headers" -msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 msgid "-O\tSet optimization level to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 msgid "Optimize for space rather than speed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 msgid "Do not generate #line directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 msgid "Warn about subscripts whose type is \"char\"" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 msgid "Warn when all constructors and destructors are private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 msgid "Warn when a declaration is found after a statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -msgid "Warn about deprecated compiler features" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 msgid "Warn about compile-time integer division by zero" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 msgid "Make implicit function declarations an error" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 msgid "Warn if testing floating point numbers for equality" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 #, fuzzy msgid "Warn if passing too many arguments to a function for its format string" msgstr "ðÜñá ðïëëÜ ïñßóìáôá óå áõôü ôï áëöáñéèìçôéêü ìïñöÞò" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 msgid "Warn about format strings that are not literals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 msgid "Warn about strftime formats yielding 2-digit years" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 -msgid "Warn about implicit function declarations" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +msgid "Enable warnings about inter-procedural problems" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 -msgid "Warn when a declaration does not specify a type" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 +msgid "Warn about implicit function declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:198 -msgid "Deprecated. This switch has no effect." +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 +msgid "Warn when a declaration does not specify a type" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:201 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 msgid "Warn about suspicious declarations of \"main\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 msgid "Warn about possibly missing braces around initializers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 msgid "Warn about global functions without previous declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 msgid "Warn about functions which might be candidates for format attributes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 msgid "Warn about global functions without prototypes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 #, fuzzy msgid "Warn about use of multi-character character constants" msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 msgid "Warn about \"extern\" declarations not at file scope" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 msgid "Warn when non-templatized friend functions are declared within a template" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 msgid "Warn about non-virtual destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 msgid "Warn if a C-style cast is used in a program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 msgid "Warn if an old-style parameter definition is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 msgid "Warn when padding is required to align structure members" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 msgid "Warn about possibly missing parentheses" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 msgid "Warn when converting the type of pointers to member functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 msgid "Warn if inherited methods are unimplemented" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +#, fuzzy +msgid "Warn if modifiers are specified when not necessary" +msgstr "äå ìðïñïýí íá äçëþíïíôáé áñ÷åßá üôáí ãßíåôáé ÷ñÞóç ôïõ --string" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 msgid "Warn about signed-unsigned comparisons" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 msgid "Warn about code which might break strict aliasing rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 #, fuzzy msgid "Warn about unprototyped function declarations" msgstr "áäõíáìßá åéóáãùãÞò óôïé÷åßï ðáñáâïëÞò `%.*s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 msgid "Warn about enumerated switches, with no default, missing a case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 msgid "Warn about all enumerated switches missing a specific case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 #, fuzzy msgid "Do not suppress warnings from system headers" msgstr "Áðïóéþðçóç ðñïçäïðïéÞóåùí êáé ìçíõìÜôùí ðëçñïöüñçóçò" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 msgid "Warn about features not present in traditional C" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 #, fuzzy msgid "Warn if an undefined macro is used in an #if directive" msgstr "%%%c: êáôåõèõíôÞñéïò ãñáììÞ ìç Ýãêõñç." -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 msgid "-aux-info \tEmit declaration information into " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 msgid "-d\tEnable dumps from specific passes of the compiler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 msgid "Enforce class member access control semantics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 msgid "Specify that arguments may alias each other and globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 msgid "Assume arguments may alias globals but not each other" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 msgid "Assume arguments alias neither each other nor globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 msgid "Recognize the \"asm\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 #, fuzzy msgid "Generate code to check bounds before indexing arrays" msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 msgid "Replace add, compare, branch with branch on count register" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 #, fuzzy msgid "Recognize built-in functions" msgstr "áäõíáìßá åêôÝëåóçò ioctl óôï `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 msgid "-fcall-saved-\tMark as being preserved across functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 msgid "Save registers around function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +msgid "Preserve case used in program" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 msgid "Reduce the size of object files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 msgid "Perform a register copy-propagation optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 msgid "Place data items into their own section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 #, fuzzy msgid "Inline member functions by default" msgstr "Óôç óõíÜñôçóç ìÝëïò `%s':" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +msgid "Allow '$' in symbol names" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 #, fuzzy msgid "Permit '$' as an identifier character" msgstr "ëßóôá ìå üëá ôá ãíùóôÜ óýíïëá ÷áñáêôÞñùí" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 msgid "Suppress output of instruction numbers and line number notes in debugging dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 msgid "Generate code to check exception specifications" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +msgid "f2c-compatible code can be generated" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +msgid "Unsupported; generate libf2c-calling code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +msgid "Program is written in typical Unix-f77 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +msgid "Unsupported; affects code generation of arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 msgid "Scope of for-init-statement variables is local to the loop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 msgid "Copy memory address constants into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 msgid "Copy memory operands into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 msgid "Place each function into its own section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 msgid "Perform global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 msgid "Perform redundant load after store elimination in global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 msgid "Perform store motion after global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 msgid "Recognize GNU-defined keywords" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 msgid "Enable guessing of branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 #, fuzzy msgid "Emit implicit instantiations of inline templates" msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 #, fuzzy msgid "Emit implicit instantiations of templates" msgstr "äéðëüò ïñéóìüò óõíüëïõ" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 -msgid "Pay attention to the \"inline\" keyword" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 +msgid "Pay attention to the \"inline\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 msgid "Instrument function entry and exit with profiling calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +msgid "Intrinsics in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 msgid "Generate code for functions even if they are fully inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 msgid "Give external symbols a leading underscore" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 msgid "Perform loop optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +msgid "Language keywords in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 msgid "Report on permanent memory allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 msgid "Don't warn about uses of Microsoft extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 #, fuzzy msgid "Use graph-coloring register allocation" msgstr "Áðïôõ÷ßá äÝóìåõóçò ðüñùí óõóôÞìáôïò" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 msgid "Do the full register move optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +msgid "Enable optimization of static class initialization code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 #, fuzzy msgid "Enable optional diagnostics" msgstr "ÁêáôÜëëçëç åíôïëÞ" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 msgid "Return small aggregates in memory, not registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +msgid "Warn about use of (only a few for now) Fortran extensions" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 msgid "Perform loop peeling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 msgid "Enable an RTL peephole pass before sched2" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 msgid "Generate position-independent code if possible" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 msgid "Generate position-independent code for executables if possible" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 msgid "Insert arc-based program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 msgid "Return small aggregates in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 msgid "Perform a register renaming optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 msgid "Generate run time type descriptor information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +msgid "Allow appending a second underscore to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 msgid "Make \"char\" signed by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +msgid "Do not print names of program units as they are compiled" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 msgid "Convert floating point constants to single precision constants" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +msgid "Internally convert most source to lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 msgid "Create data files needed by \"gcov\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 msgid "Report the time taken by each compiler pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 #, fuzzy msgid "Assume floating-point operations can trap" msgstr "Åîáßñåóç êéíçôÞò õðïäéáóôïëÞò" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +msgid "Allow all ugly features" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +msgid "Hollerith and typeless can be passed as arguments" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +msgid "Append underscores to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 msgid "Compile whole compilation unit at a time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +#, fuzzy +msgid "Enable libU77 intrinsics" +msgstr "ÁêáôÜëëçëç åíôïëÞ" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 msgid "Make \"char\" unsigned by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 msgid "Perform loop unswitching" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +msgid "Print g77-specific version information and run internal tests" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 #, fuzzy msgid "Use expression value profiles in optimizations" msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç: %s" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 #, fuzzy msgid "Emit cross referencing information" msgstr "åìöÜíéóç ðëçñïöïñéþí ðñïüäïõ" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +#, fuzzy +msgid "Print internal debugging-related information" +msgstr "" +"EìöÜíéóç ðëçñïöïñéþí êÜëõøçò êþäéêá.\n" +"\n" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 msgid "Generate debug information in default format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 msgid "Generate debug information in COFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 msgid "Generate debug information in DWARF v2 format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 msgid "Dump declarations to a .decl file" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 msgid "Generate debug information in default extended format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 msgid "Generate debug information in STABS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 msgid "Generate debug information in extended STABS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 msgid "Generate debug information in VMS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 msgid "Generate debug information in XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 msgid "Generate debug information in extended XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 #, fuzzy msgid "-o \tPlace output into " msgstr " -o <áñ÷åßï> ÔïðïèÝôçóç ôçò åîüäïõ óôï <áñ÷åßï>\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 #, fuzzy msgid "Enable function profiling" msgstr "áäýíáôç ç öüñôùóç äåäïìÝíùí ðñïößë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 msgid "Issue warnings needed for strict compliance to the standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 msgid "Generate C header of platform-specific features" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 msgid "Do not display functions compiled or elapsed time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 #, fuzzy msgid "Remap file names when including files" msgstr "Ìç ïñéóìÝíï üíïìá %s" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 msgid "Enable traditional preprocessing" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 msgid "Enable verbose output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -msgid "Display the compiler's version" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 #, fuzzy msgid "Suppress warnings" msgstr "%s: ðñïåéäïðïßçóç: " -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "" @@ -21422,7 +21821,7 @@ msgstr " msgid "GCC does not support -CC without using -E" msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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 @@ -21833,6 +22232,10 @@ msgstr "" #~ msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü" #, fuzzy +#~ msgid "hex character constant does not fit in a byte" +#~ msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü" + +#, fuzzy #~ msgid "Junk after end of expression." #~ msgstr "Ðñüùñï ôÝëïò ôçò êáíïíéêÞò Ýêöñáóçò" @@ -22099,10 +22502,6 @@ msgstr "" #~ msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u" #, fuzzy -#~ msgid "Warn if modifiers are specified when not necessary" -#~ msgstr "äå ìðïñïýí íá äçëþíïíôáé áñ÷åßá üôáí ãßíåôáé ÷ñÞóç ôïõ --string" - -#, fuzzy #~ msgid "multiple declarations for method `%s'" #~ msgstr "ðïëëáðëüò áñéèìüò åðéëïãþí ôçí åíôïëÞ `s'" diff --git a/gcc/po/es.po b/gcc/po/es.po index f824f807253..aa3d9694184 100644 --- a/gcc/po/es.po +++ b/gcc/po/es.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.4.0\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2004-05-18 18:02-0500\n" "Last-Translator: Cristian Othón Martínez Vera \n" "Language-Team: Spanish \n" @@ -34,15 +34,15 @@ msgstr "el atributo `%s' no se aplica a tipos" msgid "`%s' attribute only applies to function types" msgstr "el atributo `%s' se aplica solamente a tipos de funciones" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -117,7 +117,7 @@ msgstr "(as #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "si se alcanza este código, el programa abortará" @@ -282,259 +282,259 @@ msgid "invalid application of `%s' to a void type" msgstr "aplicación inválida de `%s' a un tipo void" #: c-common.c:2951 -#, c-format -msgid "invalid application of `%s' to an incomplete type" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " msgstr "aplicación inválida de `%s' a un tipo de dato incompleto" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "`__alignof' applicado a un campo de bits" -#: c-common.c:3483 +#: c-common.c:3484 #, c-format msgid "cannot disable built-in function `%s'" msgstr "no se puede desactivar la función interna `%s'" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "muy pocos argumentos para la función `%s'" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "demasiados argumentos para la función `%s'" -#: c-common.c:3669 +#: c-common.c:3670 #, 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:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "no se permite usar punteros como valores case" -#: c-common.c:3900 +#: c-common.c:3901 msgid "range expressions in switch statements are non-standard" msgstr "las expresiones de rango en las declaraciones switch no son estándard" -#: c-common.c:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "se especificó un rango vacío" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "valor case duplicado (o con solapamiento de rangos)" -#: c-common.c:3981 +#: c-common.c:3982 msgid "%Jthis is the first entry overlapping that value" msgstr "%Jesta es la primera entrada que solapa ese valor" -#: c-common.c:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "valor de case duplicado" -#: c-common.c:3986 +#: c-common.c:3987 msgid "%Jpreviously used here" msgstr "%Jse usó previamente aquí" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "múltiples etiquetas por defecto en un solo switch" -#: c-common.c:3991 +#: c-common.c:3992 msgid "%Jthis is the first default label" msgstr "%Jesta es la primera etiqueta por defecto" -#: c-common.c:4016 +#: c-common.c:4017 msgid "taking the address of a label is non-standard" msgstr "tomar la dirección de una etiqueta no es estándard" -#: c-common.c:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "%Hse ignora el valor de devolución de `%D', se declaró con el atributo warn_unused_result" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "%Hse ignora el valor de devolución de la función declarada con el atributo warn_unused_result" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "se desconoce el modo de máquina `%s'" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "no hay tipo de datos para el modo `%s'" -#: c-common.c:4655 +#: c-common.c:4656 #, c-format msgid "invalid pointer mode `%s'" msgstr "modo de puntero `%s' inválido" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, c-format msgid "unable to emulate '%s'" msgstr "no se puede emular '%s'" -#: c-common.c:4706 +#: c-common.c:4707 msgid "%Jsection attribute cannot be specified for local variables" msgstr "%Jno se puede especificar el atributo de sección para las variables locales" -#: c-common.c:4717 +#: c-common.c:4718 msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "%Jla sección de '%D' causa conflictos con la declaración previa" -#: c-common.c:4726 +#: c-common.c:4727 msgid "%Jsection attribute not allowed for '%D'" msgstr "%Jno se permite un atributo de sección para '%D'" -#: c-common.c:4732 +#: c-common.c:4733 msgid "%Jsection attributes are not supported for this target" msgstr "%Jno se soportan atributos de sección en este objetivo" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "la alineación solicitada no es una constante" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "la alineación solicitada no es una potencia de 2" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "la alineación solicitada es demasiado grande" -#: c-common.c:4806 +#: c-common.c:4807 msgid "%Jalignment may not be specified for '%D'" msgstr "%Jla alineación puede no estar especificada para '%D'" -#: c-common.c:4844 +#: c-common.c:4845 msgid "%J'%D' defined both normally and as an alias" msgstr "%J'%D' definido normalmente y como un alias" -#: c-common.c:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "el argumento de alias no es una cadena" -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "el argumento de visibilidad no es una cadena" -#: c-common.c:4910 +#: c-common.c:4911 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:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "el argumento de tls_model no es una cadena" -#: c-common.c:4945 +#: c-common.c:4946 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:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 msgid "%J'%E' attribute applies only to functions" msgstr "el atributo %J'%E' se aplica solamente a funciones" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 msgid "%Jcan't set '%E' attribute after definition" msgstr "%Jno se puede establecer el atributo '%E' después de la definición" -#: c-common.c:5094 +#: c-common.c:5095 #, c-format msgid "`%s' attribute ignored for `%s'" msgstr "se ignora el atributo `%s' para `%s'" -#: c-common.c:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "tipo vector inválido para el atributo `%s'" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 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:5315 +#: c-common.c:5316 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:5330 +#: c-common.c:5331 #, 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:5349 +#: c-common.c:5350 #, 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:5357 +#: c-common.c:5358 #, 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:5437 +#: c-common.c:5438 #, 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-common.c:5508 +#: c-common.c:5509 msgid "cleanup arg not an identifier" msgstr "el argumento de limpieza no es un identificador" -#: c-common.c:5515 +#: c-common.c:5516 msgid "cleanup arg not a function" msgstr "el argumento de limpieza no es una función" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s al final de la entrada" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s antes de %s'%c'" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s antes de %s'\\x%x'" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "%s antes de una constante de cadena" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "%s antes de una constante numérica" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s antes de \"%s\"" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s antes del elemento '%s'" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 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" @@ -716,8 +716,8 @@ msgstr "%Jla declaraci msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "%Jla declaración de '%D' obscurece a una declaración local previa" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 msgid "%Jshadowed declaration is here" msgstr "%Jaquí está la declaración oscurecida" @@ -726,7 +726,7 @@ msgstr "%Jaqu msgid "nested extern declaration of `%s'" msgstr "declaración externa anidada de `%s'" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 msgid "%Jprevious declaration of '%D'" msgstr "%Jdeclaración previa de '%D'" @@ -800,7 +800,7 @@ msgid "two types specified in one empty declaration" msgstr "se especificaron dos tipos en una declaración vacía" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "declaración vacía" @@ -840,7 +840,7 @@ msgstr "la funci msgid "parameter `%s' is initialized" msgstr "el parámetro `%s' está inicializado" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "un objeto de tamaño variable no puede ser inicializado" @@ -854,7 +854,7 @@ msgstr "la variable `%s' tiene un inicializador, pero es de tipo de dato incompl msgid "elements of array `%s' have incomplete type" msgstr "algunos elementos de la matriz `%s' tienen tipo de dato incompleto" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 msgid "%Jinline function '%D' given attribute noinline" msgstr "%Jse le dió a la función inline '%D' un atributo noinline" @@ -1130,7 +1130,7 @@ msgstr "ISO C90 proh msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO C90 prohíbe la matriz `%s' de tamaño variable" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "el tamaño de la matriz `%s' es demasiado grande" @@ -1173,7 +1173,7 @@ msgstr "modificador de tipo inv 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:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "variable o campo `%s' declarado void" @@ -1468,7 +1468,7 @@ msgstr "el argumento promovido \"%D\" no coincide con el prototipo" msgid "argument \"%D\" doesn't match prototype" msgstr "el argumento \"%D\" no coincide con el prototipo" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 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" @@ -2250,7 +2250,7 @@ msgstr "error sint msgid "ISO C forbids an empty source file" msgstr "ISO C prohíbe un fichero fuente vacío" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "el argumento de `asm' no es una cadena constante" @@ -2343,7 +2343,7 @@ msgstr "ISO C proh msgid "ISO C forbids forward references to `enum' types" msgstr "ISO C prohíbe las declaraciones posteriores para tipos `enum'" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "coma al final de la lista de enumeradores" @@ -2351,7 +2351,7 @@ msgstr "coma al final de la lista de enumeradores" 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/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "se especificó un punto y coma extra en un struct o union" @@ -2379,23 +2379,23 @@ msgstr "ISO C proh 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:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "cuerpo vacío en una declaración else" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 msgid "%Hempty body in an if-statement" msgstr "%Hcuerpo vacío en una declaración if" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 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:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 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 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO C prohíbe `goto *expr;'" @@ -2405,11 +2405,11 @@ msgstr "ISO C proh #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "ISO C requiere un argumento con nombre antes de `...'" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "`...' en una lista de identificadores de estilo antiguo" @@ -2425,7 +2425,7 @@ msgstr "error de decodificaci msgid "parser stack overflow" msgstr "desbordamiento de la pila del decodificador" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "error sintáctico en el elemento '%s'" @@ -2587,19 +2587,19 @@ msgstr "#pragma redefine_extname malformado, ignorado" msgid "junk at end of #pragma redefine_extname" msgstr "basura al final de #pragma redefine_extname" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "#pragma redefine_extname tiene conflictos con la declaración" -#: c-pragma.c:413 +#: c-pragma.c:414 msgid "malformed #pragma extern_prefix, ignored" msgstr "#pragma extern_prefix malformado, ignorado" -#: c-pragma.c:418 +#: c-pragma.c:419 msgid "junk at end of #pragma extern_prefix" msgstr "basura al final de #pragma extern_prefix" -#: c-pragma.c:449 +#: c-pragma.c:450 msgid "asm declaration conflicts with previous rename" msgstr "la declaración asm causa conflictos con el renombrado previo" @@ -2615,7 +2615,7 @@ msgstr "donde la etiqueta case aparece aqu 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:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "se ignora el calificador %s en asm" @@ -2624,789 +2624,789 @@ msgstr "se ignora el calificador %s en asm" msgid "will never be executed" msgstr "nunca se ejecutará" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "`%s' tiene un tipo de dato incompleto" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "uso inválido de la expresión void" -#: c-typeck.c:150 +#: c-typeck.c:153 msgid "invalid use of flexible array member" msgstr "uso inválido de un miembro de matriz flexible" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "uso inválido de matrices con límites sin especificar" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "uso inválido del typedef incompleto `%s'" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 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:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "los tipos no son totalmente compatibles" -#: c-typeck.c:824 +#: c-typeck.c:838 msgid "function return types not compatible due to `volatile'" msgstr "los tipos de devolución de función no son compatibles debido a `volatile'" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "aritmética en puntero a un tipo de dato incompleto" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "%s no tiene un miembro llamado `%s'" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, 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:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "puntero deferenciado a tipo de dato incompleto" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "deferenciando el puntero `void *'" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "argumento de tipo inválido de `%s'" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "falta subíndice en la referencia de la matriz" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "el subíndice de la matriz tiene tipo `char'" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "el subíndice de la matriz no es un entero" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "ISO C prohíbe el subíndice de una matriz `register'" -#: c-typeck.c:1511 +#: c-typeck.c:1525 msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C90 prohíbe el subíndice de una matriz no-lvaluada" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "el subíndice es de tipo `char'" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 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:1590 +#: c-typeck.c:1604 #, 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:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "el objeto llamado no es una función" #. 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 +#: c-typeck.c:1729 msgid "function called through a non-compatible type" msgstr "función llamada a través de un tipo de dato que no es compatible" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "el elemento inicializador no es constante" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "demasiados argumentos para la función" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, 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:1847 +#: c-typeck.c:1872 #, 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:1850 +#: c-typeck.c:1875 #, 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:1853 +#: c-typeck.c:1878 #, 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:1856 +#: c-typeck.c:1881 #, 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:1859 +#: c-typeck.c:1884 #, 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:1862 +#: c-typeck.c:1887 #, 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:1872 +#: c-typeck.c:1897 #, 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:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "%s con anchura diferente debido al prototipo" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "%s como unsigned debido al prototipo" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "%s como signed debido al prototipo" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "muy pocos argumentos para la función" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "se sugieren paréntesis alrededor de + o - dentro de un desplazamiento" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "se sugieren paréntesis alrededor de && junto con ||" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "se sugieren paréntesis alrededor de la aritmética para operandos de |" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "se sugieren paréntesis alrededor de las comparaciones para operandos de |" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "se sugieren paréntesis alrededor de la aritmética para operandos de ^" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "se sugieren paréntesis alrededor de las comparaciones para operandos de ^" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "se sugieren paréntesis alrededor de + o - para operandos de &" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "se sugieren paréntesis alrededor de las comparaciones para operandos de &" -#: c-typeck.c:2040 +#: c-typeck.c:2065 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:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "se usó un puntero de tipo `void *' en la sustracción" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "se utilizó un puntero a una función en la sustracción" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "argumento de tipo erróneo para el incremento unario" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "argumento de tipo erróneo para el decremento unario" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "ISO C no tiene soporte de `~' para conjugaciones complejas" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "argumento de tipo erróneo para complemento de bits" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "argumento de tipo erróneo para abs" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "argumento de tipo erróneo para la conjugación" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "argumento de tipo erróneo para el signo de exclamación unario" -#: c-typeck.c:2312 +#: c-typeck.c:2337 msgid "ISO C does not support `++' and `--' on complex types" msgstr "ISO C no tiene soporte para `++' y `--' en tipos complejos" -#: c-typeck.c:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 msgid "wrong type argument to increment" msgstr "argumento de tipo erróneo para el incremento" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "argumento de tipo erróneo para el decremento" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "incremento de puntero a estructura desconocida" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "decremento de puntero a estructura desconocida" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "l-valor inválido en `&' unario" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, 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:2642 +#: c-typeck.c:2668 msgid "use of conditional expressions as lvalues is deprecated" msgstr "el uso de expresiones condicionales como l-valores es obsoleto" -#: c-typeck.c:2645 +#: c-typeck.c:2671 msgid "use of compound expressions as lvalues is deprecated" msgstr "el uso de expresiones compuestas como l-valores es obsoleto" -#: c-typeck.c:2648 +#: c-typeck.c:2674 msgid "use of cast expressions as lvalues is deprecated" msgstr "el uso de expresiones de conversión como l-valores es obsoleto" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "%s del miembro de sólo lectura `%s'" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "%s de la variable de sólo lectura `%s'" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "%s de la ubicación de sólo lectura" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, 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:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 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:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 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:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 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:2739 +#: c-typeck.c:2765 msgid "cannot put object with volatile field into register" msgstr "no se puede poner objeto con campo volatile en register" -#: c-typeck.c:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 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:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "tipos signed y unsigned en la expresión condicional" -#: c-typeck.c:2835 +#: c-typeck.c:2861 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:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 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:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "los tipos de datos punteros no coinciden en la expresión condicional" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 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:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "los tipos de datos no coinciden en la expresión condicional" -#: c-typeck.c:2955 +#: c-typeck.c:2981 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:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "la conversión especifica el tipo matriz" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "la conversión especifica el tipo función" -#: c-typeck.c:3002 +#: c-typeck.c:3028 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:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "ISO C prohíbe la conversión al tipo union" -#: c-typeck.c:3028 +#: c-typeck.c:3054 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:3079 +#: c-typeck.c:3105 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "la conversión descarta los calificadores del tipo del destino del puntero" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "la conversión incrementa la alineación requerida del tipo del destino" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "conversión de puntero a entero de tamaño diferente" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "la conversión no coincide con el tipo de la función" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "conversión a puntero desde un entero de tamaño diferente" -#: c-typeck.c:3129 +#: c-typeck.c:3155 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:3133 +#: c-typeck.c:3159 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:3144 +#: c-typeck.c:3170 msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "ISO C prohíbe la conversión de un apuntador a función a un tipo de objeto apuntador" -#: c-typeck.c:3153 +#: c-typeck.c:3179 msgid "ISO C forbids conversion of object pointer to function pointer type" msgstr "ISO C prohíbe la conversión de objeto apuntador a un tipo de apuntador a función" #. Now we have handled acceptable kinds of LHS that are not truly lvalues. #. Reject anything strange now. -#: c-typeck.c:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "l-valor inválido en la asignación" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "asignación" -#: c-typeck.c:3429 +#: c-typeck.c:3455 msgid "cannot pass rvalue to reference parameter" msgstr "no se puede pasar un valor-r a un parámetro de referencia" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, 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:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "%s descarta calificadores del tipo del destino del puntero" -#: c-typeck.c:3548 +#: c-typeck.c:3574 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:3586 +#: c-typeck.c:3612 #, 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:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "el puntero que apunta a %s difiere en signo" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "%s de tipo de puntero incompatible" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "uso inválido de matriz no-lvaluada" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, 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:3646 +#: c-typeck.c:3672 #, 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:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "tipo incompatible para el argumento %d de `%s'" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, 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:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "tipos incompatibles en %s" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, c-format msgid "passing arg of `%s'" msgstr "al pasar un argumento de `%s'" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 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:3744 +#: c-typeck.c:3770 #, 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:3753 +#: c-typeck.c:3779 #, 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:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "C tradicional rechaza la inicialización automática de agregados" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "(cerca de la inicialización de `%s')" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "matriz de caracteres inicializada con una cadena ancha" # no ancha -> angosta? cfuga -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "matriz de enteros inicializada con una cadena no ancha" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 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:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "matriz inicializada con una expresión matrizal que no es constante" -#: 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 "el elemento inicializador no es constante" - -#: c-typeck.c:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "inicialización" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "el elemento inicializador no es calculable al momento de la carga" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "inicializador inválido" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 msgid "opaque vector types cannot be initialized" msgstr "no se pueden inicializar los tipos de vector opacos" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "grupo extra de llaves al final del inicializador" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "faltan llaves alrededor del inicializador" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "llaves alrededor del inicializador escalar" -#: c-typeck.c:4842 +#: c-typeck.c:4865 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:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "inicialización de un miembro de matriz flexible" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "falta el inicializador" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "inicializador escalar vacío" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "elementos extras en el inicializador escalar" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "no se pueden anidar los designadores de inicialización" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "índice de matriz en el inicializador que no es matriz" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 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:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "índice de matriz no constante en el inicializador" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 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:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "rango de índices vacío en el inicializador" -#: c-typeck.c:5101 +#: c-typeck.c:5124 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:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "campo `%s' desconocido especificado en el inicializador" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "campo inicializado con efectos laterales sobreescritos" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "exceso de elementos en el inicializador de matriz de caracteres" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "exceso de elementos en el inicializador de struct" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "inicialización no estática de un miembro de matriz flexible" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "exceso de elementos en el inicializador de union" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "C tradicional rechaza la inicialización de unions" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "exceso de elementos en el inicializador de matriz" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "exceso de elementos en el inicializador de vector" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "exceso de elementos en el inicializador de escalar" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "la plantilla asm no es una cadena constante" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "l-valor inválido en la declaración asm" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "modificación por `asm'" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "la función declarada `noreturn' tiene una declaración `return'" -#: c-typeck.c:6369 +#: c-typeck.c:6392 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:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "`return' con valor, en una función que devuelve void" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "return" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "la función devuelve la dirección de una variable local" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "la cantidad de switch no es un entero" -#: c-typeck.c:6496 +#: c-typeck.c:6519 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:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "la etiqueta case no se encuentra dentro de una declaración switch" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "la etiqueta `default' no está dentro de una declaración switch" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "división por cero" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "la cuenta de desplazamiento a la derecha es negativa" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "cuenta de desplazamiento a la derecha >= anchura del tipo" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "la cuenta de desplazamiento a la izquierda es negativa" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "cuenta de desplazamiento a la izquierda >= anchura del tipo" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "la cuenta de desplazamiento es negativa" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "cuenta de desplazamiento >= anchura del tipo" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "no es segura la comparacion de coma flotante con == o !=" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 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:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 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:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "comparación entre puntero y entero" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 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:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "comparación de punteros completos e incompletos" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "comparación ordenada de puntero con el entero cero" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 msgid "unordered comparison on non-floating point argument" msgstr "comparación sin orden en argumento de coma no flotante" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "comparación entre signed y unsigned" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "comparación de un ~unsigned promovido con una constante" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "comparación de un ~unsigned promovido con unsigned" @@ -3672,43 +3672,43 @@ msgstr "el n msgid "function body not available" msgstr "el cuerpo de la función no está disponible" -#: cgraph.c:163 cgraphunit.c:340 +#: cgraph.c:163 cgraphunit.c:341 msgid "redefined extern inline functions are not considered for inlining" msgstr "las funciones extern inline redefinidas no se consideran para el `inlining'" -#: cgraph.c:166 cgraphunit.c:345 +#: cgraph.c:166 cgraphunit.c:346 msgid "function not considered for inlining" msgstr "la función no se consideró para `inlining'" -#: cgraph.c:168 cgraphunit.c:343 +#: cgraph.c:168 cgraphunit.c:344 msgid "function not inlinable" msgstr "la función no se puede hacer inline" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "se renombró %D después de ser referenciado en el ensamblado" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "se alcanzó el límite de --param large-function-growth" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "se alcanzó el límite de --param large-function-growth al hacer inlining del invocador" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "se alcanzó el límite de --param max-inline-insns-single" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "se alcanzó el límite de --param max-inline-insns-single después de hacer inlining en el invocado" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "se alcanzó el límite de --param inline-unit-growth" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "inlining recursivo" @@ -3896,7 +3896,7 @@ msgstr "%s: no se puede abrir como un fichero COFF" msgid "library lib%s not found" msgstr "no se encuentra la biblioteca lib%s" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -3907,7 +3907,7 @@ msgstr "" ";; %d éxitos.\n" "\n" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -4739,7 +4739,7 @@ msgstr "se detect msgid "syntax error in macro parameter list" msgstr "error de sintaxis en la lista de parámetros de macro" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr ";; Procesando el bloque de %d a %d, %d establecido.\n" @@ -4817,16 +4817,16 @@ msgstr "no se da soporte a l msgid "function using short complex types cannot be inline" msgstr "las funciones que usan tipos short complex no pueden ser inline" -#: expr.c:6385 +#: expr.c:6386 msgid "%Jprior parameter's size depends on '%D'" msgstr "%Jel tamaño del parámetro previo depende de '%D'" -#: expr.c:6752 +#: expr.c:6753 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:8895 +#: expr.c:8894 msgid "cannot take the address of an unaligned member" msgstr "no se puede tomar la dirección de un miembro desalineado" @@ -4871,12 +4871,12 @@ msgstr "el operando `%%l' no es una etiqueta" #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "constante de coma flotante mal usada" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "expresión inválida como operando" @@ -4927,23 +4927,23 @@ msgstr "%Jel tama msgid "impossible constraint in `asm'" msgstr "restricción imposible en `asm'" -#: function.c:5723 +#: function.c:5733 msgid "%J'%D' might be used uninitialized in this function" msgstr "%Jpuede ser que se utilice '%D' sin inicializar en esta función" -#: function.c:5730 +#: function.c:5740 msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "%Jla variable '%D' puede ser sobreescrita por `longjmp' o `vfork'" -#: function.c:5749 +#: function.c:5759 msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "%Jel argumento '%D' puede ser sobreescrito por `longjmp' o `vfork'" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "la función devuelve un agregado" -#: function.c:7006 +#: function.c:6929 msgid "%Junused parameter '%D'" msgstr "%Jparámetro '%D' sin uso" @@ -6396,7 +6396,7 @@ msgstr "el operando de salida %d debe usar la restricci msgid "can't use '%s' as a %s register" msgstr "no se puede usar '%s' como un registro %s" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "nombre de registro desconocido: %s" @@ -6453,47 +6453,47 @@ msgstr "no se pueden generar recargas para:" msgid "inconsistent operand constraints in an `asm'" msgstr "restricciones de operandos inconsistentes en un `asm'" -#: reload1.c:1212 +#: reload1.c:1222 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:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "intente reducir el número de variables locales" -#: reload1.c:1868 +#: reload1.c:1878 #, 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:1872 +#: reload1.c:1882 #, 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:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "este es el insn:" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "el operando `asm' requiere una recarga imposible" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 msgid "could not find a spill register" msgstr "no se puede encontrar un registro de vaciado" -#: reload1.c:4968 +#: reload1.c:4978 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:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "modoVOID en una salida" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "el operando de salida es constante en `asm'" @@ -6545,7 +6545,7 @@ msgstr "Revisi 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:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 msgid "%Jlabel '%D' used before containing binding contour" msgstr "%Jse usó antes la etiqueta '%D' que contenía un contorno de unión" @@ -6562,7 +6562,7 @@ msgstr "la restricci msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "la restriccion de operando contiene '+' ó '=' en una posición ilegal" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "se usó la restricción `%%' con el último operando" @@ -6571,126 +6571,122 @@ msgstr "se us msgid "matching constraint not valid in output operand" msgstr "la restricción coincidente no es válida en el operando de salida" -#: stmt.c:1260 -msgid "read-write constraint does not allow a register" -msgstr "la restricción lectura-escritura no permite un registro" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "la restrcción de operando de entrada contiene `%c'" -#: stmt.c:1334 +#: stmt.c:1331 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:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "puntuación inválida `%c' en la restricción" -#: stmt.c:1396 +#: stmt.c:1393 msgid "matching constraint does not allow a register" msgstr "la restricción coincidente no permite un registro" # FIXME: encontrar una mejor traducción para `clobber' en este contexto. cfuga -#: stmt.c:1424 +#: stmt.c:1421 #, 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 lista de agrupación asm" -#: stmt.c:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "nombre de registro `%s' desconocido en `asm'" -#: stmt.c:1522 +#: stmt.c:1519 #, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "registro PIC `%s' sobreescrito en `asm'" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "más de %d operandos en `asm'" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "el número de salida %d no es directamente direccionable" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "el operando asm %d probablemente no coincide con las restricciones" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "el uso de entrada de memoria sin un lvalor en el operando asm %d es obsoleto" -#: stmt.c:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "la agrupación asm causa conflictos con el operando de salida" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "la agrupación asm causa conflictos con el operando de entrada" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "demasiadas alternativas en `asm'" -#: stmt.c:1926 +#: stmt.c:1923 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:1978 +#: stmt.c:1975 #, c-format msgid "duplicate asm operand name '%s'" msgstr "nombre `%s' de operando asm duplicado" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "falta la llave final para el operando nombrado" -#: stmt.c:2104 +#: stmt.c:2101 #, c-format msgid "undefined named operand '%s'" msgstr "operador '%s' nombrado sin definir" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "%Hdeclaración sin efecto" -#: stmt.c:2317 +#: stmt.c:2314 msgid "%Hvalue computed is not used" msgstr "%Hno se utiliza el valor calculado" -#: stmt.c:3733 +#: stmt.c:3730 msgid "%Junused variable '%D'" msgstr "%Jvariable '%D' sin uso" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "%Hcódigo inalcanzable al inicio de %s" -#: stmt.c:5136 +#: stmt.c:5133 #, 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:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "el valor de case `%ld' no es un tipo enumerado" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, 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:5401 +#: stmt.c:5398 msgid "switch missing default case" msgstr "falta el case por defecto para un switch" @@ -6722,25 +6718,25 @@ msgstr "%Jno es necesario el atributo packed para '%D'" msgid "%Jpadding struct to align '%D'" msgstr "%Jestructura de relleno para alinear '%D'" -#: stor-layout.c:1245 +#: stor-layout.c:1244 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:1275 +#: stor-layout.c:1274 #, 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 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "no es necesario el atributo packed para `%s'" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "el atributo packed causa una alineación ineficiente" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "no es necesario el atributo packed" @@ -6890,7 +6886,7 @@ msgstr " Existen, pero no est msgid "unrecognized gcc debugging option: %c" msgstr "opción de depuración de gcc no reconocida: %c" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, c-format msgid "invalid option `%s'" msgstr "opción `%s' inválida" @@ -6919,25 +6915,25 @@ msgstr "opciones pasadas: " msgid "options enabled: " msgstr "opciones activadas: " -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, c-format msgid "can't open %s for writing: %m" msgstr "no se puede abrir %s para escritura: %m" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "creado y usado con diferentes opciones de -fpic" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "creado y usado con diferentes opciones de -fpie" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "creado y usado con diferentes opciones de `-m%s'" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "memoria agotada" @@ -6992,7 +6988,7 @@ msgstr "-ffunction-sections podr msgid "error writing to %s: %m" msgstr "error al escribir a %s: %m" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, c-format msgid "error closing %s: %m" msgstr "error al cerrar %s: %m" @@ -7052,34 +7048,34 @@ msgstr "%Jel tama msgid "%Jsize of return value of '%D' is larger than %wd bytes" msgstr "%Jel tamaño del valor de devolución de '%D' es más grande que %wd bytes" -#: tree.c:3800 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "las matrices de funciones no tienen significado" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "el tipo de devolución de función no puede ser función" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "inicializador inválido para la cadena de bits" -#: tree.c:4736 +#: tree.c:4737 #, 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:4749 +#: tree.c:4750 #, 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:4762 +#: tree.c:4763 #, 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" -#: tree.c:4774 +#: tree.c:4775 #, c-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "revisión de árbol: acceso del operando %d de %s con %d operandos en %s, en %s:%d" @@ -7440,7 +7436,7 @@ msgstr "valor err msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "valor erróneo `%s' para el interruptor -mfp-trap-mode" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "valor erróneo `%s' para el interruptor -mtls-size" @@ -7490,24 +7486,24 @@ msgstr "valor %%H inv msgid "invalid %%J value" msgstr "valor %%J inválido" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "valor %%r inválido" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "valor %%R inválido" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "valor %%N inválido" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "valor %%P inválido" @@ -7517,17 +7513,17 @@ msgstr "valor %%P inv msgid "invalid %%h value" msgstr "valor %%h inválido" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "valor %%L inválido" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "valor %%m inválido" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "valor %%M inválido" @@ -7538,7 +7534,7 @@ msgid "invalid %%U value" msgstr "valor %%U inválido" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "valor %%s inválido" @@ -7548,7 +7544,8 @@ msgstr "valor %%s inv msgid "invalid %%C value" msgstr "valor %%C inválido" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "valor %%E inválido" @@ -7557,7 +7554,7 @@ msgstr "valor %%E inv msgid "unknown relocation unspec" msgstr "reubicación unspec desconocida" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "código %%xn inválido" @@ -7717,17 +7714,17 @@ msgstr "el argumento del atributo `%s' no es una cadena constante" 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:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, c-format msgid "invalid operand to %%R code" msgstr "operando inválido para el código %%R" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "operando inválido para el código %%H%%L" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, c-format msgid "invalid operand to %%U code" msgstr "operando inválido para el código %%U" @@ -7738,7 +7735,7 @@ msgid "invalid operand to %%V code" msgstr "operando inválido para el código %%V" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "operando inválido para el código de salida" @@ -7747,7 +7744,7 @@ msgstr "operando inv msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "el interruptor -mcpu=%s genera conflictos con el switch -march=" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "valor erróneo (%s) para el interruptor %s" @@ -7832,12 +7829,12 @@ msgid "unable to use '%s' for PIC register" msgstr "no se puede usar '%s' para registro PIC" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 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" @@ -7852,7 +7849,7 @@ msgid "selector must be an immediate" msgstr "el selector debe ser un inmediato" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "la máscara debe ser un inmediato" @@ -9212,176 +9209,176 @@ msgstr "Generar instrucciones char" msgid "Do not generate char instructions" msgstr "No generar instrucciones char" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, 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:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 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:1195 +#: config/i386/i386.c:1204 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "valor erróneo (%s) para el interruptor -masm=" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, 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:1201 +#: config/i386/i386.c:1210 msgid "code model `large' not supported yet" msgstr "aún no hay soporte para el modelo de código `large'" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "no está compilado el modo bit-%i" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 msgid "CPU you selected does not support x86-64 instruction set" msgstr "el CPU que seleccionó no tiene soporte para el conjunto de instrucciones x86-64" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 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:1248 +#: config/i386/i386.c:1260 #, c-format msgid "bad value (%s) for -mtune= switch" msgstr "valor erróneo (%s) para el interruptor -mtune=" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "-mregparm=%d no está entre 0 y %d" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "-malign-loops es obsoleto, use -falign-loops" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, 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:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "-malign-jumps es obsoleto, use -falign-jumps" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "-malign-functions es obsoleto, use -falign-functions" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, 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:1354 +#: config/i386/i386.c:1366 #, 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:1366 +#: config/i386/i386.c:1378 #, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "valor erróneo (%s) para el interruptor -mtls-dialect=" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "-malign-double no tiene sentido en el modo 64bit" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 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:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 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:1435 +#: config/i386/i386.c:1447 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:1442 +#: config/i386/i386.c:1454 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "valor erróneo (%s) para el interruptor -mfpmath=" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 msgid "fastcall and stdcall attributes are not compatible" msgstr "los atributos fastcall y stdcall no son compatibles" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 msgid "fastcall and regparm attributes are not compatible" msgstr "los atributos fastcall y regparm no son compatibles" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "el atributo `%s' requiere una constante entera como argumento" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, 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:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "el argumento de vector SSE sin SSE activado cambia la ABI" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "el argumento de vector MMX sin MMX activado cambia la ABI" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "el vector de devolución SSE sin SSE activado cambia la ABI" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "UNSPEC inválido como operando" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "los registros extendidos no tiene mitades superiores" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "tamaño de operando sin soporte para el registro extendido" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 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:7457 +#: config/i386/i386.c:7474 #, c-format msgid "invalid operand code `%c'" msgstr "código de operando `%c' inválido" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 msgid "invalid constraints for operand" msgstr "restricciones inválidas para el operando" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 msgid "unknown insn mode" msgstr "modo insn desconocido" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "el selector debe ser una constante entera en el rango 0..%i" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 msgid "shift must be an immediate" msgstr "el desplazamiento debe ser un inmediato" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, c-format msgid "`%s' incompatible attribute ignored" msgstr "se ignora el atributo incompatible `%s'" @@ -9440,43 +9437,43 @@ msgstr "%J'%D' se redeclara sin el atributo dllimport despu msgid "%J'%D' causes a section type conflict" msgstr "%J'%D' causa un conflicto de tipo de sección" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "Usar la interfaz Cygwin" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "Usar la interfaz Mingw32" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "Crear una aplicación con interfaz gráfica de usuario (GUI)" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "No establecer las definiciones de Windows" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "Establecer las definiciones de Windows" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "Crear una aplicación de consola" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "Generar código para una DLL" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "Ignorar dllimport para funciones" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "Usar soporte de hilos específico de Mingw" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, 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)" @@ -9670,7 +9667,7 @@ msgstr "No usar referencias directas contra %gs cuando se accesen datos tls" #. 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "Código de calendarizador para el CPU dado" @@ -9788,7 +9785,7 @@ msgstr "se definieron arquitecturas en conflicto - usando las series K" 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:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "no se da soporte a la expresión del límite de la pila" @@ -9912,8 +9909,8 @@ msgstr "Presentar tipos como en el gcc v1.3 de Intel" 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:333 config/sparc/freebsd.h:80 config/sparc/linux.h:91 -#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "Usar long doubles de 64 bit" @@ -9946,41 +9943,41 @@ msgstr "%Jel msgid "%Jaddress area attribute cannot be specified for functions" msgstr "%Jno se puede especificar un atributo de área de direcciones para funciones" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "ia64_print_operand: código desconocido" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 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:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "%s-%s es un rango vacío" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 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:4726 +#: config/ia64/ia64.c:4729 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:4732 +#: config/ia64/ia64.c:4735 msgid "cannot optimize square root for both latency and throughput" msgstr "no se puede optimizar la raíz cuadrada para latencia y salida al mismo tiempo" -#: config/ia64/ia64.c:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "no se ha implementado aún: raíz cuadrada inline optimizada para latencia" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "valor erróneo (%s) para el interruptor -mtls-size=" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, c-format msgid "bad value (%s) for -tune= switch" msgstr "valor erróneo (%s) para el interruptor -tune=" @@ -10116,7 +10113,7 @@ msgstr "gp_offset (%ld) o end_offset (%ld) es menor a cero." msgid "argument `%d' is not a constant" msgstr "el argumento `%d' no es una constante" -#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "PRINT_OPERAND_ADDRESS, puntero nulo" @@ -10126,7 +10123,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "PRINT_OPERAND: Puntuación desconocida '%c'" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "PRINT_OPERAND puntero nulo" @@ -10135,7 +10132,7 @@ msgstr "PRINT_OPERAND puntero nulo" msgid "invalid %%P operand" msgstr "operando %%P inválido" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "valor %%p inválido" @@ -10196,89 +10193,89 @@ msgstr "valor err msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 msgid "typename type `%#T' declared `friend'" msgstr "el tipo de nombre de tipo `%#T' se declaró `friend'" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 msgid "template parameter type `%T' declared `friend'" msgstr "el tipo de parámetro de plantilla `%T' se declaró `friend'" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 msgid "`%#T' is not a template" msgstr "`%#T' no es una plantilla" -#: cp/friend.c:277 +#: cp/friend.c:281 msgid "`%D' is already a friend of `%T'" msgstr "`%D' ya es un friend de `%T'" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "`%T' ya es un friend de `%T'" -#: cp/friend.c:409 +#: 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:465 +#: cp/friend.c:469 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:468 +#: cp/friend.c:472 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" @@ -15123,7 +15125,7 @@ msgstr "`%T' falla en ser un tipo agregado" msgid "type `%T' is of non-aggregate type" msgstr "el tipo `%T' es de un tipo no agregado" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "el tipo calificado `%T' no coincide con el nombre del destructor `~%T'" @@ -15159,72 +15161,72 @@ msgstr "el tama msgid "zero size array reserves no space" msgstr "la matriz de tamaño cero no reserva espacio" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "new no se puede aplicar a un tipo de referencia" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "new no se puede aplicar a un tipo de función" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "llamado a constructor Java, mientras `jclass' está indefinido" -#: cp/init.c:1876 +#: cp/init.c:1877 msgid "can't find class$" msgstr "no se puede encontrar class$" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "tipo `void' inválido para new" -#: cp/init.c:2013 +#: cp/init.c:2014 msgid "uninitialized const in `new' of `%#T'" msgstr "const sin inicializar en `new' de `%#T'" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "llamado a constructor Java con `%s' sin definir" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +#, fuzzy +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "no hay un `operator %s' para `%T'" + +#: cp/init.c:2083 msgid "request for member `%D' is ambiguous" msgstr "la petición para el miembro `%D' es ambigua" -#: cp/init.c:2193 +#: cp/init.c:2203 msgid "ISO C++ forbids initialization in array new" msgstr "ISO C++ prohíbe la inicialización en la matriz new" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "el inicializador termina prematuramente" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "no se pueden inicializar matrices multidimensionales con el inicializador" -#: cp/init.c:2885 +#: cp/init.c:2895 msgid "possible problem detected in invocation of delete operator:" msgstr "se detectó un posible problema en la invocación del operador delete:" -#: cp/init.c:2888 -msgid "neither the destructor nor the class-specific " -msgstr "ni el operador ni el operador delete " +#: cp/init.c:2898 +msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined." +msgstr "no se llamará ni al destructor ni al operador delete específico de la clase, aún si se declaran cuando se defina la clase." -#: cp/init.c:2889 -msgid "operator delete will be called, even if they are " -msgstr "específico de la clase serán llamados, aún si se " - -#: cp/init.c:2890 -msgid "declared when the class is defined." -msgstr "declaran cuando se defina la clase." - -#: cp/init.c:2909 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "tamaño de matriz desconocida en delete" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "el tipo de vector delete no es del tipo puntero ni matriz" @@ -15313,11 +15315,11 @@ msgstr "el miembro const `%#D' que no es static, no puede usar el operador de as 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" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 msgid "`%#D' used prior to declaration" msgstr "se usa `%#D' previo a la declaración" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 msgid "redeclaration of `wchar_t' as `%T'" msgstr "redeclaración de `wchar_t' como `%T'" @@ -15327,232 +15329,232 @@ msgstr "redeclaraci #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 msgid "invalid redeclaration of `%D'" msgstr "redeclaración inválida de `%D'" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "como `%D'" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 msgid "type mismatch with previous external decl of `%#D'" msgstr "no coinciden los tipos con la declaración externa previa de `%#D'" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 msgid "previous external decl of `%#D'" msgstr "declaración externa previa de `%#D'" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 msgid "`%D' was previously implicitly declared to return `int'" msgstr "`%D' fue declarado previa e implícitamente para devolver `int'" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 msgid "extern declaration of `%#D' doesn't match" msgstr "la declaración externa de `%#D' no coincide" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 msgid "global declaration `%#D'" msgstr "con la declaración global `%#D'" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 msgid "declaration of '%#D' shadows a parameter" msgstr "la declaración de '%#D' oscurece un parámetro" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 msgid "declaration of '%D' shadows a member of 'this'" msgstr "la declaración de '%D' oscurece a un miembro de 'this'" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 msgid "declaration of '%D' shadows a previous local" msgstr "la declaración de '%D' oscurece a una declaración local previa" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 msgid "declaration of '%D' shadows a global declaration" msgstr "la declaración de '%D' oscurece a una declaración global" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "la búsqueda de nombre de `%D' cambió" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr " coincide con este `%D' bajo las reglas de ISO estándard" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr " coincide con este `%D' bajo las reglas antiguas" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 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/name-lookup.c:1176 +#: cp/name-lookup.c:1187 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/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr " usando la asignación obsoleta en `%D'" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "%s %s(%E) %p %d\n" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, c-format msgid "%s %s %p %d\n" msgstr "%s %s %p %d\n" -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "XXX is_class_level != (current_scope == class_scope)\n" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 msgid "`%#D' hides constructor for `%#T'" msgstr "`%#D' esconde el destructor para `%#T'" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "`%#D' causa conflicto con la declaración previa en uso `%#D'" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 msgid "previous non-function declaration `%#D'" msgstr "la declaración previa `%#D' que no es función" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 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:2101 +#: cp/name-lookup.c:2112 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:2107 +#: cp/name-lookup.c:2118 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "`%T' no es un nombre de espacio" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 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:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "`%D' ya se declaró en este ámbito" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 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:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "`%#D' redeclarado como %C" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "`%D' tiene el mismo nombre que la clase en la cual se declaró" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 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:2898 +#: cp/name-lookup.c:2909 msgid "using-declaration cannot name destructor" msgstr "uan declaración de uso no puede nombrar al destructor" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 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:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "`%D' debería ser declarado dentro de `%D'" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 msgid "unknown namespace `%D'" msgstr "espacio de nombres `%D' desconocido" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 msgid "namespace `%T' undeclared" msgstr "espacio de nombres `%T' sin declarar" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "el uso de strong solamente tiene significado en el ámbito de espacio de nombres" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 msgid "`%D' attribute directive ignored" msgstr "se ignora la directiva de atributo `%D'" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 msgid "use of `%D' is ambiguous" msgstr "el uso de `%D' es ambiguo" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr " declarado inicialmente como `%#D' aquí" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr " también declarado como `%#D' aquí" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "`%D' denota un tipo ambiguo" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 msgid "%J first type here" msgstr "%J primer tipo aquí" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 msgid "%J other type here" msgstr "%J otro tipo aquí" #. This happens for A::B where B is a template, and there are no #. template arguments. -#: cp/name-lookup.c:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 msgid "invalid use of `%D'" msgstr "uso inválido de `%D'" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 msgid "`%D::%D' is not a template" msgstr "`%D::%D' no es una plantilla" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "`%D' no declarado en el espacio de nombres `%D'" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 msgid "`%D' is not a function," msgstr "`%D' no es una función," -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 msgid " conflict with `%D'" msgstr " tiene conflicto con `%D'" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "XXX entrando a pop_everything ()\n" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "XXX saliendo de pop_everything ()\n" @@ -15636,171 +15638,182 @@ msgstr "la variable local `%D' no puede aparecer en este msgid "typedef-name `%D' used as destructor declarator" msgstr "se usa el nombre de typedef `%D' como un declarador de destructor" -#: cp/parser.c:3635 +#: cp/parser.c:3638 msgid "ISO C++ forbids compound-literals" msgstr "ISO C++ prohíbe literales compuestos" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "se prohíbe el límite de matriz después del id de tipo entre paréntesis" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "intente eliminando los paréntesis alrededor del id de tipo" -#: cp/parser.c:4619 +#: cp/parser.c:4624 msgid "expression in new-declarator must have integral or enumeration type" msgstr "la expresión en el declarador new debe tener un tipo integral o de enumeración" -#: cp/parser.c:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "uso de la conversión de estilo antiguo" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, 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:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "ISO C++ prohíbe gotos calculados" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "`;' extra" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "se prohibe mezclar declaraciones y definiciones de funciones" -#: cp/parser.c:6640 +#: cp/parser.c:6645 msgid "duplicate `friend'" msgstr "`friend' duplicado" -#: cp/parser.c:6789 +#: cp/parser.c:6794 msgid "class definition may not be declared a friend" msgstr "la definición de clase no se puede declarar como friend" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "solamente los constructores toman inicializadores base" -#: cp/parser.c:7155 +#: cp/parser.c:7160 msgid "anachronistic old-style base class initializer" msgstr "inicializador de clase base de estilo antiguo anacrónico" +#: cp/parser.c:7201 +#, fuzzy +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "no se permite la palabra clave `typename' en este contexto (la clase base implícitamente es un tipo)" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 msgid "keyword `export' not implemented, and will be ignored" msgstr "la palabra clave `export' no está implementada, y será ignorada" #. Otherwise, emit an error about the invalid digraph, but continue #. parsing because we got our argument list. -#: cp/parser.c:7908 +#: cp/parser.c:7923 msgid "`<::' cannot begin a template-argument list" msgstr "`<::' no puede empezar una lista de argumentos de plantilla" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "`<:' es una forma alternativa para escribir `['. Inserte espacios entre `<' y `::'" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "(si utiliza `-fpermissive' G++ aceptará su código)" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 msgid "non-template `%D' used as template" msgstr "se usa `%D' que no es plantilla como plantilla" -#: cp/parser.c:8089 -msgid "(use `%T::template %D' to indicate that it is a template)" +#: cp/parser.c:8107 +#, fuzzy +msgid "use `%T::template %D' to indicate that it is a template" msgstr "(utilice `%T::template %D' para indicar que es una plantilla)" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "usando `typename' fuera de la plantilla" -#: cp/parser.c:9148 +#: cp/parser.c:9180 msgid "expected type-name" msgstr "se esperaba un nombre de tipo" -#: cp/parser.c:9207 +#: cp/parser.c:9239 msgid "type attributes are honored only at type definition" msgstr "las definiciones de atributos solamente se honran en las definiciones de tipo" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 msgid "a template-id may not appear in a using-declaration" msgstr "un id de plantilla no puede aparecer en una declaración de uso" -#: cp/parser.c:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "no se permite una especificación de asm en una definición de función" -#: cp/parser.c:9919 +#: cp/parser.c:9951 msgid "attributes are not allowed on a function-definition" msgstr "no se permiten atributos en una definición de función" -#: cp/parser.c:10052 +#: cp/parser.c:10084 msgid "attributes after parenthesized initializer ignored" msgstr "se ignoran los atributos después del inicializador entre paréntesis" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +#, fuzzy +msgid "`%T::%D' is not a type" +msgstr "`%D::%D' no es una plantilla" + +#: cp/parser.c:11288 msgid "file ends in default argument" msgstr "el fichero termina en el argumento por defecto" -#: cp/parser.c:11310 +#: cp/parser.c:11344 msgid "deprecated use of default argument for parameter of non-function" msgstr "uso obsoleto del argumento por defecto para el parámetro de una no función" -#: cp/parser.c:11313 +#: cp/parser.c:11347 msgid "default arguments are only permitted for function parameters" msgstr "los argumentos por defecto sólo se permiten para parámetros de función" -#: cp/parser.c:12043 +#: cp/parser.c:12078 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/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "se ignora la calificación extra" -#: cp/parser.c:12067 +#: cp/parser.c:12102 msgid "an explicit specialization must be preceded by 'template <>'" msgstr "una especialización explícita debe ser precedida por 'template <>'" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "punto y coma extra" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "se debe usar una llave clase cuando se declara un friend" -#: cp/parser.c:12399 +#: cp/parser.c:12434 msgid "friend declaration does not name a class or function" msgstr "la declaración friend no nombra una clase o función" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "especificador puro en la definición de función" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" msgstr "no se permite la palabra clave `typename' fuera de las plantillas" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" msgstr "no se permite la palabra clave `typename' en este contexto (la clase base implícitamente es un tipo)" -#: cp/parser.c:13665 +#: cp/parser.c:13700 msgid "reference to `%D' is ambiguous" msgstr "la referencia a `%D' es ambigua" -#: cp/parser.c:13839 +#: cp/parser.c:13874 msgid "too few template-parameter-lists" msgstr "muy pocas listas de parámetros de plantilla" @@ -15808,44 +15821,44 @@ msgstr "muy pocas listas de par #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 msgid "too many template-parameter-lists" msgstr "demasiadas listas de parámetros de plantilla" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 msgid "invalid function declaration" msgstr "declaración inválida de función" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 msgid "named return values are no longer supported" msgstr "los valores de devolución nombrados ya no tiene soporte" -#: cp/parser.c:14522 +#: cp/parser.c:14561 msgid "`>>' should be `> >' within a nested template argument list" msgstr "`>>' debe ser `> >' dentro de una lista de argumentos plantilla anidados" #. If this is not a nested template argument list, the '>>' is #. a typo for '>'. Emit an error message and continue. -#: cp/parser.c:14530 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "`>>' sobrante, use `>' para terminar una lista de argumentos de plantilla" -#: cp/parser.c:14535 +#: cp/parser.c:14574 msgid "missing `>' to terminate the template argument list" msgstr "falta un `>' para terminar la lista de argumentos de plantilla" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "se usó la marca `%s' al nombrar a`%#T'" -#: cp/parser.c:15043 +#: cp/parser.c:15082 msgid "%D redeclared with different access" msgstr "`%D' redeclarado con acceso diferente" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "`template' (para eliminar ambigüedades) sólo se permite dentro de plantillas" @@ -16188,150 +16201,150 @@ msgstr "instanciaci msgid "%s %+#T" msgstr "%s %+#T" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "instanciación de `%D' como tipo `%T'" -#: cp/pt.c:6469 +#: cp/pt.c:6470 msgid "invalid parameter type `%T'" msgstr "tipo de parámetro `%T' inválido" -#: cp/pt.c:6471 +#: cp/pt.c:6472 msgid "in declaration `%D'" msgstr "en la declaración `%D'" -#: cp/pt.c:6545 +#: cp/pt.c:6546 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:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "creando la matriz con tamaño cero" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "creando la matriz con tamaño cero (`%E')" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "formando la referencia a void" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "formando %s para referenciar al tipo `%T'" -#: cp/pt.c:6976 +#: cp/pt.c:6977 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:6982 +#: cp/pt.c:6983 msgid "creating pointer to member reference type `%T'" msgstr "creando un puntero al miembro de referencia de tipo `%T'" -#: cp/pt.c:7068 +#: cp/pt.c:7069 msgid "creating array of `%T'" msgstr "creando la matriz de `%T'" -#: cp/pt.c:7074 +#: cp/pt.c:7075 msgid "creating array of `%T', which is an abstract class type" msgstr "creando la matriz de `%T', la cual es un tipo de clase abstracta" -#: cp/pt.c:7118 +#: cp/pt.c:7119 msgid "`%T' is not a class, struct, or union type" msgstr "`%T' no es de tipo clase, struct o union" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "uso de `%s' en la plantilla" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "el nombre dependiente '%E' se decodifica como un no tipo, la instanciación genera un tipo" -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr " escriba `typename %E' si quería un tipo" -#: cp/pt.c:8609 +#: cp/pt.c:8613 msgid "`%T' uses anonymous type" msgstr "`%T' usa un tipo anónimo" -#: cp/pt.c:8611 +#: cp/pt.c:8615 msgid "`%T' uses local type `%T'" msgstr "`%T' usa el tipo local `%T'" -#: cp/pt.c:8619 +#: cp/pt.c:8623 msgid "`%T' is a variably modified type" msgstr "`%T' es un tipo modificado variablemente" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, c-format msgid "integral expression `%E' is not constant" msgstr "la expresión integral `%E' no es una constante" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr " tratando de instanciar `%D'" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "unificación de tipo incompleto" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, 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:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "instanciación explícita de `%#D' que no es plantilla" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "no se encuentra una plantilla coincidente para `%D'" -#: cp/pt.c:10551 +#: cp/pt.c:10568 msgid "explicit instantiation of `%#D'" msgstr "instanciación explícita de `%#D'" -#: cp/pt.c:10588 +#: cp/pt.c:10605 msgid "duplicate explicit instantiation of `%#D'" msgstr "instanciación explícita duplicada de `%#D'" -#: cp/pt.c:10610 +#: cp/pt.c:10627 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:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" msgstr "clase de almacenamiento `%D' aplicada a la instanciación de una plantilla" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "instanciación explícita del tipo `%T' del tipo no plantilla" -#: cp/pt.c:10676 +#: cp/pt.c:10693 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:10684 +#: cp/pt.c:10701 #, 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:10728 +#: cp/pt.c:10745 msgid "duplicate explicit instantiation of `%#T'" msgstr "instanciación explícita duplicada de `%#T'" -#: cp/pt.c:11109 +#: cp/pt.c:11126 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:11543 +#: cp/pt.c:11562 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" @@ -16498,7 +16511,7 @@ msgstr "m msgid "incomplete type `%T' used in nested name specifier" msgstr "se utilizó el tipo incompleto `%T' en un especificador de nombre anidado" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 msgid "`%D' is not a member of `%T'" msgstr "`%D' no es un miembro de `%T'" @@ -16541,239 +16554,239 @@ msgstr " `%#D' declarado aqu msgid "type of `%E' is unknown" msgstr "el tipo de '%E' es desconocido" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "no es valor-l en %s" -#: cp/tree.c:539 +#: cp/tree.c:532 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "los calificadores `%V' no se pueden aplicar a `%T'" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, 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:1857 +#: cp/tree.c:1850 #, 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:1863 +#: cp/tree.c:1856 #, 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:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "la init_priority solicitada no es una constante entera" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, 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:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "la init_priority solicitada está fuera de rango" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "la init_priority solicitada está reservada para uso interno" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, c-format msgid "`%s' attribute is not supported on this platform" msgstr "el atributo `%s' no tiene soporte en esta plataforma" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "revisión lang_*: falló en %s, en %s:%d" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 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 +#: cp/typeck.c:512 #, 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:563 +#: cp/typeck.c:562 msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast" msgstr "%s entre diferentes tipos de punteros a miembro `%T' y `%T' carece de una conversión" -#: cp/typeck.c:1235 +#: cp/typeck.c:1234 #, 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:1268 +#: cp/typeck.c:1267 #, c-format msgid "invalid application of `%s' to a bit-field" msgstr "aplicación inválida de `%s' a un campo de bits" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, c-format msgid "ISO C++ forbids applying `%s' to an expression of function type" msgstr "ISO C++ prohíbe la aplicación de `%s' a una expresión de tipo de función" -#: cp/typeck.c:1342 +#: cp/typeck.c:1308 msgid "invalid use of non-static member function" msgstr "uso inválido de una función miembro que no es static" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "conversión obsoleta de una constante de cadena a `%T'" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 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:1610 +#: cp/typeck.c:1633 #, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "uso inválido del dato miembro no static '%E'" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 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:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "(tal vez se utilizó incorrectamente la macro `offsetof')" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "el tipo que se destruye es `%T', pero el destructor se refiere a `%T'" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 msgid "`%D::%D' is not a member of `%T'" msgstr "`%D::%D' no es un miembro de `%T'" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 msgid "`%T' is not a base of `%T'" msgstr "`%T' no es una base de `%T'" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 msgid "'%D' has no member named '%E'" msgstr "'%D' no tiene un miembro llamado '%E'" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 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:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "`%T' no es de tipo puntero-a-objeto" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "uso inválido de `%s' en puntero a miembro" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "argumento de tipo inválido" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 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:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "se declaró el subíndice de la matriz como `register'" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, c-format msgid "object missing in use of `%E'" msgstr "falta un objeto en el uso de `%E'" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "ISO C++ prohíbe la llamada `::main' dentro del mismo programa" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, 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:2446 +#: cp/typeck.c:2469 #, c-format msgid "`%E' cannot be used as a function" msgstr "no se puede usar `%E' como una función" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 msgid "too many arguments to %s `%+#D'" msgstr "demasiados argumentos para %s `%+#D'" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "en este punto en el fichero" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "el parámetro %P de `%D' tiene el tipo incompleto `%T'" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 msgid "parameter %P has incomplete type `%T'" msgstr "el parámetro %P tiene el tipo incompleto `%T'" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 msgid "too few arguments to %s `%+#D'" msgstr "muy pocos argumentos para %s `%+#D'" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 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:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "división por cero en `%E / 0'" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "división por cero en `%E / 0.'" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, c-format msgid "division by zero in `%E %% 0'" msgstr "división por cero en `%E %% 0'" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "división por cero en `%E %% 0.'" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "la cuenta de rotación %s es negativa" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "la cuenta de rotación %s >= anchura del tipo" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "ISO C++ prohíbe la comparación entre puntero y entero" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 msgid "comparison between types `%#T' and `%#T'" msgstr "comparación entre los tipos `%#T' y `%#T'" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "comparación entre expresiones enteras signed y unsigned" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "operadores inválidos de tipos `%T' y `%T' para el binario `%O'" @@ -16781,284 +16794,284 @@ msgstr "operadores inv #. 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:3418 +#: cp/typeck.c:3441 msgid "NULL used in arithmetic" msgstr "se usó NULL en la aritmética" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 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:3483 +#: cp/typeck.c:3506 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:3485 +#: cp/typeck.c:3508 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:3497 +#: cp/typeck.c:3520 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:3553 +#: cp/typeck.c:3582 #, 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:3559 +#: cp/typeck.c:3588 #, 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:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "tomando la dirección del temporal" # Esta cadena solamente funciona bien en inglés. cfuga -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "ISO C++ prohíbe %sing un enum" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 msgid "cannot %s a pointer to incomplete type `%T'" msgstr "no se puede %s un puntero a un tipo incompleto `%T'" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 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:3858 +#: cp/typeck.c:3887 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:3892 +#: cp/typeck.c:3921 msgid "invalid use of `--' on bool variable `%D'" msgstr "uso inválido de `--' en la variable booleana `%D'" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 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:3994 +#: cp/typeck.c:4027 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 o entre paréntesis para formar un puntero a la función miembro. Como `&%T::%D'" -#: cp/typeck.c:3999 +#: cp/typeck.c:4032 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:4027 +#: cp/typeck.c:4060 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:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "`&' unario" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 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:4190 +#: cp/typeck.c:4227 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:4203 +#: cp/typeck.c:4240 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:4211 +#: cp/typeck.c:4248 msgid "cannot create pointer to reference member `%D'" msgstr "no se puede crear un puntero al miembro referencia `%D'" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 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:4292 +#: cp/typeck.c:4330 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:4360 +#: cp/typeck.c:4398 #, c-format msgid "%s expression list treated as compound expression" msgstr "se trata la lista de expresiones %s como una expresión compuesta" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "%s del tipo `%T' al tipo `%T' proscribe la constancia" -#: cp/typeck.c:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "static_cast inválido del tipo `%T' al tipo `%T'" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 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:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "reinterpret_cast de `%T' a `%T' pierde precisión" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 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:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "reinterpret_cast inválido del tipo `%T' al tipo `%T'" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 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:4765 +#: cp/typeck.c:4813 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:4782 +#: cp/typeck.c:4830 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "const_cast inválido del tipo `%T' al tipo `%T'" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 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:4835 +#: cp/typeck.c:4883 msgid "invalid cast to function type `%T'" msgstr "conversión inválida al tipo de función `%T'" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 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:4937 +#: cp/typeck.c:4985 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:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr " en la evaluación de `%Q(%#T, %#T)'" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 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:5219 +#: cp/typeck.c:5267 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "tipos incompatible en la asignación de `%T' a `%T'" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "ISO C++ prohíbe la asignación de matrices" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr " en la conversión del puntero a función miembro" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 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:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 msgid "pointer to member cast via virtual base `%T'" msgstr "puntero a la conversión miembro a través de la base virtual `%T'" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 msgid "pointer to member conversion via virtual base `%T'" msgstr "puntero a la conversión miembro a través de la base virtual `%T'" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 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:5588 +#: cp/typeck.c:5636 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:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "%s al tipo `%T' que no es puntero desde NULL" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 msgid "passing `%T' for %s %P of `%D'" msgstr "pasando `%T' para %s %P de `%D'" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "%s a `%T' desde `%T'" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 msgid "passing negative value `%E' for %s %P of `%D'" msgstr "pasando el valor negativo `%E' para %s %P de `%D'" -#: cp/typeck.c:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "%s de valor negatio `%E' a `%T'" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 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:5706 +#: cp/typeck.c:5754 msgid "cannot convert `%T' to `%T' in %s" msgstr "no se puede convertir `%T' a `%T' en %s" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 msgid "in passing argument %P of `%+D'" msgstr "en el paso del argumento %P de `%+D'" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "devolviendo la referencia al temporal" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "se devolvió una referencia a un valor que no es l-valor" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 msgid "reference to local variable `%D' returned" msgstr "se devolvió una referencia a la variable local `%D'" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 msgid "address of local variable `%D' returned" msgstr "se devolvió la dirección de la variable local `%D'" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "devolviendo un valor de un constructor" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 msgid "return-statement with no value, in function returning '%T'" msgstr "declaración return sin valores, en una función que devuelve '%T'" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 msgid "return-statement with a value, in function returning 'void'" msgstr "declaración return con un valor, en una función que devuelve 'void'" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 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)" @@ -18700,12 +18713,12 @@ msgstr "error interno en generate_bytecode_insn - no se ha implementado el msgid "field initializer type mismatch" msgstr "no coincide el tipo del inicializador del campo" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, c-format msgid "can't create directory %s: %m" msgstr "no se puede crear el directorio %s: %m" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, c-format msgid "can't create %s: %m" msgstr "no se puede crear %s: %m" @@ -18789,228 +18802,291 @@ msgstr "no se puede deshacer %s" msgid "internal error - invalid Utf8 name" msgstr "error interno - nombre Utf8 inválido" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2610 msgid "Missing term" msgstr "Falta el término" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "se esperaba ';'" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "Falta el nombre" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "se esperaba '*'" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "se esperaba una declaración de clase o interfaz" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:835 msgid "Missing class name" msgstr "Falta el nombre de la clase" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "Se esperaba '{'" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "No se encuentra el nombre de la super clase" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "No se encuentra el nombre de la interfaz" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "Falta el inicializador de la variable" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:981 msgid "Invalid declaration" msgstr "Declaración inválida" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "Se esperaba ']'" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "']' desbalanceado" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/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" -#: ../../gcc/java/parse.y:1029 ../../gcc/java/parse.y:1034 -#: ../../gcc/java/parse.y:1039 ../../gcc/java/parse.y:2026 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "Se esperaba un identificador" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/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" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "Se esperaba ')'" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "Falta el término de parámetro formal" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "Falta el identificador" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "Falta el término de tipo de clase" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1288 msgid "Invalid interface type" msgstr "Tipo de interfaz inválido" -#: ../../gcc/java/parse.y:1475 ../../gcc/java/parse.y:1644 -#: ../../gcc/java/parse.y:1646 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "Se esperaba ':'" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1507 msgid "Invalid expression statement" msgstr "Declaración de expresión inválida" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "Se esperaba '('" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "Falta término o ')'" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "Expresión constante faltante o inválida" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "Faltan término y ')' esperados" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "Expresión de control inválida" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "Expresión de actualización inválida" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "Declaración de inicio inválida" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "Faltan término o ')' esperados" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "Se esperaba 'class' o 'this'" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "Se esperaba 'class'" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "Se esperaba ')' o término" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "Se esperaba '['" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "Se esperaba un campo" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "Faltan término y ']' esperados" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "Se esperaba ']', expresión de tipo inválida" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "Expresión de tipo inválida" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "Tipo de referencia inválido" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/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" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "Solamente los constructores pueden invocar constructores" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr ": `%s' es una característica de JDK1.1(MR)" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" @@ -19019,32 +19095,32 @@ msgstr "" "%s.\n" "%s" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "archivo .zip malformado en CLASSPATH: %s" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 "No se puede encontrar el paquete por defecto `%s'. Revise la variable de ambiente CLASSPATH y el acceso a los archivos" -#: ../../gcc/java/parse.y:12193 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "falta el campo static `%s'" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "'%s' no es un campo static" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "No hay case para %s" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "operador %s sin registrar" @@ -19101,8 +19177,8 @@ msgstr "el protocolo `%s' tiene una dependencia circular" msgid "cannot find protocol declaration for `%s'" msgstr "no se puede encontrar la declaración de protocolo para `%s'" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, c-format msgid "cannot find interface declaration for `%s'" msgstr "no se puede encontrar la declaración de interfaz para `%s'" @@ -19127,8 +19203,8 @@ msgstr "creando un selector para el m msgid "`%s' is not an Objective-C class name or alias" msgstr "`%s' no es un nombre de clase o alias de Objective-C 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "las declaraciones Objective-C sólo pueden aparacer en el ámbito global" @@ -19142,7 +19218,7 @@ msgstr "no se puede encontrar la clase `%s'" msgid "class `%s' already exists" msgstr "ya existe la clase `%s'" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "`%s' redeclarado como un tipo diferente de símbolo" @@ -19301,1447 +19377,1771 @@ msgstr "el tipo `%s' tiene un destructor definido por el usuario" msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "los constructores y destructores de C++ no se invocan para campos Objective-C" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "la variable de instancia `%s' es declarada privada" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, c-format msgid "instance variable `%s' is %s; this will be a hard error in the future" msgstr "la variable de instancia `%s' es %s; esto será un error severo en el futuro" -#: objc/objc-act.c:6546 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "la variable de instancia `%s' es declarada %s" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "acceso estático al objeto de tipo `id'" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "implementación incompleta de la clase `%s'" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "implementación incompleta de la categoría `%s'" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, 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:6717 +#: objc/objc-act.c:6718 #, 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:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "falta un `@end' en el contexto de una implementación" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "reimplementación de la clase `%s'" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "el nombre de la super clase `%s' causa conflicto" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "declaración previa de `%s'" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "declaración de interfaz duplicada para la clase `%s'" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "declaración duplicada para el protocolo `%s'" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 msgid "%J%s `%c%s'" msgstr "%J%s `%c%s'" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, 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:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "[super ...] debe aparecer en el contexto de un método" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "`@end' debe aparecer en el contexto de una implementación" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "la definición de método no está en el contexto de la clase" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 msgid "Display this information" msgstr "Muestra esta información" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "--param =\tEstablece el parámetro al valor. Vea a continuación para una lista completa de parámetros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "-A=\tRelaciona la uesta a la . Al colocar '-' antes de la desactiva la uesta a la " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 msgid "Do not discard comments" msgstr "No descartar comentarios" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "No descartar comentarios en expansiones de macro" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "-D[=]\tDefine una con como su valor. Si sólo se da la , se toma como 1" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "-G\tColoca los datos globales y estáticos más pequeños que bytes en una sección especial (en algunos objetivos)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 msgid "Print the name of header files as they are used" msgstr "Mostrar los nombres de los ficheros de encabezado mientras se utilizan" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd to the end of the main include path. -I- gives more include path control; see info documentation" -msgstr "-I \tAgregar el ectorio al final de la ruta de inclusión principal. -I- da más control de ruta de inclusión; vea la documentación en formato info" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:60 -msgid "Generate make dependencies" -msgstr "Generar dependencias de make" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 msgid "Generate make dependencies and compile" msgstr "Generar dependencias de make y compilar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "-MF \tEscribir la salida de dependencias al fichero dado" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "Tratar los ficheros de encabezado faltantes como ficheros generados" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:72 -msgid "Like -M but ignore system header files" -msgstr "Como -M pero ignora los ficheros de encabezado del sistema" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:75 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "Como -MD pero ignora los ficheros de encabezado del sistema" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -msgid "Generate phony targets for all headers" -msgstr "Generar objetivos de prueba para todos los encabezados" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "-MQ \tAgregar un objetivo tipo-MAKE" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "-MT \tAgregar un objetivo no citado" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 msgid "-O\tSet optimization level to " msgstr "-O\tEstablecer el nivel de optimización a " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 msgid "Optimize for space rather than speed" msgstr "Optimizar para espacio en lugar de velocidad" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 msgid "Do not generate #line directives" msgstr "No generar directivas #line" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "-U\tIndefinir la " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "Esta opción es obsoleta; utilice en su lugar -Wextra" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "Avisar sobre la devolución de estructuras, unions o matrices" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:108 -msgid "Enable most warning messages" -msgstr "Activar casi todos los mensajes de aviso" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:111 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "Avisar por funciones de conversión a tipos incompatibles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "Avisar sobre conversión de punteros que incremente la alineación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "Avisar sobre conversiones que descartan calificadores" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 msgid "Warn about subscripts whose type is \"char\"" msgstr "Avisar sobre subíndices cuyo tipo es \"char\"" -#: /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 "Avisar sobre la posibilidad de bloques de comentarios anidados, y comentarios de C++ que abarquen más de una línea física" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:126 -msgid "Synonym for -Wcomment" -msgstr "Sinónimo de -Wcomment" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:129 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "Avisar sobre la posibilidad de conversión de tipos confusas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 msgid "Warn when all constructors and destructors are private" msgstr "Avisar cuando todos los constructores y destructores son privados" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 msgid "Warn when a declaration is found after a statement" msgstr "Avisar cuando se encuentra una declaración después de una declaración" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -msgid "Warn about deprecated compiler features" -msgstr "Avisar sobre características obsoletas del compilador" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" +msgstr "Avisar si se usan clases, métodos o campos obsoletos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "Avisar sobre usos de declaraciones __attribute__((obsoleto))" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "Avisar cuando se desactivó un paso de optimización" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 msgid "Warn about compile-time integer division by zero" msgstr "Avisar sobre la división entera por cero en tiempo de compilación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "Avisar violaciones de reglas de estilo de Effective C++" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "Avisar sobre elementos sobrantes después de #elif y #endif" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "Tratar todos los avisos como errores" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 msgid "Make implicit function declarations an error" msgstr "Hacer que la declaración implícita de funciones sea un error" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "Mostrar avisos extra (posiblemente no deseados)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "Avisar si se encuentran declaraciones vacías obsoletas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 msgid "Warn if testing floating point numbers for equality" msgstr "Avisar si se prueban números de coma flotante para equidad" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "Avisar sobre anomalías de cadena de formato de printf/scanf/strftime/strfmon" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 msgid "Warn if passing too many arguments to a function for its format string" msgstr "Avisar si se pasan demasiados argumentos a una función para su cadena de formato" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 msgid "Warn about format strings that are not literals" msgstr "Avisar sobre el uso de cadenas de formato que no son literales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "Avisar sobre posibles problemas de seguridad con funciones de formato" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 msgid "Warn about strftime formats yielding 2-digit years" msgstr "Avisar sobre formatos de strftime que producen dos dígitos para el año" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +msgid "Enable warnings about inter-procedural problems" +msgstr "Activar los avisos sobre problemas interprocedurales" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 msgid "Warn about implicit function declarations" msgstr "Avisar sobre la declaración implícita de funciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 msgid "Warn when a declaration does not specify a type" msgstr "Avisar cuando una declaración no especifique un tipo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:198 -msgid "Deprecated. This switch has no effect." -msgstr "Obsoleto. Esta opción no tiene efecto." - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:201 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "Avisar sobre variables que se inicialicen ellas mismas." -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "Avisar cuando una función inline no puede ser inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "Avisar sobre usos inválidos de la macro \"offsetof\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "Avisar sobre ficheros PCH que se encuentran pero no se usan" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr "-Wlarger-than-\tAvisar si un objeto es más grande que bytes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "No avisar sobre el uso de \"long long\" cuando se use -pedantic" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 msgid "Warn about suspicious declarations of \"main\"" msgstr "Avisar sobre declaraciones sospechosas de \"main\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 msgid "Warn about possibly missing braces around initializers" msgstr "Avisar sobre posibles llaves faltantes alrededor de los inicializadores" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 msgid "Warn about global functions without previous declarations" msgstr "Avisar sobre funciones globales sin declaraciones previas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 msgid "Warn about functions which might be candidates for format attributes" msgstr "Avisar por funciones que pueden ser candidatas para atributos de formato" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "Avisar sobre funciones que pueden ser candidatas para __attribute((noreturn))" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 msgid "Warn about global functions without prototypes" msgstr "Avisar sobre funciones globales sin prototipos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 msgid "Warn about use of multi-character character constants" msgstr "Avisar sobre el uso de constantes de carácter multicaracteres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 msgid "Warn about \"extern\" declarations not at file scope" msgstr "Avisar sobre declaraciones \"extern\" que no están en el ámbito del fichero" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 msgid "Warn when non-templatized friend functions are declared within a template" msgstr "Avisar cuando las funciones friend sin plantillas se declaran dentro de una plantilla" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 msgid "Warn about non-virtual destructors" msgstr "Avisar sobre destructores no virtuales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 msgid "Warn if a C-style cast is used in a program" msgstr "Avisar si se usa una conversión de estilo C en un programa" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 msgid "Warn if an old-style parameter definition is used" msgstr "Avisar si se usa un parámetro de estilo antiguo en una definición" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "Avisar si los ficheros .class están desactualizados" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "Avisar sobre nombres de funciones virtual sobrecargadas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 msgid "Warn when padding is required to align structure members" msgstr "Avisar cuando se requiere relleno para alinear a los miembros de una estructura" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 msgid "Warn about possibly missing parentheses" msgstr "Avisar sobre posibles paréntesis faltantes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 msgid "Warn when converting the type of pointers to member functions" msgstr "Avisar cuando se convierte el tipo de punteros sobre punteros a funciones miembro" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "Avisar sobre la aritmética de punteros de funciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 msgid "Warn if inherited methods are unimplemented" msgstr "Avisar si los métodos heredados no están implementados" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "Avisar sobre declaraciones múltiples del mismo objeto" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "Avisar si se especifican modificadores cuando no son necesarios" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "Avisar cuando el compilador reordene código" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 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\" (C), o sobre tipos de devolución inconsistentes (C++)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "Avisar si un selector tiene métodos múltiples" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "Avisar sobre posibles violaciones a las reglas de secuencia de punto" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "Avisar cuando una variable local oscurece otra" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 msgid "Warn about signed-unsigned comparisons" msgstr "Avisar sobre comparaciones signed-unsigned" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "Avisar cuando la sobrecarga promueva de unsigned a signed" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 msgid "Warn about code which might break strict aliasing rules" msgstr "Avisar sobre código que pueda romper las reglas estrictas de aliases" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 msgid "Warn about unprototyped function declarations" msgstr "Avisar sobre declaraciones de función sin prototipo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "Avisar acerca de constructores con significados sorprendentes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "Avisar sobre switches enumerados que carezcan de una declaración \"default:\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 msgid "Warn about all enumerated switches missing a specific case" msgstr "Avisar sobre todos los switches enumerados que carezcan de un case específico" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "Avisar cuando el comportamiento de síntesis difiera de Cfront" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "No suprimir los avisos de los encabezados del sistema" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 msgid "Warn about features not present in traditional C" msgstr "Avisar sobre características no presentes en C tradicional" -#: /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 "Avisar si se encuentran trigrafos que puedan afectar el significado del programa" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:333 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 msgid "Warn if an undefined macro is used in an #if directive" msgstr "Avisar si se usa una macro indefinida en una directiva #if" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "Avisar sobre variables automáticas sin inicializar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "Avisar sobre pragmas no reconocidos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "Avisar sobre código que nunca se ejecutará" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "Activar todos los avisos -Wunused-" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "Avisar cuando no se use una función" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "Avisar cuando no se use una etiqueta" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "Avisar sobre macros definidas en el fichero principal que no se usan" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "Avisar cuando no se use un parámetro de una función" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "Avisar cuando no se use un valor de una expresión" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "Avisar cuando no se use una variable" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "Dar a las cadenas el tipo \"matriz de char\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "Un sinónimo de -std=c89. En una versión futura de GCC será sinónimo con -std=99 en lugar del actual" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 msgid "-aux-info \tEmit declaration information into " msgstr "-aux-info \tEmitir la información de declaraciones en el " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 msgid "-d\tEnable dumps from specific passes of the compiler" msgstr "-d\tActiva los volcados de pasos específicos del compilador" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "-dumpbase \tEstablecer el nombre base a usar para los volcados" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "--CLASSPATH\tObsoleto; utilice en su lugar --classpath" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 msgid "Enforce class member access control semantics" msgstr "Cumplir las semánticas de control de acceso de miembros de clase" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "Alinear el inicio de las funciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "Alinear las etiquetas que solamente se alcanzan saltando" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "Alinear todas las etiquetas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "Alinear el inicio de los ciclos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "Cambiar cuando se emitan las instancias de la plantilla" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 msgid "Specify that arguments may alias each other and globals" msgstr "Especificar que los argumentos pueden ser alias de cada otro y de los globales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 msgid "Assume arguments alias neither each other nor globals" msgstr "Asumir que los argumentos no pueden ser alias de globales o de cada otro" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 msgid "Recognize the \"asm\" keyword" msgstr "Reconocer la palabra clave \"asm\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "Generar tablas de desenredo que sean exactas en cada límite de instrucción" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements" +msgstr "No tratar las variables locales y los bloques COMMON como si fueran nombrados en declaraciones SAVE" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "Las barras invertidas en constantes de caracter y hollerith no son especiales (no estilo C)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "Borrar los intrínsecos libU77 con interfaces erróneas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "Desactivar los intrínsecos libU77 con interfaces erróneas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "Activar los intrínsecos libU77 con interfaces erróneas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "Esconder los intrínsecos libU77 con interfaces erróneas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "--bootclasspath=\tReemplazar la ruta del sistema" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 msgid "Generate code to check bounds before indexing arrays" msgstr "Generar código para revisar los límites antes de indizar matrices" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 msgid "Replace add, compare, branch with branch on count register" msgstr "Reemplazar add, compare, branch con branch en la cuenta de registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "Usar la información de análisis de perfil para las probabilidades de ramificación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "Realizar optimización de carga de ramificación objetivo antes del hilo prólogo / epílogo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "Realizar optimización de carga de ramificación objetivo después del hilo prólogo / epílogo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 msgid "Recognize built-in functions" msgstr "Reconocer funciones internas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 msgid "-fcall-saved-\tMark as being preserved across functions" msgstr "-fcall-saved-\tMarcar el como preservado entre funciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr "-fcall-used-\tMarcar el como corrupto para llamadas de función" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 msgid "Save registers around function calls" msgstr "Guardar registros alrededor de llamadas de función" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "Programa escrito estrictamente con mayúsculas y minúsculas mezcladas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "Compilar como si el programa estuviera escrito en minúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +msgid "Preserve case used in program" +msgstr "Preservar todo el deletreo (mayúsculas/minúsculas) usado en el programa" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "Programa escrito en minúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "Programa escrito en mayúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "Compilar como si el programa estuviera escrito en mayúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "Revisar el valor de devolución de new" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "--classpath=\tEstablecer la ruta de clases" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "No poner globales sin inicializar en la sección común" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "Permitir que los argumentos del operador '?' tengan tipos diferentes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 msgid "Reduce the size of object files" msgstr "Reducir el tamaño de los ficheros objeto" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "Hacer que las cadenas literales sean \"const char[]\" en lugar de \"char[]\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "-fconst-string-class=\tUsar la clase para cadenas constantes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 msgid "Perform a register copy-propagation optimization pass" msgstr "Realizar el paso de optimización de copia-propagación de registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "Realizar optimizaciones de saltos cruzados" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "Cuando se esté ejecutando CSE, seguir a los saltos a sus objetivos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "Cuando se esté ejecutando CSE, seguir a los saltos condicionales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 msgid "Place data items into their own section" msgstr "Colocar los elementos de datos en su propia sección" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "Emitir información especial de depuración para COMMON y EQUIVALENCE (desactivado)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 msgid "Inline member functions by default" msgstr "Hacer Inline por defecto a las funciones miembro" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "Intentar rellenar las ranuras de retraso de las instrucciones de ramificación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "Borrar las revisiones de punteros nulos sin uso" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 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]\tIndica que tan seguido se debe emitir la ubicación del código al inicio de los diagnósticos con corte de línea" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +msgid "Allow '$' in symbol names" +msgstr "Permitir '$' en los nombres de símbolos" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 msgid "Permit '$' as an identifier character" msgstr "Permitir '$' como un identificador de carácter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "-fdump-\tVolcar varios internos del compilador a un fichero" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "Realizar la eliminación de DWARF2 duplicados" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "Realizar eliminación de tipos sin uso en la información de depuración" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "Hace que el frente emule aritmética COMPLEX para evitar `bugs'" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "--encoding=\tEscoger la codificación de entrada (por defecto viene del local)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 msgid "Generate code to check exception specifications" msgstr "Generar código para revisar excepciones de especificaciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "Activar el manejo de excepciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "-fexec-charset=\tConvertir todas las constantes de cadenas y carácter al conjunto de caracteres " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "Realizar un número de optimizaciones menores y costosas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +msgid "f2c-compatible code can be generated" +msgstr "Se puede generar generar código compatible con f2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que soporta f2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que soporta f2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "Activar los intrínsecos de FORTRAN que no es 77 que soporta f2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que soporta f2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +msgid "Unsupported; generate libf2c-calling code" +msgstr "Sin soporte; genera código de llamada a libf2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "El programa está escrito en el dialecto típico FORTRAN 66" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +msgid "Program is written in typical Unix-f77 dialect" +msgstr "El programa está escrito en el dialecto típico Unix-f77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "El programa está escrito en un dialecto cercano a Fortran-90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que soporta F90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que soporta F90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "Activar los intrínsecos de FORTRAN que no es 77 que soporta F90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que soporta F90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "Asumir que no se generan NaNs o infinitos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr "-ffixed-\tMarca el como no disponible para el compilador" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr "ffixed-line-length-\tLimita la longitud máxima de línea a " + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +msgid "Unsupported; affects code generation of arrays" +msgstr "Sin soporte; afecta la generación de código de las matrices" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "No guardar floats en registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 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 es local para el ciclo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 msgid "Copy memory address constants into registers before use" msgstr "Copiar las constantes de direcciones de memoria en registros antes de usarlos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "Revisar siempre por archivos de clases no generados por gcj" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 msgid "Copy memory operands into registers before use" msgstr "Copiar los operandos de memoria en registros antes de usarlos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "Generar código para revisar los límites de subíndices y subcadenas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "El programa está escrito en una forma libre cercana a Fortran-90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "No asumir que existen las bibliotecas C estándard y \"main\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "Permitir que las direcciones de las funciones se conservern en registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 msgid "Place each function into its own section" msgstr "Colocar cada función en su propia sección" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 msgid "Perform global common subexpression elimination" msgstr "Realizar la eliminación de subexpresiones comunes globales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 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 comunes globales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "Realizar el movimiento de la carga mejorada durante la eliminación de subexpresiones comunes globales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 msgid "Perform store motion after global common subexpression elimination" msgstr "Realizar el movimiento de guardado después de la eliminación de subexpresiones comunes globales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "Activar los diagnósticos fatales sobre problemas interprocedurales" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que soporta g77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que soporta F90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "Activar los intrínsecos de FORTRAN que no es 77 que soporta F90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que soporta F90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 msgid "Recognize GNU-defined keywords" msgstr "Reconocer las palabras claves definidas por GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "Generar código para el ambiente de tiempo de ejecución GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 msgid "Enable guessing of branch probabilities" msgstr "Activar la predicción de probabilidades de ramificación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "Asumir el ambiente normal de ejecución C" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "Activar el soporte para objetos enormes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "Procesar directivas #ident" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "Realizar la conversión de saltos condicionales a equivalentes sin ramificación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "Realizar la conversión de saltos condicionales a ejecución condicional" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "Exportar funciones aún si pueden ser inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 msgid "Emit implicit instantiations of inline templates" msgstr "Emitir instanciaciones implícitas de plantillas inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 msgid "Emit implicit instantiations of templates" msgstr "Emitir instanciaciones implícitas de plantillas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "Utilizar tablas de desplazamiento para llamadas a métodos virtuales" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr "No generar directivas .size" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" +msgstr "Inicializa las variables locales y matrices a cero" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 msgid "Pay attention to the \"inline\" keyword" msgstr "Poner atención a la palabra clave \"inline\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" -msgstr "Integrar las funciones simples en sus invocadores" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr "-finline-limit=\tLimita el tamaño de las funciones inline a " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "-finput-charset= Establece el conjunto de caracteres por defecto para los ficheros fuente." -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 msgid "Instrument function entry and exit with profiling calls" msgstr "Instrumentar funciones de entrada y salida con llamadas de análisis de perfil" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "Letras de intrínsecos con mayúsculas/minúsculas indistintas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "Intrínsecos deletreados como p.e. SqRt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +msgid "Intrinsics in lowercase" +msgstr "Intrínsecos en minúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "Intrínsecos en mayúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "Asumir que las funciones nativas se implementan usando JNI" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 msgid "Generate code for functions even if they are fully inlined" msgstr "Generar código para las funciones aún si están completamente inline" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "Emitir variables static const aún si no se usan" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 msgid "Give external symbols a leading underscore" msgstr "Dar a los símbolos externos un subrayado inicial" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 msgid "Perform loop optimizations" msgstr "Realizar optimizaciones de ciclo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "Palabras claves del lenguaje con mayúsculas/minúsculas indistintas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "Palabras claves del lenguaje deletreadas como p.e. IOStat" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +msgid "Language keywords in lowercase" +msgstr "Palabras claves del lenguaje en minúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "Palabras claves del lenguaje en mayúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "Establecer errno después de las funciones matemáticas internas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 msgid "Report on permanent memory allocation" msgstr "Reportar el alojamiento en memoria permanente" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "Intentar mezclar constantes idénticas y variables constantes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "Intentar mezclar constantes idénticas a través de las unidades de compilación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr "-fmessage-length=\tLimita los diagnósticos a caracteres por línea. 0 suprime el corte de línea" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "Borrar los intrínsecos MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "Desactivar los intrínsecos MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "Activar los intrínsecos MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "Esconder los intrínsecos MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "Forzar que todas las computaciones invariantes del ciclo sean fuera del ciclo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 msgid "Don't warn about uses of Microsoft extensions" msgstr "No avisar sobre los usos de extensiones Microsoft" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 msgid "Use graph-coloring register allocation" msgstr "Utilizar coloración de grafos para el alojamiento de registros." -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "Generar código para el ambiente de tiempo de ejecución NeXT (Apple Mac OS X)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "Asumir que los receptores de mensajes de Objective-C pueden ser nil" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "Soporte para excepciones síncronas no de llamadas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "Activar la sintaxis de excepción y sincronización de Objective-C" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "Realizar el desenrollamiento del ciclo para todos los ciclos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "Realizar el desenrollamiento del ciclo cuando se conoce la cuenta de iteración" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "Cuando sea posible no generar marcos de pila" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "Reconocer palabras clave de C++ como \"compl\" y \"xor\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 msgid "Do the full register move optimization pass" msgstr "Hacer el paso completo de optimización de movimiento de registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "Optimizar las llamadas recursivas hermanadas y de extremo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +msgid "Enable optimization of static class initialization code" +msgstr "Activar la optimización del código de inicialización de las clases static" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 msgid "Enable optional diagnostics" msgstr "Activar los diagnósticos opcionales" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "Empaqueta juntos a los miembros de la estructura sin agujeros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 msgid "Return small aggregates in memory, not registers" msgstr "Devolver los agregados small en memoria, no en registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 msgid "Perform loop peeling" msgstr "Realizar el pelado de ciclos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "Activar las optimizaciones de mirilla específicas de la máquina" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 msgid "Enable an RTL peephole pass before sched2" msgstr "Activa un paso de mirilla RTL antes de sched2" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "Degradar los errores de concordancia a advertencias" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 msgid "Generate position-independent code if possible" msgstr "Generar código independiente de posición si es posible" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 msgid "Generate position-independent code for executables if possible" msgstr "Generar código independiente de posición para ejecutables si es posible" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "Generar instrucciones de precargado, si están disponibles, para matrices en ciclos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:789 -msgid "Treat the input file as already preprocessed" -msgstr "Tratar al fichero de entrada como previamente preprocesado" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:792 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "Activar el código básico de análisis de perfil del programa" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 msgid "Insert arc-based program profiling code" msgstr "Insertar código de análisis de perfil de programa basado en arc" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 msgid "Enable common options for generating profile info for profile feedback directed optimizations" msgstr "Activar las opciones comunes para generar información de análisis de perfil para optimizaciones dirigidas por retroalimentación de perfil" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:801 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "Activar las opciones comunes para realizar optimizaciones dirigidas por retroalimentación de perfil" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "Insertar código para perfilar valores de expresiones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "-frandom-seed=\tHacer que se pueda reproducir la compilación utilizando la " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "Reducir la fuerza de todas las variables generales de inducción de ciclo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 msgid "Return small aggregates in registers" msgstr "Devolver agregados small en registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "Permite una optimización de movimiento de registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 msgid "Perform a register renaming optimization pass" msgstr "Realizar el paso de optimización de renombrado de registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "Reordenar los bloques básicos para mejorar la ubicación del código" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "Reordenar las funciones para mejorar la ubicación del código" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "Usar el modo Fix-and-Continue para indicar que los ficheros objeto se pueden intercambiar en tiempo de ejecución" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "Activar la instanciación automática de plantillas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "Ejecutar un paso de eliminación de subexpresión común después de las optimizaciones de ciclos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "Ejecutar el optimizador de ciclos dos veces" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "Desactivar las optimizaciones que asumen la conducta de un FP que redondea por defecto" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 msgid "Generate run time type descriptor information" msgstr "Generar información de descriptor de tipo en tiempo de ejecución" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "Activar la calendarización entre bloques básicos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "Permitir el movimiento especulativo de ninguna carga" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "Permitir el movimiento especulativo de algunas cargas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "Permitir el movimiento especulativo de más cargas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "Permitir la calendarización prematura de insns encoladas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "Establecer la revisión de distancia de dependencias en la calendarización prematura de insns encoladas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "-fsched-stalled-insns-dep= Establecer la revisión de distancia de dependencias en la calendarización prematura de insns encoladas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "-fsched-stalled-insns= Establecer el número de insns encoladas que se pueden calendarizar prematuramente" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "-fsched-verbose=\tEstablece el nivel de detalle del calendarizador" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "Si se calendariza después de la recarga, hacer calendarización de superbloque" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "Si se calendariza después de la recarga, hacer trazado de calendarización" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "Recalendarizar las instrucciones antes del alojamiento de registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "Recalendarizar las instrucciones después del alojamiento de registros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +msgid "Allow appending a second underscore to externals" +msgstr "Permitir agregar un segundo subrayado a los externos" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "Marcar datos como compartidos en lugar de privados" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "Usar el mismo tamaño para double que para float" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "Usar el tipo entero más estrecho posible para tipos de enumeración" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "Forzar que el tipo debajo de \"wchar_t\" sea \"unsigned short\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "Desactivar optimizaciones observables con IEEE señalando NaNs" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "Cuando no se proporciona \"signed\" o \"unsigned\" hacer signed el campo de bits" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 msgid "Make \"char\" signed by default" msgstr "Hacer que \"char\" sea signed por defecto" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +msgid "Do not print names of program units as they are compiled" +msgstr "No mostrar los nombres de las unidades de programa mientras son compiladas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 msgid "Convert floating point constants to single precision constants" msgstr "Convertir constantes de coma flotante a constantes de precisión simple" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +msgid "Internally convert most source to lowercase" +msgstr "Convertir internamente casi todo el código a minúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "Preservar internamente las mayúsculas y minúsculas del código fuente" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "Convertir internamente casi todo el código a mayúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "Inserta código de revisión de la pila en el programa" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "-fstack-limit-register=\tCapturar si la pila pasa del " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "-fstack-limit-symbol=\tCapturar si la pila pasa del símbolo " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "Mostrar las estadísticas acumuladas durante la compilación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "Activar revisiones de asignabilidad para almacenamientos en matrices de objetos" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "Realizar optimizaciones de reducción de fuerza" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "Asumir que se aplican las reglas estrictas de alias" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "Nombres de símbolo deletreados con mayúsculas/minúsculas mezcladas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "Nombres de símbolo en minúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "Nombres de símbolo en mayúsculas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "Buscar errores de sintaxis, y entonces detenerse" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "-ftabstop=\tDistancia entre topes de tabulador para reportes en columnas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "-ftemplate-depth-\tEspecificar la profundidad máxima de instanciación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 msgid "Create data files needed by \"gcov\"" msgstr "Crear ficheros de datos necesarios para \"gcov\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "Realizar optimizaciones de hilado de saltos" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 msgid "Report the time taken by each compiler pass" msgstr "Reportar el tiempo tomado por cada paso del compilador" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 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]\tIndica el modelo de generación de código por defecto para almacenamiento thread-local" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "Realizar la formación de superbloques a través de la duplicación de colas" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 msgid "Assume floating-point operations can trap" msgstr "Asumir que las operaciones de coma flotante pueden capturar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "Atrapar desbordamientos signed en adición, sustracción y multiplicación" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "Hacer que no tengan tipo las constantes con prefijo-radical que no es decimal" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +msgid "Allow all ugly features" +msgstr "Desactiva todas las características feas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +msgid "Hollerith and typeless can be passed as arguments" +msgstr "Se pueden pasar las constantes hollerith y sin tipo como argumentos" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "Permite la copia ordinaria de variables ASSIGNadas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "La matriz falsa dimensionada a (1) es de tamaño asumido" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "Coma al final de la llamada al procedimiento denota un argumento nulo" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "Permite que REAL(Z) y AIMAG(Z) reciban DOUBLE COMPLEX Z" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "La inicialización a través de DATA y PARAMETER no es de tipos compatibles" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "Permite el intercambio entre INTEGER y LOGICAL" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +msgid "Append underscores to externals" +msgstr "Agregar subrayado a los externos" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 msgid "Compile whole compilation unit at a time" msgstr "Compilar la unidad de compilación completa a la vez" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "Borrar los intrínsecos libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "Desactivar los intrínsecos libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +msgid "Enable libU77 intrinsics" +msgstr "Activar los intrínsecos libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "Borrar los intrínsecos libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "Permitir optimizaciones matemáticas que pueden violar los estándares IEEE ó ISO" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "Cuando no se proporciona \"signed\" o \"unsigned\" hacer unsigned el campo de bits" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 msgid "Make \"char\" unsigned by default" msgstr "Hacer que \"char\" sea unsigned por defecto" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 msgid "Perform loop unswitching" msgstr "Realizar la eliminación de opciones del ciclo" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "Sólo generar tablas de desenredo para manejo de excepciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "Usar __cxa_atexit para registrar destructores" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "Agregar comentarios extra a la salida de ensamblador" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +msgid "Print g77-specific version information and run internal tests" +msgstr "Imprime la información específica de la versión g77 y ejecuta pruebas internas" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 msgid "Use expression value profiles in optimizations" msgstr "Usar perfiles de valor de expresión en las optimizaciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "Descartar funciones virtual sin usar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "Implementar vtables usando thunks" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "El programa está escrito en VXT (como Digital) FORTRAN" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que soporta VXT FORTRAN" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que soporta VXT FORTRAN" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Activar los intrínsecos de FORTRAN que no es 77 que soporta VXT FORTRAN" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que soporta VXT FORTRAN" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "Emitir símbolos comunes como símbolos débiles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "Construir redes y dividir usos no relacionados de una sola variable" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "-fwide-exec-charset=\tConvertir todas las cadenas anchas y constantes de cáracter al conjunto de caracteres " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "Generar una directiva #line que apunte al directorio de trabajo actual" # wraps around? No entiendo bien. cfuga -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "Asumir que el desbordamiento aritmético con signo se envuelve" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "Guardar las cadenas en la sección de datos modificables" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "Emitir información de referencia cruzada" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +msgid "Print internal debugging-related information" +msgstr "Muestra la información interna relacionada con la depuración" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "Poner datos inicializados a cero en la sección bss" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "Generar la búsqueda no estricta de clases (a través de objc_getClass()) para usarlas en el modo Zero-Link" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "Tratar los valores iniciales de 0 como valores que no son cero" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 msgid "Generate debug information in default format" msgstr "Generar información de depuración en el formato por defecto" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 msgid "Generate debug information in COFF format" msgstr "Generar información de depuración en el formato COFF" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 msgid "Generate debug information in DWARF v2 format" msgstr "Generar información de depuración en el formato DWARF v2" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 msgid "Dump declarations to a .decl file" msgstr "Volcar declaraciones a un fichero .decl" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 msgid "Generate debug information in default extended format" msgstr "Generar información de depuración en el formato extendido por defecto" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 msgid "Generate debug information in STABS format" msgstr "Generar información de depuración en el formato STABS" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 msgid "Generate debug information in extended STABS format" msgstr "Generar información de depuración en el formato STABS extendido" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 msgid "Generate debug information in VMS format" msgstr "Generar información de depuración en el formato VMS" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 msgid "Generate debug information in XCOFF format" msgstr "Generar información de depuración en el formato XCOFF" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 msgid "Generate debug information in extended XCOFF format" msgstr "Generar información de depuración en el formato XCOFF extendido" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "-idirafter \tAgregar el ectorio al final de la ruta de inclusión del sistema" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "-imacros \tAceptar la definición de macros en el ero" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "-include \tIncluir los contenidos del antes de otros ficheros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "-iprefix \tEspecificar la como un prefijo para las siguientes dos opciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "-isysroot \tEstablecer el ectorio como el directorio raíz del sistema" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "-isystem \tAgregar el ectorio al inicio de la ruta de inclusión del sistema" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "-iwithprefix \tAgregar el ectorio al final de la ruta de inclusión del sistema" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "-iwithprefixbefore \tAgregar el ectorio al final de la ruta de inclusión principal" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "No buscar directorios de inclusión del sistema por defecto (aquellos especificados con -isystem aún serán utilizados)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "No buscar directorios de inclusión del sistema por defecto para C++" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 msgid "-o \tPlace output into " msgstr "-o\tColocar la salida en el " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 msgid "Enable function profiling" msgstr "Activar el análisis de perfil de las funciones" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 msgid "Issue warnings needed for strict compliance to the standard" msgstr "Activar los avisos necesarios para cumplir estrictamente con el estándard" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "Como -pedantic pero los muestra como errores" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 msgid "Generate C header of platform-specific features" msgstr "Generar encabezado C de características específicas de la plataforma" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 msgid "Do not display functions compiled or elapsed time" msgstr "No mostrar las funciones compiladas o el tiempo transcurrido" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 msgid "Remap file names when including files" msgstr "Remapear nombres de fichero cuando incluyen ficheros" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "Conforme al estándard ISO 1998 C++" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "Conforme al estándard ISO 1990 C" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "Conforme al estándard ISO 1999 C" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "Obsoleto en favor de -std=c99" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "Conforme al estándard ISO 1998 C++ con extensiones GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "Conforme al estándard ISO 1990 C con extensiones GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "Conforme al estándard ISO 1999 C con extensiones GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "Obsoleto en favor de -std=gnu99" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "Obsoleto en favor de -std=c89" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "Conforme al estándard ISO 1990 C como se enmendó en 1994" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 msgid "Enable traditional preprocessing" msgstr "Habilitar el preprocesamiento tradicional" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "-trigraphs\tSoporte para los trigrafos de ISO C" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "No predefinir macros específicas del sistema y específica de GCC" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 msgid "Enable verbose output" msgstr "Activar la salida detallada" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -msgid "Display the compiler's version" -msgstr "Muestra la versión del compilador" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 msgid "Suppress warnings" msgstr "Suprimir avisos" -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "`-p' no tiene soporte; use `-pg' y gprof(1)" @@ -20753,7 +21153,7 @@ msgstr "GCC no da soporte a -C sin usar -E" msgid "GCC does not support -CC without using -E" msgstr "GCC no da soporte a -CC sin usar -E" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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" @@ -20896,6 +21296,69 @@ msgstr "se requiere -E cuando la entrada es de entrada est msgid "mno-cygwin and mno-win32 are not compatible" msgstr "-mno-cygwin y -mno-win32 no son compatibles" +#~ msgid "read-write constraint does not allow a register" +#~ msgstr "la restricción lectura-escritura no permite un registro" + +#~ msgid "your function will be miscompiled" +#~ msgstr "su función será mal compilada" + +#~ msgid "neither the destructor nor the class-specific " +#~ msgstr "ni el operador ni el operador delete " + +#~ msgid "operator delete will be called, even if they are " +#~ msgstr "específico de la clase serán llamados, aún si se " + +#~ msgid "declared when the class is defined." +#~ msgstr "declaran cuando se defina la clase." + +#~ msgid "-I \tAdd to the end of the main include path. -I- gives more include path control; see info documentation" +#~ msgstr "-I \tAgregar el ectorio al final de la ruta de inclusión principal. -I- da más control de ruta de inclusión; vea la documentación en formato info" + +#~ msgid "Generate make dependencies" +#~ msgstr "Generar dependencias de make" + +#~ msgid "-MF \tWrite dependency output to the given file" +#~ msgstr "-MF \tEscribir la salida de dependencias al fichero dado" + +#~ msgid "Like -M but ignore system header files" +#~ msgstr "Como -M pero ignora los ficheros de encabezado del sistema" + +#~ msgid "Generate phony targets for all headers" +#~ msgstr "Generar objetivos de prueba para todos los encabezados" + +#~ msgid "-MT \tAdd an unquoted target" +#~ msgstr "-MT \tAgregar un objetivo no citado" + +#~ msgid "Enable most warning messages" +#~ msgstr "Activar casi todos los mensajes de aviso" + +#~ msgid "Warn about possibly nested block comments, and C++ comments spanning more than one physical line" +#~ msgstr "Avisar sobre la posibilidad de bloques de comentarios anidados, y comentarios de C++ que abarquen más de una línea física" + +#~ msgid "Synonym for -Wcomment" +#~ msgstr "Sinónimo de -Wcomment" + +#~ msgid "Warn about deprecated compiler features" +#~ msgstr "Avisar sobre características obsoletas del compilador" + +#~ msgid "Deprecated. This switch has no effect." +#~ msgstr "Obsoleto. Esta opción no tiene efecto." + +#~ msgid "Warn if trigraphs are encountered that might affect the meaning of the program" +#~ msgstr "Avisar si se encuentran trigrafos que puedan afectar el significado del programa" + +#~ msgid "-fdump-\tDump various compiler internals to a file" +#~ msgstr "-fdump-\tVolcar varios internos del compilador a un fichero" + +#~ msgid "Integrate simple functions into their callers" +#~ msgstr "Integrar las funciones simples en sus invocadores" + +#~ msgid "Treat the input file as already preprocessed" +#~ msgstr "Tratar al fichero de entrada como previamente preprocesado" + +#~ msgid "Display the compiler's version" +#~ msgstr "Muestra la versión del compilador" + #~ msgid "pointer to a member used in arithmetic" #~ msgstr "se usó un puntero a un miembro en la aritmética" @@ -20938,300 +21401,6 @@ msgstr "-mno-cygwin y -mno-win32 no son compatibles" #~ msgid "ISO C++ forbids aggregate initializer to new" #~ msgstr "ISO C++ prohíbe un inicializador agregado para new" -#~ msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined." -#~ msgstr "no se llamará ni al destructor ni al operador delete específico de la clase, aún si se declaran cuando se defina la clase." - -#~ msgid "Warn if deprecated class, method, or field is used" -#~ msgstr "Avisar si se usan clases, métodos o campos obsoletos" - -#~ msgid "Warn if deprecated empty statements are found" -#~ msgstr "Avisar si se encuentran declaraciones vacías obsoletas" - -#~ msgid "Enable warnings about inter-procedural problems" -#~ msgstr "Activar los avisos sobre problemas interprocedurales" - -#~ msgid "Warn if .class files are out of date" -#~ msgstr "Avisar si los ficheros .class están desactualizados" - -#~ msgid "Warn if modifiers are specified when not necessary" -#~ msgstr "Avisar si se especifican modificadores cuando no son necesarios" - -#~ msgid "Warn about constructs with surprising meanings" -#~ msgstr "Avisar acerca de constructores con significados sorprendentes" - -#~ msgid "--CLASSPATH\tDeprecated; use --classpath instead" -#~ msgstr "--CLASSPATH\tObsoleto; utilice en su lugar --classpath" - -#~ msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements" -#~ msgstr "No tratar las variables locales y los bloques COMMON como si fueran nombrados en declaraciones SAVE" - -#~ msgid "Backslashes in character and hollerith constants are special (not C-style)" -#~ msgstr "Las barras invertidas en constantes de caracter y hollerith no son especiales (no estilo C)" - -#~ msgid "Delete libU77 intrinsics with bad interfaces" -#~ msgstr "Borrar los intrínsecos libU77 con interfaces erróneas" - -#~ msgid "Disable libU77 intrinsics with bad interfaces" -#~ msgstr "Desactivar los intrínsecos libU77 con interfaces erróneas" - -#~ msgid "Enable libU77 intrinsics with bad interfaces" -#~ msgstr "Activar los intrínsecos libU77 con interfaces erróneas" - -#~ msgid "Hide libU77 intrinsics with bad interfaces" -#~ msgstr "Esconder los intrínsecos libU77 con interfaces erróneas" - -#~ msgid "--bootclasspath=\tReplace system path" -#~ msgstr "--bootclasspath=\tReemplazar la ruta del sistema" - -#~ msgid "Program written in strict mixed-case" -#~ msgstr "Programa escrito estrictamente con mayúsculas y minúsculas mezcladas" - -#~ msgid "Compile as if program written in lowercase" -#~ msgstr "Compilar como si el programa estuviera escrito en minúsculas" - -#~ msgid "Preserve case used in program" -#~ msgstr "Preservar todo el deletreo (mayúsculas/minúsculas) usado en el programa" - -#~ msgid "Program written in lowercase" -#~ msgstr "Programa escrito en minúsculas" - -#~ msgid "Program written in uppercase" -#~ msgstr "Programa escrito en mayúsculas" - -#~ msgid "Compile as if program written in uppercase" -#~ msgstr "Compilar como si el programa estuviera escrito en mayúsculas" - -#~ msgid "--classpath=\tSet class path" -#~ msgstr "--classpath=\tEstablecer la ruta de clases" - -#~ msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" -#~ msgstr "Emitir información especial de depuración para COMMON y EQUIVALENCE (desactivado)" - -#~ msgid "Allow '$' in symbol names" -#~ msgstr "Permitir '$' en los nombres de símbolos" - -#~ msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" -#~ msgstr "Hace que el frente emule aritmética COMPLEX para evitar `bugs'" - -#~ msgid "--encoding=\tChoose input encoding (defaults from your locale)" -#~ msgstr "--encoding=\tEscoger la codificación de entrada (por defecto viene del local)" - -#~ msgid "f2c-compatible code can be generated" -#~ msgstr "Se puede generar generar código compatible con f2c" - -#~ msgid "Delete non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que soporta f2c" - -#~ msgid "Disable non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que soporta f2c" - -#~ msgid "Enable non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Activar los intrínsecos de FORTRAN que no es 77 que soporta f2c" - -#~ msgid "Hide non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que soporta f2c" - -#~ msgid "Unsupported; generate libf2c-calling code" -#~ msgstr "Sin soporte; genera código de llamada a libf2c" - -#~ msgid "Program is written in typical FORTRAN 66 dialect" -#~ msgstr "El programa está escrito en el dialecto típico FORTRAN 66" - -#~ msgid "Program is written in typical Unix-f77 dialect" -#~ msgstr "El programa está escrito en el dialecto típico Unix-f77" - -#~ msgid "Program is written in Fortran-90-ish dialect" -#~ msgstr "El programa está escrito en un dialecto cercano a Fortran-90" - -#~ msgid "Delete non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que soporta F90" - -#~ msgid "Disable non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que soporta F90" - -#~ msgid "Enable non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Activar los intrínsecos de FORTRAN que no es 77 que soporta F90" - -#~ msgid "Hide non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que soporta F90" - -#~ msgid "ffixed-line-length-\tSet the maximum line length to " -#~ msgstr "ffixed-line-length-\tLimita la longitud máxima de línea a " - -#~ msgid "Unsupported; affects code generation of arrays" -#~ msgstr "Sin soporte; afecta la generación de código de las matrices" - -#~ msgid "Always check for non gcj generated classes archives" -#~ msgstr "Revisar siempre por archivos de clases no generados por gcj" - -#~ msgid "Generate code to check subscript and substring bounds" -#~ msgstr "Generar código para revisar los límites de subíndices y subcadenas" - -#~ msgid "Program is written in Fortran-90-ish free form" -#~ msgstr "El programa está escrito en una forma libre cercana a Fortran-90" - -#~ msgid "Enable fatal diagnostics about inter-procedural problems" -#~ msgstr "Activar los diagnósticos fatales sobre problemas interprocedurales" - -#~ msgid "Delete non-FORTRAN-77 intrinsics g77 supports" -#~ msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que soporta g77" - -#~ msgid "Disable non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que soporta F90" - -#~ msgid "Enable non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Activar los intrínsecos de FORTRAN que no es 77 que soporta F90" - -#~ msgid "Hide non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que soporta F90" - -#~ msgid "Use offset tables for virtual method calls" -#~ msgstr "Utilizar tablas de desplazamiento para llamadas a métodos virtuales" - -#~ msgid "Initialize local vars and arrays to zero" -#~ msgstr "Inicializa las variables locales y matrices a cero" - -#~ msgid "Intrinsics letters in arbitrary cases" -#~ msgstr "Letras de intrínsecos con mayúsculas/minúsculas indistintas" - -#~ msgid "Intrinsics spelled as e.g. SqRt" -#~ msgstr "Intrínsecos deletreados como p.e. SqRt" - -#~ msgid "Intrinsics in lowercase" -#~ msgstr "Intrínsecos en minúsculas" - -#~ msgid "Intrinsics in uppercase" -#~ msgstr "Intrínsecos en mayúsculas" - -#~ msgid "Assume native functions are implemented using JNI" -#~ msgstr "Asumir que las funciones nativas se implementan usando JNI" - -#~ msgid "Language keyword letters in arbitrary cases" -#~ msgstr "Palabras claves del lenguaje con mayúsculas/minúsculas indistintas" - -#~ msgid "Language keywords spelled as e.g. IOStat" -#~ msgstr "Palabras claves del lenguaje deletreadas como p.e. IOStat" - -#~ msgid "Language keywords in lowercase" -#~ msgstr "Palabras claves del lenguaje en minúsculas" - -#~ msgid "Language keywords in uppercase" -#~ msgstr "Palabras claves del lenguaje en mayúsculas" - -#~ msgid "Delete MIL-STD 1753 intrinsics" -#~ msgstr "Borrar los intrínsecos MIL-STD 1753" - -#~ msgid "Disable MIL-STD 1753 intrinsics" -#~ msgstr "Desactivar los intrínsecos MIL-STD 1753" - -#~ msgid "Enable MIL-STD 1753 intrinsics" -#~ msgstr "Activar los intrínsecos MIL-STD 1753" - -#~ msgid "Hide MIL-STD 1753 intrinsics" -#~ msgstr "Esconder los intrínsecos MIL-STD 1753" - -#~ 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" - -#~ msgid "Enable optimization of static class initialization code" -#~ msgstr "Activar la optimización del código de inicialización de las clases static" - -#~ 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" - -#~ msgid "Allow appending a second underscore to externals" -#~ msgstr "Permitir agregar un segundo subrayado a los externos" - -#~ msgid "Do not print names of program units as they are compiled" -#~ msgstr "No mostrar los nombres de las unidades de programa mientras son compiladas" - -#~ msgid "Internally convert most source to lowercase" -#~ msgstr "Convertir internamente casi todo el código a minúsculas" - -#~ msgid "Internally preserve source case" -#~ msgstr "Preservar internamente las mayúsculas y minúsculas del código fuente" - -#~ msgid "Internally convert most source to uppercase" -#~ msgstr "Convertir internamente casi todo el código a mayúsculas" - -#~ msgid "Enable assignability checks for stores into object arrays" -#~ msgstr "Activar revisiones de asignabilidad para almacenamientos en matrices de objetos" - -#~ msgid "Symbol names spelled in mixed case" -#~ msgstr "Nombres de símbolo deletreados con mayúsculas/minúsculas mezcladas" - -#~ msgid "Symbol names in lowercase" -#~ msgstr "Nombres de símbolo en minúsculas" - -#~ msgid "Symbol names in uppercase" -#~ msgstr "Nombres de símbolo en mayúsculas" - -#~ msgid "Make prefix-radix non-decimal constants be typeless" -#~ msgstr "Hacer que no tengan tipo las constantes con prefijo-radical que no es decimal" - -#~ msgid "Allow all ugly features" -#~ msgstr "Desactiva todas las características feas" - -#~ msgid "Hollerith and typeless can be passed as arguments" -#~ msgstr "Se pueden pasar las constantes hollerith y sin tipo como argumentos" - -#~ msgid "Allow ordinary copying of ASSIGN'ed vars" -#~ msgstr "Permite la copia ordinaria de variables ASSIGNadas" - -#~ msgid "Dummy array dimensioned to (1) is assumed-size" -#~ msgstr "La matriz falsa dimensionada a (1) es de tamaño asumido" - -#~ msgid "Trailing comma in procedure call denotes null argument" -#~ msgstr "Coma al final de la llamada al procedimiento denota un argumento nulo" - -#~ msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" -#~ msgstr "Permite que REAL(Z) y AIMAG(Z) reciban DOUBLE COMPLEX Z" - -#~ msgid "Initialization via DATA and PARAMETER is not type-compatible" -#~ msgstr "La inicialización a través de DATA y PARAMETER no es de tipos compatibles" - -#~ msgid "Allow INTEGER and LOGICAL interchangeability" -#~ msgstr "Permite el intercambio entre INTEGER y LOGICAL" - -#~ msgid "Append underscores to externals" -#~ msgstr "Agregar subrayado a los externos" - -#~ msgid "Delete libU77 intrinsics" -#~ msgstr "Borrar los intrínsecos libU77" - -#~ msgid "Disable libU77 intrinsics" -#~ msgstr "Desactivar los intrínsecos libU77" - -#~ msgid "Enable libU77 intrinsics" -#~ msgstr "Activar los intrínsecos libU77" - -#~ msgid "Hide libU77 intrinsics" -#~ msgstr "Borrar los intrínsecos libU77" - -#~ msgid "Print g77-specific version information and run internal tests" -#~ msgstr "Imprime la información específica de la versión g77 y ejecuta pruebas internas" - -#~ msgid "Program is written in VXT (Digital-like) FORTRAN" -#~ msgstr "El programa está escrito en VXT (como Digital) FORTRAN" - -#~ msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que soporta VXT FORTRAN" - -#~ msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que soporta VXT FORTRAN" - -#~ msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Activar los intrínsecos de FORTRAN que no es 77 que soporta VXT FORTRAN" - -#~ msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que soporta VXT FORTRAN" - -#~ msgid "Print internal debugging-related information" -#~ msgstr "Muestra la información interna relacionada con la depuración" - -#~ msgid "Treat initial values of 0 like non-zero values" -#~ msgstr "Tratar los valores iniciales de 0 como valores que no son cero" - #~ msgid "-gnat\tSpecify options to GNAT" #~ msgstr "-gnat\tEspecificar opciones a GNAT" diff --git a/gcc/po/fr.po b/gcc/po/fr.po index 046fbddaf9e..bda7522f60d 100644 --- a/gcc/po/fr.po +++ b/gcc/po/fr.po @@ -20,6 +20,7 @@ # to subscript = indicer # top-level = hors de toute fonction # member function = fonction membre +# template = patron (apparaît dans plusieurs dictionnaires) # # Pas traduit: # thread @@ -116,10 +117,10 @@ # msgid "" msgstr "" -"Project-Id-Version: GNU gcc 3.4.0\n" +"Project-Id-Version: GNU gcc 3.4.2\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" -"PO-Revision-Date: 2004-05-24 20:00-0500\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" +"PO-Revision-Date: 2004-08-12 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" @@ -147,15 +148,15 @@ msgstr "l'attribut msgid "`%s' attribute only applies to function types" msgstr "l'attribut « %s » ne s'applique qu'à des types de fonction" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -230,7 +231,7 @@ msgstr "(vous devriez donc passer #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "si ce code est atteint, le programme s'arrêtera" @@ -395,259 +396,258 @@ msgid "invalid application of `%s' to a void type" msgstr "application invalide de « %s » sur un type void" #: c-common.c:2951 -#, c-format -msgid "invalid application of `%s' to an incomplete type" -msgstr "application invalide de « %s » sur un type incomplet" +msgid "invalid application of `%s' to incomplete type `%T' " +msgstr "application invalide de « %s » sur un type incomplet « %T »" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "« __alignof » appliqué sur un champ de bits" -#: c-common.c:3483 +#: c-common.c:3484 #, c-format msgid "cannot disable built-in function `%s'" msgstr "ne peut désactiver la fonction interne « %s »" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "pas assez d'arguments pour la fonction « %s »" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "trop d'arguments pour la fonction « %s »" -#: c-common.c:3669 +#: c-common.c:3670 #, 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:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "les pointeurs ne sont pas permis comme valeurs de « case »" -#: c-common.c:3900 +#: c-common.c:3901 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:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "intervalle vide spécifié" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "valeur du « case » duppliquée (ou en chevauchant une autre)" -#: c-common.c:3981 +#: c-common.c:3982 msgid "%Jthis is the first entry overlapping that value" msgstr "%Jest la première entrée chevauchant cette valeur" -#: c-common.c:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "valeur du « case » duppliquée" -#: c-common.c:3986 +#: c-common.c:3987 msgid "%Jpreviously used here" msgstr "%Jprécédemment utilisé ici" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "plusieurs étiquettes par défaut dans un « switch »" -#: c-common.c:3991 +#: c-common.c:3992 msgid "%Jthis is the first default label" msgstr "%Jest la première étiquette par défaut" -#: c-common.c:4016 +#: c-common.c:4017 msgid "taking the address of a label is non-standard" msgstr "prendre l'adresse d'une étiquette n'est pas standard" -#: c-common.c:4062 +#: c-common.c:4063 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:4067 +#: c-common.c:4068 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:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "mode machine « %s » inconnu" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "aucun type de données pour le mode « %s »" -#: c-common.c:4655 +#: c-common.c:4656 #, c-format msgid "invalid pointer mode `%s'" msgstr "mode pointeur invalide « %s »" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, c-format msgid "unable to emulate '%s'" msgstr "impossible d'émuler « %s »" -#: c-common.c:4706 +#: c-common.c:4707 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:4717 +#: c-common.c:4718 msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "%Jsection de « %D » en conflit avec une déclaration précédente" -#: c-common.c:4726 +#: c-common.c:4727 msgid "%Jsection attribute not allowed for '%D'" msgstr "%Jattribut de section n'est pas permis pour « %D »" -#: c-common.c:4732 +#: c-common.c:4733 msgid "%Jsection attributes are not supported for this target" msgstr "%Jattributs de section ne sont pas supportés pour la cible" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "l'alignement demandé n'est pas une constante" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "l'alignement demandé n'est pas une puissance de 2" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "l'alignement demandé est trop grand" -#: c-common.c:4806 +#: c-common.c:4807 msgid "%Jalignment may not be specified for '%D'" msgstr "%Jl'alignement ne peut pas être spécifié pour « %D »" -#: c-common.c:4844 +#: c-common.c:4845 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:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "l'argument d'alias n'est pas une chaîne" -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "l'argument de visibilité n'est pas une chaîne" -#: c-common.c:4910 +#: c-common.c:4911 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:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "l'argument de tls_model n'est pas une chaîne" -#: c-common.c:4945 +#: c-common.c:4946 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:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 msgid "%J'%E' attribute applies only to functions" msgstr "%J'%E l'attribut ne s'applique seulement qu'à des fonctions" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 msgid "%Jcan't set '%E' attribute after definition" msgstr "%Jne peut initialiser l'attribut « %E » après définition" -#: c-common.c:5094 +#: c-common.c:5095 #, c-format msgid "`%s' attribute ignored for `%s'" msgstr "attribut « %s » ignoré pour « %s »" -#: c-common.c:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "type de vecteur invalide pour l'attribut « %s »" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 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:5315 +#: c-common.c:5316 msgid "nonnull attribute without arguments on a non-prototype" msgstr "attribut non nul sans argument sur un non-prototype" -#: c-common.c:5330 +#: c-common.c:5331 #, 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:5349 +#: c-common.c:5350 #, 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:5357 +#: c-common.c:5358 #, 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:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "argument nul là où un non-nul est requis (arg %lu)" -#: c-common.c:5508 +#: c-common.c:5509 msgid "cleanup arg not an identifier" msgstr "argument de nettoyage n'est pas un identificateur" -#: c-common.c:5515 +#: c-common.c:5516 msgid "cleanup arg not a function" msgstr "argument de nettoyage n'est pas une fonction" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s à la fin de l'entrée" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s avant %s« %c »" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s avant %s'\\x%x'" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "%s avant une chaîne constante" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "%s avant une constante numérique" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s avant « %s »" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s avant un élément lexical « %s »" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 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" @@ -829,8 +829,8 @@ msgstr "%Jd msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "%Jdéclaration de « %D » masque la déclaration d'un local précédent" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 msgid "%Jshadowed declaration is here" msgstr "%Jdéclaration est masquée ici" @@ -839,7 +839,7 @@ msgstr "%Jd msgid "nested extern declaration of `%s'" msgstr "déclaration de « %s » externe imbriquée" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 msgid "%Jprevious declaration of '%D'" msgstr "%Jdéclaration précédente de « %D »" @@ -913,7 +913,7 @@ msgid "two types specified in one empty declaration" msgstr "deux types spécifiés dans une déclaration vide" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "déclaration vide" @@ -953,7 +953,7 @@ msgstr "la fonction msgid "parameter `%s' is initialized" msgstr "le paramètre « %s » est initialisé" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "un objet de taille variable peut ne pas être initialisé" @@ -967,7 +967,7 @@ msgstr "la variable msgid "elements of array `%s' have incomplete type" msgstr "les éléments du tableau « %s » ont des types incomplets" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 msgid "%Jinline function '%D' given attribute noinline" msgstr "%J fonction enligne « %D » a reçu l'attribut non enligne" @@ -1243,7 +1243,7 @@ msgstr "ISO C90 interdit le tableau msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO C90 interdit le tableau « %s » de taille variable" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "la taille du tableau « %s » est trop grande" @@ -1286,7 +1286,7 @@ msgstr "modificateur de type invalide dans la d msgid "ISO C forbids const or volatile function types" msgstr "ISO C interdit les fonction de type volatile ou constante" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "variable ou champ « %s » déclaré « void »" @@ -1581,7 +1581,7 @@ msgstr "argument promu \"%D\" ne concorde pas avec le prototype" msgid "argument \"%D\" doesn't match prototype" msgstr "argument \"%D\" ne concorde pas avec le prototype" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 msgid "no return statement in function returning non-void" msgstr "« return » manquant dans une fonction devant retourner une valeur" @@ -2364,7 +2364,7 @@ msgstr "erreur de syntaxe : impossible de reculer" msgid "ISO C forbids an empty source file" msgstr "ISO C interdit un fichier source vide" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 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" @@ -2458,7 +2458,7 @@ msgstr "ISO C interdit les fonctions imbriqu msgid "ISO C forbids forward references to `enum' types" msgstr "ISO C interdit les références anticipée vers un type « enum »" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "virgule à la fin de liste d'énumerateurs" @@ -2466,7 +2466,7 @@ msgstr "virgule 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/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "point virgule superflu dans la structure ou dans l'union" @@ -2494,23 +2494,23 @@ msgstr "ISO C interdit la d 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:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "le corps du else est vide" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 msgid "%Hempty body in an if-statement" msgstr "%Hle corps de la déclaration du if est vide" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 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:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 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 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO C interdit « goto *expr; »" @@ -2520,11 +2520,11 @@ msgstr "ISO C interdit #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "ISO C requiert un argument nommé devant « ... »" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "« ... » dans une liste d'identificateurs de style ancien" @@ -2540,7 +2540,7 @@ msgstr "erreur d'analyse syntaxique" msgid "parser stack overflow" msgstr "débordement de la pile de l'analyseur syntaxique" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "erreur de syntaxe à l'élément lexical « %s »" @@ -2703,19 +2703,19 @@ msgstr "#pragma redefine_extname mal compos msgid "junk at end of #pragma redefine_extname" msgstr "rebut à la fin de #pragma redefine_extname" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "#pragma redefine_extname en conflit avec la déclaration" -#: c-pragma.c:413 +#: c-pragma.c:414 msgid "malformed #pragma extern_prefix, ignored" msgstr "#pragma extern_prefix mal composée, ignoré" -#: c-pragma.c:418 +#: c-pragma.c:419 msgid "junk at end of #pragma extern_prefix" msgstr "rebut à la fin de #pragma extern_prefix" -#: c-pragma.c:449 +#: c-pragma.c:450 msgid "asm declaration conflicts with previous rename" msgstr "déclaration asm en conflit avec le changement de nom précédent" @@ -2732,7 +2732,7 @@ msgstr "o 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:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "%s qualificateur ignoré avec asm" @@ -2742,790 +2742,790 @@ msgstr "%s qualificateur ignor msgid "will never be executed" msgstr "ne sera jamais exécuté" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "« %s » a un type incomplet" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "utilisation invalide d'expression void" -#: c-typeck.c:150 +#: c-typeck.c:153 msgid "invalid use of flexible array member" msgstr "utilisation invalide d'un membre flexible de tableau" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "utilisation invalide d'un tableau sans borne spécifiée" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "utilisation invalide d'un typedef incomplet « %s »" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 msgid "function types not truly compatible in ISO C" msgstr "types de fonction pas vraiment compatibles en C ISO" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "les types ne sont pas vraiment compatibles" -#: c-typeck.c:824 +#: c-typeck.c:838 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:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "arithmétique sur un pointeur vers un type incomplet" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "%s n'a pas de membre nommé « %s »" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, 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:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "déréférencement d'un pointeur de type incomplet" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "déréférencement d'un pointeur « void * »" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "type d'argument invalide pour « %s »" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "indice manquant dans la référence du tableau" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "l'indice du tableau est de type « char »" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "l'indice du tableau n'est pas un entier" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "ISO C interdit de sous-indicer des tableaux « register »" -#: c-typeck.c:1511 +#: c-typeck.c:1525 msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C90 interdit d'indicer de tableau n'étant pas membre gauche" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "indice de type « char »" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "la valeur indicée n'est ni un tableau ni un pointeur" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, 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:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "l'objet appelé n'est pas une fonction" #. 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 +#: c-typeck.c:1729 msgid "function called through a non-compatible type" msgstr "fonction appellée à travers un type non compatible" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "un élément de l'initialisation n'est pas une constante" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "trop d'arguments pour la fonction" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "le type du paramètre formel %d est incomplet" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, 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:1850 +#: c-typeck.c:1875 #, 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:1853 +#: c-typeck.c:1878 #, 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:1856 +#: c-typeck.c:1881 #, 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:1859 +#: c-typeck.c:1884 #, 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:1862 +#: c-typeck.c:1887 #, 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:1872 +#: c-typeck.c:1897 #, c-format msgid "%s as `float' rather than `double' due to prototype" msgstr "%s est « float » plutôt qu'un « double » en raison du prototype" -#: c-typeck.c:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "%s a une largeur différente en raison du prototype" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "%s est non signé en raison du prototype" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "%s est signé en raison du prototype" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "trop peu d'arguments pour la fonction" -#: c-typeck.c:1992 +#: c-typeck.c:2017 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:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "parenthèses suggérées autour de && à l'intérieur de ||" -#: c-typeck.c:2008 +#: c-typeck.c:2033 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:2011 +#: c-typeck.c:2036 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:2020 +#: c-typeck.c:2045 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:2023 +#: c-typeck.c:2048 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:2030 +#: c-typeck.c:2055 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:2033 +#: c-typeck.c:2058 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:2040 +#: c-typeck.c:2065 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:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "pointeur de type « void * » utilisé dans une soustraction" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "pointeur vers un fonction utilisé dans une soustraction" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "type d'argument erroné pour le plus unaire" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "type d'argument erroné pour le moins unaire" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "ISO C ne permet pas d'utiliser « ~ » pour le complexe conjugué" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "type d'argument erroné pour un complément de bit" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "type d'argument erroné pour abs" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "type d'argument erroné pour la conjugaison" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "type d'argument erroné pour le point d'exclamation unaire" -#: c-typeck.c:2312 +#: c-typeck.c:2337 msgid "ISO C does not support `++' and `--' on complex types" msgstr "ISO C ne permet pas « ++ » ni « -- » sur les types complexes" -#: c-typeck.c:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 msgid "wrong type argument to increment" msgstr "type d'argument erroné pour un incrément" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "type d'argument erroné pour un décrément" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "incrément d'un pointeur vers une structure inconnue" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "décrément d'un pointeur vers une structure inconnue" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "membre gauche invalide pour le « & » unaire" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, 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:2642 +#: c-typeck.c:2668 msgid "use of conditional expressions as lvalues is deprecated" msgstr "utilisation d'expressions conditionnelles comme lvalues est obsolète" -#: c-typeck.c:2645 +#: c-typeck.c:2671 msgid "use of compound expressions as lvalues is deprecated" msgstr "utilisation d'expressions composées comme lvalues est obsolète" -#: c-typeck.c:2648 +#: c-typeck.c:2674 msgid "use of cast expressions as lvalues is deprecated" msgstr "utilisation de transtypage d'expressions comme lvalues est obsolète" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "%s d'un membre en lecture seule « %s »" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "%s d'une variable en lecture seule « %s »" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "%s d'une position en lecture seule" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, c-format msgid "cannot take address of bit-field `%s'" msgstr "ne peut prendre l'adresse du champ de bits « %s »" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 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:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 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:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 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:2739 +#: c-typeck.c:2765 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:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, c-format msgid "address of register variable `%s' requested" msgstr "adresse d'une variable registre « %s » requise" -#: c-typeck.c:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "type signé et non signé dans une expression conditionnelle" -#: c-typeck.c:2835 +#: c-typeck.c:2861 msgid "ISO C forbids conditional expr with only one void side" msgstr "ISO C interdit une expression conditionnelle dont un seul côté est « void »" -#: c-typeck.c:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 msgid "ISO C forbids conditional expr between `void *' and function pointer" msgstr "ISO C interdit une expression conditionnelle entre « void * » et un pointeur de fonction" -#: c-typeck.c:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "non concordance de type de pointeurs dans un expression conditionnelle" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "non concordance entre pointeur et entier dans une expression conditionnelle" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "non concordance de type dans une expression conditionnelle" -#: c-typeck.c:2955 +#: c-typeck.c:2981 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:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "le transtypage spécifie un type de tableau" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "le transtypage spécifie un type de fonction" -#: c-typeck.c:3002 +#: c-typeck.c:3028 msgid "ISO C forbids casting nonscalar to the same type" msgstr "ISO C interdit le transtypage d'un type non scalaire vers lui-même" -#: c-typeck.c:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "ISO C interdit le transtypage vers un type union" -#: c-typeck.c:3028 +#: c-typeck.c:3054 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:3079 +#: c-typeck.c:3105 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "le transtypage annule des qualificateurs du type pointeur ciblé" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "le transtypage augmente l'alignement requis pour le type ciblé" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "transtypage d'un pointeur vers un entier de taille différente" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "le transtypage ne concorde pas avec le type de la fonction" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 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:3129 +#: c-typeck.c:3155 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "type-punning vers un type incomplet peut briser les règles stricte d'aliases" # FIXME -#: c-typeck.c:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "déréférencement du pointeur type-punned brisera les strictes d'aliases" -#: c-typeck.c:3144 +#: c-typeck.c:3170 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:3153 +#: c-typeck.c:3179 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:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "membre gauche de l'affectation invalide" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "affectation" -#: c-typeck.c:3429 +#: c-typeck.c:3455 msgid "cannot pass rvalue to reference parameter" msgstr "impossible de passer un membre droit en paramètre par référence" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "%s qualifie un pointeur de fonction non qualifié" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "%s annule des qualificateurs du type du pointeur cible" -#: c-typeck.c:3548 +#: c-typeck.c:3574 msgid "ISO C prohibits argument conversion to union type" msgstr "ISO C interdit la conversion d'argument en type union" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, c-format msgid "ISO C forbids %s between function pointer and `void *'" msgstr "ISO C interdit %s entre pointeur de fonction et « void * »" -#: c-typeck.c:3603 +#: c-typeck.c:3629 #, 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:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "%s d'un type pointeur incompatible" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "utilisation invalide d'un tableau n'étant pas membre gauche" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, c-format msgid "%s makes pointer from integer without a cast" msgstr "%s transforme un entier en pointeur sans transtypage" -#: c-typeck.c:3646 +#: c-typeck.c:3672 #, c-format msgid "%s makes integer from pointer without a cast" msgstr "%s transforme un pointeur en entier sans transtypage" -#: c-typeck.c:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "type incompatible pour l'argument n°%d de « %s »" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, 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:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "type incompatibles dans %s" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, c-format msgid "passing arg of `%s'" msgstr "passage des arguments de « %s »" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 msgid "passing arg of pointer to function" msgstr "passage des arguments au pointeur de fonction" #. Function name is known; supply it. -#: c-typeck.c:3744 +#: c-typeck.c:3770 #, 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:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "passage de l'argument n°%d au pointeur de fonction" -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "le C traditionel rejette l'initialisation automatique d'aggrégats" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "(près de l'initialisation de « %s »)" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "tableau de caractères initialisé à l'aide d'une chaîne large de caractères" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "tableau d'entier initialisé à l'aide d'une chaîne non-large" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 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:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "tableau initialisé à l'aide de l'expression de tableau non constante" -#: 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 "un élément de l'initialisation n'est pas une constante" - -#: c-typeck.c:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "initialisation" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 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:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "initialisation invalide" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 msgid "opaque vector types cannot be initialized" msgstr "type de vecteur opaque ne peut être initialisé" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "groupe d'accolades superflu à la fin de l'initialisation" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "accolades manquantes autour de l'initialisation" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "accolades autour d'une initialisation de scalaire" -#: c-typeck.c:4842 +#: c-typeck.c:4865 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:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "initialisation d'un membre de tableau flexible" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "initialisation manquante" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "initialisation vide de scalaire" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "éléments superflus dans l'initialisation de scalaire" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "l'initialisation des désignateurs ne doit pas être imbriquée" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 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:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 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:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "index de tableau non constant dans l'initialisation" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 msgid "array index in initializer exceeds array bounds" msgstr "index de tableau hors limites lors de l'initialisation" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "borne d'index vide lors de l'initialisation" -#: c-typeck.c:5101 +#: c-typeck.c:5124 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:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "champ inconnu « %s » spécifié lors de l'initialisation" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "le champ initialisé par effet de bord a été écrasé" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "éléments en excès dans l'initialisation de tableau de caractères" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "éléments en excès dans l'initialisation de la structure" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "initialisation non statique d'un membre de tableau flexible" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "éléments en excès dans l'initialisation d'union" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "le C traditionel rejette l'initialisation d'union" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "éléments en excès dans l'initialisation de tableau" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "éléments en excès dans l'initialisation du vecteur" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "éléments en excès dans l'initialisation d'un scalaire" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" -msgstr "le canevas asm n'est pas une chaîne de constante" +msgstr "le patron asm n'est pas une chaîne de constante" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "membre gauche invalide avec asm" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "modification par « asm »" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "fonction déclarée avec « noreturn» utilisant le mot-clé « return »" -#: c-typeck.c:6369 +#: c-typeck.c:6392 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:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "« return » avec une valeur dans une fonction retournant un void" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "return" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "cette fonction retourne l'adresse d'une variable locale" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "quantité du switch n'est pas un entier" -#: c-typeck.c:6496 +#: c-typeck.c:6519 msgid "`long' switch expression not converted to `int' in ISO C" msgstr "expression « long » du switch non convertie en « int » par ISO C" -#: c-typeck.c:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "étiquette de « case » en dehors de tout switch" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "étiquette « default » en dehors de tout switch" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "division par zéro" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "le compteur de décalage vers la droite est négatif" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "compteur de décalage vers la droite >= à la largeur du type" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "le compteur de décalage vers la gauche est négatif" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "compteur de décalage vers la gauche >= à la largeur du type" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "le compteur de décalage est négatif" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "compteur de décalage >= à la largeur du type" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 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:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 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:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 msgid "comparison of distinct pointer types lacks a cast" msgstr "il manque un transtypage pour comparer des types distincts de pointeur" -#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "comparaison entre un pointeur et un entier" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 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:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "comparaison de pointeurs complet et incomplet" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "comparaison ordonnée de pointeur avec le zéro entier" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 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:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "comparaison entre élément signé et élément non signé" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "comparaison entre élément promu ~unsigned et une constante" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "comparaison entre élément promu ~unsigned et un élément non signé" @@ -3793,43 +3793,43 @@ msgstr "nombre de bb not msgid "function body not available" msgstr "corps de la fonction n'est pas disponible" -#: cgraph.c:163 cgraphunit.c:340 +#: 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:345 +#: 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:343 +#: cgraph.c:168 cgraphunit.c:344 msgid "function not inlinable" msgstr "fonction ne peut être enligne" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "« %D » renommé après avoir été référencé durant l'assemblage" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "--param large-function-growth limite atteinte" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 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:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "--param max-inline-insns-single limite atteinte" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 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:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "--param inline-unit-growth limite atteinte" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "enlignage récursif" @@ -4027,7 +4027,7 @@ msgstr "%s : ne peut ouvrir en tant que fichier COFF" msgid "library lib%s not found" msgstr "bibliothèque lib%s introuvable" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -4038,7 +4038,7 @@ msgstr "" ";; %d succès.\n" "\n" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -4883,7 +4883,7 @@ msgid "syntax error in macro parameter list" msgstr "erreur de syntaxe dans la liste de paramètres macro" # FIXME: Initialisé, ou ensembles? -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr ";; traitement du bloc de %d à %d, %d initialisés.\n" @@ -4964,16 +4964,16 @@ msgstr "les limites de la pile ne sont pas support msgid "function using short complex types cannot be inline" msgstr "un foncton utilisant un type « complex short » ne peut être enligne" -#: expr.c:6385 +#: expr.c:6386 msgid "%Jprior parameter's size depends on '%D'" msgstr "%Jtaille du paramètre précédent dépend de « %D »" -#: expr.c:6752 +#: expr.c:6753 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:8895 +#: expr.c:8894 msgid "cannot take the address of an unaligned member" msgstr "ne peut prendre l'adresse d'un membre non aligné" @@ -5018,12 +5018,12 @@ msgstr "op #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "constante flottante mal utilisée" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "expression invalide comme opérande" @@ -5074,23 +5074,23 @@ msgstr "%Jtaille de la variable msgid "impossible constraint in `asm'" msgstr "contrainte impossible dans « asm »" -#: function.c:5723 +#: function.c:5733 msgid "%J'%D' might be used uninitialized in this function" msgstr "%J« %D » pourrait être utilisé sans être initialisé dans cette fonction" -#: function.c:5730 +#: function.c:5740 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:5749 +#: function.c:5759 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:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "fonction retourne un aggrégat" -#: function.c:7006 +#: function.c:6929 msgid "%Junused parameter '%D'" msgstr "%Jparamètre « %D » inutilisé" @@ -5488,7 +5488,7 @@ msgstr "%s\n" #: gcc.c:5099 #, c-format msgid "spec failure: '%%*' has not been initialized by pattern match" -msgstr "échec du spec: « %%* » n'a pas été initialisé par concordance du canevas" +msgstr "échec du spec: « %%* » n'a pas été initialisé par concordance du patron" #: gcc.c:5108 #, c-format @@ -6546,7 +6546,7 @@ msgstr "op msgid "can't use '%s' as a %s register" msgstr "ne peut utiliser « %s » comme le registre %s" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "nom de registre inconnu: %s" @@ -6603,47 +6603,47 @@ msgstr "incapable de g msgid "inconsistent operand constraints in an `asm'" msgstr "contrainte d'opérande inconsistente en « asm »" -#: reload1.c:1212 +#: reload1.c:1222 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:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "essayer de réduire le nombre de variables locales" -#: reload1.c:1868 +#: reload1.c:1878 #, 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:1872 +#: reload1.c:1882 #, 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:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "ceci est le insn:" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "opérande « asm » requiert une recharge impossible" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 msgid "could not find a spill register" msgstr "ne peut repérer un registre de déversement" -#: reload1.c:4968 +#: reload1.c:4978 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:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "mode VOID sur une sortie" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "opérande de sortie est une constante dans « asm »" @@ -6695,7 +6695,7 @@ msgstr "v msgid "jump to `%s' invalidly jumps into binding contour" msgstr "saut vers « %s » saute de manière invalide dans un contour de liaison" -#: stmt.c:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 msgid "%Jlabel '%D' used before containing binding contour" msgstr "%Jétiquette « %D » utilisé avant de contenir le contour de liaison" @@ -6712,7 +6712,7 @@ msgstr "contrainte de sortie msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "contrainte de l'opérande contient « + » ou « - » incorrectement positionné" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "contrainte « %% » utilisée avec la dernière opérande" @@ -6721,125 +6721,121 @@ msgstr "contrainte msgid "matching constraint not valid in output operand" msgstr "contrainte concordante n'est pas valide dans une opérande de sortie" -#: 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 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "contrainte d'entrée de l'opérande contient « %c »" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "nombre d'opérandes invalides pour références de containte concordantes" -#: stmt.c:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "ponctuation invalide « %c » dans la contrainte" -#: stmt.c:1396 +#: stmt.c:1393 msgid "matching constraint does not allow a register" msgstr "contrainte de concordance ne permet pas de reigstre" -#: stmt.c:1424 +#: stmt.c:1421 #, c-format msgid "asm-specifier for variable `%s' conflicts with asm clobber list" msgstr "asm-specifier pour la variable « %s » est en conflit avec la liste asm clobber" -#: stmt.c:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "nom de registre inconnu « %s » dans «asm »" -#: stmt.c:1522 +#: stmt.c:1519 #, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "registre PIC « %s » est maltraité dans «asm »" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "plus que %d opérandes dans « asm »" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "nombre de sortie %d n,est pas directement adressable" -#: stmt.c:1711 +#: stmt.c:1708 #, 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:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "utilisation de l'entré mémoire sans lvalue dans l'opérande asm %d est obsolète" -#: stmt.c:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "asm clobber est en conflit sans opérande de sortie" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "asm globber est en conflit avec l'opérande d'entrée" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "trop d'alternatives dans « asm »" -#: stmt.c:1926 +#: stmt.c:1923 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:1978 +#: stmt.c:1975 #, c-format msgid "duplicate asm operand name '%s'" msgstr "nom d'opérande asm « %s » apparaît en double" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "accolade de fermeture manquante pour l'opérandé nommée" -#: stmt.c:2104 +#: stmt.c:2101 #, c-format msgid "undefined named operand '%s'" msgstr "opérande nommée « %s » indéfinie" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "%Hdéclaration sasn effet" -#: stmt.c:2317 +#: stmt.c:2314 msgid "%Hvalue computed is not used" msgstr "%Hvaleur calculée n'est pas utilisée" -#: stmt.c:3733 +#: stmt.c:3730 msgid "%Junused variable '%D'" msgstr "%Jvariable « %D » inutilisée" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "%Hcode inatteignable au début de %s" -#: stmt.c:5136 +#: stmt.c:5133 #, 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:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "valeur du case « %ld » n'est pas dans le type énuméré" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, 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 »" -#: stmt.c:5401 +#: stmt.c:5398 msgid "switch missing default case" msgstr "switch n'a pas de case par défaut" @@ -6871,25 +6867,25 @@ msgstr "%Jattribut empaquet msgid "%Jpadding struct to align '%D'" msgstr "%Jremplissage du struct pour aligner « %D »" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "remplissage la taille du struct pour aligner les frontières" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "attribut empaqueté provoque un alignement inefficient pour « %s »" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "attribut empaqueté n'est pas nécessaire pour « %s »" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "attribut empaqueté provoque un alignement inefficient" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "attribut empaqueté n'est pas nécessaire" @@ -7041,7 +7037,7 @@ msgstr " Ils existent, mais ils ne sont pas document msgid "unrecognized gcc debugging option: %c" msgstr "option gcc de mise au point non reconnue: %c" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, c-format msgid "invalid option `%s'" msgstr "option invalide « %s »" @@ -7070,25 +7066,25 @@ msgstr "options pass msgid "options enabled: " msgstr "options autorisées: " -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, c-format msgid "can't open %s for writing: %m" msgstr "ne peut ouvrir %s en écriture: %m" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "créé et utilisé avec des configurations différentes de -fpic" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "créé et utilisé avec des configurations différentes de -fpie" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "créé et utilisé avec des configurations différentes de « -m%s »" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "mémoire épuisée" @@ -7143,7 +7139,7 @@ msgstr "-ffunction-sections peut affecter la mise au point sur quelques machines msgid "error writing to %s: %m" msgstr "erreur d'écriture dans %s: %m" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, c-format msgid "error closing %s: %m" msgstr "erreur de fermeture %s: %m" @@ -7202,34 +7198,34 @@ msgstr "%Jtaille de la valeur retourn 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 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "tableaux de fonctions n'a pas grand sens" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "Le type retourné d'une fonction ne peut être une fonction" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "initialisation invalide pour une chaîne de bits" -#: tree.c:4736 +#: tree.c:4737 #, 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:4749 +#: tree.c:4750 #, 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:4762 +#: tree.c:4763 #, c-format msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "vérification de l'arbre: accès de elt %d de tree-vec avec %d elts dans %s, à %s:%d" -#: tree.c:4774 +#: tree.c:4775 #, c-format 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" @@ -7589,7 +7585,7 @@ msgstr "valeur msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "valeur « %s » erronée pour l'option -mfp-trap-mode" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "valeur « %s » erronée pour l'option -mtls-size" @@ -7639,24 +7635,24 @@ msgstr "valeur %%H invalide" msgid "invalid %%J value" msgstr "valeur %%J invalide" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "valeur %%r invalide" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "valeur %%R invalide" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "valeur %%N invalide" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "valeur %%P invalide" @@ -7666,17 +7662,17 @@ msgstr "valeur %%P invalide" msgid "invalid %%h value" msgstr "valeur %%h invalide" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "valeur %%L invalide" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "valeur %%m invalide" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "valeur %%M invalide" @@ -7687,7 +7683,7 @@ msgid "invalid %%U value" msgstr "valeur %%U invalide" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "valeur %%s invalide" @@ -7697,7 +7693,8 @@ msgstr "valeur %%s invalide" msgid "invalid %%C value" msgstr "valeur %%C invalide" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "valeur %%E invalide" @@ -7706,7 +7703,7 @@ msgstr "valeur %%E invalide" msgid "unknown relocation unspec" msgstr "relocalisation unspec inconnue" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "valeur %%xn invalide" @@ -7866,17 +7863,17 @@ msgstr "argument de l'attribut 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:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, c-format msgid "invalid operand to %%R code" msgstr "opérande invalide pour le code %%R" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "opérande invalide pour le code %%H/%%L" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, c-format msgid "invalid operand to %%U code" msgstr "opérande invalide pour le code %%U" @@ -7887,7 +7884,7 @@ msgid "invalid operand to %%V code" msgstr "opérande invalide pour le code %%V" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "opérande invalide pour le code de sortie" @@ -7896,7 +7893,7 @@ msgstr "op msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "l'option -mcpu=%s est en conflit avec l'option -march= " -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "valeur (%s) erronée pour l'option %s" @@ -7980,12 +7977,12 @@ msgid "unable to use '%s' for PIC register" msgstr "incapable d'utiliser « %s » pour un registre PIC" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 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" @@ -8000,7 +7997,7 @@ msgid "selector must be an immediate" msgstr "sélecteur doit être un immédiat" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "masque doit être un immédiat" @@ -9356,176 +9353,176 @@ msgstr "G msgid "Do not generate char instructions" msgstr "Ne pas générer des instructions « char »" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, 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:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 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:1195 +#: config/i386/i386.c:1204 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "valeur erronée (%s) pour l'option -masm" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, 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:1201 +#: config/i386/i386.c:1210 msgid "code model `large' not supported yet" msgstr "model de code « large » n'est pas supporté encore" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "mode %i bits pas compilé en" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 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:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 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:1248 +#: config/i386/i386.c:1260 #, c-format msgid "bad value (%s) for -mtune= switch" msgstr "valeur erronée (%s) pour l'option -mtune=" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, 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:1278 +#: config/i386/i386.c:1290 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "-malign-loops est obsolète, utiliser -falign-loops" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, 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:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "-malign-jumps est obsolète, utiliser -falign-loops" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "-malign-functions est obsolète, utiliser -falign-loops" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, 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:1354 +#: config/i386/i386.c:1366 #, 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:1366 +#: config/i386/i386.c:1378 #, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "valeur erronée (%s) pour l'option -mtls-dialect" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 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:1397 +#: config/i386/i386.c:1409 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:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "jeu d'instructions SSE désactivé, arithmétique 387 est utilisé" -#: config/i386/i386.c:1435 +#: config/i386/i386.c:1447 msgid "387 instruction set disabled, using SSE arithmetics" msgstr "jeu d'instructions 387 désactivé, arithmétique SSE est utilisé" -#: config/i386/i386.c:1442 +#: config/i386/i386.c:1454 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "valeur erronée (%s) pour l'option -mfpmath" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 msgid "fastcall and stdcall attributes are not compatible" msgstr "les attributs fastcall et stdcall ne sont pas compatibles" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 msgid "fastcall and regparm attributes are not compatible" msgstr "les attributs fastcall et regparm ne sont pas compatibles" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, 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:1643 +#: config/i386/i386.c:1655 #, 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:2605 +#: config/i386/i386.c:2621 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:2621 +#: config/i386/i386.c:2637 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:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "vecteur SSE retourné sans autorisation SSE des changements de l'ABI " -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "UNSPEC invalide comme opérande" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "registres étendus n'a pas de demis hauts" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "taille d'opérande non supportée pour un registre étendu" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 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:7457 +#: config/i386/i386.c:7474 #, c-format msgid "invalid operand code `%c'" msgstr "opérande invalide pour « %c »" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 msgid "invalid constraints for operand" msgstr "contrainte invalide pour l'opérande" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 msgid "unknown insn mode" msgstr "mode insn inconnu" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, 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:14366 +#: config/i386/i386.c:14383 msgid "shift must be an immediate" msgstr "décalage doit être un immédiat" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, c-format msgid "`%s' incompatible attribute ignored" msgstr "attribut « %s » incompatible ignoré" @@ -9584,43 +9581,43 @@ msgstr "%J msgid "%J'%D' causes a section type conflict" msgstr "%J« %D » cause un conflit du type de section" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "Utiliser l'interface Cygwin" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "Utiliser l'interface Mingw32" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "Créer une application de type GUI" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "Ne pas initialiser les définitions Windows" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "Initialiser les définitions Windows" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "Créer une application de type console" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "Générer le code pour un DLL" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "Ignorer dllimport pour fonctions" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "Utilise le support de thread spécifique à Mingw" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, 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)" @@ -9814,7 +9811,7 @@ msgstr "Ne pas utiliser la 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/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "Ordonnancer le code pour le processeur donné" @@ -9932,7 +9929,7 @@ msgstr "architectures conflictuelles d 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:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "expression limitant la pile n'est pas supportée" @@ -10055,8 +10052,8 @@ msgstr "Utiliser une disposition de type Intel's v1.3 gcc" 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:333 config/sparc/freebsd.h:80 config/sparc/linux.h:91 -#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "Utiliser les doubles longs de 64 bits" @@ -10089,41 +10086,41 @@ msgstr "%Jl'adresse de la zone 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:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "ia64_print_operand: code inconnu" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 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:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "%s-%s est une étendue vide" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 msgid "cannot optimize floating point division for both latency and throughput" msgstr "ne peut optimiser la division en point flottant à la fois pour la latence et le débit" -#: config/ia64/ia64.c:4726 +#: config/ia64/ia64.c:4729 msgid "cannot optimize integer division for both latency and throughput" msgstr "ne peut optimiser la division entière à la fois pour la latence et le débit" -#: config/ia64/ia64.c:4732 +#: config/ia64/ia64.c:4735 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:4738 +#: config/ia64/ia64.c:4741 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:4750 +#: config/ia64/ia64.c:4753 #, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "valeur erronée (%s) pour l'option -mtls-size" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, c-format msgid "bad value (%s) for -tune= switch" msgstr "valeur erronée (%s) pour l'option -tune=" @@ -10259,7 +10256,7 @@ msgstr "gp_offset (%ld) ou end_offset (%ld) est plus petit que z 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:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "PRINT_OPERAND_ADDRESS, pointeur nul" @@ -10269,7 +10266,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "PRINT_OPERAND: ponctuation « %c » inconnue" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "PRINT_OPERAND pointeur nul" @@ -10278,7 +10275,7 @@ msgstr "PRINT_OPERAND pointeur nul" msgid "invalid %%P operand" msgstr "opérande %%P invalide" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "valeur %%p invalide" @@ -10339,89 +10336,89 @@ msgstr "valeur erron msgid "bad value (%s) for -flush-trap=n (0= found without a %%< in assembler pattern" -msgstr "erreur interne: %%> trouvé sans %%< dans le canevas d'assemblage" +msgstr "erreur interne: %%> trouvé sans %%< dans le patron d'assemblage" #: config/mips/mips.c:5441 #, c-format msgid "internal error: %%} found without a %%{ in assembler pattern" -msgstr "erreur interne: %%} trouvé sans %%{ dans le canevas d'assemblage" +msgstr "erreur interne: %%} trouvé sans %%{ dans le patron d'assemblage" #: config/mips/mips.c:5455 #, c-format @@ -11020,7 +11017,7 @@ 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:554 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314 +#: config/mips/mips.h:554 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:325 msgid "Use hardware floating point" msgstr "Utiliser l'unité matérielle en virgule flottante" @@ -11092,7 +11089,7 @@ msgstr "Ne pas utiliser les multiplications par accumulations" 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:598 config/rs6000/rs6000.h:330 +#: config/mips/mips.h:598 config/rs6000/rs6000.h:341 msgid "Generate fused multiply/add instructions" msgstr "Générer des instructions fusionnés de multiplication/addition" @@ -11585,7 +11582,7 @@ msgstr "Assumer que le code sera li msgid "Assume code will be linked by HP ld" msgstr "Assumer que le code sera lié par HP ld" -#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316 +#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:327 msgid "Do not use hardware floating point" msgstr "Ne pas utiliser le matériel pour virgule flottante" @@ -11718,164 +11715,164 @@ msgstr "le nombre doit msgid "junk at end of #pragma longcall" msgstr "rebut à la fin de #pragma longcall" -#: config/rs6000/rs6000.c:784 +#: config/rs6000/rs6000.c:791 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:791 +#: config/rs6000/rs6000.c:798 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:805 +#: config/rs6000/rs6000.c:812 #, c-format msgid "unknown -mdebug-%s switch" msgstr "option -mdebug-%s inconnue" -#: config/rs6000/rs6000.c:817 +#: config/rs6000/rs6000.c:824 #, c-format msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'" msgstr "argument « %s » inconnu de l'option -mtraceback; attendu « full », « partial » ou « none »" -#: config/rs6000/rs6000.c:828 +#: config/rs6000/rs6000.c:835 #, c-format msgid "Unknown switch -mlong-double-%s" msgstr "option -mlong-double-%s inconnue" -#: config/rs6000/rs6000.c:1011 +#: config/rs6000/rs6000.c:876 +msgid "AltiVec and E500 instructions cannot coexist" +msgstr "Les instructions AltiVec et E500 ne peuvent coexister." + +#: config/rs6000/rs6000.c:1029 #, c-format msgid "unknown -m%s= option specified: '%s'" msgstr "option -m%s= inconnue spécifiée: « %s »" -#: config/rs6000/rs6000.c:1032 +#: config/rs6000/rs6000.c:1050 #, c-format msgid "not configured for ABI: '%s'" msgstr "pas configuré pour ABI: « %s »" -#: config/rs6000/rs6000.c:1038 +#: config/rs6000/rs6000.c:1056 #, c-format msgid "unknown ABI specified: '%s'" msgstr "ABI spécifié inconnu: « %s »" -#: config/rs6000/rs6000.c:1052 +#: config/rs6000/rs6000.c:1070 #, c-format msgid "unknown -malign-XXXXX option specified: '%s'" msgstr "option -malign-XXXXX inconnue spécifiée: « %s »" -#: config/rs6000/rs6000.c:3892 +#: config/rs6000/rs6000.c:3972 msgid "Cannot return value in vector register because altivec instructions are disabled, use -maltivec to enable them." msgstr "Ne peut retourner la valeur dans le registre de vecteur parce que les instructions altivec sont désactivées, utiliser -maltivec pour les autoriser" -#: config/rs6000/rs6000.c:3991 +#: config/rs6000/rs6000.c:4095 msgid "Cannot pass argument in vector register because altivec instructions are disabled, use -maltivec to enable them." msgstr "Ne peut relayer l'argument dans le registre de vecteur parce que les instructions altivec sont désactivées, utiliser -maltivec pour les autoriser" -#: config/rs6000/rs6000.c:5409 +#: config/rs6000/rs6000.c:5599 msgid "argument 1 must be a 5-bit signed literal" msgstr "argument 1 doit être un litéral signé de 5 bits" -#: config/rs6000/rs6000.c:5511 config/rs6000/rs6000.c:6134 +#: config/rs6000/rs6000.c:5701 config/rs6000/rs6000.c:6357 msgid "argument 2 must be a 5-bit unsigned literal" msgstr "argument 2 doit être un litéral non signé de 5 bits" -#: config/rs6000/rs6000.c:5551 +#: config/rs6000/rs6000.c:5741 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:5605 +#: config/rs6000/rs6000.c:5795 msgid "argument 1 of __builtin_altivec_predicate is out of range" msgstr "argument 1 de « __builtin_altivec_predicate » est hors limite" -#: config/rs6000/rs6000.c:5733 +#: config/rs6000/rs6000.c:5956 msgid "argument 3 must be a 4-bit unsigned literal" msgstr "argument 3 doit être un litéral non signé de 4 bits" -#: config/rs6000/rs6000.c:5903 +#: config/rs6000/rs6000.c:6126 #, c-format msgid "argument to `%s' must be a 2-bit unsigned literal" msgstr "argument de « %s » doit être un litéral non signé de 2 bits" -#: config/rs6000/rs6000.c:6016 +#: config/rs6000/rs6000.c:6239 msgid "argument to dss must be a 2-bit unsigned literal" msgstr "argument de dss doit être un litéral non signé de 2 bits" -#: config/rs6000/rs6000.c:6254 +#: config/rs6000/rs6000.c:6477 msgid "argument 1 of __builtin_spe_predicate must be a constant" msgstr "argument 1 de « __builtin_spe_predicate » doit être une constante" -#: config/rs6000/rs6000.c:6327 +#: config/rs6000/rs6000.c:6550 msgid "argument 1 of __builtin_spe_predicate is out of range" msgstr "argument 1 de « __builtin_spe_predicate » est hors limite" -#: config/rs6000/rs6000.c:8531 -msgid "your function will be miscompiled" -msgstr "votre fonction sera mal compilée" - -#: config/rs6000/rs6000.c:8779 +#: config/rs6000/rs6000.c:9008 #, c-format msgid "invalid %%f value" msgstr "valeur %%f invalide" -#: config/rs6000/rs6000.c:8788 +#: config/rs6000/rs6000.c:9017 #, c-format msgid "invalid %%F value" msgstr "valeur %%F invalide" -#: config/rs6000/rs6000.c:8797 +#: config/rs6000/rs6000.c:9026 #, c-format msgid "invalid %%G value" msgstr "valeur %%G invalide" -#: config/rs6000/rs6000.c:8832 +#: config/rs6000/rs6000.c:9061 #, c-format msgid "invalid %%j code" msgstr "valeur %%j invalide" -#: config/rs6000/rs6000.c:8842 +#: config/rs6000/rs6000.c:9071 #, c-format msgid "invalid %%J code" msgstr "valeur %%J invalide" -#: config/rs6000/rs6000.c:8852 +#: config/rs6000/rs6000.c:9081 #, c-format msgid "invalid %%k value" msgstr "valeur %%k invalide" -#: config/rs6000/rs6000.c:8872 config/xtensa/xtensa.c:1999 +#: config/rs6000/rs6000.c:9101 config/xtensa/xtensa.c:2000 #, c-format msgid "invalid %%K value" msgstr "valeur %%K invalide" -#: config/rs6000/rs6000.c:8939 +#: config/rs6000/rs6000.c:9168 #, c-format msgid "invalid %%O value" msgstr "valeur %%O invalide" -#: config/rs6000/rs6000.c:8986 +#: config/rs6000/rs6000.c:9215 #, c-format msgid "invalid %%q value" msgstr "valeur %%q invalide" -#: config/rs6000/rs6000.c:9030 +#: config/rs6000/rs6000.c:9259 #, c-format msgid "invalid %%S value" msgstr "valeur %%S invalide" -#: config/rs6000/rs6000.c:9072 +#: config/rs6000/rs6000.c:9301 #, c-format msgid "invalid %%T value" msgstr "valeur %%T invalide" -#: config/rs6000/rs6000.c:9082 +#: config/rs6000/rs6000.c:9311 #, c-format msgid "invalid %%u value" msgstr "valeur %%u invalide" -#: config/rs6000/rs6000.c:9091 config/xtensa/xtensa.c:1969 +#: config/rs6000/rs6000.c:9320 config/xtensa/xtensa.c:1970 #, c-format msgid "invalid %%v value" msgstr "valeur %%v invalide" -#: config/rs6000/rs6000.c:13581 +#: config/rs6000/rs6000.c:13815 msgid "no profiling of 64-bit code for this ABI" msgstr "pas de profilage du code de 64 bits pour cet ABI" @@ -11931,11 +11928,11 @@ msgstr "-fpic n'est pas support msgid "-m64 requires a PowerPC64 cpu" msgstr "-m64 requiert un processeur PowerPC64" -#: config/rs6000/linux64.h:201 +#: config/rs6000/linux64.h:206 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 +#: config/rs6000/linux64.h:208 msgid "Call mcount for profiling after a function prologue" msgstr "Ne pas appeller mcount pour le profilage avant le prologue de la fonction" @@ -11946,195 +11943,195 @@ msgstr "Ne pas appeller mcount pour le profilage avant le prologue de la fonctio #. 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:262 +#: config/rs6000/rs6000.h:273 msgid "Use POWER instruction set" msgstr "Utiliser le jeu d'instructions du POWER" -#: config/rs6000/rs6000.h:265 +#: config/rs6000/rs6000.h:276 msgid "Use POWER2 instruction set" msgstr "Utiliser le jeu d'instructions du POWER2" -#: config/rs6000/rs6000.h:267 +#: config/rs6000/rs6000.h:278 msgid "Do not use POWER2 instruction set" msgstr "Ne pas utiliser le jeu d'instructions du POWER2" -#: config/rs6000/rs6000.h:270 +#: config/rs6000/rs6000.h:281 msgid "Do not use POWER instruction set" msgstr "Ne pas utiliser le jeu d'instructions du POWER" -#: config/rs6000/rs6000.h:272 +#: config/rs6000/rs6000.h:283 msgid "Use PowerPC instruction set" msgstr "Utiliser le jeu d'instructions du PowerPC" -#: config/rs6000/rs6000.h:275 +#: config/rs6000/rs6000.h:286 msgid "Do not use PowerPC instruction set" msgstr "Ne pas utiliser le jeu d'instructions du PowerPC" -#: config/rs6000/rs6000.h:277 +#: config/rs6000/rs6000.h:288 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:279 +#: config/rs6000/rs6000.h:290 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:281 +#: config/rs6000/rs6000.h:292 msgid "Use PowerPC Graphics group optional instructions" msgstr "Utiliser le groupe d'instructions graphiques optionnelles du PowerPC" -#: config/rs6000/rs6000.h:283 +#: config/rs6000/rs6000.h:294 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:285 +#: config/rs6000/rs6000.h:296 msgid "Use PowerPC-64 instruction set" msgstr "Utiliser le jeu d'instructions du PowerPC-64" -#: config/rs6000/rs6000.h:287 +#: config/rs6000/rs6000.h:298 msgid "Do not use PowerPC-64 instruction set" msgstr "Ne pas utiliser le jeu d'instructions du PowerPC-64" -#: config/rs6000/rs6000.h:289 +#: config/rs6000/rs6000.h:300 msgid "Use AltiVec instructions" msgstr "Utiliser les instructions AltiVec" -#: config/rs6000/rs6000.h:291 +#: config/rs6000/rs6000.h:302 msgid "Do not use AltiVec instructions" msgstr "Ne pas utiliser les instructions AltiVec" -#: config/rs6000/rs6000.h:293 +#: config/rs6000/rs6000.h:304 msgid "Use new mnemonics for PowerPC architecture" msgstr "Utiliser les nouvelles mnémoniques pour l'architecture du PowerPC" -#: config/rs6000/rs6000.h:295 +#: config/rs6000/rs6000.h:306 msgid "Use old mnemonics for PowerPC architecture" msgstr "Utiliser les anciennes mnémoniques pour l'architecture du PowerPC" -#: config/rs6000/rs6000.h:298 +#: config/rs6000/rs6000.h:309 msgid "Put everything in the regular TOC" msgstr "Place tout dans le TOC régulier" -#: config/rs6000/rs6000.h:300 +#: config/rs6000/rs6000.h:311 msgid "Place floating point constants in TOC" msgstr "Placer les constantes en virgule flottante dans le TOC" -#: config/rs6000/rs6000.h:302 +#: config/rs6000/rs6000.h:313 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:304 +#: config/rs6000/rs6000.h:315 msgid "Place symbol+offset constants in TOC" msgstr "Placer les constantes symboles+décalages dans le TOC" -#: config/rs6000/rs6000.h:306 +#: config/rs6000/rs6000.h:317 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:312 +#: config/rs6000/rs6000.h:323 msgid "Place variable addresses in the regular TOC" msgstr "Placer les adresses variables dans un TOC régulier" -#: config/rs6000/rs6000.h:318 +#: config/rs6000/rs6000.h:329 msgid "Generate load/store multiple instructions" msgstr "Générer les instructions multiples de chargement/stockage" -#: config/rs6000/rs6000.h:320 +#: config/rs6000/rs6000.h:331 msgid "Do not generate load/store multiple instructions" msgstr "Ne pas générer les instructions multiples de chargement/stockage" -#: config/rs6000/rs6000.h:322 +#: config/rs6000/rs6000.h:333 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:324 +#: config/rs6000/rs6000.h:335 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:326 +#: config/rs6000/rs6000.h:337 msgid "Generate load/store with update instructions" msgstr "Générer les instructions de mise à jour de chargement/stockage" -#: config/rs6000/rs6000.h:328 +#: config/rs6000/rs6000.h:339 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:332 +#: config/rs6000/rs6000.h:343 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 +#: config/rs6000/rs6000.h:347 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:342 +#: config/rs6000/rs6000.h:353 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:344 +#: config/rs6000/rs6000.h:355 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:350 +#: config/rs6000/rs6000.h:361 msgid "Generate single field mfcr instruction" msgstr "Générer des instructions à champ simple mfcr" -#: config/rs6000/rs6000.h:352 +#: config/rs6000/rs6000.h:363 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:654 +#: config/rs6000/rs6000.h:447 config/sparc/sparc.h:654 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:438 +#: config/rs6000/rs6000.h:450 msgid "Enable debug output" msgstr "Autoriser la sortie lors de la mise au point" -#: config/rs6000/rs6000.h:440 +#: config/rs6000/rs6000.h:452 msgid "Select full, part, or no traceback table" msgstr "Sélectionner « full », « part » ou « none »" -#: config/rs6000/rs6000.h:441 +#: config/rs6000/rs6000.h:453 msgid "Specify ABI to use" msgstr "Spécifier l'ABI à utiliser" -#: config/rs6000/rs6000.h:443 +#: config/rs6000/rs6000.h:455 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:445 +#: config/rs6000/rs6000.h:457 msgid "Specify yes/no if isel instructions should be generated" msgstr "Spécifier yes (pour oui)/ no (pour non) si les instruction isel doivent être générés" -#: config/rs6000/rs6000.h:447 +#: config/rs6000/rs6000.h:459 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:449 +#: config/rs6000/rs6000.h:461 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 +#: config/rs6000/rs6000.h:463 msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec" 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:453 +#: config/rs6000/rs6000.h:465 msgid "Avoid all range limits on call instructions" msgstr "Éviter toutes les limites sur les instructions d'appel" -#: config/rs6000/rs6000.h:456 +#: config/rs6000/rs6000.h:468 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 +#: config/rs6000/rs6000.h:470 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 +#: config/rs6000/rs6000.h:472 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 +#: config/rs6000/rs6000.h:474 msgid "Specify scheduling priority for dispatch slot restricted insns" msgstr "Spécifier la priorité d'ordonnancement pour la répartition de fentes insns restreintes" @@ -12150,7 +12147,7 @@ msgstr "Sp #. 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:1929 +#: config/rs6000/rs6000.h:1923 msgid "RETURN_ADDRESS_OFFSET not supported" msgstr "RETURN_ADDRESS_OFFSET n'est pas supporté" @@ -12417,28 +12414,28 @@ msgstr "interdire les instructions fusionn msgid "enable fused multiply/add instructions" msgstr "autoriser les instructions fusionnés de multiplication/addition" -#: config/sh/sh.c:5841 +#: config/sh/sh.c:5977 msgid "__builtin_saveregs not supported by this subtarget" msgstr "__builtin_saveregs n'est pas supporté par la sous-cible" -#: config/sh/sh.c:6743 +#: config/sh/sh.c:6879 msgid "attribute interrupt_handler is not compatible with -m5-compact" 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:6765 config/sh/sh.c:6800 +#: config/sh/sh.c:6901 config/sh/sh.c:6936 #, 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:6772 +#: config/sh/sh.c:6908 #, 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:6807 +#: config/sh/sh.c:6943 #, c-format msgid "`%s' attribute argument not an integer constant" msgstr "l'attribut « %s » de l'argument n'est pas une contante entière" @@ -12463,61 +12460,61 @@ msgstr "-mlong-double-64 n'est pas permis avec -m64" 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:6793 config/sparc/sparc.c:6799 +#: config/sparc/sparc.c:6818 config/sparc/sparc.c:6824 #, c-format msgid "invalid %%Y operand" msgstr "opérande %%Y invalide" -#: config/sparc/sparc.c:6869 +#: config/sparc/sparc.c:6894 #, c-format msgid "invalid %%A operand" msgstr "opérande %%A invalide" -#: config/sparc/sparc.c:6879 +#: config/sparc/sparc.c:6904 #, c-format msgid "invalid %%B operand" msgstr "Opérande %%B invalide" -#: config/sparc/sparc.c:6918 +#: config/sparc/sparc.c:6943 #, c-format msgid "invalid %%c operand" msgstr "opérande %%c invalide" -#: config/sparc/sparc.c:6919 +#: config/sparc/sparc.c:6944 #, c-format msgid "invalid %%C operand" msgstr "opérande %%C invalide" -#: config/sparc/sparc.c:6940 +#: config/sparc/sparc.c:6965 #, c-format msgid "invalid %%d operand" msgstr "opérande %%d invalide" -#: config/sparc/sparc.c:6941 +#: config/sparc/sparc.c:6966 #, c-format msgid "invalid %%D operand" msgstr "opérande %%D invalide" -#: config/sparc/sparc.c:6957 +#: config/sparc/sparc.c:6982 #, c-format msgid "invalid %%f operand" msgstr "opérande %%f invalide" -#: config/sparc/sparc.c:6971 +#: config/sparc/sparc.c:6996 #, c-format msgid "invalid %%s operand" msgstr "opérande %%s invalide" -#: config/sparc/sparc.c:7025 +#: config/sparc/sparc.c:7050 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:7028 +#: config/sparc/sparc.c:7053 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:92 -#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216 +#: config/sparc/freebsd.h:82 config/sparc/linux.h:92 +#: config/sparc/linux64.h:107 config/sparc/netbsd-elf.h:216 msgid "Use 128 bit long doubles" msgstr "Utiliser des longs doubles de 128 bits" @@ -12893,56 +12890,56 @@ msgstr "Initialiser la taille maximale des donn 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:1828 +#: config/xtensa/xtensa.c:1829 msgid "boolean registers required for the floating-point option" msgstr "registres booléens requis pour l'option de virgule flottante" -#: config/xtensa/xtensa.c:1882 +#: config/xtensa/xtensa.c:1883 #, 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:1887 +#: config/xtensa/xtensa.c:1888 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:1957 +#: config/xtensa/xtensa.c:1958 #, c-format msgid "invalid %%D value" msgstr "valeur %%D invalide" -#: config/xtensa/xtensa.c:1994 +#: config/xtensa/xtensa.c:1995 msgid "invalid mask" msgstr "masque invalide" -#: config/xtensa/xtensa.c:2020 +#: config/xtensa/xtensa.c:2021 #, c-format msgid "invalid %%x value" msgstr "valeur %%x invalide" -#: config/xtensa/xtensa.c:2027 +#: config/xtensa/xtensa.c:2028 #, c-format msgid "invalid %%d value" msgstr "valeur %%d invalide" -#: config/xtensa/xtensa.c:2048 config/xtensa/xtensa.c:2058 +#: config/xtensa/xtensa.c:2049 config/xtensa/xtensa.c:2059 #, c-format msgid "invalid %%t/%%b value" msgstr "valeur %%t/%%b invalide" -#: config/xtensa/xtensa.c:2100 +#: config/xtensa/xtensa.c:2101 msgid "invalid address" msgstr "adresse invalide" -#: config/xtensa/xtensa.c:2125 +#: config/xtensa/xtensa.c:2126 msgid "no register in address" msgstr "pas de registre dans l'adresse" -#: config/xtensa/xtensa.c:2133 +#: config/xtensa/xtensa.c:2134 msgid "address offset not a constant" msgstr "décalage d'adresse n'est pas une constante" -#: config/xtensa/xtensa.c:2744 +#: config/xtensa/xtensa.c:2745 msgid "only uninitialized variables can be placed in a .bss section" msgstr "seules les variables non initialisées peuvent être placées dans une section .bss" @@ -13161,93 +13158,93 @@ msgstr "ne peut lier le champs empaquet msgid "cannot bind rvalue `%E' to `%T'" msgstr "ne peut lier la rvalue « %E » avec « %T »" -#: cp/call.c:4173 +#: cp/call.c:4170 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 « ... »; l'appel échouera lors de l'éxecution" #. Undefined behavior [expr.call] 5.2.2/7. -#: cp/call.c:4197 +#: cp/call.c:4196 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:4237 +#: cp/call.c:4240 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:4432 +#: cp/call.c:4437 msgid "passing `%T' as `this' argument of `%#D' discards qualifiers" msgstr "passant « %T» comme «cet» argument de « %#D » écarte les qualificateurs" -#: cp/call.c:4451 +#: cp/call.c:4456 msgid "`%T' is not an accessible base of `%T'" msgstr "« %T » est une base accessible de « %T »" -#: cp/call.c:4720 +#: cp/call.c:4725 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:4975 +#: cp/call.c:4980 msgid "call to non-function `%D'" msgstr "appel à une non fonction « %D »" -#: cp/call.c:5001 +#: cp/call.c:5006 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:5079 +#: cp/call.c:5084 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:5096 +#: cp/call.c:5101 #, c-format msgid "call of overloaded `%s(%A)' is ambiguous" msgstr "appel du surchargé « %s(%A) » est ambiguë" -#: cp/call.c:5117 +#: cp/call.c:5122 msgid "cannot call member function `%D' without object" msgstr "ne peut appeler la fonction membre « %D » sans objet" -#: cp/call.c:5702 +#: cp/call.c:5707 msgid "passing `%T' chooses `%T' over `%T'" msgstr "passant « %T » à choisit « %T » au lieu de « %T »" -#: cp/call.c:5704 cp/name-lookup.c:4143 +#: cp/call.c:5709 cp/name-lookup.c:4155 msgid " in call to `%D'" msgstr " dans l'appel de « %D »" -#: cp/call.c:5761 +#: cp/call.c:5766 msgid "choosing `%D' over `%D'" msgstr "choix de « %D » à la place de « %D »" -#: cp/call.c:5762 +#: cp/call.c:5767 msgid " for conversion from `%T' to `%T'" msgstr " pour la conversion de « %T » vers « %T »" -#: cp/call.c:5764 +#: cp/call.c:5769 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:5884 +#: cp/call.c:5889 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:5888 +#: cp/call.c:5893 msgid "candidate 1:" msgstr "candidat 1:" -#: cp/call.c:5889 +#: cp/call.c:5894 msgid "candidate 2:" msgstr "candidat 2:" -#: cp/call.c:5998 +#: cp/call.c:6003 msgid "could not convert `%E' to `%T'" msgstr "ne peut convertir « %E » vers « %T »" -#: cp/call.c:6103 +#: cp/call.c:6108 msgid "invalid initialization of non-const reference of type '%T' from a temporary of 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:6107 +#: cp/call.c:6112 msgid "invalid initialization of reference of type '%T' from expression of type '%T'" msgstr "initialisation invalide de référence d'un type « %T » à partir d'une expression de type « %T »" @@ -13333,15 +13330,15 @@ msgstr " msgid " by `%D'" msgstr " par « %D »" -#: cp/class.c:2484 cp/decl2.c:1160 +#: cp/class.c:2484 cp/decl2.c:1161 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" -#: cp/class.c:2490 cp/decl2.c:1167 +#: cp/class.c:2490 cp/decl2.c:1168 msgid "private member `%#D' in anonymous union" msgstr "membre privé « %#D » dans une union anonyme" -#: cp/class.c:2493 cp/decl2.c:1169 +#: cp/class.c:2493 cp/decl2.c:1170 msgid "protected member `%#D' in anonymous union" msgstr "membre protégé « %#D » dans une union anonyme" @@ -13441,99 +13438,99 @@ msgstr " ou msgid " but does not override `operator=(const %T&)'" msgstr " mais n'écrase pas « operator=(const %T&) »" -#: cp/class.c:3513 +#: cp/class.c:3517 msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC" 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:3623 +#: cp/class.c:3627 msgid "class `%T' will be considered nearly empty in a future version of GCC" msgstr "classe « %T » devra être considérée pratiquement vide dans une version future de GCC" -#: cp/class.c:3710 +#: cp/class.c:3714 msgid "initializer specified for non-virtual method `%D'" msgstr "initialisation spécifiée pour une méthode non virtuelle « %D »" -#: cp/class.c:4398 +#: cp/class.c:4402 msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC" 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:4488 +#: cp/class.c:4492 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:4501 +#: cp/class.c:4505 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:4675 +#: cp/class.c:4679 msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC" 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:4714 +#: cp/class.c:4718 msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC" 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:4737 +#: cp/class.c:4741 msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC" 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:4746 +#: cp/class.c:4750 msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC" 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:4805 +#: cp/class.c:4809 msgid "layout of classes derived from empty class `%T' may change in a future version of GCC" 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:4935 cp/semantics.c:2044 +#: cp/class.c:4939 cp/semantics.c:2044 msgid "redefinition of `%#T'" msgstr "redéfinition de « %#T »" -#: cp/class.c:5105 +#: cp/class.c:5109 msgid "`%#T' has virtual functions but non-virtual destructor" msgstr "« %#T » a des fonctions virtuelles mais un destructeur non virtuel" -#: cp/class.c:5184 +#: cp/class.c:5188 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:5626 +#: cp/class.c:5630 #, c-format msgid "language string `\"%s\"' not recognized" msgstr "chaîne du langage « \"%s\" » n'est pas reconnue" -#: cp/class.c:5714 +#: cp/class.c:5718 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:5839 +#: cp/class.c:5843 msgid "no matches converting function `%D' to type `%#T'" msgstr "pas de concordance de conversion de fonction « %D » vers le type « %#T »" -#: cp/class.c:5862 +#: cp/class.c:5866 msgid "converting overloaded function `%D' to type `%#T' is ambiguous" msgstr "conversion d'une fonction surchargée « %D » vers le type « %#T » est ambiguë" -#: cp/class.c:5888 +#: cp/class.c:5892 msgid "assuming pointer to member `%D'" msgstr "pointeur assumé vers le membre « %D »" -#: cp/class.c:5891 +#: cp/class.c:5895 #, 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:5936 cp/class.c:6118 cp/class.c:6125 +#: cp/class.c:5940 cp/class.c:6122 cp/class.c:6129 msgid "not enough type information" msgstr "pas assez d'information sur le type" -#: cp/class.c:5953 +#: cp/class.c:5957 msgid "argument of type `%T' does not match `%T'" msgstr "argument de type « %T » ne concorde pas avec « %T »" -#: cp/class.c:6102 +#: cp/class.c:6106 msgid "invalid operation on uninstantiated type" msgstr "opération invalide sur un type non instancié" @@ -13542,11 +13539,11 @@ msgstr "op #. 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:6360 cp/decl.c:1222 cp/name-lookup.c:502 cp/pt.c:2097 +#: cp/class.c:6364 cp/decl.c:1222 cp/name-lookup.c:514 cp/pt.c:2097 msgid "declaration of `%#D'" msgstr "déclaration de « %#D »" -#: cp/class.c:6361 +#: cp/class.c:6365 msgid "changes meaning of `%D' from `%+#D'" msgstr "changements signifiant de « %D » à partir de « %+#D »" @@ -13606,45 +13603,45 @@ msgstr " 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:850 +#: cp/cvt.c:852 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:853 +#: cp/cvt.c:855 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:869 +#: cp/cvt.c:871 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:885 +#: cp/cvt.c:887 #, 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:891 +#: cp/cvt.c:893 #, 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:898 +#: cp/cvt.c:900 #, c-format msgid "%s has no effect" msgstr "%s n'a pas d'effet" -#: cp/cvt.c:1009 +#: cp/cvt.c:1011 msgid "converting NULL to non-pointer type" msgstr "conversion d'un NULL vers un type non pointeur" -#: cp/cvt.c:1082 +#: cp/cvt.c:1084 msgid "ambiguous default type conversion from `%T'" msgstr "conversion de type par défaut ambiguë à partir de « %T »" -#: cp/cvt.c:1084 +#: cp/cvt.c:1086 msgid " candidate conversions include `%D' and `%D'" msgstr " conversions de candidat inclut « %D » et « %D »" @@ -13706,9 +13703,9 @@ msgstr "d #: cp/decl.c:1339 msgid "declaration of template `%#D'" -msgstr "déclaration du canevas « %#D »" +msgstr "déclaration du patron « %#D »" -#: cp/decl.c:1340 cp/name-lookup.c:503 +#: cp/decl.c:1340 cp/name-lookup.c:515 msgid "conflicts with previous declaration `%#D'" msgstr "conflits avec la déclaration précédente de « %#D »" @@ -13867,11 +13864,11 @@ msgstr " #: cp/decl.c:2625 cp/parser.c:3182 msgid "`%D' used without template parameters" -msgstr "« %D » utilisé sans canevas de paramétres" +msgstr "« %D » utilisé sans patron de paramétres" #: cp/decl.c:2635 cp/decl.c:2651 cp/decl.c:2739 msgid "no class template named `%#T' in `%#T'" -msgstr "pas de canevas de classe nommé « %#T » in « %#T »" +msgstr "pas de patron de classe nommé « %#T » in « %#T »" #: cp/decl.c:2672 cp/decl.c:2682 cp/decl.c:2702 msgid "no type named `%#T' in `%#T'" @@ -13925,7 +13922,7 @@ msgstr " 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:3721 cp/decl2.c:854 +#: cp/decl.c:3721 cp/decl2.c:855 msgid "typedef `%D' is initialized (use __typeof__ instead)" msgstr "typedef « %D » est initialisé (use __typeof__ instead)" @@ -14110,7 +14107,7 @@ msgstr " #: cp/decl.c:5571 msgid "cannot declare `::main' to be a template" -msgstr "ne peut déclarer « ::main » comme étant un canevas" +msgstr "ne peut déclarer « ::main » comme étant un patron" #: cp/decl.c:5573 msgid "cannot declare `::main' to be inline" @@ -14147,21 +14144,21 @@ msgstr "d #. Something like `template friend void f()'. #: cp/decl.c:5673 msgid "invalid use of template-id `%D' in declaration of primary template" -msgstr "utilisation invalide du template-id « %D » dans la déclaration du canevas primaire" +msgstr "utilisation invalide du template-id « %D » dans la déclaration du patron primaire" #: cp/decl.c:5700 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 canevas « %D »" +msgstr "arguments par défaut ne sont pas permis dans la déclaration amie de la spécialisation du patron « %D »" #: cp/decl.c:5707 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 canevas « %D »" +msgstr "« inline» n'estpas permis dans la déclaration amie de la spécialisation du patron « %D »" #: cp/decl.c:5765 msgid "definition of implicitly-declared `%D'" msgstr "définition implicitement déclarée « %D »" -#: cp/decl.c:5785 cp/decl2.c:737 +#: cp/decl.c:5785 cp/decl2.c:738 msgid "no `%#D' member function declared in class `%T'" msgstr "pas de fonction membre « %#D » déclarée dans la classe « %T »" @@ -14432,156 +14429,156 @@ msgstr "ne peut d msgid "cannot declare pointer to `%#T' member" msgstr "ne peut déclarer un pointeur vers le membre « %#T »" -#: cp/decl.c:7654 +#: cp/decl.c:7655 msgid "extra qualification `%T::' on member `%s' ignored" msgstr "qualification additionnelle « %T:: » sur le membre « %s » est ignorée" -#: cp/decl.c:7670 +#: cp/decl.c:7671 msgid "cannot declare member function `%T::%s' within `%T'" msgstr "ne peut déclarer la fonction membre « %T::%s » à l'intérieur de « %T »" -#: cp/decl.c:7685 +#: cp/decl.c:7686 msgid "cannot declare member `%T::%s' within `%T'" msgstr "ne peut déclarer le membre « %T::%s » à l'intérieur de « %T »" -#: cp/decl.c:7765 +#: cp/decl.c:7766 msgid "data member may not have variably modified type `%T'" msgstr "membre de données peut ne pas avoir de type « %T » modifié de manière variable" -#: cp/decl.c:7767 +#: cp/decl.c:7768 msgid "parameter may not have variably modified type `%T'" 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:7775 +#: cp/decl.c:7776 msgid "only declarations of constructors can be `explicit'" msgstr "seuls les déclarations de constructeurs peuvent être « explicit »" -#: cp/decl.c:7783 +#: cp/decl.c:7784 #, c-format msgid "non-member `%s' cannot be declared `mutable'" msgstr "le non membre « %s » ne peut être déclaré « mutable »" -#: cp/decl.c:7788 +#: cp/decl.c:7789 #, 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:7794 +#: cp/decl.c:7795 #, c-format msgid "function `%s' cannot be declared `mutable'" msgstr "fonction « %s » ne peut être déclarée « mutable »" -#: cp/decl.c:7799 +#: cp/decl.c:7800 #, c-format msgid "static `%s' cannot be declared `mutable'" msgstr "static « %s » ne peut être déclaré « mutable »" -#: cp/decl.c:7804 +#: cp/decl.c:7805 #, c-format msgid "const `%s' cannot be declared `mutable'" msgstr "const « %s » ne peut être déclaré « mutable »" -#: cp/decl.c:7817 +#: cp/decl.c:7818 msgid "template-id `%D' used as a declarator" -msgstr "identificateur de canevas « %D » utilisé comme déclarateur" +msgstr "identificateur de patron « %D » utilisé comme déclarateur" -#: cp/decl.c:7838 +#: cp/decl.c:7839 msgid "ISO C++ forbids nested type `%D' with same name as enclosing class" msgstr "ISO C++ interdit le type imbriqué « %D » avec le même nom que la classe de fermeture" -#: cp/decl.c:7846 +#: cp/decl.c:7847 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:7892 +#: cp/decl.c:7893 msgid "%Jinvalid type qualifier for non-member function type" msgstr "%Jqualificateur de type invalide pour un type de fonction non membre" -#: cp/decl.c:7955 +#: cp/decl.c:7956 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:7960 +#: cp/decl.c:7961 msgid "`inline' specified for friend class declaration" msgstr "« inline » spécifié pour la déclaration d'une classe amie" -#: cp/decl.c:7968 +#: cp/decl.c:7969 msgid "template parameters cannot be friends" -msgstr "paramètres du canevas ne peuvent pas être amis" +msgstr "paramètres du patron ne peuvent pas être amis" -#: cp/decl.c:7970 +#: cp/decl.c:7971 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::%D »" -#: cp/decl.c:7974 +#: cp/decl.c:7975 msgid "friend declaration requires class-key, i.e. `friend %#T'" msgstr "déclaration amie requiert une clé de classes, i.e. « friend %#T »" -#: cp/decl.c:7987 +#: cp/decl.c:7988 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:7998 +#: cp/decl.c:7999 msgid "invalid qualifiers on non-member function type" msgstr "qualificteurs invalide pour un type de fonction (autre que fonction membre)" -#: cp/decl.c:8017 +#: cp/decl.c:8018 msgid "abstract declarator `%T' used as declaration" msgstr "déclaration abstrait « %T » utilisé dans la déclaration" -#: cp/decl.c:8029 +#: cp/decl.c:8030 msgid "unnamed variable or field declared void" msgstr "variable non nommée ou champ déclaré void" -#: cp/decl.c:8038 +#: cp/decl.c:8039 msgid "variable or field declared void" msgstr "variable ou champ déclaré void" -#: cp/decl.c:8048 +#: cp/decl.c:8049 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:8093 +#: cp/decl.c:8094 msgid "invalid use of `::'" msgstr "utilisation invalide de « :: »" -#: cp/decl.c:8105 +#: cp/decl.c:8106 msgid "function `%D' cannot be declared friend" msgstr "fonction « %D » ne peut être déclarée amie" -#: cp/decl.c:8117 +#: cp/decl.c:8118 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:8126 +#: cp/decl.c:8127 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:8135 +#: cp/decl.c:8136 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:8214 +#: cp/decl.c:8215 msgid "field `%D' has incomplete type" msgstr "champ « %D » a un type incomplet" -#: cp/decl.c:8216 +#: cp/decl.c:8217 msgid "name `%T' has incomplete type" msgstr "nom « %T » a un type incomplet" -#: cp/decl.c:8225 +#: cp/decl.c:8226 msgid " in instantiation of template `%T'" -msgstr " dans l'instanciation du canevas « %T »" +msgstr " dans l'instanciation du patron « %T »" -#: cp/decl.c:8235 +#: cp/decl.c:8236 #, 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:8246 +#: cp/decl.c:8247 msgid "member functions are implicitly friends of their class" msgstr "les fonctions membres sont implicitement amis de leur classe" @@ -14597,91 +14594,91 @@ 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:8286 +#: cp/decl.c:8287 msgid "ISO C++ forbids initialization of member `%D'" msgstr "ISO C++ interdit l'initialisation du membre « %D »" -#: cp/decl.c:8288 +#: cp/decl.c:8289 msgid "making `%D' static" msgstr "rendant « %D » statique" -#: cp/decl.c:8344 +#: cp/decl.c:8345 #, c-format msgid "storage class `auto' invalid for function `%s'" msgstr "classe de stockage « auto» invalide pour une fonction « %s »" -#: cp/decl.c:8346 +#: cp/decl.c:8347 #, c-format msgid "storage class `register' invalid for function `%s'" msgstr "classe de stockage « register» invalide pour une fonction « %s »" -#: cp/decl.c:8348 +#: cp/decl.c:8349 #, c-format msgid "storage class `__thread' invalid for function `%s'" msgstr "classe de stockage « __thread » invalide pour la fonction « %s »" -#: cp/decl.c:8359 +#: cp/decl.c:8360 #, 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:8361 +#: cp/decl.c:8362 #, 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:8368 +#: cp/decl.c:8369 #, c-format msgid "virtual non-class function `%s'" msgstr "fonction virtuelle d'une non classe « %s »" -#: cp/decl.c:8399 +#: cp/decl.c:8400 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:8405 +#: cp/decl.c:8406 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:8433 +#: cp/decl.c:8434 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:8439 +#: cp/decl.c:8440 msgid "static member `%D' declared `register'" msgstr "mambre statique « %D» déclaré «register »" -#: cp/decl.c:8444 +#: cp/decl.c:8445 msgid "cannot explicitly declare member `%#D' to have extern linkage" msgstr "ne peut explicitement déclarer le membre « %#D » comme ayant une liaison externe" -#: cp/decl.c:8584 +#: cp/decl.c:8585 msgid "default argument for `%#D' has type `%T'" msgstr "argument par défaut pour « %#D » à un type « %T »" -#: cp/decl.c:8587 +#: cp/decl.c:8588 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:8604 +#: cp/decl.c:8605 msgid "default argument `%E' uses local variable `%D'" msgstr "argument par défaut « %E » utiliser une variable locale « %D »" -#: cp/decl.c:8648 +#: cp/decl.c:8649 #, c-format msgid "invalid string constant `%E'" msgstr "constante chaîne invalide « %E »" -#: cp/decl.c:8650 +#: cp/decl.c:8651 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:8688 +#: cp/decl.c:8689 msgid "parameter `%D' invalidly declared method type" msgstr "paramètre « %D » incorrectement validé comme type de méthode" -#: cp/decl.c:8712 +#: cp/decl.c:8713 msgid "parameter `%D' includes %s to array of unknown bound `%T'" msgstr "paramètre « %D » inclut %s au tableau de bornes inconnues « %T »" @@ -14700,93 +14697,93 @@ msgstr "param #. 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:8871 +#: cp/decl.c:8872 msgid "invalid constructor; you probably meant `%T (const %T&)'" msgstr "constructeur invalide; vous vouliez probablement dire « %T (const %T&) »" -#: cp/decl.c:8999 +#: cp/decl.c:9000 msgid "`%D' must be a nonstatic member function" msgstr "« %D » doit être une fonction membre non statique" -#: cp/decl.c:9005 +#: cp/decl.c:9006 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:9022 +#: cp/decl.c:9023 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:9057 +#: cp/decl.c:9058 #, 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:9064 +#: cp/decl.c:9065 msgid "ISO C++ prohibits overloading operator ?:" msgstr "ISO C++ interdit la surcharge de l'opérateur ?:" -#: cp/decl.c:9114 +#: cp/decl.c:9115 msgid "postfix `%D' must take `int' as its argument" msgstr "postfixe « %D» doit prendre « int » comme argument" -#: cp/decl.c:9118 +#: cp/decl.c:9119 msgid "postfix `%D' must take `int' as its second argument" msgstr "postfixe « %D» doit prndre « int » pour son second argument" -#: cp/decl.c:9125 +#: cp/decl.c:9126 msgid "`%D' must take either zero or one argument" msgstr "« %D » doit prendre seulement zéro ou un autre argument" -#: cp/decl.c:9127 +#: cp/decl.c:9128 msgid "`%D' must take either one or two arguments" msgstr "« %D » doit prendre seulement un OU deux arguments" -#: cp/decl.c:9148 +#: cp/decl.c:9149 msgid "prefix `%D' should return `%T'" msgstr "préfixe « %D » devrait retourner « %T »" -#: cp/decl.c:9154 +#: cp/decl.c:9155 msgid "postfix `%D' should return `%T'" msgstr "postfixe « %D » devrait retourner « %T »" -#: cp/decl.c:9163 +#: cp/decl.c:9164 msgid "`%D' must take `void'" msgstr "« %D» doit prendre « void »" -#: cp/decl.c:9165 cp/decl.c:9173 +#: cp/decl.c:9166 cp/decl.c:9174 msgid "`%D' must take exactly one argument" msgstr "« %D » doit prendre exactement un argument" -#: cp/decl.c:9175 +#: cp/decl.c:9176 msgid "`%D' must take exactly two arguments" msgstr "« %D » doit prendre exactemenr deux arguments" -#: cp/decl.c:9183 +#: cp/decl.c:9184 msgid "user-defined `%D' always evaluates both arguments" msgstr "« %D » défini par l'usager évalue toujours les 2 arguments" -#: cp/decl.c:9197 +#: cp/decl.c:9198 msgid "`%D' should return by value" msgstr "« %D » devrait retourner par valeur" -#: cp/decl.c:9209 cp/decl.c:9212 +#: cp/decl.c:9210 cp/decl.c:9213 msgid "`%D' cannot have default arguments" msgstr "« %D » ne peut avoir d'arguments par défaut" -#: cp/decl.c:9272 +#: cp/decl.c:9273 msgid "using typedef-name `%D' after `%s'" msgstr "utilisation d'un nom de typedef « %D » après « %s »" -#: cp/decl.c:9278 +#: cp/decl.c:9279 msgid "using template type parameter `%T' after `%s'" -msgstr "utilisation de type de canevas de paramètre « %T » après « %s »" +msgstr "utilisation de type de patron de paramètre « %T » après « %s »" -#: cp/decl.c:9286 +#: cp/decl.c:9287 msgid "`%T' referred to as `%s'" msgstr "« %TD » référé comme « %s »" -#: cp/decl.c:9292 +#: cp/decl.c:9293 msgid "`%T' referred to as enum" msgstr "« %T » référé comme enum" @@ -14797,43 +14794,47 @@ msgstr " #. void f(class C); // No template header here #. #. then the required template argument is missing. -#: cp/decl.c:9307 +#: cp/decl.c:9308 msgid "template argument required for `%s %T'" -msgstr "argument du canevas est requis pour « %s %T »" +msgstr "argument du patron est requis pour « %s %T »" -#: cp/decl.c:9452 +#: cp/decl.c:9453 msgid "use of enum `%#D' without previous declaration" msgstr "utilisation de enum « %#D » sans déclaration précédente" -#: cp/decl.c:9509 +#: cp/decl.c:9471 +msgid "redeclaration of `%T' as a non-template" +msgstr "redéclaration de « %T » qui n'est pas un patron" + +#: cp/decl.c:9517 msgid "derived union `%T' invalid" msgstr "union dérivée « %T » invalide" -#: cp/decl.c:9562 +#: cp/decl.c:9570 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:9570 +#: cp/decl.c:9578 msgid "recursive type `%T' undefined" msgstr "type récursif « %T » non défini" -#: cp/decl.c:9572 +#: cp/decl.c:9580 msgid "duplicate base type `%T' invalid" msgstr "duplication du type de base « %T » invalide" -#: cp/decl.c:9650 +#: cp/decl.c:9658 msgid "Java class '%T' cannot have multiple bases" msgstr "classe Java « %T » ne peut avoir de bases multiples" -#: cp/decl.c:9652 +#: cp/decl.c:9660 msgid "Java class '%T' cannot have virtual bases" msgstr "classe Java « %T » ne peut avoir de bases virtuelles" -#: cp/decl.c:9692 +#: cp/decl.c:9700 msgid "multiple definition of `%#T'" msgstr "définition multiple de « %#T »" -#: cp/decl.c:9693 +#: cp/decl.c:9701 msgid "%Jprevious definition here" msgstr "%Jdéfinition précédente ici" @@ -14841,47 +14842,47 @@ msgstr "%Jd #. #. IF no integral type can represent all the enumerator values, the #. enumeration is ill-formed. -#: cp/decl.c:9828 +#: cp/decl.c:9836 msgid "no integral type can represent all of the enumerator values for `%T'" msgstr "aucun type entier peut représenter toutes les valeurs de l'énumérateur pour « %T »" -#: cp/decl.c:9918 +#: cp/decl.c:9926 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:9938 +#: cp/decl.c:9946 msgid "overflow in enumeration values at `%D'" msgstr "débordement dans les valeurs de l'énumération à « %D »" -#: cp/decl.c:10007 +#: cp/decl.c:10015 msgid "return type `%#T' is incomplete" msgstr "type retourné « %#T » est incomplet" -#: cp/decl.c:10125 +#: cp/decl.c:10133 msgid "return type for `main' changed to `int'" msgstr "type retourné pour « main » est changé pour «int »" -#: cp/decl.c:10154 +#: cp/decl.c:10162 msgid "`%D' implicitly declared before its definition" msgstr "« %D » implicitement déclaré avant sa définition" -#: cp/decl.c:10176 cp/typeck.c:6023 +#: cp/decl.c:10184 cp/typeck.c:6071 msgid "`operator=' should return a reference to `*this'" msgstr "« operator= » devrait retourner une référence à «*ceci »" -#: cp/decl.c:10445 +#: cp/decl.c:10453 msgid "parameter `%D' declared void" msgstr "paramètre « %D » déclaré «void »" -#: cp/decl.c:10911 +#: cp/decl.c:10919 msgid "invalid member function declaration" msgstr "déclaration de membre de fonction invalide" -#: cp/decl.c:10928 +#: cp/decl.c:10936 msgid "`%D' is already defined in class `%T'" msgstr "« %D » est déjà défini dans la classe « %T »" -#: cp/decl.c:11141 +#: cp/decl.c:11149 msgid "static member function `%#D' declared with type qualifiers" msgstr "membre de fonction statique « %#D » déclaré avec des qualificateurs de tyep" @@ -14902,134 +14903,134 @@ msgstr "comversion ambigue pour un sous-tableau" msgid "invalid types `%T[%T]' for array subscript" msgstr "types invalides « %T[%T] » pour un sous-script de tableau" -#: cp/decl2.c:460 +#: cp/decl2.c:461 msgid "deleting array `%#D'" msgstr "destruction du tableau « %#D »" -#: cp/decl2.c:466 +#: cp/decl2.c:467 msgid "type `%#T' argument given to `delete', expected pointer" msgstr "type « %#T » de l'argument donné pour « delete », attendait un pointeur" -#: cp/decl2.c:478 +#: cp/decl2.c:479 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:485 +#: cp/decl2.c:486 msgid "deleting `%T' is undefined" msgstr "destruction de « %T » est indéfinie" #. 14.5.2.2 [temp.mem] #. #. A local class shall not have member templates. -#: cp/decl2.c:521 +#: cp/decl2.c:522 msgid "invalid declaration of member template `%#D' in local class" -msgstr "déclaration invalide du canevas de membre « %#D » dans la classe locale" +msgstr "déclaration invalide du patron de membre « %#D » dans la classe locale" -#: cp/decl2.c:530 +#: cp/decl2.c:531 msgid "invalid use of `virtual' in template declaration of `%#D'" -msgstr "utilisation invalide de « virtual» dans la déclaration d'un canevas de « %#D »" +msgstr "utilisation invalide de « virtual» dans la déclaration d'un patron de « %#D »" -#: cp/decl2.c:540 cp/pt.c:2834 +#: cp/decl2.c:541 cp/pt.c:2834 msgid "template declaration of `%#D'" -msgstr "déclaration du canevas de « %#D »" +msgstr "déclaration du patron de « %#D »" -#: cp/decl2.c:589 +#: cp/decl2.c:590 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:605 +#: cp/decl2.c:606 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:698 +#: cp/decl2.c:699 msgid "prototype for `%#D' does not match any in class `%T'" msgstr "prototype pour « %#D » ne concorde avec aucun dans la classe « %T »" -#: cp/decl2.c:777 +#: cp/decl2.c:778 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 »" -#: cp/decl2.c:785 +#: cp/decl2.c:786 msgid "initializer invalid for static member with constructor" msgstr "initialisation invalide pour un membre statique avec constructeur" -#: cp/decl2.c:788 +#: cp/decl2.c:789 msgid "(an out of class initialization is required)" msgstr "(une initialisation en dehors de la classe est requise)" -#: cp/decl2.c:871 +#: cp/decl2.c:872 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:888 +#: cp/decl2.c:889 msgid "`%D' is already defined in `%T'" msgstr "« %D » est déjà défini dans « %T »" -#: cp/decl2.c:935 +#: cp/decl2.c:936 msgid "field initializer is not constant" msgstr "l'initialisation du champ n'est pas une constante" -#: cp/decl2.c:963 +#: cp/decl2.c:964 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:1013 +#: cp/decl2.c:1014 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:1023 +#: cp/decl2.c:1024 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:1030 +#: cp/decl2.c:1031 msgid "`%D' is already defined in the class %T" msgstr "« %D » est déjà défini dans la classe %T" -#: cp/decl2.c:1037 +#: cp/decl2.c:1038 msgid "static member `%D' cannot be a bit-field" msgstr "membre statique « %D » ne peut être un champ de bits" -#: cp/decl2.c:1096 +#: cp/decl2.c:1097 msgid "initializer specified for non-member function `%D'" msgstr "initialisation spécifiée pour une fonction « %D » n'étant pas membre" -#: cp/decl2.c:1100 +#: cp/decl2.c:1101 msgid "invalid initializer for virtual method `%D'" msgstr "initialisation invalide pour la méthode virtuelle « %D »" -#: cp/decl2.c:1147 +#: cp/decl2.c:1148 msgid "anonymous struct not inside named type" msgstr "struct anonyme n'est pas l'intérieur du type nommé" -#: cp/decl2.c:1217 +#: cp/decl2.c:1218 msgid "namespace-scope anonymous aggregates must be static" msgstr "aggrégats anonymes de champs d'espace nom doit être statique" -#: cp/decl2.c:1224 +#: cp/decl2.c:1225 msgid "anonymous union with no members" msgstr "aggrégat anonyme sans aucun membre" -#: cp/decl2.c:1258 +#: cp/decl2.c:1259 msgid "`operator new' must return type `%T'" msgstr "« operator new » doit retourner un type « %T »" -#: cp/decl2.c:1266 +#: cp/decl2.c:1267 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:1292 +#: cp/decl2.c:1293 msgid "`operator delete' must return type `%T'" msgstr "« operator delete » doit retourner le type « %T »" -#: cp/decl2.c:1300 +#: cp/decl2.c:1301 msgid "`operator delete' takes type `%T' as first parameter" msgstr "« operator delete » prend le type « %T » comme premier paramètre" -#: cp/decl2.c:2807 +#: cp/decl2.c:2810 msgid "inline function `%D' used but never defined" msgstr "fonction enligne « %D » utilisé mais n'a jamais été défini" -#: cp/decl2.c:2953 +#: cp/decl2.c:2956 msgid "default argument missing for parameter %P of `%+#D'" msgstr "argument par défaut manquant pour le paramètre %P de « %+#D »" @@ -15061,7 +15062,7 @@ msgstr "m msgid "throwing NULL, which has integral, not pointer type" msgstr "retounrnant NULL (par throw), lequel est entier, pas de type pointeur" -#: cp/except.c:598 cp/init.c:2037 +#: cp/except.c:598 cp/init.c:2038 msgid "`%D' should never be overloaded" msgstr "« %D » ne devrait jamais être surchargé" @@ -15069,19 +15070,19 @@ msgstr " msgid " in thrown expression" msgstr " dans l'expression projetée" -#: cp/except.c:811 +#: cp/except.c:812 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:893 +#: cp/except.c:894 msgid "exception of type `%T' will be caught" msgstr "exception du type « %T » sera interceptée" -#: cp/except.c:896 +#: cp/except.c:897 msgid " by earlier handler for `%T'" msgstr " par un handler antérieur pour « %T »" -#: cp/except.c:917 +#: cp/except.c:918 msgid "`...' handler must be the last handler for its try block" msgstr "« ... » handler doit être le dernier handler de son bloc d'essai" @@ -15089,55 +15090,55 @@ msgstr " msgid "`%D' is already a friend of class `%T'" msgstr "« %D » est déjà un ami de la classe « %T »" -#: cp/friend.c:202 +#: cp/friend.c:206 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:218 +#: cp/friend.c:222 msgid "partial specialization `%T' declared `friend'" msgstr "spécialisation partielle « %T» déclarée «friend »" -#: cp/friend.c:228 +#: cp/friend.c:232 msgid "class `%T' is implicitly friends with itself" msgstr "classe « %T » est implicitement ami avec elle-même" #. template friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 msgid "typename type `%#T' declared `friend'" msgstr "type typename « %#T» déclaré «friend »" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 msgid "template parameter type `%T' declared `friend'" -msgstr "type paramètre du canevas « %T» déclaré «friend »" +msgstr "type paramètre du patron « %T» déclaré «friend »" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 msgid "`%#T' is not a template" -msgstr "« %#T » n'est pas un canevas" +msgstr "« %#T » n'est pas un patron" -#: cp/friend.c:277 +#: cp/friend.c:281 msgid "`%D' is already a friend of `%T'" msgstr "« %D » est déjà un ami de « %T »" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "« %T » est déjà un ami de « %T »" -#: cp/friend.c:409 +#: 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:465 +#: cp/friend.c:469 msgid "friend declaration `%#D' declares a non-template function" -msgstr "déclaration amie « %#D » déclare une fonction non canevas" +msgstr "déclaration amie « %#D » déclare une fonction non patron" -#: cp/friend.c:468 +#: cp/friend.c:472 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 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" +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" #: cp/g++spec.c:229 java/jvspec.c:415 #, c-format @@ -15256,7 +15257,7 @@ msgstr " msgid "type `%T' is of non-aggregate type" msgstr "type « %T » est un type qui n'est pas d'aggrégat" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "type qualifé « %T » ne concorde pas le nom du destructeur «~%T»" @@ -15292,72 +15293,71 @@ msgstr "taille d'un nouveau tableau (new) doit avoir un type entier" msgid "zero size array reserves no space" msgstr "tableau de taille zéro ne réserve pas d'espace" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "new ne peut être appliqué à un type référencé" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "new ne peut être appliqué à un type de fonction" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "appel d'un constructeur Java, alors que « jclass » est indéfini" -#: cp/init.c:1876 +#: cp/init.c:1877 msgid "can't find class$" msgstr "ne peut repérer class$" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "type « void » invalide pour new" -#: cp/init.c:2013 +#: cp/init.c:2014 msgid "uninitialized const in `new' of `%#T'" msgstr "constante non initialisée dans « new» pour « %#T »" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "appel au constructeur Java avec « %s » indéfini" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "« %D » non adapté ou ambiguë repéré dans la classe « %T »" + +#: cp/init.c:2083 msgid "request for member `%D' is ambiguous" msgstr "la requête pour le membre « %D » est ambiguë" -#: cp/init.c:2193 +#: cp/init.c:2203 msgid "ISO C++ forbids initialization in array new" msgstr "ISO C++ interdit l'initialisation d'un nouveau tableau" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "fin prématurée de l'initialisation" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "ne peut initialiser un table multi-dimensionnel avec initialiseur" -#: cp/init.c:2885 +#: cp/init.c:2895 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:2888 -msgid "neither the destructor nor the class-specific " -msgstr "ni le destructeur ni la classe spécifique" - -#: cp/init.c:2889 -msgid "operator delete will be called, even if they are " -msgstr "l'opérateur de destruction sera appellé, même s'ils sont " +#: cp/init.c:2898 +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:2890 -msgid "declared when the class is defined." -msgstr "déclarés lorsque la classe est définie." - -#: cp/init.c:2909 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "taille du tableau inconnue dans delete" -#: cp/init.c:3174 +#: cp/init.c:3184 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" @@ -15416,7 +15416,7 @@ msgstr "(Chaque identificateur non d #. 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" +msgstr "il n'y a pas d'argument à « %D » qui dépend d'un paramètre du patron, 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)" @@ -15446,11 +15446,11 @@ msgstr "constante non statique du membre 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:660 +#: cp/name-lookup.c:671 msgid "`%#D' used prior to declaration" msgstr "« %#D » utilisé précédemment avant sa déclaration" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 msgid "redeclaration of `wchar_t' as `%T'" msgstr "redéclaration de « wchar_t» comme « %T »" @@ -15460,232 +15460,232 @@ msgstr "red #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 msgid "invalid redeclaration of `%D'" msgstr "redéclaration invalide de « %D »" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "comme « %D »" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 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/name-lookup.c:813 +#: cp/name-lookup.c:824 msgid "previous external decl of `%#D'" msgstr "déclaration externe précédente de « %#D »" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 msgid "`%D' was previously implicitly declared to return `int'" msgstr "« %D » a été précédemment implicitement déclaré comme retournant un entier" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 msgid "extern declaration of `%#D' doesn't match" msgstr "déclaration externe de « %#D » ne concorde pas" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 msgid "global declaration `%#D'" msgstr "déclaration globale « %#D »" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 msgid "declaration of '%#D' shadows a parameter" msgstr "déclaration de « %#D » masque un paramètre" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 msgid "declaration of '%D' shadows a member of 'this'" msgstr "déclaration de « %D » masque un membre de « this »" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 msgid "declaration of '%D' shadows a previous local" msgstr "déclaration de « %D » masque la déclaration d'un local précédent" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 msgid "declaration of '%D' shadows a global declaration" msgstr "déclaration de « %D » masque une déclaration globale" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "recherche du nom « %D » a changé" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr " concorde avec « %D » selon les règles standards ISO" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr " concorde avec « %D » selon les vieilles règles" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 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 »" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 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:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr " utilisation de liaison obsolète à « %D »" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "%s %s(%E) %p %d\n" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, c-format msgid "%s %s %p %d\n" msgstr "%s %s %p %d\n" -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "XXX is_class_level != (current_scope == class_scope)\n" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 msgid "`%#D' hides constructor for `%#T'" msgstr "« %#D » cache un constructeur pour « %#T »" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "« %#D » en conflit avec une déclaration précédente « %#D »" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 msgid "previous non-function declaration `%#D'" msgstr "déclaration précédente d'un non fonction « %#D »" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 msgid "conflicts with function declaration `%#D'" msgstr "conflits avec la déclaration de fonction de « %#D »" #. 7.3.3/5 #. A using-declaration shall not name a template-id. -#: cp/name-lookup.c:2101 +#: cp/name-lookup.c:2112 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/name-lookup.c:2107 +#: cp/name-lookup.c:2118 msgid "namespace `%D' not allowed in using-declaration" msgstr "espace de noms « %D » n'est pas permis dans l'utilisation d'une déclaration" #. It's a nested name with template parameter dependent scope. #. This can only be using-declaration for class member. -#: cp/name-lookup.c:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "« %T » n'est pas un espace de noms" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 msgid "`%D' not declared" msgstr "« %D » n'est pas déclaré" #. If the OLD_FN was really declared, the #. declarations don't match. -#: cp/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "« %D » est déjà déclaré dans cette portée" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "l'utlisation de la déclaration « %D » introduit un type ambigu « %T »" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "« %#D » rédéclaré comme %C" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "« %D » a le même nom que la classe dans laquelle il est déclaré" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 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/name-lookup.c:2898 +#: cp/name-lookup.c:2909 msgid "using-declaration cannot name destructor" msgstr "utilisation de déclaration ne peut nommer le destructeur" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 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:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "« %D » devrait avoir été déclaré à l'intérieur de « %D »" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 msgid "unknown namespace `%D'" msgstr "espace de nomes inconnu « %D »" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 msgid "namespace `%T' undeclared" msgstr "espace de noms « %T » n'est pas déclaré" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 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:3403 +#: cp/name-lookup.c:3414 msgid "`%D' attribute directive ignored" msgstr "« %D » attribut de directive ignoré" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 msgid "use of `%D' is ambiguous" msgstr "utilisation de « %D » est ambiguë" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr " d'abord déclaré comme « %#D » ici" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr " aussi déclaré comme « %#D » ici" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "« %D » dénote un type ambigu" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 msgid "%J first type here" msgstr "%J premier type ici" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 msgid "invalid use of `%D'" msgstr "utilisation invalide de « %D »" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 msgid "`%D::%D' is not a template" -msgstr "« %D::%D » n'est pas un canevas" +msgstr "« %D::%D » n'est pas un patron" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "« %D » non déclaré dans l'espace de noms « %D »" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 msgid "`%D' is not a function," msgstr "« %D » n'est pas une fonction" -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 msgid " conflict with `%D'" msgstr " en conflit avec « %D »" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "XXX on entre dans pop_everything ()\n" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "XXX on quitte pop_everything ()\n" @@ -15723,16 +15723,16 @@ msgstr "nouveaux types ne peuvent #: cp/parser.c:1888 cp/pt.c:4196 msgid "`%T' is not a template" -msgstr "« %T » n'est pas un canevas" +msgstr "« %T » n'est pas un patron" #: cp/parser.c:1890 #, c-format msgid "`%s' is not a template" -msgstr "« %s » n'est pas un canevas" +msgstr "« %s » n'est pas un patron" #: cp/parser.c:1892 msgid "invalid template-id" -msgstr "id de canevas invalide" +msgstr "id de patron invalide" #: cp/parser.c:1933 #, c-format @@ -15769,226 +15769,234 @@ msgstr "variable locale msgid "typedef-name `%D' used as destructor declarator" msgstr "nom du typdef « %D » utilisé comme déclarateur de destructeur" -#: cp/parser.c:3635 +#: cp/parser.c:3638 msgid "ISO C++ forbids compound-literals" msgstr "ISO C++ interdit les chaînes composées" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "les limites du tableau interdisent ce qui suit après le type-id mis entre parenthèses" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "essayer d'enlever les parenthèses autour du type-id" -#: cp/parser.c:4619 +#: cp/parser.c:4624 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:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "utilisation d'un vieux style de transtypage (cast)" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, 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" -#: cp/parser.c:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "ISO C++ interdit les gotos calculés" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "« ; » superflu" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "mélange de déclarations et de définitions de fonction est interdit" -#: cp/parser.c:6640 +#: cp/parser.c:6645 msgid "duplicate `friend'" msgstr "« friend » apparaît en double" -#: cp/parser.c:6789 +#: cp/parser.c:6794 msgid "class definition may not be declared a friend" msgstr "définition de classe ne peut pas être déclaré comme ami" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "seuls les constructeurs prennent des initialiseurs de base" -#: cp/parser.c:7155 +#: cp/parser.c:7160 msgid "anachronistic old-style base class initializer" msgstr "ancien style anachronique d'initialiseur de classe de base" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "mot clé « typename » n'est pas permis dans ce contexte (un initialisateur de membre qualifié est implicitement un type)" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 msgid "keyword `export' not implemented, and will be ignored" msgstr "mot clé « export » n'est pas implanté et sera ignoré" #. Otherwise, emit an error about the invalid digraph, but continue #. parsing because we got our argument list. -#: cp/parser.c:7908 +#: cp/parser.c:7923 msgid "`<::' cannot begin a template-argument list" -msgstr "« <:: » ne peut pas être au début d'une liste d'un canevas d'arguments" +msgstr "« <:: » ne peut pas être au début d'une liste d'un patron d'arguments" -#: cp/parser.c:7909 +#: cp/parser.c:7924 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:7916 +#: cp/parser.c:7931 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:8088 +#: cp/parser.c:8106 msgid "non-template `%D' used as template" -msgstr "« %D » qui n'est pas un canevas est utilisé comme canevas" +msgstr "« %D » qui n'est pas un patron est utilisé comme patron" -#: cp/parser.c:8089 -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:8107 +msgid "use `%T::template %D' to indicate that it is a template" +msgstr "utiliser « %T::template %D » pour indiquer que c'est un patron" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" -msgstr "utilisation de « typename » en dehors du canevas" +msgstr "utilisation de « typename » en dehors du patron" -#: cp/parser.c:9148 +#: cp/parser.c:9180 msgid "expected type-name" msgstr "un nom de type attendu" -#: cp/parser.c:9207 +#: cp/parser.c:9239 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:9590 +#: cp/parser.c:9622 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" +msgstr "un id de patron ne peut pas apparaître dans l'utilisation de la déclaration" -#: cp/parser.c:9917 +#: cp/parser.c:9949 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:9919 +#: cp/parser.c:9951 msgid "attributes are not allowed on a function-definition" msgstr "attributs ne sont pas permis dans la définition de fonction" -#: cp/parser.c:10052 +#: cp/parser.c:10084 msgid "attributes after parenthesized initializer ignored" msgstr "attributs après l'initialisateur mis entre parenthèses sont ignorés" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +msgid "`%T::%D' is not a type" +msgstr "« %T::%D » n'est pas un type" + +#: cp/parser.c:11288 msgid "file ends in default argument" msgstr "fin de fichier dans l'argument par défaut" -#: cp/parser.c:11310 +#: cp/parser.c:11344 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:11313 +#: cp/parser.c:11347 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:12043 +#: cp/parser.c:12078 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "déclaration de « %D » dans « %D » lequel n'entoure pas « %D »" -#: cp/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "qualification superflue ignorée" -#: cp/parser.c:12067 +#: cp/parser.c:12102 msgid "an explicit specialization must be preceded by 'template <>'" msgstr "spécialisation explicite doit être précédé par « template <> »" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "« ; » superflu" -#: cp/parser.c:12368 +#: cp/parser.c:12403 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:12399 +#: cp/parser.c:12434 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:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "spécificateur pur lors de la définition d'une fonction" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" -msgstr "mot clé « typename » n'est pas permis en dehors du canevas" +msgstr "mot clé « typename » n'est pas permis en dehors du patron" -#: cp/parser.c:12845 +#: cp/parser.c:12880 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:13665 +#: cp/parser.c:13700 msgid "reference to `%D' is ambiguous" msgstr "référence à « %D » est ambiguë" -#: cp/parser.c:13839 +#: cp/parser.c:13874 msgid "too few template-parameter-lists" -msgstr "trop peu de canevas de listes de paramètres" +msgstr "trop peu de patron de listes de paramètres" #. Otherwise, there are too many template parameter lists. We have #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 msgid "too many template-parameter-lists" -msgstr "trop de canevas de listes de paramètres" +msgstr "trop de patron de listes de paramètres" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 msgid "invalid function declaration" msgstr "déclaration de fonction invalide" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 msgid "named return values are no longer supported" msgstr "valeurs nommées à retourner ne sont plus supportées" -#: cp/parser.c:14522 +#: cp/parser.c:14561 msgid "`>>' should be `> >' within a nested template argument list" -msgstr "« >> » devrait être « > > » à l'intérieur du canevas de la liste d'arguments" +msgstr "« >> » devrait être « > > » à l'intérieur du patron 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:14530 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" -msgstr "faux « >> », utiliser « > » pour terminer la liste d'argument du canevas" +msgstr "faux « >> », utiliser « > » pour terminer la liste d'argument du patron" -#: cp/parser.c:14535 +#: cp/parser.c:14574 msgid "missing `>' to terminate the template argument list" -msgstr "« > » manquant pour terminer la liste d'argument du canevas" +msgstr "« > » manquant pour terminer la liste d'argument du patron" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "étiquette « %s » utilisée dans la dénomination de « %#T »" -#: cp/parser.c:15043 +#: cp/parser.c:15082 msgid "%D redeclared with different access" msgstr "« %#D » redéclaré avec un accès différent" -#: cp/parser.c:15060 +#: cp/parser.c:15099 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" +msgstr "« template » (afin de rendre moins ambiguë) est seulement permis à l'intérieur des patron" #: cp/pt.c:243 msgid "data member `%D' cannot be a member template" -msgstr "membre de données « %D » ne peut être membre du canevas" +msgstr "membre de données « %D » ne peut être membre du patron" #: cp/pt.c:255 msgid "invalid member template declaration `%D'" -msgstr "déclaration de membre de canevas invalide « %D »" +msgstr "déclaration de membre de patron invalide « %D »" #: cp/pt.c:637 msgid "explicit specialization in non-namespace scope `%D'" @@ -15996,7 +16004,7 @@ msgstr "sp #: cp/pt.c:649 msgid "enclosing class templates are not explicitly specialized" -msgstr "fermetures de canevass de classe ne sont pas explicitement spécialisées" +msgstr "fermetures de patrons de classe ne sont pas explicitement spécialisées" #: cp/pt.c:739 cp/pt.c:780 msgid "specializing `%#T' in different namespace" @@ -16016,7 +16024,7 @@ msgstr "sp #: cp/pt.c:807 msgid "explicit specialization of non-template `%T'" -msgstr "spécialisation explicite du non canevas « %T »" +msgstr "spécialisation explicite du non patron « %T »" #: cp/pt.c:1067 msgid "specialization of %D after instantiation" @@ -16028,25 +16036,25 @@ msgstr "%s %+#D" #: cp/pt.c:1241 msgid "`%D' is not a function template" -msgstr "« %D » n'est pas un canevas de fonction" +msgstr "« %D » n'est pas un patron de fonction" #: cp/pt.c:1389 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 canevas" +msgstr "template-id « %D » pour « %+D » ne concorde pas avec aucune déclaration de patron" #: cp/pt.c:1397 msgid "ambiguous template specialization `%D' for `%+D'" -msgstr "spécialisation de canevas amibiguë « %D » pour « %+D »" +msgstr "spécialisation de patron amibiguë « %D » pour « %+D »" #. This case handles bogus declarations like template <> #. template void f(); #: cp/pt.c:1620 cp/pt.c:1694 msgid "template-id `%D' in declaration of primary template" -msgstr "template-id « %D » dans la déclaration de canevas primaire" +msgstr "template-id « %D » dans la déclaration de patron primaire" #: cp/pt.c:1633 msgid "template parameter list used in explicit instantiation" -msgstr "canevas de liste de paramètres utilisé dans une instanciation explicite" +msgstr "patron de liste de paramètres utilisé dans une instanciation explicite" #: cp/pt.c:1639 msgid "definition provided for explicit instantiation" @@ -16054,11 +16062,11 @@ msgstr "d #: cp/pt.c:1645 msgid "too many template parameter lists in declaration of `%D'" -msgstr "trop de canevass de listes de paramètres dans la déclaration de « %D »" +msgstr "trop de patrons de listes de paramètres dans la déclaration de « %D »" #: cp/pt.c:1661 msgid "too few template parameter lists in declaration of `%D'" -msgstr "trop peu de canevass de listes de paramètres dans la déclaration de « %D »" +msgstr "trop peu de patrons de listes de paramètres dans la déclaration de « %D »" #: cp/pt.c:1678 msgid "explicit specialization not preceded by `template <>'" @@ -16066,7 +16074,7 @@ msgstr "sp #: cp/pt.c:1691 msgid "partial specialization `%D' of function template" -msgstr "spécialisation partielle « %D » du canevas de fonction" +msgstr "spécialisation partielle « %D » du patron de fonction" #: cp/pt.c:1723 msgid "default argument specified in explicit specialization" @@ -16074,7 +16082,7 @@ msgstr "argument par d #: cp/pt.c:1727 msgid "template specialization with C linkage" -msgstr "spécialisation de canevas avec édition de liens C" +msgstr "spécialisation de patron avec édition de liens C" #. From [temp.expl.spec]: #. @@ -16095,15 +16103,15 @@ msgstr "pas de membre de fonction #. There are two many template parameter lists. #: cp/pt.c:2005 msgid "too many template parameter lists in declaration of `%T'" -msgstr "trop de canevass de listes de paramètres dans la déclaration de « %T »" +msgstr "trop de patrons de listes de paramètres dans la déclaration de « %T »" #: cp/pt.c:2098 msgid " shadows template parm `%#D'" -msgstr " masque le paramètre du canevas « %#D »" +msgstr " masque le paramètre du patron « %#D »" #: cp/pt.c:2495 msgid "template parameters not used in partial specialization:" -msgstr "paramètres du canevas ne sont pas utilisés dans la spécialisation partielle:" +msgstr "paramètres du patron ne sont pas utilisés dans la spécialisation partielle:" #: cp/pt.c:2499 msgid " `%D'" @@ -16111,16 +16119,16 @@ msgstr " #: cp/pt.c:2511 msgid "partial specialization `%T' does not specialize any template arguments" -msgstr "spécialisation partielle « %T » ne spécialise pas aucun canevas d'arguments" +msgstr "spécialisation partielle « %T » ne spécialise pas aucun patron d'arguments" #: cp/pt.c:2536 #, c-format msgid "template argument `%E' involves template parameter(s)" -msgstr "canevas d'argument « %E » implique des paramètres du canevas" +msgstr "patron d'argument « %E » implique des paramètres du patron" #: cp/pt.c:2580 msgid "type `%T' of template argument `%E' depends on template parameter(s)" -msgstr "type « %T » du canevas d'argument « %E » dépend des paramètres du canevas" +msgstr "type « %T » du patron d'argument « %E » dépend des paramètres du patron" #: cp/pt.c:2665 msgid "no default argument for `%D'" @@ -16128,38 +16136,38 @@ msgstr "pas d'argument par d #: cp/pt.c:2814 msgid "template with C linkage" -msgstr "canevas avec liaison C" +msgstr "patron avec liaison C" #: cp/pt.c:2817 msgid "template class without a name" -msgstr "canevas de classe sans nom" +msgstr "patron de classe sans nom" #. [temp.mem] #. #. A destructor shall not be a member template. #: cp/pt.c:2824 msgid "destructor `%D' declared as member template" -msgstr "destructeur « %D » déclaré en tant que membre du canevas" +msgstr "destructeur « %D » déclaré en tant que membre du patron" #: cp/pt.c:2904 msgid "`%D' does not declare a template type" -msgstr "« %D » ne déclare pas un type de canevas" +msgstr "« %D » ne déclare pas un type de patron" #: cp/pt.c:2910 msgid "template definition of non-template `%#D'" -msgstr "définition de canevas d'un non canevas « %#D »" +msgstr "définition de patron d'un non patron « %#D »" #: cp/pt.c:2951 msgid "expected %d levels of template parms for `%#D', got %d" -msgstr "attendait %d niveaux de canevas de paramètres pour « %#D », obtenu %d" +msgstr "attendait %d niveaux de patron de paramètres pour « %#D », obtenu %d" #: cp/pt.c:2963 msgid "got %d template parameters for `%#D'" -msgstr "a obtenu %d paramètres de canevas pour « %#D »" +msgstr "a obtenu %d paramètres de patron pour « %#D »" #: cp/pt.c:2966 msgid "got %d template parameters for `%#T'" -msgstr "a obtenu %d paramètres de canevas pour « %#T »" +msgstr "a obtenu %d paramètres de patron pour « %#T »" #: cp/pt.c:2968 #, c-format @@ -16168,7 +16176,7 @@ msgstr " mais %d son requis" #: cp/pt.c:3053 msgid "`%T' is not a template type" -msgstr "« %T » n'est pas un type canevas" +msgstr "« %T » n'est pas un type patron" #: cp/pt.c:3069 msgid "previous declaration `%D'" @@ -16177,11 +16185,11 @@ msgstr "d #: cp/pt.c:3070 #, c-format msgid "used %d template parameter%s instead of %d" -msgstr "utilisé %d canevass paramètre%s au lieu de %d" +msgstr "utilisé %d patrons paramètre%s au lieu de %d" #: cp/pt.c:3086 msgid "template parameter `%#D'" -msgstr "canevas de paramètre « %#D »" +msgstr "patron de paramètre « %#D »" #: cp/pt.c:3087 msgid "redeclared here as `%#D'" @@ -16202,7 +16210,7 @@ msgstr "%J d #: cp/pt.c:3246 #, c-format msgid "`%E' is not a valid template argument" -msgstr "« %E » n'est pas un argument valide pour le canevas" +msgstr "« %E » n'est pas un argument valide pour le patron" #: cp/pt.c:3250 msgid "it must be the address of a function with external linkage" @@ -16219,39 +16227,39 @@ msgstr "il doit #: 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 "chaîne %E n'est pas un canevas d'argument valide parce que c'est l'adresse d'un objet avec lien statique" +msgstr "chaîne %E n'est pas un patron d'argument valide parce que c'est l'adresse d'un objet avec lien statique" #: cp/pt.c:3281 #, 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 canevas d'argument" +msgstr "adresse du non externe « %E » ne peut être utilisé comme patron d'argument" #: cp/pt.c:3290 #, c-format msgid "non-constant `%E' cannot be used as template argument" -msgstr "la non const « %E » ne peut être utilisé comme un canevas d'argument" +msgstr "la non const « %E » ne peut être utilisé comme un patron d'argument" #: cp/pt.c:3298 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" +msgstr "type « %T » ne peut être utilisé comme une valeur pour un non type de paramètre de patron" #: cp/pt.c:3301 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" +msgstr "utilisation invalide de « %D » pour un non type de paramètre de patron" #: cp/pt.c:3303 #, c-format 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" +msgstr "utilisation invalide de « %E » pour un non type de paramètre de patron" #: cp/pt.c:3668 #, 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 canevas de paramètres, utiliser « typename %E »" +msgstr "pour référencer un type de membre de patron de paramètres, utiliser « typename %E »" #: 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 "non concordance de type/valeur pour l'argument %d dans la liste des paramètres du canevas de « %D »" +msgstr "non concordance de type/valeur pour l'argument %d dans la liste des paramètres du patron de « %D »" #: cp/pt.c:3684 msgid " expected a constant of type `%T', got `%T'" @@ -16260,7 +16268,7 @@ msgstr " attendait une constante de type #: cp/pt.c:3688 #, c-format msgid " expected a class template, got `%E'" -msgstr " attendait un canevas de classe, a obtenu « %E »" +msgstr " attendait un patron de classe, a obtenu « %E »" #: cp/pt.c:3690 #, c-format @@ -16273,20 +16281,20 @@ msgstr " attendait un type, a obtenu #: cp/pt.c:3704 msgid " expected a class template, got `%T'" -msgstr " attendait un canevas de classe, a obtenu « %T »" +msgstr " attendait un patron de classe, a obtenu « %T »" #: cp/pt.c:3740 msgid " expected a template of type `%D', got `%D'" -msgstr " attendait un canevas de type « %D », a obtenu « %D »" +msgstr " attendait un patron de type « %D », a obtenu « %D »" #: cp/pt.c:3775 msgid "could not convert template argument `%E' to `%T'" -msgstr "ne peut convertir l'argument du canevas « %E » vers « %T »" +msgstr "ne peut convertir l'argument du patron « %E » vers « %T »" #: cp/pt.c:3815 #, c-format msgid "wrong number of template arguments (%d, should be %d)" -msgstr "nombre erroné d'arguments du canevas (%d devrait être %d)" +msgstr "nombre erroné d'arguments du patron (%d devrait être %d)" #: cp/pt.c:3819 msgid "provided for `%D'" @@ -16295,178 +16303,178 @@ msgstr "fournie pour #: cp/pt.c:3847 #, c-format msgid "template argument %d is invalid" -msgstr "canevas de l'argument %d est invalide" +msgstr "patron de l'argument %d est invalide" #: cp/pt.c:4068 msgid "non-template used as template" -msgstr "non canevas utilisé comme canevas" +msgstr "non patron utilisé comme patron" #: cp/pt.c:4208 msgid "non-template type `%T' used as a template" -msgstr "type non canevas « %T » utilisé comme un canevas" +msgstr "type non patron « %T » utilisé comme un patron" #: cp/pt.c:4210 msgid "for template declaration `%D'" -msgstr "pour la déclaration du canevas « %D »" +msgstr "pour la déclaration du patron « %D »" #: cp/pt.c:4857 msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%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 »" +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 »" #: cp/pt.c:5296 msgid "ambiguous class template instantiation for `%#T'" -msgstr "instanciation ambiguë de canevas de classe pour « %#T »" +msgstr "instanciation ambiguë de patron de classe pour « %#T »" #: cp/pt.c:5302 msgid "%s %+#T" msgstr "%s %+#T" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "instanciation de « %D » comme type « %T »" -#: cp/pt.c:6469 +#: cp/pt.c:6470 msgid "invalid parameter type `%T'" msgstr "paramètre invalide pour le type « %T »" -#: cp/pt.c:6471 +#: cp/pt.c:6472 msgid "in declaration `%D'" msgstr "dans la déclaration de « %D »" -#: cp/pt.c:6545 +#: cp/pt.c:6546 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:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "création d'un tableau de taille zéro" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "création d'un tableau de taille zéro (« %E »)" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "formation d'une référence en void" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "formant %s pour référencer le type « %T »" -#: cp/pt.c:6976 +#: cp/pt.c:6977 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:6982 +#: cp/pt.c:6983 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:7068 +#: cp/pt.c:7069 msgid "creating array of `%T'" msgstr "création du tableau « %T »" -#: cp/pt.c:7074 +#: cp/pt.c:7075 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:7118 +#: cp/pt.c:7119 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:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" -msgstr "utilisation de « %s » dans le canevas" +msgstr "utilisation de « %s » dans le patron" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, 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:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr "utiliser « typename %E » si un type est désiré" -#: cp/pt.c:8609 +#: cp/pt.c:8613 msgid "`%T' uses anonymous type" msgstr "« %T » utilise un type anonyme" -#: cp/pt.c:8611 +#: cp/pt.c:8615 msgid "`%T' uses local type `%T'" msgstr "« %T » utilise un type local « %T »" -#: cp/pt.c:8619 +#: cp/pt.c:8623 msgid "`%T' is a variably modified type" msgstr "« %T » est type modifié de manière variable" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, c-format msgid "integral expression `%E' is not constant" msgstr "expression intégrale « %E » n'est pas une constante" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr " tentative d'instanciation « %D »" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "type d'unification incomplète" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" -msgstr "utilisation de « %s » dans le canevas du type d'unification" +msgstr "utilisation de « %s » dans le patron du type d'unification" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" -msgstr "instanciation explicite d'un non canevas « %#D »" +msgstr "instanciation explicite d'un non patron « %#D »" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" -msgstr "non concordance de canevas pour « %D » repéré" +msgstr "non concordance de patron pour « %D » repéré" -#: cp/pt.c:10551 +#: cp/pt.c:10568 msgid "explicit instantiation of `%#D'" msgstr "instanciation explicite de « %#D »" -#: cp/pt.c:10588 +#: cp/pt.c:10605 msgid "duplicate explicit instantiation of `%#D'" msgstr "duplication d'instanciation explicite de « %#D »" -#: cp/pt.c:10610 +#: cp/pt.c:10627 msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "ISO C++ interdit l'utilisation de « extern » sur instanciations explicites" -#: cp/pt.c:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" -msgstr "classe de stockage « %D » appliqué à l'instanciation du canevas" +msgstr "classe de stockage « %D » appliqué à l'instanciation du patron" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" -msgstr "instanciation explicite de type non canevas « %T »" +msgstr "instanciation explicite de type non patron « %T »" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" -msgstr "instanciation explicite de « %#T » avant la définition de canevas" +msgstr "instanciation explicite de « %#T » avant la définition de patron" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, c-format msgid "ISO C++ forbids the use of `%s' on explicit instantiations" msgstr "ISO C++ interdit l'utilisation de « %s » sur instanciations explicites" -#: cp/pt.c:10728 +#: cp/pt.c:10745 msgid "duplicate explicit instantiation of `%#T'" msgstr "duplication d'instanciation explicite de « %#T »" -#: cp/pt.c:11109 +#: cp/pt.c:11126 msgid "explicit instantiation of `%D' but no definition available" msgstr "instanciation explicite de « %D » mais pas de définition disponible" -#: cp/pt.c:11543 +#: cp/pt.c:11562 msgid "`%#T' is not a valid type for a template constant parameter" -msgstr "« %#T » n'a pas un type valide pour un canevas de parametre de constante" +msgstr "« %#T » n'a pas un type valide pour un patron de parametre de constante" #: cp/repo.c:259 msgid "-frepo must be used with -c" @@ -16589,23 +16597,23 @@ msgstr " #: cp/semantics.c:1933 msgid "template type parameters must use the keyword `class' or `typename'" -msgstr "canevas de type de paramètres doit utiliser le mot clé « class» ou «typename »" +msgstr "patron de type de paramètres doit utiliser le mot clé « class» ou «typename »" #: cp/semantics.c:1977 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" +msgstr "utilisation invalide du type « %T » comme valeur par défaut pour un patron de paramètres de patron" #: cp/semantics.c:1980 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" +msgstr "utilisation invalide de « %D » comme valeur par défaut pour un patron de paramètres de patron" #: cp/semantics.c:1984 msgid "invalid default argument for a template template parameter" -msgstr "utilisation invalide d'argumenet pour un canevas de paramètres de canevas" +msgstr "utilisation invalide d'argumenet pour un patron de paramètres de patron" #: cp/semantics.c:2019 msgid "definition of `%#T' inside template parameter list" -msgstr "définition de « %#T » à l'intérieur d'un canevas de liste de paramètres" +msgstr "définition de « %#T » à l'intérieur d'un patron de liste de paramètres" #: cp/semantics.c:2030 msgid "invalid definition of qualified type `%T'" @@ -16625,13 +16633,13 @@ msgstr "classe de base #: cp/semantics.c:2290 msgid "multiple declarators in template declaration" -msgstr "déclarateurs multiples dans la déclaration de canevas" +msgstr "déclarateurs multiples dans la déclaration de patron" #: cp/semantics.c:2301 msgid "incomplete type `%T' used in nested name specifier" msgstr "type « %T » incomplet utilisé dans un spécificateur de noms imbriqué" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 msgid "`%D' is not a member of `%T'" msgstr "« %D » n'est pas un membre de « %T »" @@ -16641,7 +16649,7 @@ msgstr " #: 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 "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" +msgstr "paramètre « %D » du patron 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/semantics.c:2584 msgid "`%D' cannot appear in a constant-expression" @@ -16653,7 +16661,7 @@ msgstr "utilisation d'un espace de dnomes #: cp/semantics.c:2598 msgid "use of class template `%T' as expression" -msgstr "utilisation du canevas de classe « %T » comme expression" +msgstr "utilisation du patron de classe « %T » comme expression" #. Ambiguous reference to base members. #: cp/semantics.c:2604 @@ -16674,239 +16682,239 @@ msgstr " msgid "type of `%E' is unknown" msgstr "type « %E » est inconnu" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "n'est pas un membre gauche dans %s" -#: cp/tree.c:539 +#: cp/tree.c:532 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "qualificateur « %V » ne peut pas être appliqué à « %T »" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, 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:1857 +#: cp/tree.c:1850 #, 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:1863 +#: cp/tree.c:1856 #, 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:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "init_priority demandé n'est pas une constante entière" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, 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:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "init_priority demandé est hors limite" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "init_priority demandé est réservé pour un usage interne" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, 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:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "vérification lang_* : éched dans %s, à %s:%d" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 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:513 +#: cp/typeck.c:512 #, 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:563 +#: cp/typeck.c:562 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 +#: cp/typeck.c:1234 #, c-format msgid "invalid application of `%s' to a member function" msgstr "application invalide de « %s » à une fonction membre" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, c-format msgid "invalid application of `%s' to a bit-field" msgstr "application invalide de « %s » sur un champ de bits" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, 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:1342 +#: cp/typeck.c:1308 msgid "invalid use of non-static member function" msgstr "utilisation invalide d'un membre non statique de fonction" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "conversion obsolète de la chaîne de constante vers « %T »" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 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 classe « %T »" -#: cp/typeck.c:1610 +#: cp/typeck.c:1633 #, 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:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 msgid "invalid access to non-static data member `%D' of NULL object" msgstr "accès invalide à un membre de données non statique « %D » d'un objet null" -#: cp/typeck.c:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "(peut-être que le macro « offsetof » a été utilisé incorrectement)" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 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:1924 +#: cp/typeck.c:1947 msgid "`%D::%D' is not a member of `%T'" msgstr "« %D::%D » n'est pas un membre de « %T »" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 msgid "`%T' is not a base of `%T'" msgstr "« %D » n'est pas une base de « %T »" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 msgid "'%D' has no member named '%E'" msgstr "« %D » n'a pas de membre nommé « %E »" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 msgid "`%D' is not a member template function" -msgstr "« %D » n'est pas une membre du canevas de fonction" +msgstr "« %D » n'est pas une membre du patron de fonction" #. A pointer to incomplete type (other than cv void) can be #. dereferenced [expr.unary.op]/1 -#: cp/typeck.c:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "« %T » n'est pas un type pointeur-vers-objet" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, 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:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "type d'argument invalide" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "ISO C++ interdit le souscriptage de non lvalue de tableau" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "souscriptage de tableau déclaré « register »" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, c-format msgid "object missing in use of `%E'" msgstr "objet manquant dans l'usage de « %E »" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "ISO C++ interdit l'appel de «::main» depuis l'intérieur du programme" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, 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:2446 +#: cp/typeck.c:2469 #, c-format msgid "`%E' cannot be used as a function" msgstr "« %E » ne peut être utilisé comme une fonction" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 msgid "too many arguments to %s `%+#D'" msgstr "trop d'arguments pour %s « %+#D »" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "à ce point dans le fichier" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "paramètre %P de « %D » a un type incomplet « %T »" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 msgid "parameter %P has incomplete type `%T'" msgstr "paramètre %P a un type incomplet « %T »" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 msgid "too few arguments to %s `%+#D'" msgstr "pas assez d'argument pour %s « %+#D »" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 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:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "division par zéro dans « %E / 0 »" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "division par zéro dans « %E / 0. »" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, c-format msgid "division by zero in `%E %% 0'" msgstr "division par zéro dans « %E %% 0 »" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "division par zéro dans « %E %% 0. »" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "compteur de rotation %s est négatif" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "compteur de rotation %s >= largeur du type" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "ISO C++ interdit la comparaison entre un pointeur et un entier" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 msgid "comparison between types `%#T' and `%#T'" msgstr "comparaison entre les types « %#T » et « %#T »" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "comparaison entre des expressions entières signée et non signée" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "opérandes invalides pour les types « %T » et « %T » en binaire « %O »" @@ -16914,282 +16922,282 @@ msgstr "op #. 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:3418 +#: cp/typeck.c:3441 msgid "NULL used in arithmetic" msgstr "NULL utilisé en arithmétique" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 msgid "ISO C++ forbids using pointer of type `void *' in subtraction" msgstr "ISO C++ interdit l'utilisation d'un pointeur de type « void * » dans une soustraction" -#: cp/typeck.c:3483 +#: cp/typeck.c:3506 msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "ISO C++ interdit l'utilisation d'un pointeur survers une fonction dans une soustraction" -#: cp/typeck.c:3485 +#: cp/typeck.c:3508 msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "ISO C++ interdit l'utilisation d'un pointeur survers une méthode dans une soustraction" -#: cp/typeck.c:3497 +#: cp/typeck.c:3520 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:3553 +#: cp/typeck.c:3582 #, c-format msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id." msgstr "utilisation invalide de « %E » pour former pointer-to-member-function. Utiliser un identifateur qualifié" -#: cp/typeck.c:3559 +#: cp/typeck.c:3588 #, c-format msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "parenthèses autour de « %E » ne peuvent être utilisées pour former pointer-to-member-function" -#: cp/typeck.c:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "prise de l'adresse du temporaire" # FIXME: I18N -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "ISO C++ interdit de %ser un enum" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 msgid "cannot %s a pointer to incomplete type `%T'" msgstr "ne peut utiliser %s comme pointeur sur un type incomplet « %T »" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 msgid "ISO C++ forbids %sing a pointer of type `%T'" msgstr "ISO C++ interdit %s utilisation d'un pointeur de type « %T »" -#: cp/typeck.c:3858 +#: cp/typeck.c:3887 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:3892 +#: cp/typeck.c:3921 msgid "invalid use of `--' on bool variable `%D'" msgstr "utilisation invalide de «--» sur une variable booléenne « %D »" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 msgid "ISO C++ forbids taking address of function `::main'" msgstr "ISO C++ interdit de prendre l'adresse d'une fonction «::main»" #. An expression like &memfn. -#: cp/typeck.c:3994 +#: cp/typeck.c:4027 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:3999 +#: cp/typeck.c:4032 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++ 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:4027 +#: cp/typeck.c:4060 msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression" msgstr "ISO C++ interdit de prendre l'adresse du transtypage vers une expression n'etant pas membre gauche" -#: cp/typeck.c:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "unaire « & »" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 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:4190 +#: cp/typeck.c:4227 msgid "taking address of destructor" msgstr "prise de l'adresse du destructeur" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 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:4211 +#: cp/typeck.c:4248 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:4273 +#: cp/typeck.c:4311 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:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "adresse requise pour « %D», lequel est déclaré «register »" -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, 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:4434 +#: cp/typeck.c:4472 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:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "static_cast invalide du type « %T » au type « %T »" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 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:4686 +#: cp/typeck.c:4734 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:4705 +#: cp/typeck.c:4753 msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object" msgstr "ISO C++ interdit le transtypage entre un pointeur de fonction et un pointeur d'objet" -#: cp/typeck.c:4711 +#: cp/typeck.c:4759 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:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 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:4765 +#: cp/typeck.c:4813 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:4782 +#: cp/typeck.c:4830 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:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 msgid "ISO C++ forbids casting to an array type `%T'" msgstr "ISO C++ interdit le transtypage vers un type tableau « %T »" -#: cp/typeck.c:4835 +#: cp/typeck.c:4883 msgid "invalid cast to function type `%T'" msgstr "transtypage invalide pour un type de fonction « %T »" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 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:4937 +#: cp/typeck.c:4985 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:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr " lors de l'évaluation de « %Q(%#T, %#T) »" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 msgid "ISO C++ forbids cast to non-reference type used as lvalue" msgstr "ISO C++ interdit le transtypage d'un type non référencé utilisé comme membre gauche" -#: cp/typeck.c:5219 +#: cp/typeck.c:5267 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "type incompatible dans l'affectation de « %T » vers « %T »" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "ISO C++ interdit l'affectation de tableaux" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr " dans la conversion d'un pointeur vers un membre de fonction" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 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:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 msgid "pointer to member cast via virtual base `%T'" msgstr "pointeur vers un membre transtypé via la base virtuelle « %T »" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 msgid "pointer to member conversion via virtual base `%T'" msgstr "conversion de pointeur à membre à l'aide de la base virtuelle « %T »" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 msgid "invalid conversion to type `%T' from type `%T'" msgstr "conversion invalide vers un type « %T » à partir du type « %T »" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 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:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "%s vers un type non pointeur « %T » à partir d'un NULL" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 msgid "passing `%T' for %s %P of `%D'" msgstr "passage « %T » pour %s %P de « %D »" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "%s vers « %T » à partir de « %T »" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 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:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "%s de valeur négative « %E » vers « %T »" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 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:5706 +#: cp/typeck.c:5754 msgid "cannot convert `%T' to `%T' in %s" msgstr "ne peut convertir « %T » vers « %T » dans %s" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 msgid "in passing argument %P of `%+D'" msgstr "dans le passage de l'argument %P de « %+D »" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "retourné la référence vers le temporaire" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 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:5911 +#: cp/typeck.c:5959 msgid "reference to local variable `%D' returned" msgstr "référence vers une variable locale « %D » retourné" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 msgid "address of local variable `%D' returned" msgstr "adresse d'une variable locale « %D » retournée" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "retourné une valeur d'un constructeur" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 msgid "return-statement with no value, in function returning '%T'" msgstr "déclaration à retourner sans valeur dans une fonction retournant « %T »" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 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:6017 +#: cp/typeck.c:6065 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)" @@ -18826,12 +18834,12 @@ msgstr "erreur interne dans generate_bytecode_insn - arbre de code n'est pas imp msgid "field initializer type mismatch" msgstr "type de initialiseur du champ ne concorde pas" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, c-format msgid "can't create directory %s: %m" msgstr "ne peut créer le répertoire %s: %m" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, c-format msgid "can't create %s: %m" msgstr "ne peut créer %s: %m" @@ -18915,228 +18923,291 @@ msgstr "ne peut mutiler %s" msgid "internal error - invalid Utf8 name" msgstr "erreur interne - nom Utf8 invalide" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2610 msgid "Missing term" msgstr "Terme manquant" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "«;» attendu" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "Nom manquant" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "« * » attendu" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "Déclaration de classe ou d'interface attendue" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:835 msgid "Missing class name" msgstr "Nom de classe manquant" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "«{» attendu" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "Nom de super classe manquant" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "Nom d'interface manquant" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "Initialiseur de variable manquant" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:981 msgid "Invalid declaration" msgstr "Déclaration invalide" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "«]» attendu" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "«]» non pairé" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1024 msgid "Invalid method declaration, method name required" msgstr "Déclaration de méthode invalide, nom de méthode requis" -#: ../../gcc/java/parse.y:1029 ../../gcc/java/parse.y:1034 -#: ../../gcc/java/parse.y:1039 ../../gcc/java/parse.y:2026 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "Identificateur attendu" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1044 msgid "Invalid method declaration, return type required" msgstr "Déclaration de méthode invalide, type retourné requis" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "«)» attendu" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "Paramètre term formel manquant" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "Identificateur manquant" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "Type term de classe manquant" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1288 msgid "Invalid interface type" msgstr "Type d'interface invalide" -#: ../../gcc/java/parse.y:1475 ../../gcc/java/parse.y:1644 -#: ../../gcc/java/parse.y:1646 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "«:» attendu" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1507 msgid "Invalid expression statement" msgstr "Déclaration d'expression invalide" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "«(» attendu" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "Terme manquant ou «)»" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "Expresion de constante manquante ou invalide" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "Terme manquant et «)» attendus" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "Expression de contrôle invalide" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "Expression de mise à jour invalide" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "Déclaration init invalide" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "Terme manquant ou «)» attendu" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "« class» ou «ceci » attendu" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "« class » attendu" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "«)» or terme attendu" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "«[» attendu" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "Champ attendu" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "Terme manquant et «]» attendu" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "«]» attendu, type d'expression invalide" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "Type d'expression invalide" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "Type de référence invalide" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/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" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "Seuls les constructeurs peuvent invoquer des constructeurs" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr ": « %s » option JDK1.1(TM)" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" @@ -19145,32 +19216,32 @@ msgstr "" "%s.\n" "%s" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "archive .zip mal composée dans CLASSPATH: %s" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 "ne peut repérer le package par défaut « %s ». Vérifier la variable d'environnement CLASSPATH et l'accès aux archives." -#: ../../gcc/java/parse.y:12193 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "champ statique manquant « %s »" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "n'est pas un champ statique « %s »" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "Oas de case pour %s" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "opérator %s non enregistré" @@ -19227,8 +19298,8 @@ msgstr "le protocole msgid "cannot find protocol declaration for `%s'" msgstr "ne peut repérer la déclaration de protocole pour « %s »" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, c-format msgid "cannot find interface declaration for `%s'" msgstr "ne peut repérer la déclaration d'interface pour « %s »" @@ -19253,8 +19324,8 @@ msgstr "cr 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "déclarations Objective-C peut seulement apparaître dans l'étendue globale" @@ -19268,7 +19339,7 @@ msgstr "ne peut rep msgid "class `%s' already exists" msgstr "classe « %s » existe déjà" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "« %s » redéclaré comme une autre sorte de symbole" @@ -19427,1449 +19498,1773 @@ msgstr "type 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 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "instance de la variable « %s » est déclaré privée" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, 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 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "instance de la variable « %s » est déclaré %s" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "accès statique à un objket de type « id »" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "implantation incomplète de la classe « %s »" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "implantation incomplète de la catégorie « %s »" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, 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" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, 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:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "«@end» manquant dans l'implantation du contexte" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "ré-implantation de la classe « %s »" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "nom de super classe « %s » est conflictuel" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, 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 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "double déclaration d'interface pour la classe « %s »" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "double déclaration pour le protocole « %s »" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 msgid "%J%s `%c%s'" msgstr "%J%s « %c%s »" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, c-format 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 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "[super ...] doit apparaître dans une méthode du contexte" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "«@end» doit appraître dans un contaxte d'implantation" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "méthode de définition n'est pas dans un contexte de classe" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 msgid "Display this information" msgstr "afficher l'aide-mémoire" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "--param =\tinitialiser le avec la valeur. Voir ci-bas pour la liste complète des paramètres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "-A=\tassocier la à la . Placer « - » devant la désactive la à la " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 msgid "Do not discard comments" msgstr "Ne pas éliminer les commentaires" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "Ne pas éliminer les commentaires dans les expansions macro" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "-D[=]\tdéfinir le avec la . Si seul le est fourni, vaut 1 par défaut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "" " -G placer les données globales et statiques plus\n" " petites que d'octets dans une section\n" " spéciale (sur certaines cibles)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd to the end of the main include path. -I- gives more include path control; see info documentation" -msgstr "-I \tajouter à la fin du chemin principal d'inclusion. -I- donne plus de contrôle sur le chemin d'inclusion; voir la documentation info" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:60 -msgid "Generate make dependencies" -msgstr "Générer les dépendances pour make" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 msgid "Generate make dependencies and compile" msgstr "Générer les dépendances pour make et compiler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "-MF \técrire les dépendances en sortie dans le fichier fourni" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "Traiter les en-têtes manquantes de fichiers comme des fichiers générés" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:72 -msgid "Like -M but ignore system header files" -msgstr "Identique à -M mais ignore les en-têtes de fichiers système" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:75 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "Identique à -MD mais ignore les en-têtes de fichiers système" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -msgid "Generate phony targets for all headers" -msgstr "Générer les cibles bidons pour toutes les en-têtes" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "-MQ \tajouter MAKE-quoted cible" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "-MT \tajouter une cible sans quote" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 msgid "-O\tSet optimization level to " msgstr "-O\tutiliser le niveau d'optimisation " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 msgid "Optimize for space rather than speed" msgstr "Optimiser l'utilisation de l'espace plutôt que la vitesse" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 msgid "Do not generate #line directives" msgstr "Ne pas générer de directives #line" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "-U\tabandonner la définition " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "Cette option est obsolète; utiliser -Wextra à la place" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "Avertir à propos de structures retournés, unions ou tableaux" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:108 -msgid "Enable most warning messages" -msgstr "Autoriser la plupart des messages d'avertissement" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:111 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "Avertir à propos des fonctions de transtypage avec des types incompatibles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "Avertir à propos des pointeurs convertis lesquels augment l'alignement" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "Avertir à propos des transtypage qui écartent les qualificateurs" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 msgid "Warn about subscripts whose type is \"char\"" msgstr "Avertir à propos des souscripts dont le type est \"char\"" -#: /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 "Avertir à propos des blocs de commentaires imbriqués et les commentaires C++ qui s'étendent sur plus d'une ligne physique" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:126 -msgid "Synonym for -Wcomment" -msgstr "Synonyme pour -Wcommentaire" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:129 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "Avertir à propos des conversion confuses de types" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 msgid "Warn when all constructors and destructors are private" msgstr "Avertir lorsque tous les constructeurs et destructeurs sont privés" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -msgid "Warn about deprecated compiler features" -msgstr "Avertir à propose de la dépréciation des options du compilateur" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" +msgstr "Avertir si une classe, une méthode ou un champ obsolète est utilisé" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "Avertir à propos de l'utilisation des déclarations « __attribute__ ((deprecated)) »" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "Avertir lorsque la passe d'optimisation est désactivée" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "Avertir à propos des violations des règles de style de Effective C++" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "Avertir à propos des jetons perdus après #elif et #endif" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "Traiter tous les avertissements commes des erreurs" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 msgid "Make implicit function declarations an error" msgstr "Faire une erreur lors de déclaration de fonctions implicites" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "Afficher des avertissements superflus (possiblement non désirés)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "Avertir si des déclarations vides obsolètes sont trouvées" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 msgid "Warn if testing floating point numbers for equality" msgstr "Avertir à propos des tests d'égalité sur des nombres flottants" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 msgid "Warn about format strings that are not literals" msgstr "Avertir à propos des chaînes de format qui n'ont pas de litérals" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "Avertir à propos des problèmes possibles de sécurité avec les formats de fonction" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 msgid "Warn about strftime formats yielding 2-digit years" msgstr "Avertir à propos des formats strftime ne laissant que 2 chiffres pour l'année" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +msgid "Enable warnings about inter-procedural problems" +msgstr "Autoriser les avertissements à propos des problèmes inter-procédural" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 msgid "Warn about implicit function declarations" msgstr "Avertir à propos des déclarations de fonctions implicites" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 msgid "Warn when a declaration does not specify a type" msgstr "Avertir lorsqu'une déclaration ne spécifie pas le type" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:198 -msgid "Deprecated. This switch has no effect." -msgstr "Obsolète. Cette option n'a aucun effet." - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:201 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "Avertir au sujet des variables qui sont initialisés par elles-même" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "Avertir lorsque des fonctions en ligne ne peuvent être enligne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "Avertir à propos de l'utilisation invalide de macro \"offsetof\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr "-Wlarger-than-\tavertir si un objet est plus grand que d'octets" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "Ne pas avertir à propos de l'utilisation de \"long long\" avec -pedantic" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 msgid "Warn about suspicious declarations of \"main\"" msgstr "Avertir à propos des déclarations douteuses de \"main\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 msgid "Warn about possibly missing braces around initializers" msgstr "Avertir à propos des possibles accolades manquantes autour des initialisations" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 msgid "Warn about global functions without previous declarations" msgstr "Avertir à propos des fonctions globales sans déclaration précédente" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "Avertir à propos des fonctions qui seraient candidates pour __attribute__((noreturn))" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 msgid "Warn about global functions without prototypes" msgstr "Avertir à propos des fonctions globales sans prototype" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 msgid "Warn about use of multi-character character constants" msgstr "Avertir à propos de l'utilisation des chaînes de multi-caractères" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 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" +msgstr "Avertir lorsque des fonctions amis sans patron sont déclarés à l'intérieur d'un patron" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 msgid "Warn about non-virtual destructors" msgstr "Avertir à propos des destructeurs non virtuels" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 msgid "Warn if an old-style parameter definition is used" msgstr "Avertir lorsqu'un paramètre de style ancien de définition est utilisé" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "Avertir si des fichier .class sont périmées" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "Avertir à propos de la surcharge des noms de fonctions virtuelles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 msgid "Warn when padding is required to align structure members" msgstr "Avertir lorsque le remplissage est requis pour aligner les membres de structure" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 msgid "Warn about possibly missing parentheses" msgstr "Avertir à propos du manque possible de parenthèses" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "Avertir à propos d'arithmétique portant sur un pointeur de fonction" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 msgid "Warn if inherited methods are unimplemented" msgstr "Avertir si les méthodes héritées ne sont pas implantées" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "Avertir à propos des déclarations multiples portant sur le même objet" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "Avertir lorsque le compilateur réordonne le code" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 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++)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "Avertir si le sélecteur a de multiples méthodes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "Avertir à propos des violations possibles des règles de séquence de points" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "Avertir lorsqu'une variable locale masque une autre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 msgid "Warn about signed-unsigned comparisons" msgstr "Avertir à propos des comparaisons signés ou non signés" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "Avertir lorsque la surcharge fait la promotion d'un non signé en signé" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 msgid "Warn about code which might break strict aliasing rules" msgstr "Avertir à propos du code qui pourrait briser les règles strictes d'alias" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 msgid "Warn about unprototyped function declarations" msgstr "Avertir à propos des déclarations de fonctions sans prototype" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "Avertir à propos des construits ayant des sens surprenants" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "Avertir à propos d'un switch énuméré n'ayant pas de déclaration \"default:\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "Avertir lorsque le comportement de synthère diffère de Cfront" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "Ne pas supprimer les avertissements pour les en-têtes système" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 msgid "Warn about features not present in traditional C" msgstr "Avertir à propos d'une option absente en C traditionnel" -#: /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 "Avertir si des trigraphes sont rencontrés et qui pourraient affecter le sens du programme" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:333 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "Avertir à propos des variables automatiques non initialisées" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "Avertir à propos des pragmas non reconnus" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "Avertir à propos du code qui ne sera jamais exécuté" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "Autoriser tous les -Wunused- warnings" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "Avertir lorsqu'une fonction est inutilisée" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "Avertir lorsqu'une étiquette est inutilisée" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "Avertir lorsqu'un paramètre de fonction est inutilisé" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "Avertir lorsque la valeur d'une expression n'est pas utilisée" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "Avertir lorsque 'une variable est inutilisée" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "Fournir des chaînes de type \"array of char\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 msgid "-aux-info \tEmit declaration information into " msgstr "-aux-info \tproduire une déclaration d'information dans le " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 msgid "-d\tEnable dumps from specific passes of the compiler" msgstr "-d\tautoriser les vidanges pour des passes spécifiques du compilateur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "-dumpbase \tfixer le nom de base du fichier à utiliser pour les vidanges" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "--CLASSPATH\tobsolète; utiliser --classpath à la place" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 msgid "Enforce class member access control semantics" msgstr "Forcer à la sémantique du contrôle d'accès à un membre de classe" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "Aligner le début des fonctions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "Aligner les étiquettes qui sont seulement atteintes par sauts" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "Aligner toutes les étiquettes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "Aligner le début des boucles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" -msgstr "Changer lorsque les instances du canevas sont produites" +msgstr "Changer lorsque les instances du patron sont produites" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 msgid "Recognize the \"asm\" keyword" msgstr "Reconnaître le mot clé « asm »" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +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)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "Détruire les intrinsèques libU77 ayant des interfaces erronées" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "Désactiver les intrinsèques libU77 ayant des interfaces erronées" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "Autoriser les intrinsèques libU77 ayant des interfaces erronées" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "Cacher les intrinsèques libU77 ayant des interfaces erronées" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "--bootclasspath=\tremplacer le système" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 msgid "Replace add, compare, branch with branch on count register" msgstr "Remplacer add,compare,branch avec des branchements utilisant un compteur registre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "Utiliser les informations de profilage pour les probabilités de branchements" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "Effectuer l'optimisation du chargement du branchement cible avant le thread prologue / epilogue" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 msgid "Recognize built-in functions" msgstr "Reconnaître aucun construit dans les fonctions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 msgid "-fcall-saved-\tMark as being preserved across functions" msgstr "-fcall-saved-\tmarquer le comme étant préservé à travers les fonctions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr "-fcall-used-\tmarquer le comme étant corrompu par les appels de fonctions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 msgid "Save registers around function calls" msgstr "Sauvegarder les registres autour des appels de fonction" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "Programme écrit dans une stricte casse mélangée" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "Compiler comme si le programme était écrit en minuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +msgid "Preserve case used in program" +msgstr "Préserver la casse utilisée dans un programme" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "Programmes écrit en minuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "Programme écrit en majuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "Compiler comme si le programme était écrit en majuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "Vérifier la valeur retournée de new" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "--classpath=\tfixer le chemin des classes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "Ne pas placer de globaux non initialisés dans la section commune" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "Permettre les arguments de l'opérateur « ? » d'avoir différents types" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 msgid "Reduce the size of object files" msgstr "Réduire la taille des fichiers objets" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "Rendre les chaînes de mots \"const char[]\" et non pas \"char[]\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "-fconst-string-class=\tutiliser la classe pour la chaînes de constantes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 msgid "Perform a register copy-propagation optimization pass" msgstr "Effectuer la passe d'optimisation de la propagation-de-copie par registre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "Exécuter des optimisations de sauts croisés" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "Lorsque CSE s'exécute, suivre les sauts vers leurs cibles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "Lorsque CSE s'exécute, suivre les sauts considitionnels vers leurs cibles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 msgid "Place data items into their own section" msgstr "placer les items des données dans leur propre section" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +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é)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 msgid "Inline member functions by default" msgstr "Rendre enligne un membre de fonction par défaut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "Tented de remplir de délais les fentes des instructions de branchement" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "Détruire les vérifications de pointeurs nul inutiles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +msgid "Allow '$' in symbol names" +msgstr "Permettre '$' dans les noms de symboles" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 msgid "Permit '$' as an identifier character" msgstr "Autoriser '$' comme identificateur de caractère" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "-fdump-\tvidander les divers internes du compilateur dans un fichier" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "Exécuter une élimination DAWRF2 des doublons" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "Effectuer l'élimination des types non utilisés dans l'information de mise au point" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "--encoding=\tchoisir l'encodade d'entrée (par défaut provient de la locale)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 msgid "Generate code to check exception specifications" msgstr "Générer le code pour vérifier les exceptions de spécifications" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "Autoriser le traitement des exceptions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "-fexec-charset=\tconvertir toutes les chaînes et les constantes de caractères en jeu de caractères " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "Effectuer un nombre mineur d'optimisations coûteuses" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +msgid "f2c-compatible code can be generated" +msgstr "code f2c compatible peut être généré" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "Détruire les supports f2c intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "Désactiver les supports f2c intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "Autoriser les supports f2c intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "Cacher les supports f2c intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +msgid "Unsupported; generate libf2c-calling code" +msgstr "Non supporté; générer le code d'appel libf2c" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "Programme est écrit dans un dialecte typique FORTRAN 66" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +msgid "Program is written in typical Unix-f77 dialect" +msgstr "Programme est écrit dans un dialecte typique Unix f77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "Programme est écrit dans un dialecte Fortran 90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "Détruire les supports F90 intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "Désactiver les supports F90 intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "Autoriser les supports F90 intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "Cacher les supports F90 intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "Assumer qu'aucun NaNs ou infinités ne soit généré" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr "-ffixed-\tmarquer le comme n'étant plus disponible pour le compilateur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr "ffixed-line-limit-\tfixer la longueur maximale de la ligne à " + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +msgid "Unsupported; affects code generation of arrays" +msgstr "Non supporté; affecte la génération de code des tableaux" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "Ne pas stocker les flottants dans les registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 msgid "Scope of for-init-statement variables is local to the loop" msgstr "Étendue des variables for-init-statement est local à la boucle" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 msgid "Copy memory address constants into registers before use" msgstr "Copier les constantes d'adresses mémoire dans les registres avant de les utiliser" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "Toujours vérifier dans les archives de classes non générées gcj" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 msgid "Copy memory operands into registers before use" msgstr "Copier les opérandes mémoire dans les registres avant de les utiliser" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "Programme est écrit dans un style libre Fortran 90" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "Ne pas assumer que les bibliothèques standards C et \"main\" existent" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "Autoriser le maintien des adresses de fonction dans les registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 msgid "Place each function into its own section" msgstr "placer chaque fonction dans sa propre section" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 msgid "Perform global common subexpression elimination" msgstr "Exécuter l'élimination de sous-expression commune globale" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 msgid "Perform store motion after global common subexpression elimination" msgstr "Exécuter un stockage après l'élimination de sous-expression commune globale" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "Autoriser les diagnostiques fatals à propos des problèmes entre procédures" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "Détruire les supports g77 intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "Désactiver les supports g77 intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "Autoriser les supports F90 intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "Cacher les supports g77 intrinsèques non Fortran 77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 msgid "Recognize GNU-defined keywords" msgstr "Reconnaître les mots clés définis GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "Générer du code pour l'environnement GNU d'exécution" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 msgid "Enable guessing of branch probabilities" msgstr "Autoriser l'estimation des probabilités de branchement" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "Présumer que l'environnement d'exécution C est normal" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "Autoriser le support des grands objets" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "Traiter les directive #ident" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "Exécuter la conversion des sauts conditionels à des équivalents sans branchements" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "Exécuter la conversion des sauts conditionnels à une exécution conditionnel" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "Exporter les fonctions même si elles peuvent être enligne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 msgid "Emit implicit instantiations of inline templates" -msgstr "Produire les instanciations explicites de canevas enligne" +msgstr "Produire les instanciations explicites de patron enligne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 msgid "Emit implicit instantiations of templates" -msgstr "Produire les instanciations explicites de canevas" +msgstr "Produire les instanciations explicites de patron" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "Utiliser des tables de décalage pour les appels de méthodes virtuelles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr "Ne pas générer de directives .size" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" +msgstr "Initialiser les vars locales et les tableaux à zéro" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 msgid "Pay attention to the \"inline\" keyword" msgstr "Porter attention au mot clé \"inline\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" -msgstr "Intégrer les fonctions simples à l'intérieur des appelants" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr "-finline-limit=\tlimiter la taille des fonction enligne à " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "-finput-charset= spécifier le jeu de caractères par défaut pour les fichiers source" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 msgid "Instrument function entry and exit with profiling calls" msgstr "Traiter les entrées et les sorties des fonctions avec appels de profilage" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "Lettres d'instrinsèques en casse arbitraire" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "Intrinsèques épellées tel que SqRt" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +msgid "Intrinsics in lowercase" +msgstr "Intrinsèques en minuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "Intrinsèques en majuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "Présumer que les fonctions natives sont implantées et qu'elles utilisent JNI" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 msgid "Give external symbols a leading underscore" msgstr "Afficher les symboles externes préfixés d'un caractère de soulignement" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 msgid "Perform loop optimizations" msgstr "Exécuter l'optimisation des boucles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "Lettres des mots clés du langage dans des casses arbitraires" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "Mots clés du langage épellés tel que IOStat" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +msgid "Language keywords in lowercase" +msgstr "Mots clés du langage en minuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "Mots clés du langage en majuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "Initialiser errno après les fonctions internes mathématiques" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 msgid "Report on permanent memory allocation" msgstr "Rapporter l'allocation de mémoire permanente" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "Tentative de fusion de constantes identique et des variables constantes" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "Tentative de fusion de constantes identiques à travers des unités de compilation" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr "-fmessage-length=\tlimiter la longueur des diagnotiques à de caractères par ligne. 0 supprime l'enroulement de ligne" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "Détruire les intrinsèques MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "Désactiver les intrinsèques MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "Autoriser intrinsèques MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "Cacher les intrinsèques MIL-STD 1753" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "Forcer pour toutes les boucles des calculs invariants en dehors des boucles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 msgid "Don't warn about uses of Microsoft extensions" msgstr "Ne donner d'avertissement au sujet de l'utilisation des extensions de Microsoft" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 msgid "Use graph-coloring register allocation" msgstr "Utiliser l'allocation des registres par coloriage de graphe" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 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)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "Assumer que les receveur de messages Objective-C peut être NIL" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "Supporter les exceptions synchrones des non appels" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "Autoriser l'exception Objective-C et la synchronisation de syntaxe" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "Exécuter la boucle par désenroulement de toutes les boucles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "Lorsque c'est possible ne pas générer des trames de pile" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "Reconnaître les mots clés C++ comme \"compl\" et \"xor\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 msgid "Do the full register move optimization pass" msgstr "Effectuer la passe d'optimisation complète des déplacements par les registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "Optimiser sur mesure les appels enfants et récursif" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +msgid "Enable optimization of static class initialization code" +msgstr "Autorisser l'optimisation du code d'initialisation de classe statique" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 msgid "Enable optional diagnostics" msgstr "Autoriser les diagnostiques optionnels" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "Empaqueter les membres des structures ensembles sans trous" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 msgid "Return small aggregates in memory, not registers" msgstr "Retourner les petits aggrégats en mémoire, pas dans les registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 msgid "Perform loop peeling" msgstr "Exécuter des réductions de boucles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "Autoriser les optimisations des trous spécifiques à une machine" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 msgid "Enable an RTL peephole pass before sched2" msgstr "Autoriser l'exécution de la passe RTL avant sched2" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "Dégrader les erreurs de conformité en des avertissements" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 msgid "Generate position-independent code if possible" msgstr "Générer du code indépendant de la position si possible" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:789 -msgid "Treat the input file as already preprocessed" -msgstr "Traiter le fichier d'entrée comme ayant déjà été pré-traité" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:792 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "Autoriser le code de profilage de base du programme" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 msgid "Insert arc-based program profiling code" msgstr "Insérer le code de profilage du programme de arc-based" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:801 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "Autoriser les options communes pour effectuer le feedback d'optimisation direct de profile" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "Insérer le code pour profile les expressions de valeurs" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "-frandom-seed=\tfaire une compilation reproduisible en utilisant " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "Renforcer la réduction de toutes les boucles par induction des variables" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 msgid "Return small aggregates in registers" msgstr "Retourner les petits aggrégats dans les registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "Autoriser l'optimisation des déplacements par registre" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 msgid "Perform a register renaming optimization pass" msgstr "Effectuer une changement de nom de registres après une passe d'optimisation" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "Ré-ordonner les blocs de base pour améliorer l'emplacement de code" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "Ré-ordonner les fonctions pour améliorer l'emplacement de code" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" -msgstr "Autoriser l'instanciation automatique de canevas" +msgstr "Autoriser l'instanciation automatique de patron" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "Exécuter l'optimiseur de boucle deux fois" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "Interdire les optimisation qui assument un comportement d'arrondissement FP par défaut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 msgid "Generate run time type descriptor information" msgstr "Générer l'information pour un type de descripteur lors de l'exécution" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "Autoriser l'ordonnancement à travers les blocs de base" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "Autoriser le mouvement spéculatif de non chargements" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "Autoriser le mouvement spéculatif de quelques chargements" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "Autoriser le mouvement spéculatif de plusieurs chargements" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "Autoriser l'ordonnancement prématuré de queues insns" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "-fsched-stalled-insns-dep= fixer la distance de vérification de dépendance dans l'ordonnancement d'insnsn en queue" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "-fsched-stalled-insns= fixer le nombre d'insns en queu qui peuvent être prématurément ordonnancés" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "-fsched-verbose=\tnitialiser le niveau de verbosité de l'ordonnanceur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "Si l'ordonnancement fait une post recharge, faire un ordonnancement de super bloc" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "Si l'ordonnancement fait une post recharge, laisse une trace de l'ordonnancement" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "Réordonnancer les instructions avant l'allocation de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "Réordonnancer les instructions après l'allocation de registres" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +msgid "Allow appending a second underscore to externals" +msgstr "Permettre l'ajout d'un second caractère de soulignement aux externes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "Marquer les données comme partagées au lieu de privées" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "Utiliser la même taille pour un double que pour un flottant" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "Écraser le type sous-jacent de \"wchar_t\" vers \"unsigned short\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "Désactiver les optimisations observable par le signalement NaNs IEEE" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 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é" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 msgid "Make \"char\" signed by default" msgstr "Rendre les « char » signés par défaut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 msgid "Convert floating point constants to single precision constants" msgstr "Convertir les constantes en virgules flottantes en constantes de simple précision" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +msgid "Internally convert most source to lowercase" +msgstr "Convertir de manière interne la majorité des sources en majuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "Préserver à l'interne la casse des sources" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "Convertir à l'interne la majorité des sources en majuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "Insérer du code de vérificaion de la pile dans le programme" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "-fstack-limit-register=\tfaire un déroutement si la pile va au delà du " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "-fstack-limit-symbol=\tfaire un déroutement si la pile va au delà du symbole " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "Afficher les statistiques accumulés durant la compilation" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "Autoriser la vérificaitions des affectations dans le stockage des tableaux d'objets" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "Exécuter un réduction en force des optimisations" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "Présumer que des règles stricts d'alias s'appliquent" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "Noms des symboles épellés dans des casses mélangées" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "Noms de symboles en minuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "Noms des symboles en majuscules" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "Vérifier les erreurs de syntaxes et puis stopper" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "-ftabstop=\tfixer la distance de la tabulation des colonnes dans les rapports" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" -msgstr "-ftemplate-depth-\tspécifier la profondeur maximale d'instanciation de canevas" +msgstr "-ftemplate-depth-\tspécifier la profondeur maximale d'instanciation de patron" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 msgid "Create data files needed by \"gcov\"" msgstr "Créer les fichiers de données nécessaires à \"gcov\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "Exécuter des optimisations de sauts de thread" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 msgid "Report the time taken by each compiler pass" msgstr "Rapporter le temps pris par chaque passe de compilation" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "Exécuter la formation du super bloc via la duplication de la queue" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 msgid "Assume floating-point operations can trap" msgstr "On assume que les opérations en virgule flottante peuvent être attrappées" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "Rendre les préfixes des bases des constantes non décimales sans type" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +msgid "Allow all ugly features" +msgstr "Permettre toutes les options laides" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +msgid "Hollerith and typeless can be passed as arguments" +msgstr "Les Hollerith et sans type peuvent être passés comme arguments" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "Permettre le copie ordinaire des variable affectées" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "Tableau factice dont la taille des dimensions (1) est assumée" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "Permettre REAL(Z) et AIMAG(Z) pour les DOUBLE COMPLEX Z" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "Initialisation via DATA et PARAMETER n'est pas un type compatible" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "Permettre l'interchangeabilité de INTEGER et LOGICAL" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +msgid "Append underscores to externals" +msgstr "Ajouter des caractères de soulignement aux externes" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 msgid "Compile whole compilation unit at a time" msgstr "Compiler complètement à la fois une unité de compilation" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "Détruire les intrinsèques libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "Désactiver les intrinsèques libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +msgid "Enable libU77 intrinsics" +msgstr "Autoriser les intrinsèques libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "Cacher les intrinsèques libU77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 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é" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 msgid "Make \"char\" unsigned by default" msgstr "Rendre les \"char\" non signés par défaut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 msgid "Perform loop unswitching" msgstr "Exécuter des boucles sans branchement" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "Générer simplement des tables étendues pour le traitement des exceptions" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "Utiliser « __cxa_atexit » pour enregistrer les destructeurs." -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "Ajouter des commentaires additionnels à la sortie de l'assembleur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 msgid "Use expression value profiles in optimizations" msgstr "Utiliser le profile de la valeur d'expression dans l'optimisation" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "Écarter les fonctions virtuelles non utilisées" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "Implanter les vtables en utilisant des thunks" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "Programme est écrit en Fortran VXT (forme de Digital)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Détruire les supports VXT Fortran intrinsèques non Fortran-77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Désactiver les supports VXT Fortran intrinsèques non Fortran-77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Désactiver les supports VXT Fortran intrinsèques non Fortran-77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "Cacher les supports VXT Fortran des intrinsèques non Fortran-77" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "Produire les symboles communs comme des symboles faibles" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "Construire une toile et séparer les utilisations de variables simples" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "-fwide-exec-charset=\tconvertir toutes les chaînes et les constantes larges de caractères en jeux de caractères " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "Assumer un débordement arithmétique signé enroulé" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "Stocker les chaînes dans les sections d'écriture des données" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "Produire l'information des références croisées" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +msgid "Print internal debugging-related information" +msgstr "Afficher les informations internes reliées à la mise au point" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "Placer des données initialisées de zéros dans la section bss" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "Traiter les valeurs initiales de 0 comme des valeurs non zéros" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 msgid "Generate debug information in default format" msgstr "Générer les informations de mise au point dans le format par défaut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 msgid "Generate debug information in COFF format" msgstr "Générer les informations de mise au point dans le format COFF" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 msgid "Generate debug information in DWARF v2 format" msgstr "Générer les informations de mise au point dans le format DWARF v2" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 msgid "Dump declarations to a .decl file" msgstr "Vidanger les déclarations dans un fichier .decl" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 msgid "Generate debug information in STABS format" msgstr "Générer les informations de mise au point dans le format STABS" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 msgid "Generate debug information in extended STABS format" msgstr "Générer les informations de mise au point dans le format étendu STABS" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 msgid "Generate debug information in VMS format" msgstr "Générer les informations de mise au point dans le format VMS" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 msgid "Generate debug information in XCOFF format" msgstr "Générer les information de mise au point dans le format XCOFF" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 msgid "Generate debug information in extended XCOFF format" msgstr "Générer les informations de mise au point dans le format étendu XCOFF" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "-idirafter \tajouter à la fin du chemin système d'inclusion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "-imacros \taccepter la définition de macros dans le " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "-include \tinclure le contenu du avant les autres fichiers" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "-iprefix \tsélectionner le comme préfixer aux deux prochaines options" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "-isysroot \tsélectionner le comme répertoire racine du système" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "-isystem \tajouter le au début du chemin d'inclusion principal" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "-iwithprefix \tajouter le à la fin du chemin d'inclusion principal" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "-iwithprefixbefore \tajouter le à la fin du chemin d'inclusion principal" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 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)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "Ne pas rechercher les répertoires standard système d'inclusion pour C++" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 msgid "-o \tPlace output into " msgstr "-o \tproduire la sortie dans le " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 msgid "Enable function profiling" msgstr "Autoriser le profilage de fonction" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 msgid "Issue warnings needed for strict compliance to the standard" msgstr "Émettre les avertissements nécessaires pour être conforme au standard" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "Identique à -pedantic mais les marque comme des erreurs" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 msgid "Do not display functions compiled or elapsed time" msgstr "Ne pas afficher les fonctions compilées ou le temps écoulé" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 msgid "Remap file names when including files" msgstr "Rampper les noms lors de l'inclusion des fichiers" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "Conforme au standard ISO C++ de 1998" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "Conforme au standard ISO C de 1990" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "Conforme au standard ISO C de 1999" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "Obsolète à la faveur de l'option -std=c99" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "Conforme au standard ISO C++ de 1998 avec les extensions de GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "Conforme au standard ISO C de 1990 avec les extensions de GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "Conforme au standard ISO C de 1999 avec les extensions de GNU" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "Obsolète à la faveur de l'option -std=gnu99" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "Obsolète à la faveur de l'option -std=c89" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "Conforme au standard ISO C de 1990 tel amendé en 1994" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 msgid "Enable traditional preprocessing" msgstr "Autoriser le traitement traditionnel" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "-trigraphs\tSupporter les tri-graphes ISO C" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 msgid "Enable verbose output" msgstr "Autoriser le mode bavard sur la sortie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -msgid "Display the compiler's version" -msgstr "Afficher la version du compilateur" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 msgid "Suppress warnings" msgstr "Supprimer les avertissements" -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "« -p » n'est pas supporté; utiliser « -pg » et gprof(1)" @@ -20881,7 +21276,7 @@ msgstr "GCC ne supporte pas -C sans utiliser -E" msgid "GCC does not support -CC without using -E" msgstr "GCC ne supporte pas -CC sans utiliser -E" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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" @@ -21024,6 +21419,69 @@ msgstr "-E est requis lorsque l'entr msgid "mno-cygwin and mno-win32 are not compatible" msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" +#~ msgid "read-write constraint does not allow a register" +#~ msgstr "contrainte de lecture-éccriture ne permet pas de registre" + +#~ msgid "your function will be miscompiled" +#~ msgstr "votre fonction sera mal compilée" + +#~ msgid "neither the destructor nor the class-specific " +#~ msgstr "ni le destructeur ni la classe spécifique" + +#~ msgid "operator delete will be called, even if they are " +#~ msgstr "l'opérateur de destruction sera appellé, même s'ils sont " + +#~ msgid "declared when the class is defined." +#~ msgstr "déclarés lorsque la classe est définie." + +#~ msgid "-I \tAdd to the end of the main include path. -I- gives more include path control; see info documentation" +#~ msgstr "-I \tajouter à la fin du chemin principal d'inclusion. -I- donne plus de contrôle sur le chemin d'inclusion; voir la documentation info" + +#~ msgid "Generate make dependencies" +#~ msgstr "Générer les dépendances pour make" + +#~ msgid "-MF \tWrite dependency output to the given file" +#~ msgstr "-MF \técrire les dépendances en sortie dans le fichier fourni" + +#~ msgid "Like -M but ignore system header files" +#~ msgstr "Identique à -M mais ignore les en-têtes de fichiers système" + +#~ msgid "Generate phony targets for all headers" +#~ msgstr "Générer les cibles bidons pour toutes les en-têtes" + +#~ msgid "-MT \tAdd an unquoted target" +#~ msgstr "-MT \tajouter une cible sans quote" + +#~ msgid "Enable most warning messages" +#~ msgstr "Autoriser la plupart des messages d'avertissement" + +#~ msgid "Warn about possibly nested block comments, and C++ comments spanning more than one physical line" +#~ msgstr "Avertir à propos des blocs de commentaires imbriqués et les commentaires C++ qui s'étendent sur plus d'une ligne physique" + +#~ msgid "Synonym for -Wcomment" +#~ msgstr "Synonyme pour -Wcommentaire" + +#~ msgid "Warn about deprecated compiler features" +#~ msgstr "Avertir à propose de la dépréciation des options du compilateur" + +#~ msgid "Deprecated. This switch has no effect." +#~ msgstr "Obsolète. Cette option n'a aucun effet." + +#~ msgid "Warn if trigraphs are encountered that might affect the meaning of the program" +#~ msgstr "Avertir si des trigraphes sont rencontrés et qui pourraient affecter le sens du programme" + +#~ msgid "-fdump-\tDump various compiler internals to a file" +#~ msgstr "-fdump-\tvidander les divers internes du compilateur dans un fichier" + +#~ msgid "Integrate simple functions into their callers" +#~ msgstr "Intégrer les fonctions simples à l'intérieur des appelants" + +#~ msgid "Treat the input file as already preprocessed" +#~ msgstr "Traiter le fichier d'entrée comme ayant déjà été pré-traité" + +#~ msgid "Display the compiler's version" +#~ msgstr "Afficher la version du compilateur" + #~ msgid "pointer to a member used in arithmetic" #~ msgstr "usage en arithmétique d'un pointeur vers un membre" @@ -21066,300 +21524,6 @@ msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" #~ msgid "ISO C++ forbids aggregate initializer to new" #~ msgstr "ISO C++ interdit l'aggrégation d'initialiseur à new" -#~ 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" - -#~ msgid "Warn if deprecated class, method, or field is used" -#~ msgstr "Avertir si une classe, une méthode ou un champ obsolète est utilisé" - -#~ msgid "Warn if deprecated empty statements are found" -#~ msgstr "Avertir si des déclarations vides obsolètes sont trouvées" - -#~ msgid "Enable warnings about inter-procedural problems" -#~ msgstr "Autoriser les avertissements à propos des problèmes inter-procédural" - -#~ msgid "Warn if .class files are out of date" -#~ msgstr "Avertir si des fichier .class sont périmées" - -#~ 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" - -#~ msgid "Warn about constructs with surprising meanings" -#~ msgstr "Avertir à propos des construits ayant des sens surprenants" - -#~ msgid "--CLASSPATH\tDeprecated; use --classpath instead" -#~ msgstr "--CLASSPATH\tobsolète; utiliser --classpath à la place" - -#~ 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" - -#~ 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)" - -#~ msgid "Delete libU77 intrinsics with bad interfaces" -#~ msgstr "Détruire les intrinsèques libU77 ayant des interfaces erronées" - -#~ msgid "Disable libU77 intrinsics with bad interfaces" -#~ msgstr "Désactiver les intrinsèques libU77 ayant des interfaces erronées" - -#~ msgid "Enable libU77 intrinsics with bad interfaces" -#~ msgstr "Autoriser les intrinsèques libU77 ayant des interfaces erronées" - -#~ msgid "Hide libU77 intrinsics with bad interfaces" -#~ msgstr "Cacher les intrinsèques libU77 ayant des interfaces erronées" - -#~ msgid "--bootclasspath=\tReplace system path" -#~ msgstr "--bootclasspath=\tremplacer le système" - -#~ msgid "Program written in strict mixed-case" -#~ msgstr "Programme écrit dans une stricte casse mélangée" - -#~ msgid "Compile as if program written in lowercase" -#~ msgstr "Compiler comme si le programme était écrit en minuscules" - -#~ msgid "Preserve case used in program" -#~ msgstr "Préserver la casse utilisée dans un programme" - -#~ msgid "Program written in lowercase" -#~ msgstr "Programmes écrit en minuscules" - -#~ msgid "Program written in uppercase" -#~ msgstr "Programme écrit en majuscules" - -#~ msgid "Compile as if program written in uppercase" -#~ msgstr "Compiler comme si le programme était écrit en majuscules" - -#~ msgid "--classpath=\tSet class path" -#~ msgstr "--classpath=\tfixer le chemin des classes" - -#~ 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é)" - -#~ msgid "Allow '$' in symbol names" -#~ msgstr "Permettre '$' dans les noms de symboles" - -#~ 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" - -#~ msgid "--encoding=\tChoose input encoding (defaults from your locale)" -#~ msgstr "--encoding=\tchoisir l'encodade d'entrée (par défaut provient de la locale)" - -#~ msgid "f2c-compatible code can be generated" -#~ msgstr "code f2c compatible peut être généré" - -#~ msgid "Delete non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Détruire les supports f2c intrinsèques non Fortran 77" - -#~ msgid "Disable non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Désactiver les supports f2c intrinsèques non Fortran 77" - -#~ msgid "Enable non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Autoriser les supports f2c intrinsèques non Fortran 77" - -#~ msgid "Hide non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "Cacher les supports f2c intrinsèques non Fortran 77" - -#~ msgid "Unsupported; generate libf2c-calling code" -#~ msgstr "Non supporté; générer le code d'appel libf2c" - -#~ msgid "Program is written in typical FORTRAN 66 dialect" -#~ msgstr "Programme est écrit dans un dialecte typique FORTRAN 66" - -#~ msgid "Program is written in typical Unix-f77 dialect" -#~ msgstr "Programme est écrit dans un dialecte typique Unix f77" - -#~ msgid "Program is written in Fortran-90-ish dialect" -#~ msgstr "Programme est écrit dans un dialecte Fortran 90" - -#~ msgid "Delete non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Détruire les supports F90 intrinsèques non Fortran 77" - -#~ msgid "Disable non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Désactiver les supports F90 intrinsèques non Fortran 77" - -#~ msgid "Enable non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Autoriser les supports F90 intrinsèques non Fortran 77" - -#~ msgid "Hide non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "Cacher les supports F90 intrinsèques non Fortran 77" - -#~ msgid "ffixed-line-length-\tSet the maximum line length to " -#~ msgstr "ffixed-line-limit-\tfixer la longueur maximale de la ligne à " - -#~ msgid "Unsupported; affects code generation of arrays" -#~ msgstr "Non supporté; affecte la génération de code des tableaux" - -#~ msgid "Always check for non gcj generated classes archives" -#~ msgstr "Toujours vérifier dans les archives de classes non générées gcj" - -#~ 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" - -#~ msgid "Program is written in Fortran-90-ish free form" -#~ msgstr "Programme est écrit dans un style libre Fortran 90" - -#~ msgid "Enable fatal diagnostics about inter-procedural problems" -#~ msgstr "Autoriser les diagnostiques fatals à propos des problèmes entre procédures" - -#~ msgid "Delete non-FORTRAN-77 intrinsics g77 supports" -#~ msgstr "Détruire les supports g77 intrinsèques non Fortran 77" - -#~ msgid "Disable non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Désactiver les supports g77 intrinsèques non Fortran 77" - -#~ msgid "Enable non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Autoriser les supports F90 intrinsèques non Fortran 77" - -#~ msgid "Hide non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "Cacher les supports g77 intrinsèques non Fortran 77" - -#~ msgid "Use offset tables for virtual method calls" -#~ msgstr "Utiliser des tables de décalage pour les appels de méthodes virtuelles" - -#~ msgid "Initialize local vars and arrays to zero" -#~ msgstr "Initialiser les vars locales et les tableaux à zéro" - -#~ msgid "Intrinsics letters in arbitrary cases" -#~ msgstr "Lettres d'instrinsèques en casse arbitraire" - -#~ msgid "Intrinsics spelled as e.g. SqRt" -#~ msgstr "Intrinsèques épellées tel que SqRt" - -#~ msgid "Intrinsics in lowercase" -#~ msgstr "Intrinsèques en minuscules" - -#~ msgid "Intrinsics in uppercase" -#~ msgstr "Intrinsèques en majuscules" - -#~ msgid "Assume native functions are implemented using JNI" -#~ msgstr "Présumer que les fonctions natives sont implantées et qu'elles utilisent JNI" - -#~ msgid "Language keyword letters in arbitrary cases" -#~ msgstr "Lettres des mots clés du langage dans des casses arbitraires" - -#~ msgid "Language keywords spelled as e.g. IOStat" -#~ msgstr "Mots clés du langage épellés tel que IOStat" - -#~ msgid "Language keywords in lowercase" -#~ msgstr "Mots clés du langage en minuscules" - -#~ msgid "Language keywords in uppercase" -#~ msgstr "Mots clés du langage en majuscules" - -#~ msgid "Delete MIL-STD 1753 intrinsics" -#~ msgstr "Détruire les intrinsèques MIL-STD 1753" - -#~ msgid "Disable MIL-STD 1753 intrinsics" -#~ msgstr "Désactiver les intrinsèques MIL-STD 1753" - -#~ msgid "Enable MIL-STD 1753 intrinsics" -#~ msgstr "Autoriser intrinsèques MIL-STD 1753" - -#~ msgid "Hide MIL-STD 1753 intrinsics" -#~ msgstr "Cacher les intrinsèques MIL-STD 1753" - -#~ 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" - -#~ msgid "Enable optimization of static class initialization code" -#~ msgstr "Autorisser l'optimisation du code d'initialisation de classe statique" - -#~ 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" - -#~ msgid "Allow appending a second underscore to externals" -#~ msgstr "Permettre l'ajout d'un second caractère de soulignement aux externes" - -#~ 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" - -#~ msgid "Internally convert most source to lowercase" -#~ msgstr "Convertir de manière interne la majorité des sources en majuscules" - -#~ msgid "Internally preserve source case" -#~ msgstr "Préserver à l'interne la casse des sources" - -#~ msgid "Internally convert most source to uppercase" -#~ msgstr "Convertir à l'interne la majorité des sources en majuscules" - -#~ msgid "Enable assignability checks for stores into object arrays" -#~ msgstr "Autoriser la vérificaitions des affectations dans le stockage des tableaux d'objets" - -#~ msgid "Symbol names spelled in mixed case" -#~ msgstr "Noms des symboles épellés dans des casses mélangées" - -#~ msgid "Symbol names in lowercase" -#~ msgstr "Noms de symboles en minuscules" - -#~ msgid "Symbol names in uppercase" -#~ msgstr "Noms des symboles en majuscules" - -#~ msgid "Make prefix-radix non-decimal constants be typeless" -#~ msgstr "Rendre les préfixes des bases des constantes non décimales sans type" - -#~ msgid "Allow all ugly features" -#~ msgstr "Permettre toutes les options laides" - -#~ msgid "Hollerith and typeless can be passed as arguments" -#~ msgstr "Les Hollerith et sans type peuvent être passés comme arguments" - -#~ msgid "Allow ordinary copying of ASSIGN'ed vars" -#~ msgstr "Permettre le copie ordinaire des variable affectées" - -#~ msgid "Dummy array dimensioned to (1) is assumed-size" -#~ msgstr "Tableau factice dont la taille des dimensions (1) est assumée" - -#~ 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" - -#~ msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" -#~ msgstr "Permettre REAL(Z) et AIMAG(Z) pour les DOUBLE COMPLEX Z" - -#~ msgid "Initialization via DATA and PARAMETER is not type-compatible" -#~ msgstr "Initialisation via DATA et PARAMETER n'est pas un type compatible" - -#~ msgid "Allow INTEGER and LOGICAL interchangeability" -#~ msgstr "Permettre l'interchangeabilité de INTEGER et LOGICAL" - -#~ msgid "Append underscores to externals" -#~ msgstr "Ajouter des caractères de soulignement aux externes" - -#~ msgid "Delete libU77 intrinsics" -#~ msgstr "Détruire les intrinsèques libU77" - -#~ msgid "Disable libU77 intrinsics" -#~ msgstr "Désactiver les intrinsèques libU77" - -#~ msgid "Enable libU77 intrinsics" -#~ msgstr "Autoriser les intrinsèques libU77" - -#~ msgid "Hide libU77 intrinsics" -#~ msgstr "Cacher les intrinsèques libU77" - -#~ 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" - -#~ msgid "Program is written in VXT (Digital-like) FORTRAN" -#~ msgstr "Programme est écrit en Fortran VXT (forme de Digital)" - -#~ msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Détruire les supports VXT Fortran intrinsèques non Fortran-77" - -#~ msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Désactiver les supports VXT Fortran intrinsèques non Fortran-77" - -#~ msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Désactiver les supports VXT Fortran intrinsèques non Fortran-77" - -#~ msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "Cacher les supports VXT Fortran des intrinsèques non Fortran-77" - -#~ msgid "Print internal debugging-related information" -#~ msgstr "Afficher les informations internes reliées à la mise au point" - -#~ msgid "Treat initial values of 0 like non-zero values" -#~ msgstr "Traiter les valeurs initiales de 0 comme des valeurs non zéros" - #~ msgid "-gnat\tSpecify options to GNAT" #~ msgstr "-gnat\tSpécifier les options pour GNAT" @@ -22475,10 +22639,10 @@ msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" #~ 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" +#~ msgstr "patron « %#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" +#~ msgstr "patron « %#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?" @@ -22562,7 +22726,7 @@ msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" #~ msgstr "«::%D» non déclaré (première utilisation ici)" #~ msgid "real-valued template parameters when cross-compiling" -#~ msgstr "canevas de paramètre en valeur réelle lors de la compilation croisée" +#~ msgstr "patron 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 »" @@ -22571,7 +22735,7 @@ msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" #~ 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" +#~ msgstr "utilisation d'un qualificateur de patron en dehors d'un patron" #~ msgid "ISO C++ forbids an empty condition for `%s'" #~ msgstr "ISO C++ interdit une condition vide pour « %s »" @@ -22661,7 +22825,7 @@ msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" #~ 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" +#~ msgstr "type « %T » composé à partir d'une classe locale n'est pas un patron d'argument valide" #~ msgid "adjusting pointers for covariant returns" #~ msgstr "ajuster les pointeurs pour des retours co-variants" @@ -22754,7 +22918,7 @@ msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" #~ 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" +#~ msgstr "Produire seulement des instanciations explicites du patron" #~ msgid "Recognize and/bitand/bitor/compl/not/or/xor" #~ msgstr "Reconnaître and/bitand/bitor/compl/not/or/xor" @@ -23599,7 +23763,7 @@ msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" #~ msgstr "utilisation invalide du type decl « %#D » comme expression" #~ msgid "invalid use of template `%#D' as expression" -#~ msgstr "utilisation invalide du canevas « %#D » comme expression" +#~ msgstr "utilisation invalide du patron « %#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" @@ -26200,7 +26364,7 @@ msgstr "mno-cygwin et mno-win32 ne sont pas compatibles" #~ msgstr "\\x%x" #~ msgid "invalid use of template `%D'" -#~ msgstr "utilisation invalide du canevas « %D »" +#~ msgstr "utilisation invalide du patron « %D »" #~ msgid "qualified name does not name a class" #~ msgstr "nom qualifié ne nomme pas une classe" diff --git a/gcc/po/gcc.pot b/gcc/po/gcc.pot index 194d54db706..fa794278fdf 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: 2004-05-17 12:50-0700\n" +"POT-Creation-Date: 2004-09-16 07:58+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -16,1537 +16,1618 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: attribs.c:178 +#: attribs.c:175 #, c-format -msgid "`%s' attribute directive ignored" +msgid "%qs attribute directive ignored" msgstr "" -#: attribs.c:186 +#: attribs.c:183 #, c-format -msgid "wrong number of arguments specified for `%s' attribute" +msgid "wrong number of arguments specified for %qs attribute" msgstr "" -#: attribs.c:203 +#: attribs.c:200 #, c-format -msgid "`%s' attribute does not apply to types" +msgid "%qs attribute does not apply to types" msgstr "" -#: attribs.c:249 +#: attribs.c:246 #, c-format -msgid "`%s' attribute only applies to function types" +msgid "%qs attribute only applies to function types" msgstr "" -#: attribs.c:435 c-common.c:4384 c-common.c:4403 c-common.c:4421 -#: c-common.c:4448 c-common.c:4467 c-common.c:4490 c-common.c:4513 -#: c-common.c:4539 c-common.c:4573 c-common.c:4617 c-common.c:4645 -#: c-common.c:4673 c-common.c:4692 c-common.c:4968 c-common.c:4990 -#: c-common.c:5025 c-common.c:5092 c-common.c:5138 c-common.c:5196 -#: c-common.c:5225 c-common.c:5465 c-common.c:5488 c-common.c:5527 -#: config/arm/arm.c:2507 config/arm/arm.c:2534 config/avr/avr.c:4547 -#: config/h8300/h8300.c:4401 config/h8300/h8300.c:4424 config/i386/i386.c:1668 -#: config/i386/i386.c:15251 config/i386/winnt.c:86 config/ia64/ia64.c:1081 -#: config/ip2k/ip2k.c:3160 config/m68hc11/m68hc11.c:1289 -#: config/rs6000/rs6000.c:15185 -#, c-format -msgid "`%s' attribute ignored" -msgstr "" - -#: builtins.c:329 +#: builtins.c:343 msgid "offset outside bounds of constant string" msgstr "" -#: builtins.c:915 -msgid "second arg to `__builtin_prefetch' must be a constant" +#: builtins.c:927 +msgid "second arg to %<__builtin_prefetch%> must be a constant" msgstr "" -#: builtins.c:922 +#: builtins.c:934 msgid "invalid second arg to __builtin_prefetch; using zero" msgstr "" -#: builtins.c:929 -msgid "third arg to `__builtin_prefetch' must be a constant" +#: builtins.c:941 +msgid "third arg to %<__builtin_prefetch%> must be a constant" msgstr "" -#: builtins.c:936 +#: builtins.c:948 msgid "invalid third arg to __builtin_prefetch; using zero" msgstr "" -#: builtins.c:4024 -msgid "argument of `__builtin_args_info' must be constant" +#: builtins.c:4150 +msgid "argument of %<__builtin_args_info%> must be constant" msgstr "" -#: builtins.c:4030 -msgid "argument of `__builtin_args_info' out of range" +#: builtins.c:4156 +msgid "argument of %<__builtin_args_info%> out of range" msgstr "" -#: builtins.c:4036 -msgid "missing argument in `__builtin_args_info'" +#: builtins.c:4162 +msgid "missing argument in %<__builtin_args_info%>" msgstr "" -#: builtins.c:4052 builtins.c:8929 -msgid "`va_start' used in function with fixed args" +#: builtins.c:4178 builtins.c:9263 +msgid "% used in function with fixed args" msgstr "" -#: builtins.c:4071 builtins.c:8945 -msgid "second parameter of `va_start' not last named argument" +#: builtins.c:4197 builtins.c:9279 +msgid "second parameter of % not last named argument" msgstr "" #. Evidently an out of date version of ; can't validate #. va_start's second argument, but can still work as intended. -#: builtins.c:4076 builtins.c:8951 -msgid "`__builtin_next_arg' called without an argument" +#: builtins.c:4202 builtins.c:9285 +msgid "%<__builtin_next_arg%> called without an argument" msgstr "" -#: builtins.c:4165 builtins.c:8916 -msgid "too many arguments to function `va_start'" +#: builtins.c:4287 builtins.c:9250 +msgid "too many arguments to function %" msgstr "" -#: builtins.c:4287 -msgid "first argument to `va_arg' not of type `va_list'" +#: builtins.c:4433 +msgid "first argument to % not of type %" 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:4319 -#, c-format -msgid "`%s' is promoted to `%s' when passed through `...'" +#: builtins.c:4447 +msgid "%qT is promoted to %qT when passed through %<...%>" msgstr "" -#: builtins.c:4324 -#, c-format -msgid "(so you should pass `%s' not `%s' to `va_arg')" +#: builtins.c:4452 +msgid "(so you should pass %qT not %qT to %)" msgstr "" #. We can, however, treat "undefined" any way we please. #. Call abort to encourage the user to fix the program. -#: builtins.c:4330 c-typeck.c:1757 +#: builtins.c:4458 c-typeck.c:1950 msgid "if this code is reached, the program will abort" msgstr "" -#: builtins.c:4437 -msgid "invalid arg to `__builtin_frame_address'" +#: builtins.c:4576 +msgid "invalid arg to %<__builtin_frame_address%>" msgstr "" -#: builtins.c:4439 -msgid "invalid arg to `__builtin_return_address'" +#: builtins.c:4578 +msgid "invalid arg to %<__builtin_return_address%>" msgstr "" -#: builtins.c:4453 -msgid "unsupported arg to `__builtin_frame_address'" +#: builtins.c:4592 +msgid "unsupported arg to %<__builtin_frame_address%>" msgstr "" -#: builtins.c:4455 -msgid "unsupported arg to `__builtin_return_address'" +#: builtins.c:4594 +msgid "unsupported arg to %<__builtin_return_address%>" msgstr "" -#: builtins.c:4621 -msgid "second arg to `__builtin_expect' must be a constant" +#: builtins.c:4760 +msgid "second arg to %<__builtin_expect%> must be a constant" msgstr "" -#: builtins.c:5880 +#: builtins.c:5967 msgid "__builtin_longjmp second argument must be 1" msgstr "" -#: builtins.c:6025 +#: builtins.c:6312 +msgid "target format does not support infinity" +msgstr "" + +#: builtins.c:8043 builtins.c:8139 c-typeck.c:2179 #, c-format -msgid "built-in function `%s' not currently supported" +msgid "too few arguments to function %qs" msgstr "" -#: builtins.c:6203 -msgid "target format does not support infinity" +#: builtins.c:8049 builtins.c:8145 c-typeck.c:2038 +#, c-format +msgid "too many arguments to function %qs" msgstr "" -#: c-common.c:931 -msgid "%Hsuggest explicit braces to avoid ambiguous `else'" +#: builtins.c:8055 builtins.c:8169 +#, c-format +msgid "non-floating-point argument to function %qs" msgstr "" -#: c-common.c:1155 -msgid "%J'%D' is not defined outside of function scope" +#: c-common.c:831 +msgid "%J%qD is not defined outside of function scope" msgstr "" -#: c-common.c:1175 +#: c-common.c:852 #, c-format msgid "" -"string length `%d' is greater than the length `%d' ISO C%d compilers are " +"string length %qd is greater than the length %qd ISO C%d compilers are " "required to support" msgstr "" -#: c-common.c:1216 +#: c-common.c:885 msgid "overflow in constant expression" msgstr "" -#: c-common.c:1236 +#: c-common.c:905 msgid "integer overflow in expression" msgstr "" -#: c-common.c:1245 +#: c-common.c:914 msgid "floating point overflow in expression" msgstr "" -#: c-common.c:1251 +#: c-common.c:920 msgid "vector overflow in expression" msgstr "" #. This detects cases like converting -129 or 256 to unsigned char. -#: c-common.c:1273 +#: c-common.c:942 msgid "large integer implicitly truncated to unsigned type" msgstr "" -#: c-common.c:1275 +#: c-common.c:944 msgid "negative integer implicitly converted to unsigned type" msgstr "" -#: c-common.c:1331 +#: c-common.c:1002 msgid "overflow in implicit constant conversion" msgstr "" -#: c-common.c:1467 +#: c-common.c:1138 #, c-format -msgid "operation on `%s' may be undefined" +msgid "operation on %qs may be undefined" msgstr "" -#: c-common.c:1750 -msgid "expression statement has incomplete type" +#: c-common.c:1431 +msgid "case label does not reduce to an integer constant" msgstr "" -#: c-common.c:1782 -msgid "case label does not reduce to an integer constant" +#: c-common.c:1474 +msgid "case label value is less than minimum value for type" +msgstr "" + +#: c-common.c:1482 +msgid "case label value exceeds maximum value for type" +msgstr "" + +#: c-common.c:1490 +msgid "lower value in case label range less than minimum value for type" +msgstr "" + +#: c-common.c:1499 +msgid "upper value in case label range exceeds maximum value for type" msgstr "" -#: c-common.c:2086 +#: c-common.c:1815 msgid "invalid truth-value expression" msgstr "" -#: c-common.c:2137 +#: c-common.c:1866 #, c-format msgid "invalid operands to binary %s" msgstr "" -#: c-common.c:2371 +#: c-common.c:2109 msgid "comparison is always false due to limited range of data type" msgstr "" -#: c-common.c:2373 +#: c-common.c:2111 msgid "comparison is always true due to limited range of data type" msgstr "" -#: c-common.c:2443 +#: c-common.c:2181 msgid "comparison of unsigned expression >= 0 is always true" msgstr "" -#: c-common.c:2452 +#: c-common.c:2190 msgid "comparison of unsigned expression < 0 is always false" msgstr "" -#: c-common.c:2494 -msgid "pointer of type `void *' used in arithmetic" +#: c-common.c:2232 +msgid "pointer of type % used in arithmetic" msgstr "" -#: c-common.c:2500 +#: c-common.c:2238 msgid "pointer to a function used in arithmetic" msgstr "" -#: c-common.c:2506 +#: c-common.c:2244 msgid "pointer to member function used in arithmetic" msgstr "" #. Common Ada/Pascal programmer's mistake. We always warn #. about this since it is so bad. -#: c-common.c:2612 -msgid "the address of `%D', will always evaluate as `true'" +#: c-common.c:2352 +msgid "the address of %qD, will always evaluate as %" msgstr "" -#: c-common.c:2706 +#: c-common.c:2448 msgid "suggest parentheses around assignment used as truth value" msgstr "" -#: c-common.c:2752 c-common.c:2792 -msgid "invalid use of `restrict'" -msgstr "" - -#: c-common.c:3004 -msgid "invalid application of `sizeof' to a function type" -msgstr "" - -#: c-common.c:3014 -#, c-format -msgid "invalid application of `%s' to a void type" -msgstr "" - -#: c-common.c:3020 -#, c-format -msgid "invalid application of `%s' to an incomplete type" +#: c-common.c:2497 c-common.c:2537 +msgid "invalid use of %" msgstr "" -#: c-common.c:3060 -msgid "`__alignof' applied to a bit-field" +#: c-common.c:2752 +msgid "invalid application of % to a function type" msgstr "" -#: c-common.c:3502 +#: c-common.c:2762 #, c-format -msgid "cannot disable built-in function `%s'" +msgid "invalid application of %qs to a void type" msgstr "" -#: c-common.c:3663 c-typeck.c:1987 -#, c-format -msgid "too few arguments to function `%s'" +#: c-common.c:2768 +msgid "invalid application of %qs to incomplete type %qT " msgstr "" -#: c-common.c:3669 c-typeck.c:1848 -#, c-format -msgid "too many arguments to function `%s'" +#: c-common.c:2809 +msgid "%<__alignof%> applied to a bit-field" msgstr "" -#: c-common.c:3688 +#: c-common.c:3252 #, c-format -msgid "non-floating-point argument to function `%s'" +msgid "cannot disable built-in function %qs" msgstr "" -#: c-common.c:3908 +#: c-common.c:3512 msgid "pointers are not permitted as case values" msgstr "" -#: c-common.c:3912 +#: c-common.c:3516 msgid "range expressions in switch statements are non-standard" msgstr "" -#: c-common.c:3937 +#: c-common.c:3541 msgid "empty range specified" msgstr "" -#: c-common.c:3988 +#: c-common.c:3600 msgid "duplicate (or overlapping) case value" msgstr "" -#: c-common.c:3989 +#: c-common.c:3601 msgid "%Jthis is the first entry overlapping that value" msgstr "" -#: c-common.c:3993 +#: c-common.c:3605 msgid "duplicate case value" msgstr "" -#: c-common.c:3994 +#: c-common.c:3606 msgid "%Jpreviously used here" msgstr "" -#: c-common.c:3998 +#: c-common.c:3610 msgid "multiple default labels in one switch" msgstr "" -#: c-common.c:3999 +#: c-common.c:3611 msgid "%Jthis is the first default label" msgstr "" -#: c-common.c:4048 -msgid "%Jcase value `%s' not in enumerated type" +#: c-common.c:3660 +msgid "%Jcase value %qs not in enumerated type" msgstr "" -#: c-common.c:4051 -msgid "%Jcase value `%s' not in enumerated type `%T'" +#: c-common.c:3663 +msgid "%Jcase value %qs not in enumerated type %qT" msgstr "" -#: c-common.c:4116 +#: c-common.c:3730 msgid "%Hswitch missing default case" msgstr "" #. Warn if there are enumerators that don't correspond to #. case expressions. -#: c-common.c:4150 -msgid "%Henumeration value `%E' not handled in switch" +#: c-common.c:3764 +msgid "%Henumeration value %qE not handled in switch" msgstr "" -#: c-common.c:4177 +#: c-common.c:3791 msgid "taking the address of a label is non-standard" msgstr "" -#: c-common.c:4727 +#: c-common.c:3960 c-common.c:3979 c-common.c:3997 c-common.c:4024 +#: c-common.c:4043 c-common.c:4066 c-common.c:4090 c-common.c:4116 +#: c-common.c:4150 c-common.c:4194 c-common.c:4222 c-common.c:4250 +#: c-common.c:4269 c-common.c:4581 c-common.c:4612 c-common.c:4698 +#: c-common.c:4765 c-common.c:4811 c-common.c:4869 c-common.c:4898 +#: c-common.c:5177 c-common.c:5200 c-common.c:5239 tree.c:3075 #, c-format -msgid "unknown machine mode `%s'" +msgid "%qs attribute ignored" +msgstr "" + +#: c-common.c:4304 +msgid "unknown machine mode %<%s%>" msgstr "" -#: c-common.c:4733 +#: c-common.c:4324 msgid "specifying vector types with __attribute__ ((mode)) is deprecated" msgstr "" -#: c-common.c:4735 +#: c-common.c:4326 msgid "use __attribute__ ((vector_size)) instead" msgstr "" -#: c-common.c:4740 -#, c-format -msgid "no data type for mode `%s'" +#: c-common.c:4335 +msgid "unable to emulate %<%s%>" msgstr "" -#: c-common.c:4745 -#, c-format -msgid "invalid pointer mode `%s'" +#: c-common.c:4345 +msgid "invalid pointer mode %<%s%>" +msgstr "" + +#: c-common.c:4360 +msgid "no data type for mode %<%s%>" msgstr "" -#: c-common.c:4752 +#: c-common.c:4370 #, c-format -msgid "unable to emulate '%s'" +msgid "cannot use mode %qs for enumeral types" msgstr "" -#: c-common.c:4796 +#: c-common.c:4409 msgid "%Jsection attribute cannot be specified for local variables" msgstr "" -#: c-common.c:4807 -msgid "%Jsection of '%D' conflicts with previous declaration" +#: c-common.c:4420 +msgid "%Jsection of %qD conflicts with previous declaration" msgstr "" -#: c-common.c:4816 -msgid "%Jsection attribute not allowed for '%D'" +#: c-common.c:4429 +msgid "%Jsection attribute not allowed for %qD" msgstr "" -#: c-common.c:4822 +#: c-common.c:4435 msgid "%Jsection attributes are not supported for this target" msgstr "" -#: c-common.c:4860 +#: c-common.c:4473 msgid "requested alignment is not a constant" msgstr "" -#: c-common.c:4865 +#: c-common.c:4478 msgid "requested alignment is not a power of 2" msgstr "" -#: c-common.c:4870 +#: c-common.c:4483 msgid "requested alignment is too large" msgstr "" -#: c-common.c:4896 -msgid "%Jalignment may not be specified for '%D'" +#: c-common.c:4509 +msgid "%Jalignment may not be specified for %qD" msgstr "" -#: c-common.c:4934 -msgid "%J'%D' defined both normally and as an alias" +#: c-common.c:4547 +msgid "%J%qD defined both normally and as an alias" msgstr "" -#: c-common.c:4950 +#: c-common.c:4563 msgid "alias arg not a string" msgstr "" -#: c-common.c:4996 +#: c-common.c:4605 +#, c-format +msgid "%qs attribute ignored on non-class types" +msgstr "" + +#: c-common.c:4618 msgid "visibility arg not a string" msgstr "" -#: c-common.c:5009 +#: c-common.c:4639 msgid "" "visibility arg must be one of \"default\", \"hidden\", \"protected\" or " "\"internal\"" msgstr "" -#: c-common.c:5035 +#: c-common.c:4708 msgid "tls_model arg not a string" msgstr "" -#: c-common.c:5044 +#: c-common.c:4717 msgid "" "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-" "dynamic\" or \"global-dynamic\"" msgstr "" -#: c-common.c:5066 c-common.c:5112 -msgid "%J'%E' attribute applies only to functions" +#: c-common.c:4739 c-common.c:4785 +msgid "%J%qE attribute applies only to functions" msgstr "" -#: c-common.c:5071 c-common.c:5117 -msgid "%Jcan't set '%E' attribute after definition" +#: c-common.c:4744 c-common.c:4790 +msgid "%Jcan%'t set %qE attribute after definition" msgstr "" -#: c-common.c:5193 +#: c-common.c:4866 #, c-format -msgid "`%s' attribute ignored for `%s'" +msgid "%qs attribute ignored for %qs" msgstr "" -#: c-common.c:5254 +#: c-common.c:4927 #, c-format -msgid "invalid vector type for attribute `%s'" +msgid "invalid vector type for attribute %qs" msgstr "" -#: c-common.c:5278 -msgid "no vector mode with the size and type specified could be found" +#: c-common.c:4936 +msgid "number of components of the vector not a power of two" msgstr "" -#: c-common.c:5306 +#: c-common.c:4964 msgid "nonnull attribute without arguments on a non-prototype" msgstr "" -#: c-common.c:5321 +#: c-common.c:4979 #, c-format msgid "nonnull argument has invalid operand number (arg %lu)" msgstr "" -#: c-common.c:5340 +#: c-common.c:4998 #, c-format msgid "" "nonnull argument with out-of-range operand number (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5348 +#: c-common.c:5006 #, c-format msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5428 +#: c-common.c:5061 c-common.c:5098 +msgid "missing sentinel in function call" +msgstr "" + +#: c-common.c:5084 +msgid "not enough arguments to fit a sentinel" +msgstr "" + +#: c-common.c:5140 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "" -#: c-common.c:5499 +#: c-common.c:5211 msgid "cleanup arg not an identifier" msgstr "" -#: c-common.c:5506 +#: c-common.c:5218 msgid "cleanup arg not a function" msgstr "" -#: c-common.c:5893 +#: c-common.c:5256 +#, c-format +msgid "%qs attribute requires prototypes with named arguments" +msgstr "" + +#: c-common.c:5267 +#, c-format +msgid "%qs attribute only applies to variadic functions" +msgstr "" + +#: c-common.c:5280 +msgid "requested position is not an integer constant" +msgstr "" + +#: c-common.c:5287 +msgid "requested position is less than zero" +msgstr "" + +#: c-common.c:5474 #, c-format msgid "%s at end of input" msgstr "" -#: c-common.c:5899 +#: c-common.c:5480 #, c-format msgid "%s before %s'%c'" msgstr "" -#: c-common.c:5901 +#: c-common.c:5482 #, c-format msgid "%s before %s'\\x%x'" msgstr "" -#: c-common.c:5905 +#: c-common.c:5486 #, c-format msgid "%s before string constant" msgstr "" -#: c-common.c:5907 +#: c-common.c:5488 #, c-format msgid "%s before numeric constant" msgstr "" -#: c-common.c:5909 +#: c-common.c:5490 #, c-format msgid "%s before \"%s\"" msgstr "" -#: c-common.c:5911 +#: c-common.c:5492 #, c-format -msgid "%s before '%s' token" +msgid "%s before %qs token" msgstr "" #. Use `%s' to print the string in case there are any escape #. characters in the message. -#: c-common.c:5913 c-typeck.c:2546 c-typeck.c:3808 c-typeck.c:3823 -#: c-typeck.c:3838 final.c:2855 final.c:2857 gcc.c:4651 rtl-error.c:109 -#: toplev.c:1286 config/cris/cris.c:566 cp/parser.c:1852 cp/typeck.c:4098 -#: java/expr.c:361 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 +#: c-common.c:5494 c-typeck.c:2696 c-typeck.c:3949 c-typeck.c:3964 +#: c-typeck.c:3979 final.c:2839 final.c:2841 gcc.c:4647 rtl-error.c:113 +#: toplev.c:605 config/cris/cris.c:568 cp/parser.c:2086 cp/typeck.c:4136 +#: java/expr.c:368 java/verify.c:1552 java/verify.c:1553 java/verify.c:1572 #, c-format msgid "%s" msgstr "" -#: c-common.c:5970 +#: c-common.c:5554 msgid "" -"%Hignoring return value of `%D', declared with attribute warn_unused_result" +"%Hignoring return value of %qD, declared with attribute warn_unused_result" msgstr "" -#: c-common.c:5974 +#: c-common.c:5558 msgid "" "%Hignoring return value of function declared with attribute " "warn_unused_result" msgstr "" -#: c-convert.c:83 c-typeck.c:1235 c-typeck.c:3249 cp/typeck.c:1342 -#: cp/typeck.c:5598 fortran/convert.c:89 treelang/tree-convert.c:79 +#: c-common.c:5597 +#, c-format +msgid "attempt to take address of bit-field structure member %qs" +msgstr "" + +#: c-convert.c:83 c-typeck.c:1334 c-typeck.c:3393 cp/typeck.c:1376 +#: cp/typeck.c:5657 fortran/convert.c:89 treelang/tree-convert.c:79 msgid "void value not ignored as it ought to be" msgstr "" -#: c-convert.c:121 fortran/convert.c:122 java/typeck.c:155 +#: c-convert.c:121 fortran/convert.c:122 java/typeck.c:158 #: treelang/tree-convert.c:105 msgid "conversion to non-scalar type requested" msgstr "" -#: c-decl.c:491 -msgid "%Jarray '%D' assumed to have one element" +#: c-decl.c:524 +msgid "%Jarray %qD assumed to have one element" msgstr "" -#: c-decl.c:604 +#: c-decl.c:637 #, c-format msgid "GCC supports only %u nested scopes\n" msgstr "" -#: c-decl.c:678 -msgid "%Jlabel `%D' used but not defined" +#: c-decl.c:721 +msgid "%Jlabel %qD used but not defined" +msgstr "" + +#: c-decl.c:727 +msgid "%Jlabel %qD defined but not used" msgstr "" -#: c-decl.c:684 -msgid "%Jlabel `%D' defined but not used" +#: c-decl.c:729 +msgid "%Jlabel %qD declared but not defined" msgstr "" -#: c-decl.c:686 -msgid "%Jlabel `%D' declared but not defined" +#: c-decl.c:774 +msgid "%Junused variable %qD" msgstr "" -#: c-decl.c:738 -msgid "%Junused variable `%D'" +#: c-decl.c:778 +msgid "%Jtype of array %qD completed incompatibly with implicit initialization" msgstr "" -#: c-decl.c:955 +#: c-decl.c:1010 msgid "" "a parameter list with an ellipsis can't match an empty parameter name list " "declaration" msgstr "" -#: c-decl.c:962 +#: c-decl.c:1017 msgid "" "an argument type that has a default promotion can't match an empty parameter " "name list declaration" msgstr "" -#: c-decl.c:998 +#: c-decl.c:1053 msgid "" -"%Jprototype for '%D' declares more arguments than previous old-style " +"%Jprototype for %qD declares more arguments than previous old-style " "definition" msgstr "" -#: c-decl.c:1004 +#: c-decl.c:1059 msgid "" -"%Jprototype for '%D' declares fewer arguments than previous old-style " +"%Jprototype for %qD declares fewer arguments than previous old-style " "definition" msgstr "" -#: c-decl.c:1013 -msgid "%Jprototype for '%D' declares arg %d with incompatible type" +#: c-decl.c:1068 +msgid "%Jprototype for %qD declares arg %d with incompatible type" msgstr "" #. If we get here, no errors were found, but do issue a warning #. for this poor-style construct. -#: c-decl.c:1025 -msgid "%Jprototype for '%D' follows non-prototype definition" +#: c-decl.c:1080 +msgid "%Jprototype for %qD follows non-prototype definition" msgstr "" -#: c-decl.c:1040 -msgid "%Jprevious definition of '%D' was here" +#: c-decl.c:1095 +msgid "%Jprevious definition of %qD was here" msgstr "" -#: c-decl.c:1042 -msgid "%Jprevious implicit declaration of '%D' was here" +#: c-decl.c:1097 +msgid "%Jprevious implicit declaration of %qD was here" msgstr "" -#: c-decl.c:1044 -msgid "%Jprevious declaration of '%D' was here" +#: c-decl.c:1099 +msgid "%Jprevious declaration of %qD was here" msgstr "" -#: c-decl.c:1080 -msgid "%J'%D' redeclared as different kind of symbol" +#: c-decl.c:1135 +msgid "%J%qD redeclared as different kind of symbol" msgstr "" -#: c-decl.c:1085 -msgid "%Jbuilt-in function '%D' declared as non-function" +#: c-decl.c:1140 +msgid "%Jbuilt-in function %qD declared as non-function" msgstr "" -#: c-decl.c:1088 c-decl.c:1180 c-decl.c:1715 -msgid "%Jdeclaration of '%D' shadows a built-in function" +#: c-decl.c:1143 c-decl.c:1238 c-decl.c:1803 +msgid "%Jdeclaration of %qD shadows a built-in function" 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:1109 -msgid "%Jconflicting types for built-in function '%D'" +#: c-decl.c:1164 +msgid "%Jconflicting types for built-in function %qD" msgstr "" -#: c-decl.c:1133 c-decl.c:1141 -msgid "%Jconflicting types for '%D'" +#: c-decl.c:1188 c-decl.c:1199 +msgid "%Jconflicting types for %qD" msgstr "" -#. Allow OLDDECL to continue in use. -#: c-decl.c:1156 -msgid "%Jredefinition of typedef '%D'" +#: c-decl.c:1197 +msgid "%J conflicting type qualifiers for %qD" msgstr "" -#: c-decl.c:1194 c-decl.c:1258 -msgid "%Jredefinition of '%D'" +#. Allow OLDDECL to continue in use. +#: c-decl.c:1214 +msgid "%Jredefinition of typedef %qD" msgstr "" -#: c-decl.c:1225 c-decl.c:1275 -msgid "%Jstatic declaration of '%D' follows non-static declaration" +#: c-decl.c:1253 c-decl.c:1331 +msgid "%Jredefinition of %qD" msgstr "" -#: c-decl.c:1233 c-decl.c:1272 -msgid "%Jnon-static declaration of '%D' follows static declaration" +#: c-decl.c:1288 c-decl.c:1369 +msgid "%Jstatic declaration of %qD follows non-static declaration" msgstr "" -#: c-decl.c:1245 -msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration" +#: c-decl.c:1298 c-decl.c:1305 c-decl.c:1358 c-decl.c:1366 +msgid "%Jnon-static declaration of %qD follows static declaration" msgstr "" -#: c-decl.c:1248 -msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration" +#: c-decl.c:1318 +msgid "%Jthread-local declaration of %qD follows non-thread-local declaration" msgstr "" -#: c-decl.c:1288 -msgid "%Jextern declaration of '%D' follows declaration with no linkage" +#: c-decl.c:1321 +msgid "%Jnon-thread-local declaration of %qD follows thread-local declaration" msgstr "" -#: c-decl.c:1291 -msgid "%Jdeclaration of '%D' with no linkage follows extern declaration" +#: c-decl.c:1351 +msgid "%Jextern declaration of %qD follows declaration with no linkage" msgstr "" -#: c-decl.c:1294 -msgid "%Jredeclaration of '%D' with no linkage" +#: c-decl.c:1387 +msgid "%Jdeclaration of %qD with no linkage follows extern declaration" msgstr "" -#: c-decl.c:1308 -msgid "" -"%Jredeclaration of '%D' with different visibility (old visibility preserved)" +#: c-decl.c:1393 +msgid "%Jredeclaration of %qD with no linkage" msgstr "" -#: c-decl.c:1319 +#: c-decl.c:1407 msgid "" -"%Jinline declaration of '%D' follows declaration with attribute noinline" +"%Jredeclaration of %qD with different visibility (old visibility preserved)" msgstr "" -#: c-decl.c:1326 -msgid "" -"%Jdeclaration of '%D' with attribute noinline follows inline declaration " +#: c-decl.c:1418 +msgid "%Jinline declaration of %qD follows declaration with attribute noinline" msgstr "" -#: c-decl.c:1338 -msgid "%J'%D' declared inline after being called" +#: c-decl.c:1425 +msgid "" +"%Jdeclaration of %qD with attribute noinline follows inline declaration " msgstr "" -#: c-decl.c:1344 -msgid "%J'%D' declared inline after its definition" +#: c-decl.c:1440 +msgid "%J%qD declared inline after being called" msgstr "" -#: c-decl.c:1364 -msgid "%Jredefinition of parameter '%D'" +#: c-decl.c:1446 +msgid "%J%qD declared inline after its definition" msgstr "" -#: c-decl.c:1373 -msgid "%Jvolatile declaration of '%D' follows non-volatile declaration" +#: c-decl.c:1466 +msgid "%Jredefinition of parameter %qD" msgstr "" -#: c-decl.c:1376 -msgid "%Jnon-volatile declaration of '%D' follows volatile declaration" +#: c-decl.c:1490 +msgid "%Jredundant redeclaration of %qD" msgstr "" -#: c-decl.c:1383 -msgid "%Jconst declaration of '%D' follows non-const declaration" +#: c-decl.c:1796 +msgid "%Jdeclaration of %qD shadows a parameter" msgstr "" -#: c-decl.c:1386 -msgid "%Jnon-const declaration of '%D' follows const declaration" +#: c-decl.c:1799 +msgid "%Jdeclaration of %qD shadows a global declaration" msgstr "" -#: c-decl.c:1405 -msgid "%Jredundant redeclaration of '%D'" +#: c-decl.c:1806 +msgid "%Jdeclaration of %qD shadows a previous local" msgstr "" -#: c-decl.c:1710 -msgid "%Jdeclaration of '%D' shadows a parameter" +#: c-decl.c:1811 cp/name-lookup.c:1011 cp/name-lookup.c:1042 +#: cp/name-lookup.c:1050 +msgid "%Jshadowed declaration is here" msgstr "" -#: c-decl.c:1712 -msgid "%Jdeclaration of '%D' shadows a global declaration" +#: c-decl.c:1965 +msgid "nested extern declaration of %qD" msgstr "" -#: c-decl.c:1718 -msgid "%Jdeclaration of '%D' shadows a previous local" +#: c-decl.c:2054 +msgid "nested static declaration of %qD" msgstr "" -#: c-decl.c:1721 cp/name-lookup.c:940 cp/name-lookup.c:963 -#: cp/name-lookup.c:971 -msgid "%Jshadowed declaration is here" +#: c-decl.c:2149 +#, c-format +msgid "implicit declaration of function %qE" msgstr "" -#: c-decl.c:1859 -#, c-format -msgid "nested extern declaration of `%s'" +#: c-decl.c:2205 +msgid "incompatible implicit declaration of built-in function %qD" msgstr "" -#: c-decl.c:1963 -#, c-format -msgid "implicit declaration of function '%E'" +#: c-decl.c:2214 +msgid "incompatible implicit declaration of function %qD" msgstr "" -#: c-decl.c:2041 +#: c-decl.c:2264 #, c-format -msgid "'%E' undeclared here (not in a function)" +msgid "%qE undeclared here (not in a function)" msgstr "" -#: c-decl.c:2046 +#: c-decl.c:2269 #, c-format -msgid "'%E' undeclared (first use in this function)" +msgid "%qE undeclared (first use in this function)" msgstr "" -#: c-decl.c:2050 +#: c-decl.c:2273 msgid "(Each undeclared identifier is reported only once" msgstr "" -#: c-decl.c:2051 +#: c-decl.c:2274 msgid "for each function it appears in.)" msgstr "" -#: c-decl.c:2089 +#: c-decl.c:2312 #, c-format -msgid "label %s referenced outside of any function" +msgid "label %qs referenced outside of any function" msgstr "" -#: c-decl.c:2131 +#: c-decl.c:2355 #, c-format -msgid "duplicate label declaration `%s'" +msgid "duplicate label declaration %qs" msgstr "" -#: c-decl.c:2165 -msgid "%Hduplicate label `%D'" +#: c-decl.c:2390 +msgid "%Hduplicate label %qD" msgstr "" -#: c-decl.c:2186 +#: c-decl.c:2412 msgid "" -"%Htraditional C lacks a separate namespace for labels, identifier `%s' " +"%Htraditional C lacks a separate namespace for labels, identifier %qs " "conflicts" msgstr "" -#: c-decl.c:2252 -msgid "%H`%s' defined as wrong kind of tag" +#: c-decl.c:2478 +msgid "%H%qs defined as wrong kind of tag" msgstr "" -#: c-decl.c:2480 +#: c-decl.c:2703 msgid "unnamed struct/union that defines no instances" msgstr "" -#: c-decl.c:2499 -msgid "useless keyword or type name in empty declaration" +#: c-decl.c:2722 c-decl.c:2729 +msgid "useless type name in empty declaration" msgstr "" -#: c-decl.c:2506 -msgid "two types specified in one empty declaration" +#: c-decl.c:2739 +msgid "" +"long, short, signed, unsigned or complex used invalidly in empty declaration" msgstr "" -#: c-decl.c:2511 c-parse.y:702 c-parse.y:704 objc/objc-parse.y:743 -#: objc/objc-parse.y:745 objc/objc-parse.y:3003 -msgid "empty declaration" +#: c-decl.c:2746 +msgid "% in empty declaration" msgstr "" -#: c-decl.c:2537 -msgid "" -"ISO C90 does not support `static' or type qualifiers in parameter array " -"declarators" +#: c-decl.c:2752 +msgid "% in file-scope empty declaration" msgstr "" -#: c-decl.c:2539 -msgid "ISO C90 does not support `[*]' array declarators" +#: c-decl.c:2758 +msgid "% in file-scope empty declaration" msgstr "" -#: c-decl.c:2542 -msgid "GCC does not yet properly implement `[*]' array declarators" +#: c-decl.c:2764 +msgid "useless storage class specifier in empty declaration" msgstr "" -#: c-decl.c:2558 -msgid "static or type qualifiers in abstract declarator" +#: c-decl.c:2770 +msgid "useless %<__thread%> in empty declaration" msgstr "" -#: c-decl.c:2628 -msgid "%J'%D' is usually a function" +#: c-decl.c:2778 +msgid "useless type qualifier in empty declaration" msgstr "" -#: c-decl.c:2637 -msgid "typedef '%D' is initialized (use __typeof__ instead)" +#: c-decl.c:2784 +msgid "useless keyword or type name in empty declaration" msgstr "" -#: c-decl.c:2642 -msgid "function '%D' is initialized like a variable" +#: c-decl.c:2791 c-parse.y:782 c-parse.y:784 objc/objc-parse.y:820 +#: objc/objc-parse.y:822 +msgid "empty declaration" msgstr "" -#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE. -#: c-decl.c:2648 -msgid "parameter '%D' is initialized" +#: c-decl.c:2854 +msgid "" +"ISO C90 does not support % or type qualifiers in parameter array " +"declarators" msgstr "" -#: c-decl.c:2667 c-typeck.c:4059 -msgid "variable-sized object may not be initialized" +#: c-decl.c:2857 +msgid "ISO C90 does not support %<[*]%> array declarators" msgstr "" -#: c-decl.c:2673 -msgid "variable '%D' has initializer but incomplete type" +#: c-decl.c:2860 +msgid "GCC does not yet properly implement %<[*]%> array declarators" msgstr "" -#: c-decl.c:2678 -msgid "elements of array '%D' have incomplete type" +#: c-decl.c:2879 +msgid "static or type qualifiers in abstract declarator" msgstr "" -#: c-decl.c:2746 c-decl.c:5634 cp/decl.c:3673 cp/decl.c:10081 -msgid "%Jinline function '%D' given attribute noinline" +#: c-decl.c:2936 +msgid "%J%qD is usually a function" msgstr "" -#: c-decl.c:2807 -msgid "%Jinitializer fails to determine size of '%D'" +#: c-decl.c:2945 +msgid "typedef %qD is initialized (use __typeof__ instead)" msgstr "" -#: c-decl.c:2812 -msgid "%Jarray size missing in '%D'" +#: c-decl.c:2950 +msgid "function %qD is initialized like a variable" msgstr "" -#: c-decl.c:2828 -msgid "%Jzero or negative size array '%D'" +#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE. +#: c-decl.c:2956 +msgid "parameter %qD is initialized" msgstr "" -#: c-decl.c:2856 -msgid "%Jstorage size of '%D' isn't known" +#: c-decl.c:2975 c-typeck.c:4229 +msgid "variable-sized object may not be initialized" msgstr "" -#: c-decl.c:2866 -msgid "%Jstorage size of '%D' isn't constant" +#: c-decl.c:2981 +msgid "variable %qD has initializer but incomplete type" msgstr "" -#: c-decl.c:2945 fortran/f95-lang.c:665 -msgid "cannot put object with volatile field into register" +#: c-decl.c:2986 +msgid "elements of array %qD have incomplete type" msgstr "" -#: c-decl.c:2956 -msgid "%Jignoring asm-specifier for non-static local variable '%D'" +#: c-decl.c:3053 c-decl.c:5774 +msgid "%Jinline function %qD given attribute noinline" msgstr "" -#: c-decl.c:3072 -msgid "ISO C forbids forward parameter declarations" +#: c-decl.c:3120 +msgid "%Jinitializer fails to determine size of %qD" msgstr "" -#: c-decl.c:3251 -msgid "" +#: c-decl.c:3125 +msgid "%Jarray size missing in %qD" msgstr "" -#: c-decl.c:3260 -#, c-format -msgid "bit-field `%s' width not an integer constant" +#: c-decl.c:3141 +msgid "%Jzero or negative size array %qD" msgstr "" -#: c-decl.c:3268 -#, c-format -msgid "negative width in bit-field `%s'" +#: c-decl.c:3167 varasm.c:1523 +msgid "%Jstorage size of %qD isn%'t known" msgstr "" -#: c-decl.c:3273 -#, c-format -msgid "zero width for bit-field `%s'" +#: c-decl.c:3177 +msgid "%Jstorage size of %qD isn%'t constant" msgstr "" -#: c-decl.c:3283 -#, c-format -msgid "bit-field `%s' has invalid type" +#: c-decl.c:3232 +msgid "%Jignoring asm-specifier for non-static local variable %qD" msgstr "" -#: c-decl.c:3292 -#, c-format -msgid "type of bit-field `%s' is a GCC extension" +#: c-decl.c:3262 fortran/f95-lang.c:646 +msgid "cannot put object with volatile field into register" msgstr "" -#: c-decl.c:3301 -#, c-format -msgid "width of `%s' exceeds its type" +#: c-decl.c:3396 +msgid "ISO C forbids forward parameter declarations" msgstr "" -#: c-decl.c:3314 -#, c-format -msgid "`%s' is narrower than values of its type" +#: c-decl.c:3575 +msgid "" msgstr "" -#: c-decl.c:3465 cp/decl.c:6744 -msgid "`long long long' is too long for GCC" +#: c-decl.c:3584 +#, c-format +msgid "bit-field %qs width not an integer constant" msgstr "" -#: c-decl.c:3470 -msgid "ISO C90 does not support `long long'" +#: c-decl.c:3592 +#, c-format +msgid "negative width in bit-field %qs" msgstr "" -#: c-decl.c:3479 c-decl.c:3482 cp/decl.c:6749 +#: c-decl.c:3597 #, c-format -msgid "duplicate `%s'" +msgid "zero width for bit-field %qs" msgstr "" -#: c-decl.c:3492 cp/decl.c:6755 -msgid "`__thread' before `extern'" +#: c-decl.c:3607 +#, c-format +msgid "bit-field %qs has invalid type" msgstr "" -#: c-decl.c:3494 cp/decl.c:6757 -msgid "`__thread' before `static'" +#: c-decl.c:3616 +#, c-format +msgid "type of bit-field %qs is a GCC extension" msgstr "" -#: c-decl.c:3502 cp/decl.c:6784 +#: c-decl.c:3625 #, c-format -msgid "two or more data types in declaration of `%s'" +msgid "width of %qs exceeds its type" msgstr "" -#: c-decl.c:3520 cp/decl.c:6789 +#: c-decl.c:3638 #, c-format -msgid "`%s' fails to be a typedef or built in type" +msgid "%qs is narrower than values of its type" msgstr "" -#: c-decl.c:3561 -#, c-format -msgid "type defaults to `int' in declaration of `%s'" +#: c-decl.c:3775 +msgid "type defaults to % in declaration of %qs" msgstr "" -#: c-decl.c:3590 +#: c-decl.c:3804 #, c-format -msgid "both long and short specified for `%s'" +msgid "both long and short specified for %qs" msgstr "" -#: c-decl.c:3594 cp/decl.c:6889 +#: c-decl.c:3808 #, c-format -msgid "long or short specified with char for `%s'" +msgid "long or short specified with char for %qs" msgstr "" -#: c-decl.c:3601 cp/decl.c:6893 +#: c-decl.c:3815 #, c-format -msgid "long or short specified with floating type for `%s'" +msgid "long or short specified with floating type for %qs" msgstr "" -#: c-decl.c:3604 -msgid "the only valid combination is `long double'" +#: c-decl.c:3818 +msgid "the only valid combination is %" msgstr "" -#: c-decl.c:3610 +#: c-decl.c:3824 #, c-format -msgid "both signed and unsigned specified for `%s'" +msgid "both signed and unsigned specified for %qs" msgstr "" -#: c-decl.c:3612 cp/decl.c:6882 +#: c-decl.c:3826 #, c-format -msgid "long, short, signed or unsigned invalid for `%s'" +msgid "long, short, signed or unsigned invalid for %qs" msgstr "" -#: c-decl.c:3618 cp/decl.c:6902 +#: c-decl.c:3833 #, c-format -msgid "long, short, signed or unsigned used invalidly for `%s'" +msgid "long, short, signed or unsigned used invalidly for %qs" msgstr "" -#: c-decl.c:3636 cp/decl.c:6923 +#: c-decl.c:3851 #, c-format -msgid "complex invalid for `%s'" +msgid "complex invalid for %qs" msgstr "" -#: c-decl.c:3678 +#: c-decl.c:3893 msgid "ISO C90 does not support complex types" msgstr "" -#: c-decl.c:3690 -msgid "ISO C does not support plain `complex' meaning `double complex'" +#: c-decl.c:3905 +msgid "ISO C does not support plain % meaning %" msgstr "" -#: c-decl.c:3696 c-decl.c:3708 +#: c-decl.c:3912 c-decl.c:3924 msgid "ISO C does not support complex integer types" msgstr "" -#: c-decl.c:3738 c-decl.c:4205 cp/decl.c:7522 -msgid "duplicate `const'" -msgstr "" - -#: c-decl.c:3740 c-decl.c:4209 cp/decl.c:7526 -msgid "duplicate `restrict'" +#: c-decl.c:3951 +msgid "duplicate %" msgstr "" -#: c-decl.c:3742 c-decl.c:4207 cp/decl.c:7524 -msgid "duplicate `volatile'" +#: c-decl.c:3953 +msgid "duplicate %" msgstr "" -#: c-decl.c:3771 cp/decl.c:7086 -#, c-format -msgid "multiple storage classes in declaration of `%s'" +#: c-decl.c:3955 +msgid "duplicate %" msgstr "" -#: c-decl.c:3781 -msgid "function definition declared `auto'" +#: c-decl.c:3974 +msgid "function definition declared %" msgstr "" -#: c-decl.c:3783 -msgid "function definition declared `register'" +#: c-decl.c:3976 +msgid "function definition declared %" msgstr "" -#: c-decl.c:3785 -msgid "function definition declared `typedef'" +#: c-decl.c:3978 +msgid "function definition declared %" msgstr "" -#: c-decl.c:3787 -msgid "function definition declared `__thread'" +#: c-decl.c:3980 +msgid "function definition declared %<__thread%>" msgstr "" -#: c-decl.c:3800 +#: c-decl.c:3996 #, c-format -msgid "storage class specified for structure field `%s'" +msgid "storage class specified for structure field %qs" msgstr "" -#: c-decl.c:3804 cp/decl.c:7131 +#: c-decl.c:4000 #, c-format -msgid "storage class specified for parameter `%s'" +msgid "storage class specified for parameter %qs" msgstr "" -#: c-decl.c:3807 cp/decl.c:7133 +#: c-decl.c:4003 cp/decl.c:6962 msgid "storage class specified for typename" msgstr "" -#: c-decl.c:3819 cp/decl.c:7148 -#, c-format -msgid "`%s' initialized and declared `extern'" +#: c-decl.c:4016 +msgid "%qs initialized and declared %" msgstr "" -#: c-decl.c:3821 cp/decl.c:7151 -#, c-format -msgid "`%s' has both `extern' and initializer" +#: c-decl.c:4018 +msgid "%qs has both % and initializer" msgstr "" -#: c-decl.c:3826 -#, c-format -msgid "file-scope declaration of `%s' specifies `auto'" +#: c-decl.c:4023 +msgid "file-scope declaration of %qs specifies %" msgstr "" -#: c-decl.c:3831 cp/decl.c:7155 -#, c-format -msgid "nested function `%s' declared `extern'" +#: c-decl.c:4025 +msgid "file-scope declaration of %qs specifies %" msgstr "" -#: c-decl.c:3837 cp/decl.c:7165 -#, c-format -msgid "function-scope `%s' implicitly auto and declared `__thread'" +#: c-decl.c:4030 +msgid "nested function %qs declared %" +msgstr "" + +#: c-decl.c:4033 +msgid "function-scope %qs implicitly auto and declared %<__thread%>" 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:3876 c-decl.c:4074 +#: c-decl.c:4074 c-decl.c:4268 msgid "static or type qualifiers in non-parameter array declarator" msgstr "" -#: c-decl.c:3920 +#: c-decl.c:4120 #, c-format -msgid "declaration of `%s' as array of voids" +msgid "declaration of %qs as array of voids" msgstr "" -#: c-decl.c:3926 +#: c-decl.c:4126 #, c-format -msgid "declaration of `%s' as array of functions" +msgid "declaration of %qs as array of functions" msgstr "" -#: c-decl.c:3931 +#: c-decl.c:4131 msgid "invalid use of structure with flexible array member" msgstr "" -#: c-decl.c:3950 +#: c-decl.c:4151 #, c-format -msgid "size of array `%s' has non-integer type" +msgid "size of array %qs has non-integer type" msgstr "" -#: c-decl.c:3955 +#: c-decl.c:4156 #, c-format -msgid "ISO C forbids zero-size array `%s'" +msgid "ISO C forbids zero-size array %qs" msgstr "" -#: c-decl.c:3962 +#: c-decl.c:4163 #, c-format -msgid "size of array `%s' is negative" +msgid "size of array %qs is negative" msgstr "" -#: c-decl.c:3975 -#, c-format -msgid "ISO C90 forbids array `%s' whose size can't be evaluated" +#: c-decl.c:4177 +msgid "ISO C90 forbids array %qs whose size can%'t be evaluated" msgstr "" -#: c-decl.c:3978 +#: c-decl.c:4181 #, c-format -msgid "ISO C90 forbids variable-size array `%s'" +msgid "ISO C90 forbids variable-size array %qs" msgstr "" -#: c-decl.c:4008 c-decl.c:4232 cp/decl.c:7700 +#: c-decl.c:4214 c-decl.c:4383 #, c-format -msgid "size of array `%s' is too large" +msgid "size of array %qs is too large" msgstr "" -#: c-decl.c:4034 +#: c-decl.c:4227 msgid "ISO C90 does not support flexible array members" msgstr "" -#: c-decl.c:4044 +#: c-decl.c:4236 msgid "array type has incomplete element type" msgstr "" -#: c-decl.c:4099 cp/decl.c:7293 +#: c-decl.c:4300 #, c-format -msgid "`%s' declared as function returning a function" +msgid "%qs declared as function returning a function" msgstr "" -#: c-decl.c:4104 cp/decl.c:7298 +#: c-decl.c:4305 #, c-format -msgid "`%s' declared as function returning an array" +msgid "%qs declared as function returning an array" msgstr "" -#: c-decl.c:4128 -msgid "ISO C forbids qualified void function return type" +#: c-decl.c:4325 +msgid "function definition has qualified void return type" msgstr "" -#: c-decl.c:4132 +#: c-decl.c:4327 msgid "type qualifiers ignored on function return type" msgstr "" -#: c-decl.c:4161 c-decl.c:4247 c-decl.c:4371 c-decl.c:4457 +#: c-decl.c:4356 c-decl.c:4396 c-decl.c:4491 c-decl.c:4578 msgid "ISO C forbids qualified function types" msgstr "" -#: c-decl.c:4201 cp/decl.c:7518 -msgid "invalid type modifier within pointer declarator" +#: c-decl.c:4405 +msgid "%Jtypedef %qD declared %" msgstr "" -#: c-decl.c:4282 +#: c-decl.c:4435 msgid "ISO C forbids const or volatile function types" msgstr "" -#: c-decl.c:4302 cp/decl.c:7982 +#: c-decl.c:4455 #, c-format -msgid "variable or field `%s' declared void" +msgid "variable or field %qs declared void" msgstr "" -#: c-decl.c:4335 +#: c-decl.c:4484 msgid "attributes in parameter array declarator ignored" msgstr "" -#: c-decl.c:4360 -msgid "invalid type modifier within array declarator" +#: c-decl.c:4519 +msgid "%Jparameter %qD declared %" msgstr "" -#: c-decl.c:4405 +#: c-decl.c:4532 #, c-format -msgid "field `%s' declared as a function" +msgid "field %qs declared as a function" msgstr "" -#: c-decl.c:4411 +#: c-decl.c:4538 #, c-format -msgid "field `%s' has incomplete type" +msgid "field %qs has incomplete type" msgstr "" -#: c-decl.c:4437 c-decl.c:4439 c-decl.c:4441 c-decl.c:4448 +#: c-decl.c:4555 c-decl.c:4566 c-decl.c:4569 #, c-format -msgid "invalid storage class for function `%s'" +msgid "invalid storage class for function %qs" msgstr "" -#: c-decl.c:4463 -msgid "`noreturn' function returns non-void value" +#: c-decl.c:4584 +msgid "% function returns non-void value" msgstr "" -#: c-decl.c:4484 -msgid "cannot inline function `main'" +#: c-decl.c:4612 +msgid "cannot inline function %" msgstr "" -#: c-decl.c:4541 -msgid "variable previously declared 'static' redeclared 'extern'" +#: c-decl.c:4669 +msgid "variable previously declared % redeclared %" msgstr "" -#: c-decl.c:4550 -msgid "%Jvariable '%D' declared `inline'" +#: c-decl.c:4678 +msgid "%Jvariable %qD declared %" msgstr "" #. A mere warning is sure to result in improper semantics #. at runtime. Don't bother to allow this to compile. -#: c-decl.c:4578 cp/decl.c:5830 +#: c-decl.c:4709 cp/decl.c:5886 msgid "thread-local storage not supported for this target" msgstr "" -#: c-decl.c:4643 c-decl.c:5672 -msgid "function declaration isn't a prototype" +#: c-decl.c:4771 c-decl.c:5813 +msgid "function declaration isn%'t a prototype" msgstr "" -#: c-decl.c:4651 +#: c-decl.c:4779 msgid "parameter names (without types) in function declaration" msgstr "" -#: c-decl.c:4680 c-decl.c:4692 -msgid "%Jparameter %u ('%D') has incomplete type" +#: c-decl.c:4808 c-decl.c:4820 +msgid "%Jparameter %u (%qD) has incomplete type" msgstr "" -#: c-decl.c:4683 c-decl.c:4695 +#: c-decl.c:4811 c-decl.c:4823 msgid "%Jparameter %u has incomplete type" msgstr "" -#: c-decl.c:4756 -msgid "'void' as only parameter may not be qualified" +#: c-decl.c:4880 +msgid "% as only parameter may not be qualified" msgstr "" -#: c-decl.c:4760 c-decl.c:4797 -msgid "'void' must be the only parameter" +#: c-decl.c:4884 c-decl.c:4919 +msgid "% must be the only parameter" msgstr "" -#: c-decl.c:4790 -msgid "%Jparameter '%D' has just a forward declaration" +#: c-decl.c:4912 +msgid "%Jparameter %qD has just a forward declaration" msgstr "" #. The %s will be one of 'struct', 'union', or 'enum'. -#: c-decl.c:4838 -#, c-format -msgid "'%s %E' declared inside parameter list" +#: c-decl.c:4958 +msgid "%<%s %E%> declared inside parameter list" msgstr "" #. The %s will be one of 'struct', 'union', or 'enum'. -#: c-decl.c:4842 +#: c-decl.c:4962 #, c-format msgid "anonymous %s declared inside parameter list" msgstr "" -#: c-decl.c:4847 +#: c-decl.c:4967 msgid "" "its scope is only this definition or declaration, which is probably not what " "you want" msgstr "" -#: c-decl.c:4963 -#, c-format -msgid "redefinition of `union %s'" +#: c-decl.c:5081 +msgid "redefinition of %" msgstr "" -#: c-decl.c:4965 -#, c-format -msgid "redefinition of `struct %s'" +#: c-decl.c:5083 +msgid "redefinition of %" msgstr "" -#: c-decl.c:5033 cp/decl.c:3446 +#: c-decl.c:5154 cp/decl.c:3492 msgid "declaration does not declare anything" msgstr "" -#: c-decl.c:5078 c-decl.c:5094 -msgid "%Jduplicate member '%D'" +#: c-decl.c:5199 c-decl.c:5215 +msgid "%Jduplicate member %qD" msgstr "" -#: c-decl.c:5129 +#: c-decl.c:5250 #, c-format msgid "%s has no %s" msgstr "" -#: c-decl.c:5130 +#: c-decl.c:5251 msgid "union" msgstr "" -#: c-decl.c:5130 +#: c-decl.c:5251 msgid "struct" msgstr "" -#: c-decl.c:5131 +#: c-decl.c:5252 msgid "named members" msgstr "" -#: c-decl.c:5131 +#: c-decl.c:5252 msgid "members" msgstr "" -#: c-decl.c:5170 +#: c-decl.c:5293 #, c-format -msgid "nested redefinition of `%s'" +msgid "nested redefinition of %qs" msgstr "" -#: c-decl.c:5191 +#: c-decl.c:5312 msgid "%Jflexible array member in union" msgstr "" -#: c-decl.c:5196 +#: c-decl.c:5317 msgid "%Jflexible array member not at end of struct" msgstr "" -#: c-decl.c:5201 +#: c-decl.c:5322 msgid "%Jflexible array member in otherwise empty struct" msgstr "" -#: c-decl.c:5208 +#: c-decl.c:5329 msgid "%Jinvalid use of structure with flexible array member" msgstr "" -#: c-decl.c:5303 +#: c-decl.c:5434 msgid "union cannot be made transparent" msgstr "" #. This enum is a named one that has been declared already. -#: c-decl.c:5372 -#, c-format -msgid "redeclaration of `enum %s'" +#: c-decl.c:5503 +msgid "redeclaration of %" msgstr "" -#: c-decl.c:5434 +#: c-decl.c:5566 msgid "enumeration values exceed range of largest integer" msgstr "" -#: c-decl.c:5540 +#: c-decl.c:5583 +msgid "specified mode too small for enumeral values" +msgstr "" + +#: c-decl.c:5682 #, c-format -msgid "enumerator value for '%E' is not an integer constant" +msgid "enumerator value for %qE is not an integer constant" msgstr "" -#: c-decl.c:5557 +#: c-decl.c:5699 msgid "overflow in enumeration values" msgstr "" -#: c-decl.c:5562 -msgid "ISO C restricts enumerator values to range of `int'" +#: c-decl.c:5704 +msgid "ISO C restricts enumerator values to range of %" msgstr "" -#: c-decl.c:5640 +#: c-decl.c:5780 msgid "return type is an incomplete type" msgstr "" -#: c-decl.c:5648 -msgid "return type defaults to `int'" +#: c-decl.c:5788 +msgid "return type defaults to %" msgstr "" -#: c-decl.c:5678 -msgid "%Jno previous prototype for '%D'" +#: c-decl.c:5819 +msgid "%Jno previous prototype for %qD" msgstr "" -#: c-decl.c:5684 -msgid "%J'%D' was used with no prototype before its definition" +#: c-decl.c:5825 +msgid "%J%qD was used with no prototype before its definition" msgstr "" -#: c-decl.c:5691 -msgid "%Jno previous declaration for '%D'" +#: c-decl.c:5832 +msgid "%Jno previous declaration for %qD" msgstr "" -#: c-decl.c:5697 -msgid "%J`%D' was used with no declaration before its definition" +#: c-decl.c:5838 +msgid "%J%qD was used with no declaration before its definition" msgstr "" -#: c-decl.c:5733 c-decl.c:6281 -msgid "%Jreturn type of '%D' is not `int'" +#: c-decl.c:5871 c-decl.c:6368 +msgid "%Jreturn type of %qD is not %" msgstr "" -#: c-decl.c:5748 -msgid "%Jfirst argument of '%D' should be `int'" +#: c-decl.c:5886 +msgid "%Jfirst argument of %qD should be %" msgstr "" -#: c-decl.c:5757 -msgid "%Jsecond argument of '%D' should be 'char **'" +#: c-decl.c:5895 +msgid "%Jsecond argument of %qD should be %" msgstr "" -#: c-decl.c:5766 -msgid "%Jthird argument of '%D' should probably be 'char **'" +#: c-decl.c:5904 +msgid "%Jthird argument of %qD should probably be %" msgstr "" -#: c-decl.c:5776 -msgid "%J'%D' takes only zero or two arguments" +#: c-decl.c:5914 +msgid "%J%qD takes only zero or two arguments" msgstr "" -#: c-decl.c:5779 -msgid "%J'%D' is normally a non-static function" +#: c-decl.c:5917 +msgid "%J%qD is normally a non-static function" msgstr "" -#: c-decl.c:5834 +#: c-decl.c:5963 msgid "%Jold-style parameter declarations in prototyped function definition" msgstr "" -#: c-decl.c:5847 +#: c-decl.c:5976 msgid "%Jtraditional C rejects ISO C style function definitions" msgstr "" -#: c-decl.c:5858 +#: c-decl.c:5988 msgid "%Jparameter name omitted" msgstr "" -#: c-decl.c:5897 +#: c-decl.c:6028 msgid "%Jold-style function definition" msgstr "" -#: c-decl.c:5905 +#: c-decl.c:6036 msgid "%Jparameter name missing from parameter list" msgstr "" -#: c-decl.c:5916 -msgid "%J'%D' declared as a non-parameter" +#: c-decl.c:6047 +msgid "%J%qD declared as a non-parameter" msgstr "" -#: c-decl.c:5921 -msgid "%Jmultiple parameters named '%D'" +#: c-decl.c:6052 +msgid "%Jmultiple parameters named %qD" msgstr "" -#: c-decl.c:5929 -msgid "%Jparameter '%D' declared with void type" +#: c-decl.c:6060 +msgid "%Jparameter %qD declared with void type" msgstr "" -#: c-decl.c:5944 c-decl.c:5946 -msgid "%Jtype of '%D' defaults to 'int'" +#: c-decl.c:6075 c-decl.c:6077 +msgid "%Jtype of %qD defaults to %" msgstr "" -#: c-decl.c:5964 -msgid "%Jparameter '%D' has incomplete type" +#: c-decl.c:6095 +msgid "%Jparameter %qD has incomplete type" msgstr "" -#: c-decl.c:5970 -msgid "%Jdeclaration for parameter '%D' but no such parameter" +#: c-decl.c:6101 +msgid "%Jdeclaration for parameter %qD but no such parameter" msgstr "" -#: c-decl.c:6020 -msgid "number of arguments doesn't match prototype" +#: c-decl.c:6151 +msgid "number of arguments doesn%'t match prototype" msgstr "" -#: c-decl.c:6021 c-decl.c:6052 c-decl.c:6059 +#: c-decl.c:6152 c-decl.c:6182 c-decl.c:6189 msgid "%Hprototype declaration" msgstr "" -#: c-decl.c:6050 -msgid "promoted argument '%D' doesn't match prototype" +#: c-decl.c:6180 +msgid "promoted argument %qD doesn%'t match prototype" msgstr "" -#: c-decl.c:6058 -msgid "argument '%D' doesn't match prototype" +#: c-decl.c:6188 +msgid "argument %qD doesn%'t match prototype" msgstr "" -#: c-decl.c:6313 cp/decl.c:10782 +#: c-decl.c:6395 cp/decl.c:10483 msgid "no return statement in function returning non-void" msgstr "" -#: c-decl.c:6320 +#: c-decl.c:6402 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:6418 -msgid "'for' loop initial declaration used outside C99 mode" +#: c-decl.c:6482 +msgid "% loop initial declaration used outside C99 mode" msgstr "" -#: c-decl.c:6447 -msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration" +#: c-decl.c:6511 +msgid "" +"%Jdeclaration of static variable %qD in % loop initial declaration" msgstr "" -#: c-decl.c:6450 +#: c-decl.c:6514 msgid "" -"%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration" +"%Jdeclaration of % variable %qD in % loop initial declaration" +msgstr "" + +#: c-decl.c:6519 +msgid "% declared in % loop initial declaration" +msgstr "" + +#: c-decl.c:6523 +msgid "% declared in % loop initial declaration" +msgstr "" + +#: c-decl.c:6527 +msgid "% declared in % loop initial declaration" +msgstr "" + +#: c-decl.c:6531 +msgid "%Jdeclaration of non-variable %qD in % loop initial declaration" msgstr "" -#: c-decl.c:6455 +#: c-decl.c:6815 c-decl.c:6851 c-decl.c:6953 #, c-format -msgid "'struct %E' declared in 'for' loop initial declaration" +msgid "duplicate %qs" +msgstr "" + +#: c-decl.c:6841 +msgid "% is too long for GCC" +msgstr "" + +#: c-decl.c:6846 +msgid "ISO C90 does not support %" +msgstr "" + +#: c-decl.c:6858 +msgid "two or more data types in declaration specifiers" msgstr "" -#: c-decl.c:6458 +#: c-decl.c:6877 #, c-format -msgid "'union %E' declared in 'for' loop initial declaration" +msgid "%qs fails to be a typedef or built in type" msgstr "" -#: c-decl.c:6461 +#: c-decl.c:6903 #, c-format -msgid "'enum %E' declared in 'for' loop initial declaration" +msgid "%qs is not at beginning of declaration" +msgstr "" + +#: c-decl.c:6918 +msgid "%<__thread%> used with %" +msgstr "" + +#: c-decl.c:6920 +msgid "%<__thread%> used with %" +msgstr "" + +#: c-decl.c:6922 +msgid "%<__thread%> used with %" +msgstr "" + +#: c-decl.c:6933 +msgid "%<__thread%> before %" +msgstr "" + +#: c-decl.c:6942 +msgid "%<__thread%> before %" +msgstr "" + +#: c-decl.c:6958 +msgid "multiple storage classes in declaration specifiers" +msgstr "" + +#: c-decl.c:6965 +msgid "%<__thread%> used with %qs" msgstr "" -#: c-decl.c:6464 -msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration" +#: c-decl.c:7025 toplev.c:843 +msgid "%J%qF used but never defined" msgstr "" -#: c-format.c:94 c-format.c:210 +#: c-format.c:96 c-format.c:209 msgid "format string has invalid operand number" msgstr "" -#: c-format.c:111 +#: c-format.c:113 msgid "function does not return string type" msgstr "" -#: c-format.c:140 +#: c-format.c:142 msgid "format string arg not a string type" msgstr "" @@ -1554,516 +1635,499 @@ msgstr "" msgid "unrecognized format specifier" msgstr "" -#: c-format.c:203 +#: c-format.c:202 #, c-format -msgid "`%s' is an unrecognized format function type" +msgid "%qs is an unrecognized format function type" msgstr "" -#: c-format.c:216 +#: c-format.c:215 msgid "'...' has invalid operand number" msgstr "" -#: c-format.c:224 +#: c-format.c:222 msgid "format string arg follows the args to be formatted" msgstr "" -#: c-format.c:565 c-format.c:589 -msgid "` ' flag" +#: c-format.c:345 c-format.c:369 +msgid "' ' flag" msgstr "" -#: c-format.c:565 c-format.c:589 -msgid "the ` ' printf flag" +#: c-format.c:345 c-format.c:369 +msgid "the ' ' printf flag" msgstr "" -#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683 -msgid "`+' flag" +#: c-format.c:346 c-format.c:370 c-format.c:408 c-format.c:465 +msgid "'+' flag" msgstr "" -#: c-format.c:566 c-format.c:590 c-format.c:627 -msgid "the `+' printf flag" +#: c-format.c:346 c-format.c:370 c-format.c:408 +msgid "the '+' printf flag" msgstr "" -#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659 -msgid "`#' flag" +#: c-format.c:347 c-format.c:371 c-format.c:409 c-format.c:441 +msgid "'#' flag" msgstr "" -#: c-format.c:567 c-format.c:591 c-format.c:628 -msgid "the `#' printf flag" +#: c-format.c:347 c-format.c:371 c-format.c:409 +msgid "the '#' printf flag" msgstr "" -#: c-format.c:568 c-format.c:592 c-format.c:657 -msgid "`0' flag" +#: c-format.c:348 c-format.c:372 c-format.c:439 +msgid "'0' flag" msgstr "" -#: c-format.c:568 c-format.c:592 -msgid "the `0' printf flag" +#: c-format.c:348 c-format.c:372 +msgid "the '0' printf flag" msgstr "" -#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686 -msgid "`-' flag" +#: c-format.c:349 c-format.c:373 c-format.c:438 c-format.c:468 +msgid "'-' flag" msgstr "" -#: c-format.c:569 c-format.c:593 -msgid "the `-' printf flag" +#: c-format.c:349 c-format.c:373 +msgid "the '-' printf flag" msgstr "" -#: c-format.c:570 c-format.c:640 -msgid "`'' flag" +#: c-format.c:350 c-format.c:422 +msgid "''' flag" msgstr "" -#: c-format.c:570 -msgid "the `'' printf flag" +#: c-format.c:350 +msgid "the ''' printf flag" msgstr "" -#: c-format.c:571 c-format.c:641 -msgid "`I' flag" +#: c-format.c:351 c-format.c:423 +msgid "'I' flag" msgstr "" -#: c-format.c:571 -msgid "the `I' printf flag" +#: c-format.c:351 +msgid "the 'I' printf flag" msgstr "" -#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687 -#: c-format.c:1833 +#: c-format.c:352 c-format.c:374 c-format.c:420 c-format.c:442 c-format.c:469 +#: c-format.c:1531 config/sol2-c.c:46 msgid "field width" msgstr "" -#: c-format.c:572 c-format.c:594 +#: c-format.c:352 c-format.c:374 config/sol2-c.c:46 msgid "field width in printf format" msgstr "" -#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629 +#: c-format.c:353 c-format.c:375 c-format.c:399 c-format.c:411 msgid "precision" msgstr "" -#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629 +#: c-format.c:353 c-format.c:375 c-format.c:399 c-format.c:411 msgid "precision in printf format" msgstr "" -#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639 -#: c-format.c:690 +#: c-format.c:354 c-format.c:376 c-format.c:400 c-format.c:412 c-format.c:421 +#: c-format.c:472 config/sol2-c.c:47 msgid "length modifier" msgstr "" -#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 +#: c-format.c:354 c-format.c:376 c-format.c:400 c-format.c:412 +#: config/sol2-c.c:47 msgid "length modifier in printf format" msgstr "" -#: c-format.c:636 +#: c-format.c:398 c-format.c:410 +msgid "'q' flag" +msgstr "" + +#: c-format.c:398 c-format.c:410 +msgid "the 'q' diagnostic flag" +msgstr "" + +#: c-format.c:418 msgid "assignment suppression" msgstr "" -#: c-format.c:636 +#: c-format.c:418 msgid "the assignment suppression scanf feature" msgstr "" -#: c-format.c:637 -msgid "`a' flag" +#: c-format.c:419 +msgid "'a' flag" msgstr "" -#: c-format.c:637 -msgid "the `a' scanf flag" +#: c-format.c:419 +msgid "the 'a' scanf flag" msgstr "" -#: c-format.c:638 +#: c-format.c:420 msgid "field width in scanf format" msgstr "" -#: c-format.c:639 +#: c-format.c:421 msgid "length modifier in scanf format" msgstr "" -#: c-format.c:640 -msgid "the `'' scanf flag" +#: c-format.c:422 +msgid "the ''' scanf flag" msgstr "" -#: c-format.c:641 -msgid "the `I' scanf flag" +#: c-format.c:423 +msgid "the 'I' scanf flag" msgstr "" -#: c-format.c:655 -msgid "`_' flag" +#: c-format.c:437 +msgid "'_' flag" msgstr "" -#: c-format.c:655 -msgid "the `_' strftime flag" +#: c-format.c:437 +msgid "the '_' strftime flag" msgstr "" -#: c-format.c:656 -msgid "the `-' strftime flag" +#: c-format.c:438 +msgid "the '-' strftime flag" msgstr "" -#: c-format.c:657 -msgid "the `0' strftime flag" +#: c-format.c:439 +msgid "the '0' strftime flag" msgstr "" -#: c-format.c:658 c-format.c:682 -msgid "`^' flag" +#: c-format.c:440 c-format.c:464 +msgid "'^' flag" msgstr "" -#: c-format.c:658 -msgid "the `^' strftime flag" +#: c-format.c:440 +msgid "the '^' strftime flag" msgstr "" -#: c-format.c:659 -msgid "the `#' strftime flag" +#: c-format.c:441 +msgid "the '#' strftime flag" msgstr "" -#: c-format.c:660 +#: c-format.c:442 msgid "field width in strftime format" msgstr "" -#: c-format.c:661 -msgid "`E' modifier" +#: c-format.c:443 +msgid "'E' modifier" msgstr "" -#: c-format.c:661 -msgid "the `E' strftime modifier" +#: c-format.c:443 +msgid "the 'E' strftime modifier" msgstr "" -#: c-format.c:662 -msgid "`O' modifier" +#: c-format.c:444 +msgid "'O' modifier" msgstr "" -#: c-format.c:662 -msgid "the `O' strftime modifier" +#: c-format.c:444 +msgid "the 'O' strftime modifier" msgstr "" -#: c-format.c:663 -msgid "the `O' modifier" +#: c-format.c:445 +msgid "the 'O' modifier" msgstr "" -#: c-format.c:681 +#: c-format.c:463 msgid "fill character" msgstr "" -#: c-format.c:681 +#: c-format.c:463 msgid "fill character in strfmon format" msgstr "" -#: c-format.c:682 -msgid "the `^' strfmon flag" +#: c-format.c:464 +msgid "the '^' strfmon flag" msgstr "" -#: c-format.c:683 -msgid "the `+' strfmon flag" +#: c-format.c:465 +msgid "the '+' strfmon flag" msgstr "" -#: c-format.c:684 -msgid "`(' flag" +#: c-format.c:466 +msgid "'(' flag" msgstr "" -#: c-format.c:684 -msgid "the `(' strfmon flag" +#: c-format.c:466 +msgid "the '(' strfmon flag" msgstr "" -#: c-format.c:685 -msgid "`!' flag" +#: c-format.c:467 +msgid "'!' flag" msgstr "" -#: c-format.c:685 -msgid "the `!' strfmon flag" +#: c-format.c:467 +msgid "the '!' strfmon flag" msgstr "" -#: c-format.c:686 -msgid "the `-' strfmon flag" +#: c-format.c:468 +msgid "the '-' strfmon flag" msgstr "" -#: c-format.c:687 +#: c-format.c:469 msgid "field width in strfmon format" msgstr "" -#: c-format.c:688 +#: c-format.c:470 msgid "left precision" msgstr "" -#: c-format.c:688 +#: c-format.c:470 msgid "left precision in strfmon format" msgstr "" -#: c-format.c:689 +#: c-format.c:471 msgid "right precision" msgstr "" -#: c-format.c:689 +#: c-format.c:471 msgid "right precision in strfmon format" msgstr "" -#: c-format.c:690 +#: c-format.c:472 msgid "length modifier in strfmon format" msgstr "" -#: c-format.c:1108 +#: c-format.c:840 #, c-format -msgid "function might be possible candidate for `%s' format attribute" +msgid "function might be possible candidate for %qs format attribute" msgstr "" -#: c-format.c:1224 c-format.c:1245 c-format.c:2248 +#: c-format.c:931 c-format.c:952 c-format.c:1947 msgid "missing $ operand number in format" msgstr "" -#: c-format.c:1255 +#: c-format.c:961 #, c-format msgid "%s does not support %%n$ operand number formats" msgstr "" -#: c-format.c:1262 +#: c-format.c:968 msgid "operand number out of range in format" msgstr "" -#: c-format.c:1285 +#: c-format.c:991 #, c-format msgid "format argument %d used more than once in %s format" msgstr "" -#: c-format.c:1321 +#: c-format.c:1023 msgid "$ operand number used after format without operand number" msgstr "" -#: c-format.c:1352 +#: c-format.c:1053 #, c-format msgid "format argument %d unused before used argument %d in $-style format" msgstr "" -#: c-format.c:1450 +#: c-format.c:1148 msgid "format not a string literal, format string not checked" msgstr "" -#: c-format.c:1464 +#: c-format.c:1162 msgid "format not a string literal and no format arguments" msgstr "" -#: c-format.c:1466 +#: c-format.c:1164 msgid "format not a string literal, argument types not checked" msgstr "" -#: c-format.c:1479 +#: c-format.c:1177 msgid "too many arguments for format" msgstr "" -#: c-format.c:1482 +#: c-format.c:1180 msgid "unused arguments in $-style format" msgstr "" -#: c-format.c:1485 +#: c-format.c:1183 #, c-format msgid "zero-length %s format string" msgstr "" -#: c-format.c:1489 +#: c-format.c:1187 msgid "format is a wide character string" msgstr "" -#: c-format.c:1492 +#: c-format.c:1190 msgid "unterminated format string" msgstr "" -#: c-format.c:1702 -msgid "embedded `\\0' in format" +#: c-format.c:1400 +msgid "embedded %<\\0%> in format" msgstr "" -#: c-format.c:1717 -#, c-format -msgid "spurious trailing `%%' in format" +#: c-format.c:1415 +msgid "spurious trailing %<%%%> in format" msgstr "" -#: c-format.c:1761 c-format.c:2008 +#: c-format.c:1459 c-format.c:1703 #, c-format msgid "repeated %s in format" msgstr "" -#: c-format.c:1774 +#: c-format.c:1472 msgid "missing fill character at end of strfmon format" msgstr "" -#: c-format.c:1818 c-format.c:1922 c-format.c:2202 c-format.c:2255 +#: c-format.c:1516 c-format.c:1618 c-format.c:1897 c-format.c:1959 msgid "too few arguments for format" msgstr "" -#: c-format.c:1859 +#: c-format.c:1557 #, c-format msgid "zero width in %s format" msgstr "" -#: c-format.c:1878 +#: c-format.c:1575 #, c-format msgid "empty left precision in %s format" msgstr "" -#: c-format.c:1937 +#: c-format.c:1633 msgid "field precision" msgstr "" -#: c-format.c:1952 +#: c-format.c:1648 #, c-format msgid "empty precision in %s format" msgstr "" -#: c-format.c:1992 +#: c-format.c:1687 #, c-format -msgid "%s does not support the `%s' %s length modifier" +msgid "%s does not support the %qs %s length modifier" msgstr "" -#: c-format.c:2042 +#: c-format.c:1737 msgid "conversion lacks type at end of format" msgstr "" -#: c-format.c:2053 +#: c-format.c:1748 #, c-format -msgid "unknown conversion type character `%c' in format" +msgid "unknown conversion type character %qc in format" msgstr "" -#: c-format.c:2056 +#: c-format.c:1751 #, c-format msgid "unknown conversion type character 0x%x in format" msgstr "" -#: c-format.c:2063 -#, c-format -msgid "%s does not support the `%%%c' %s format" +#: c-format.c:1758 +msgid "%s does not support the %<%%%c%> %s format" msgstr "" -#: c-format.c:2079 -#, c-format -msgid "%s used with `%%%c' %s format" +#: c-format.c:1774 +msgid "%s used with %<%%%c%> %s format" msgstr "" -#: c-format.c:2088 +#: c-format.c:1783 #, c-format msgid "%s does not support %s" msgstr "" -#: c-format.c:2097 -#, c-format -msgid "%s does not support %s with the `%%%c' %s format" +#: c-format.c:1792 +msgid "%s does not support %s with the %<%%%c%> %s format" msgstr "" -#: c-format.c:2130 -#, c-format -msgid "%s ignored with %s and `%%%c' %s format" +#: c-format.c:1825 +msgid "%s ignored with %s and %<%%%c%> %s format" msgstr "" -#: c-format.c:2134 +#: c-format.c:1829 #, c-format msgid "%s ignored with %s in %s format" msgstr "" -#: c-format.c:2140 -#, c-format -msgid "use of %s and %s together with `%%%c' %s format" +#: c-format.c:1835 +msgid "use of %s and %s together with %<%%%c%> %s format" msgstr "" -#: c-format.c:2144 +#: c-format.c:1839 #, c-format msgid "use of %s and %s together in %s format" msgstr "" -#: c-format.c:2163 -#, c-format -msgid "`%%%c' yields only last 2 digits of year in some locales" +#: c-format.c:1858 +msgid "%<%%%c%> yields only last 2 digits of year in some locales" msgstr "" -#: c-format.c:2166 -#, c-format -msgid "`%%%c' yields only last 2 digits of year" +#: c-format.c:1861 +msgid "%<%%%c%> yields only last 2 digits of year" msgstr "" #. The end of the format string was reached. -#: c-format.c:2182 -#, c-format -msgid "no closing `]' for `%%[' format" +#: c-format.c:1877 +msgid "no closing %<]%> for %<%%[%> format" msgstr "" -#: c-format.c:2195 +#: c-format.c:1890 #, c-format -msgid "use of `%s' length modifier with `%c' type character" +msgid "use of %qs length modifier with %qc type character" msgstr "" -#: c-format.c:2216 -#, c-format -msgid "%s does not support the `%%%s%c' %s format" +#: c-format.c:1911 +msgid "%s does not support the %<%%%s%c%> %s format" msgstr "" -#: c-format.c:2231 +#: c-format.c:1928 msgid "operand number specified with suppressed assignment" msgstr "" -#: c-format.c:2233 +#: c-format.c:1930 msgid "operand number specified for format taking no argument" msgstr "" -#: c-format.c:2345 +#: c-format.c:2072 #, c-format msgid "writing through null pointer (arg %d)" msgstr "" -#: c-format.c:2354 +#: c-format.c:2080 #, c-format msgid "reading through null pointer (arg %d)" msgstr "" -#: c-format.c:2374 +#: c-format.c:2100 #, c-format msgid "writing into constant object (arg %d)" msgstr "" -#: c-format.c:2384 +#: c-format.c:2110 #, c-format msgid "extra type qualifiers in format argument (arg %d)" msgstr "" -#: c-format.c:2391 -#, c-format -msgid "format argument is not a pointer (arg %d)" -msgstr "" - -#: c-format.c:2393 -#, c-format -msgid "format argument is not a pointer to a pointer (arg %d)" -msgstr "" - -#: c-format.c:2469 -msgid "pointer" +#: c-format.c:2220 +msgid "%s should have type %<%s%s%>, but argument %d has type %qT" msgstr "" -#: c-format.c:2471 -msgid "different type" +#: c-format.c:2223 +msgid "format %q.*s expects type %<%s%s%>, but argument %d has type %qT" msgstr "" -#: c-format.c:2492 -#, c-format -msgid "%s is not type %s (arg %d)" +#: c-format.c:2230 +msgid "%s should have type %<%T%s%>, but argument %d has type %qT" msgstr "" -#: c-format.c:2495 -#, c-format -msgid "%s format, %s arg (arg %d)" +#: c-format.c:2233 +msgid "format %q.*s expects type %<%T%s%>, but argument %d has type %qT" msgstr "" -#: c-format.c:2740 +#: c-format.c:2499 msgid "args to be formatted is not '...'" msgstr "" -#: c-format.c:2749 +#: c-format.c:2508 msgid "strftime formats cannot format arguments" msgstr "" -#: c-gimplify.c:519 +#: c-gimplify.c:237 msgid "statement with no effect" msgstr "" -#: c-gimplify.c:622 c-parse.y:2224 cp/parser.c:6126 objc/objc-parse.y:2281 +#: c-gimplify.c:315 c-typeck.c:6688 cp/parser.c:6583 msgid "break statement not within loop or switch" msgstr "" -#: c-gimplify.c:624 +#: c-gimplify.c:317 msgid "continue statement not within loop or switch" msgstr "" -#: c-gimplify.c:1012 -msgid "%Hstatement-expressions should end with a non-void expression" -msgstr "" - #: c-incpath.c:70 #, c-format msgid "ignoring duplicate directory \"%s\"\n" @@ -2079,412 +2143,373 @@ msgstr "" msgid "ignoring nonexistent directory \"%s\"\n" msgstr "" -#: c-incpath.c:277 +#: c-incpath.c:283 #, c-format msgid "#include \"...\" search starts here:\n" msgstr "" -#: c-incpath.c:281 +#: c-incpath.c:287 #, c-format msgid "#include <...> search starts here:\n" msgstr "" -#: c-incpath.c:286 +#: c-incpath.c:292 #, c-format msgid "End of search list.\n" msgstr "" -#: c-lex.c:237 +#: c-lex.c:255 msgid "badly nested C headers from preprocessor" msgstr "" -#: c-lex.c:278 +#: c-lex.c:303 #, c-format msgid "ignoring #pragma %s %s" msgstr "" #. ... or not. -#: c-lex.c:384 +#: c-lex.c:408 msgid "%Hstray '@' in program" msgstr "" -#: c-lex.c:392 +#: c-lex.c:416 #, c-format msgid "missing terminating %c character" msgstr "" -#: c-lex.c:394 +#: c-lex.c:418 #, c-format msgid "stray '%c' in program" msgstr "" -#: c-lex.c:396 +#: c-lex.c:420 #, c-format msgid "stray '\\%o' in program" msgstr "" -#: c-lex.c:534 +#: c-lex.c:568 msgid "this decimal constant is unsigned only in ISO C90" msgstr "" -#: c-lex.c:537 +#: c-lex.c:571 msgid "this decimal constant would be unsigned in ISO C90" msgstr "" -#: c-lex.c:553 +#: c-lex.c:587 #, c-format -msgid "integer constant is too large for \"%s\" type" +msgid "integer constant is too large for %qs type" msgstr "" -#: c-lex.c:619 -#, c-format -msgid "floating constant exceeds range of \"%s\"" +#: c-lex.c:653 +msgid "floating constant exceeds range of %<%s%>" msgstr "" -#: c-lex.c:695 +#: c-lex.c:729 msgid "traditional C rejects string constant concatenation" msgstr "" -#: c-mudflap.c:57 cp/cp-mudflap.c:52 -#, c-format -msgid "mudflap: cannot find declaration of `%s' from mf-runtime.h" -msgstr "" - #: c-objc-common.c:81 msgid "" -"%Jfunction '%F' can never be inlined because it is suppressed using -fno-" +"%Jfunction %qF can never be inlined because it is suppressed using -fno-" "inline" msgstr "" #: c-objc-common.c:91 msgid "" -"%Jfunction '%F' can never be inlined because it might not be bound within " +"%Jfunction %qF can never be inlined because it might not be bound within " "this unit of translation" msgstr "" #: c-objc-common.c:99 msgid "" -"%Jfunction '%F' can never be inlined because it uses attributes conflicting " +"%Jfunction %qF can never be inlined because it uses attributes conflicting " "with inlining" msgstr "" #: c-objc-common.c:114 -msgid "%Jfunction '%F' can never be inlined because it has pending sizes" +msgid "%Jfunction %qF can never be inlined because it has pending sizes" msgstr "" #: c-objc-common.c:127 msgid "" -"%Jnested function '%F' can never be inlined because it has possibly saved " +"%Jnested function %qF can never be inlined because it has possibly saved " "pending sizes" msgstr "" -#: c-objc-common.c:313 +#: c-objc-common.c:260 msgid "used array that cannot be converted to pointer where scalar is required" msgstr "" -#: c-objc-common.c:317 +#: c-objc-common.c:264 msgid "used struct type value where scalar is required" msgstr "" -#: c-objc-common.c:321 +#: c-objc-common.c:268 msgid "used union type value where scalar is required" msgstr "" -#: c-opts.c:148 +#: c-opts.c:147 #, c-format -msgid "no class name specified with \"%s\"" +msgid "no class name specified with %qs" msgstr "" -#: c-opts.c:152 +#: c-opts.c:151 #, c-format -msgid "assertion missing after \"%s\"" +msgid "assertion missing after %qs" msgstr "" -#: c-opts.c:157 +#: c-opts.c:156 #, c-format -msgid "macro name missing after \"%s\"" +msgid "macro name missing after %qs" msgstr "" -#: c-opts.c:166 +#: c-opts.c:165 #, c-format -msgid "missing path after \"%s\"" +msgid "missing path after %qs" msgstr "" -#: c-opts.c:175 +#: c-opts.c:174 #, c-format -msgid "missing filename after \"%s\"" +msgid "missing filename after %qs" msgstr "" -#: c-opts.c:180 +#: c-opts.c:179 #, c-format -msgid "missing makefile target after \"%s\"" +msgid "missing makefile target after %qs" msgstr "" -#: c-opts.c:304 +#: c-opts.c:305 msgid "-I- specified twice" msgstr "" -#: c-opts.c:307 +#: c-opts.c:308 msgid "obsolete option -I- used, please use -iquote instead" msgstr "" -#: c-opts.c:710 +#: c-opts.c:542 #, c-format -msgid "switch \"%s\" is no longer supported" +msgid "switch %qs is no longer supported" msgstr "" -#: c-opts.c:825 +#: c-opts.c:657 msgid "" "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)" msgstr "" -#: c-opts.c:995 +#: c-opts.c:843 msgid "output filename specified twice" msgstr "" -#: c-opts.c:1115 +#: c-opts.c:976 msgid "-Wformat-y2k ignored without -Wformat" msgstr "" -#: c-opts.c:1117 +#: c-opts.c:978 msgid "-Wformat-extra-args ignored without -Wformat" msgstr "" -#: c-opts.c:1119 +#: c-opts.c:980 msgid "-Wformat-zero-length ignored without -Wformat" msgstr "" -#: c-opts.c:1121 +#: c-opts.c:982 msgid "-Wformat-nonliteral ignored without -Wformat" msgstr "" -#: c-opts.c:1123 +#: c-opts.c:984 msgid "-Wformat-security ignored without -Wformat" msgstr "" -#: c-opts.c:1125 +#: c-opts.c:986 msgid "-Wmissing-format-attribute ignored without -Wformat" msgstr "" -#: c-opts.c:1139 +#: c-opts.c:1000 #, c-format msgid "opening output file %s: %m" msgstr "" -#: c-opts.c:1144 +#: c-opts.c:1005 #, c-format msgid "too many filenames given. Type %s --help for usage" msgstr "" -#: c-opts.c:1226 -msgid "YYDEBUG not defined" -msgstr "" - -#: c-opts.c:1230 -msgid "sorry, inter-module analysis temporarily out of commission" +#: c-opts.c:1088 +msgid "YYDEBUG was not defined at build time, -dy ignored" msgstr "" -#: c-opts.c:1256 +#: c-opts.c:1129 #, c-format msgid "opening dependency file %s: %m" msgstr "" -#: c-opts.c:1266 +#: c-opts.c:1139 #, c-format msgid "closing dependency file %s: %m" msgstr "" -#: c-opts.c:1269 +#: c-opts.c:1142 #, c-format msgid "when writing output to %s: %m" msgstr "" -#: c-opts.c:1339 +#: c-opts.c:1221 msgid "to generate dependencies you must specify either -M or -MM" msgstr "" -#: c-opts.c:1404 +#: c-opts.c:1286 msgid "" msgstr "" -#: c-opts.c:1419 +#: c-opts.c:1301 msgid "" msgstr "" -#: c-opts.c:1502 +#: c-opts.c:1384 msgid "too late for # directive to set debug directory" msgstr "" #. Like YYERROR but do call yyerror. -#: c-parse.y:55 objc/objc-parse.y:55 +#: c-parse.y:55 c-parse.c:5315 gengtype-yacc.c:1559 java/parse-scan.c:3063 +#: java/parse.c:6126 objc/objc-parse.y:54 objc/objc-parse.c:6397 msgid "syntax error" msgstr "" -#: bison.simple:179 +#: c-parse.c:2171 gengtype-yacc.c:555 java/parse-scan.c:1932 java/parse.c:2902 +#: objc/objc-parse.c:2688 msgid "syntax error: cannot back up" msgstr "" -#: c-parse.y:319 objc/objc-parse.y:343 +#: c-parse.y:345 objc/objc-parse.y:367 msgid "ISO C forbids an empty source file" msgstr "" -#: c-parse.y:344 objc/objc-parse.y:369 +#: c-parse.y:379 objc/objc-parse.y:402 msgid "ISO C forbids data definition with no type or storage class" msgstr "" -#: c-parse.y:346 objc/objc-parse.y:371 +#: c-parse.y:381 objc/objc-parse.y:404 msgid "data definition has no type or storage class" msgstr "" -#: c-parse.y:359 objc/objc-parse.y:384 -msgid "ISO C does not allow extra `;' outside of a function" +#: c-parse.y:394 objc/objc-parse.y:417 +msgid "ISO C does not allow extra %<;%> outside of a function" msgstr "" -#: c-parse.y:416 cppexp.c:1256 +#: c-parse.y:451 msgid "traditional C rejects the unary plus operator" msgstr "" -#: c-parse.y:463 objc/objc-parse.y:488 -msgid "`sizeof' applied to a bit-field" +#: c-parse.y:504 objc/objc-parse.y:527 +msgid "% applied to a bit-field" msgstr "" -#: c-parse.y:550 objc/objc-parse.y:575 +#: c-parse.y:601 objc/objc-parse.y:624 msgid "ISO C forbids omitting the middle term of a ?: expression" msgstr "" -#: c-parse.y:597 objc/objc-parse.y:622 +#: c-parse.y:649 objc/objc-parse.y:672 msgid "ISO C90 forbids compound literals" msgstr "" -#: c-parse.y:611 objc/objc-parse.y:636 +#: c-parse.y:662 objc/objc-parse.y:685 msgid "ISO C forbids braced-groups within expressions" msgstr "" -#: c-parse.y:640 objc/objc-parse.y:665 +#: c-parse.y:698 objc/objc-parse.y:721 msgid "first argument to __builtin_choose_expr not a constant" msgstr "" -#: c-parse.y:934 c-parse.y:940 c-parse.y:946 c-parse.y:952 c-parse.y:973 -#: c-parse.y:979 c-parse.y:985 c-parse.y:991 c-parse.y:1024 c-parse.y:1030 -#: c-parse.y:1036 c-parse.y:1042 c-parse.y:1087 c-parse.y:1093 c-parse.y:1099 -#: c-parse.y:1105 objc/objc-parse.y:975 objc/objc-parse.y:981 -#: objc/objc-parse.y:987 objc/objc-parse.y:993 objc/objc-parse.y:1014 -#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1032 -#: objc/objc-parse.y:1065 objc/objc-parse.y:1071 objc/objc-parse.y:1077 -#: objc/objc-parse.y:1083 objc/objc-parse.y:1128 objc/objc-parse.y:1134 -#: objc/objc-parse.y:1140 objc/objc-parse.y:1146 -#, c-format -msgid "`%s' is not at beginning of declaration" -msgstr "" - -#: c-parse.y:1267 objc/objc-parse.y:1317 -msgid "`typeof' applied to a bit-field" +#: c-parse.y:1221 objc/objc-parse.y:1268 +msgid "% applied to a bit-field" msgstr "" -#: c-parse.y:1390 objc/objc-parse.y:1440 +#: c-parse.y:1349 objc/objc-parse.y:1396 msgid "ISO C forbids empty initializer braces" msgstr "" -#: c-parse.y:1404 objc/objc-parse.y:1454 +#: c-parse.y:1363 objc/objc-parse.y:1410 msgid "ISO C90 forbids specifying subobject to initialize" msgstr "" -#: c-parse.y:1407 objc/objc-parse.y:1457 -msgid "obsolete use of designated initializer without `='" +#: c-parse.y:1366 objc/objc-parse.y:1413 +msgid "obsolete use of designated initializer without %<=%>" msgstr "" -#: c-parse.y:1411 objc/objc-parse.y:1461 -msgid "obsolete use of designated initializer with `:'" +#: c-parse.y:1370 objc/objc-parse.y:1417 +msgid "obsolete use of designated initializer with %<:%>" msgstr "" -#: c-parse.y:1438 objc/objc-parse.y:1488 +#: c-parse.y:1397 objc/objc-parse.y:1444 msgid "ISO C forbids specifying range of elements to initialize" msgstr "" -#: c-parse.y:1446 c-parse.y:1476 objc/objc-parse.y:1496 objc/objc-parse.y:1526 +#: c-parse.y:1405 c-parse.y:1435 objc/objc-parse.y:1452 objc/objc-parse.y:1482 msgid "ISO C forbids nested functions" msgstr "" -#: c-parse.y:1640 objc/objc-parse.y:1692 -msgid "ISO C forbids forward references to `enum' types" +#: c-parse.y:1602 objc/objc-parse.y:1653 +msgid "ISO C forbids forward references to % types" msgstr "" -#: c-parse.y:1652 cp/parser.c:9399 objc/objc-parse.y:1704 +#: c-parse.y:1614 cp/parser.c:9991 objc/objc-parse.y:1665 msgid "comma at end of enumerator list" msgstr "" -#: c-parse.y:1672 objc/objc-parse.y:1724 +#: c-parse.y:1634 objc/objc-parse.y:1685 msgid "no semicolon at end of struct or union" msgstr "" -#: c-parse.y:1681 objc/objc-parse.y:1733 objc/objc-parse.y:2833 +#: c-parse.y:1643 objc/objc-parse.y:1694 objc/objc-parse.y:2683 msgid "extra semicolon in struct or union specified" msgstr "" -#: c-parse.y:1694 objc/objc-parse.y:1749 +#: c-parse.y:1656 objc/objc-parse.y:1710 msgid "ISO C doesn't support unnamed structs/unions" msgstr "" -#: c-parse.y:1703 objc/objc-parse.y:1758 +#: c-parse.y:1666 objc/objc-parse.y:1720 msgid "ISO C forbids member declarations with no members" msgstr "" -#: c-parse.y:1864 objc/objc-parse.y:1919 +#: c-parse.y:1832 objc/objc-parse.y:1886 msgid "label at end of compound statement" msgstr "" -#: c-parse.y:1883 objc/objc-parse.y:1938 +#: c-parse.y:1851 objc/objc-parse.y:1905 msgid "ISO C90 forbids mixed declarations and code" msgstr "" -#: c-parse.y:1961 objc/objc-parse.y:2018 +#: c-parse.y:1891 objc/objc-parse.y:1945 msgid "ISO C forbids label declarations" msgstr "" -#: c-parse.y:2011 objc/objc-parse.y:2068 +#: c-parse.y:1935 objc/objc-parse.y:1989 msgid "braced-group within expression allowed only inside a function" msgstr "" -#: c-parse.y:2130 objc/objc-parse.y:2187 -msgid "empty body in an else-statement" -msgstr "" - -#: c-parse.y:2138 objc/objc-parse.y:2195 -msgid "%Hempty body in an if-statement" -msgstr "" - -#: c-parse.y:2233 cp/parser.c:6137 objc/objc-parse.y:2290 -msgid "continue statement not within a loop" -msgstr "" - -#: c-parse.y:2259 objc/objc-parse.y:2316 -msgid "ISO C forbids `goto *expr;'" -msgstr "" - -#: c-parse.y:2350 objc/objc-parse.y:2458 +#: c-parse.y:2231 objc/objc-parse.y:2328 #, c-format msgid "%E qualifier ignored on asm" msgstr "" -#: c-parse.y:2432 objc/objc-parse.y:2540 -msgid "ISO C requires a named argument before `...'" -msgstr "" - -#: c-parse.y:2525 objc/objc-parse.y:2633 -msgid "`...' in old-style identifier list" +#: c-parse.y:2325 objc/objc-parse.y:2422 +msgid "ISO C requires a named argument before %<...%>" msgstr "" -#: bison.simple:795 +#: c-parse.c:5311 gengtype-yacc.c:1555 java/parse-scan.c:3059 +#: java/parse.c:6122 objc/objc-parse.c:6393 msgid "syntax error; also virtual memory exhausted" msgstr "" -#: bison.simple:924 +#: c-parse.c:5429 gengtype-yacc.c:1673 java/parse-scan.c:3177 +#: java/parse.c:6240 objc/objc-parse.c:6511 msgid "parser stack overflow" msgstr "" -#: c-parse.y:2955 objc/objc-parse.y:3650 +#: c-parse.y:2841 objc/objc-parse.y:3444 #, c-format -msgid "syntax error at '%s' token" +msgid "syntax error at %qs token" msgstr "" #: c-pch.c:130 @@ -2492,592 +2517,614 @@ msgstr "" msgid "can't create precompiled header %s: %m" msgstr "" -#: c-pch.c:159 +#: c-pch.c:158 #, c-format msgid "can't write to %s: %m" msgstr "" -#: c-pch.c:165 +#: c-pch.c:164 #, c-format -msgid "`%s' is not a valid output file" +msgid "%qs is not a valid output file" msgstr "" -#: c-pch.c:194 c-pch.c:210 c-pch.c:222 +#: c-pch.c:193 c-pch.c:208 c-pch.c:222 #, c-format msgid "can't write %s: %m" msgstr "" -#: c-pch.c:200 +#: c-pch.c:198 c-pch.c:215 #, c-format msgid "can't seek in %s: %m" msgstr "" -#: c-pch.c:208 c-pch.c:248 c-pch.c:276 c-pch.c:281 c-pch.c:365 +#: c-pch.c:206 c-pch.c:248 c-pch.c:276 c-pch.c:281 c-pch.c:365 #, c-format msgid "can't read %s: %m" msgstr "" -#: c-pch.c:261 -#, c-format -msgid "%s: not compatible with this GCC version" +#: c-pch.c:483 +msgid "malformed #pragma GCC pch_preprocess, ignored" msgstr "" -#. It's a PCH for the wrong language. -#: c-pch.c:264 -#, c-format -msgid "%s: not for %s" +#: c-pch.c:489 +msgid "pch_preprocess pragma should only be used with -fpreprocessed" msgstr "" -#. Not any kind of PCH. -#: c-pch.c:268 -#, c-format -msgid "%s: not a PCH file" +#: c-pch.c:490 +msgid "use #include instead" msgstr "" -#: c-pch.c:287 +#: c-pch.c:498 #, c-format -msgid "%s: created on host `%.*s', but used on host `%s'" +msgid "%s: couldn't open PCH file: %m\n" msgstr "" -#: c-pch.c:297 -#, c-format -msgid "%s: created for target `%.*s', but used for target `%s'" +#: c-pch.c:503 +msgid "use -Winvalid-pch for more information" msgstr "" -#: c-pch.c:310 +#: c-pch.c:504 #, c-format -msgid "%s: created by version `%.*s', but this is version `%s'" +msgid "%s: PCH file was invalid" msgstr "" -#: c-pch.c:326 -#, c-format -msgid "%s: created with -g%s, but used with -g%s" +#: c-pragma.c:98 +msgid "#pragma pack (pop) encountered without matching #pragma pack (push)" msgstr "" -#: c-pch.c:340 +#: c-pragma.c:111 #, c-format -msgid "%s: settings for %s do not match" +msgid "" +"#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s)" msgstr "" -#: c-pch.c:354 -#, c-format -msgid "%s: had text segment at different address" +#: c-pragma.c:125 +msgid "#pragma pack(push[, id], ) is not supported on this target" msgstr "" -#: c-pch.c:371 cpperror.c:182 gcc.c:6706 -#, c-format -msgid "%s: %s" +#: c-pragma.c:127 +msgid "#pragma pack(pop[, id], ) is not supported on this target" msgstr "" -#: c-pch.c:402 -msgid "calling fdopen" +#: c-pragma.c:148 +msgid "missing %<(%> after %<#pragma pack%> - ignored" msgstr "" -#: c-pch.c:410 c-pch.c:422 -msgid "reading" +#: c-pragma.c:161 c-pragma.c:201 +msgid "malformed %<#pragma pack%> - ignored" msgstr "" -#: c-pragma.c:106 -msgid "" -"#pragma pack (pop) encountered without matching #pragma pack (push, )" +#: c-pragma.c:166 +msgid "malformed %<#pragma pack(push[, id][, ])%> - ignored" msgstr "" -#: c-pragma.c:124 -#, c-format -msgid "" -"#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, " -")" +#: c-pragma.c:168 +msgid "malformed %<#pragma pack(pop[, id])%> - ignored" msgstr "" -#: c-pragma.c:144 -msgid "#pragma pack(push[, id], ) is not supported on this target" +#: c-pragma.c:177 +msgid "unknown action %qs for %<#pragma pack%> - ignored" msgstr "" -#: c-pragma.c:146 -msgid "#pragma pack(pop[, id], ) is not supported on this target" +#: c-pragma.c:204 +msgid "junk at end of %<#pragma pack%>" msgstr "" -#: c-pragma.c:165 -msgid "missing '(' after '#pragma pack' - ignored" +#: c-pragma.c:207 +msgid "#pragma pack has no effect with -fpack-struct - ignored" msgstr "" -#: c-pragma.c:178 c-pragma.c:228 -msgid "malformed '#pragma pack' - ignored" +#: c-pragma.c:227 +#, c-format +msgid "alignment must be a small power of two, not %d" msgstr "" -#: c-pragma.c:183 -msgid "malformed '#pragma pack(push[, id], )' - ignored" +#: c-pragma.c:260 +msgid "" +"%Japplying #pragma weak %qD after first use results in unspecified behavior" msgstr "" -#: c-pragma.c:185 -msgid "malformed '#pragma pack(pop[, id])' - ignored" +#: c-pragma.c:307 c-pragma.c:312 +msgid "malformed #pragma weak, ignored" msgstr "" -#: c-pragma.c:194 -#, c-format -msgid "unknown action '%s' for '#pragma pack' - ignored" +#: c-pragma.c:316 +msgid "junk at end of #pragma weak" msgstr "" -#: c-pragma.c:231 -msgid "junk at end of '#pragma pack'" +#: c-pragma.c:379 c-pragma.c:381 +msgid "malformed #pragma redefine_extname, ignored" msgstr "" -#: c-pragma.c:245 -#, c-format -msgid "alignment must be a small power of two, not %d" +#: c-pragma.c:384 +msgid "junk at end of #pragma redefine_extname" +msgstr "" + +#: c-pragma.c:389 +msgid "#pragma redefine_extname not supported on this target" +msgstr "" + +#: c-pragma.c:406 c-pragma.c:492 +msgid "#pragma redefine_extname ignored due to conflict with previous rename" msgstr "" -#: c-pragma.c:278 +#: c-pragma.c:429 msgid "" -"%Japplying #pragma weak '%D' after first use results in unspecified behavior" +"#pragma redefine_extname ignored due to conflict with previous #pragma " +"redefine_extname" msgstr "" -#: c-pragma.c:325 c-pragma.c:330 -msgid "malformed #pragma weak, ignored" +#: c-pragma.c:448 +msgid "malformed #pragma extern_prefix, ignored" msgstr "" -#: c-pragma.c:334 -msgid "junk at end of #pragma weak" +#: c-pragma.c:451 +msgid "junk at end of #pragma extern_prefix" msgstr "" -#: c-pragma.c:366 c-pragma.c:371 -msgid "malformed #pragma redefine_extname, ignored" +#: c-pragma.c:457 +msgid "#pragma extern_prefix not supported on this target" msgstr "" -#: c-pragma.c:376 -msgid "junk at end of #pragma redefine_extname" +#: c-pragma.c:483 +msgid "asm declaration ignored due to conflict with previous rename" msgstr "" -#: c-pragma.c:384 c-pragma.c:461 -msgid "#pragma redefine_extname conflicts with declaration" +#: c-pragma.c:514 +msgid "" +"#pragma redefine_extname ignored due to conflict with __asm__ declaration" msgstr "" -#: c-pragma.c:412 -msgid "malformed #pragma extern_prefix, ignored" +#: c-pragma.c:574 +msgid "#pragma GCC visibility must be followed by push or pop" msgstr "" -#: c-pragma.c:417 -msgid "junk at end of #pragma extern_prefix" +#: c-pragma.c:581 +msgid "No matching push for %<#pragma GCC visibility pop%>" msgstr "" -#: c-pragma.c:448 -msgid "asm declaration conflicts with previous rename" +#: c-pragma.c:592 +msgid "missing %<(%> after %<#pragma GCC visibility push%> - ignored" +msgstr "" + +#: c-pragma.c:596 +msgid "malformed #pragma GCC visibility push" msgstr "" -#: c-typeck.c:118 +#: c-pragma.c:600 +msgid "No more than sixteen #pragma GCC visibility pushes allowed at once" +msgstr "" + +#: c-pragma.c:616 +msgid "" +"#pragma GCC visibility push() must specify default, internal, hidden or " +"protected" +msgstr "" + +#: c-pragma.c:621 +msgid "missing '(' after %<#pragma GCC visibility push%> - ignored" +msgstr "" + +#: c-pragma.c:625 +msgid "junk at end of %<#pragma GCC visibility%>" +msgstr "" + +#: c-typeck.c:128 #, c-format -msgid "`%s' has an incomplete type" +msgid "%qs has an incomplete type" msgstr "" -#: c-typeck.c:140 cp/call.c:2681 +#: c-typeck.c:150 cp/call.c:2667 msgid "invalid use of void expression" msgstr "" -#: c-typeck.c:148 +#: c-typeck.c:158 msgid "invalid use of flexible array member" msgstr "" -#: c-typeck.c:154 +#: c-typeck.c:164 msgid "invalid use of array with unspecified bounds" msgstr "" -#: c-typeck.c:162 -#, c-format -msgid "invalid use of undefined type `%s %s'" +#: c-typeck.c:172 +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:166 +#: c-typeck.c:176 #, c-format -msgid "invalid use of incomplete typedef `%s'" +msgid "invalid use of incomplete typedef %qs" msgstr "" -#: c-typeck.c:430 c-typeck.c:445 +#: c-typeck.c:363 c-typeck.c:377 msgid "function types not truly compatible in ISO C" msgstr "" -#: c-typeck.c:625 +#: c-typeck.c:731 msgid "types are not quite compatible" msgstr "" -#: c-typeck.c:861 -msgid "function return types not compatible due to `volatile'" +#: c-typeck.c:967 +msgid "function return types not compatible due to %" msgstr "" -#: c-typeck.c:1007 c-typeck.c:2186 +#: c-typeck.c:1108 c-typeck.c:2338 msgid "arithmetic on pointer to an incomplete type" msgstr "" -#: c-typeck.c:1381 +#: c-typeck.c:1483 #, c-format -msgid "%s has no member named `%s'" +msgid "%s has no member named %qs" msgstr "" -#: c-typeck.c:1417 +#: c-typeck.c:1520 #, c-format -msgid "request for member `%s' in something not a structure or union" +msgid "request for member %qs in something not a structure or union" msgstr "" -#: c-typeck.c:1446 +#: c-typeck.c:1549 msgid "dereferencing pointer to incomplete type" msgstr "" -#: c-typeck.c:1450 -msgid "dereferencing `void *' pointer" +#: c-typeck.c:1553 +msgid "dereferencing % pointer" msgstr "" -#: c-typeck.c:1467 cp/typeck.c:2108 +#: c-typeck.c:1570 #, c-format -msgid "invalid type argument of `%s'" +msgid "invalid type argument of %qs" msgstr "" -#: c-typeck.c:1485 cp/typeck.c:2133 +#: c-typeck.c:1588 cp/typeck.c:2166 msgid "subscript missing in array reference" msgstr "" -#: c-typeck.c:1505 cp/typeck.c:2174 -msgid "array subscript has type `char'" +#: c-typeck.c:1608 +msgid "array subscript has type %" msgstr "" -#: c-typeck.c:1513 c-typeck.c:1602 cp/typeck.c:2178 cp/typeck.c:2264 +#: c-typeck.c:1616 c-typeck.c:1705 cp/typeck.c:2211 cp/typeck.c:2297 msgid "array subscript is not an integer" msgstr "" -#: c-typeck.c:1546 -msgid "ISO C forbids subscripting `register' array" +#: c-typeck.c:1649 +msgid "ISO C forbids subscripting % array" msgstr "" -#: c-typeck.c:1548 +#: c-typeck.c:1651 msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "" -#: c-typeck.c:1581 -msgid "subscript has type `char'" +#: c-typeck.c:1684 +msgid "subscript has type %" msgstr "" -#: c-typeck.c:1597 cp/typeck.c:2259 +#: c-typeck.c:1700 cp/typeck.c:2292 msgid "subscripted value is neither array nor pointer" msgstr "" -#: c-typeck.c:1627 +#: c-typeck.c:1730 #, c-format -msgid "local declaration of `%s' hides instance variable" +msgid "local declaration of %qs hides instance variable" msgstr "" -#: c-typeck.c:1721 +#: c-typeck.c:1914 msgid "called object is not a function" msgstr "" #. 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:1753 +#: c-typeck.c:1946 msgid "function called through a non-compatible type" msgstr "" -#: c-typeck.c:1851 cp/typeck.c:2547 +#: c-typeck.c:1990 c-typeck.c:4176 c-typeck.c:4178 c-typeck.c:4186 +#: c-typeck.c:4211 c-typeck.c:5609 +msgid "initializer element is not constant" +msgstr "" + +#: c-typeck.c:2041 cp/typeck.c:2565 msgid "too many arguments to function" msgstr "" -#: c-typeck.c:1872 +#: c-typeck.c:2062 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "" -#: c-typeck.c:1885 +#: c-typeck.c:2075 #, c-format msgid "%s as integer rather than floating due to prototype" msgstr "" -#: c-typeck.c:1888 +#: c-typeck.c:2078 #, c-format msgid "%s as integer rather than complex due to prototype" msgstr "" -#: c-typeck.c:1891 +#: c-typeck.c:2081 #, c-format msgid "%s as complex rather than floating due to prototype" msgstr "" -#: c-typeck.c:1894 +#: c-typeck.c:2084 #, c-format msgid "%s as floating rather than integer due to prototype" msgstr "" -#: c-typeck.c:1897 +#: c-typeck.c:2087 #, c-format msgid "%s as complex rather than integer due to prototype" msgstr "" -#: c-typeck.c:1900 +#: c-typeck.c:2090 #, c-format msgid "%s as floating rather than complex due to prototype" msgstr "" -#: c-typeck.c:1910 -#, c-format -msgid "%s as `float' rather than `double' due to prototype" +#: c-typeck.c:2100 +msgid "%s as % rather than % due to prototype" msgstr "" -#: c-typeck.c:1928 +#: c-typeck.c:2120 #, c-format msgid "%s with different width due to prototype" msgstr "" -#: c-typeck.c:1954 +#: c-typeck.c:2146 #, c-format msgid "%s as unsigned due to prototype" msgstr "" -#: c-typeck.c:1956 +#: c-typeck.c:2148 #, c-format msgid "%s as signed due to prototype" msgstr "" -#: c-typeck.c:1990 cp/typeck.c:2653 +#: c-typeck.c:2182 cp/typeck.c:2671 msgid "too few arguments to function" msgstr "" -#: c-typeck.c:2030 +#: c-typeck.c:2217 msgid "suggest parentheses around + or - inside shift" msgstr "" -#: c-typeck.c:2037 +#: c-typeck.c:2224 msgid "suggest parentheses around && within ||" msgstr "" -#: c-typeck.c:2046 +#: c-typeck.c:2233 msgid "suggest parentheses around arithmetic in operand of |" msgstr "" -#: c-typeck.c:2049 +#: c-typeck.c:2236 msgid "suggest parentheses around comparison in operand of |" msgstr "" -#: c-typeck.c:2058 +#: c-typeck.c:2245 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "" -#: c-typeck.c:2061 +#: c-typeck.c:2248 msgid "suggest parentheses around comparison in operand of ^" msgstr "" -#: c-typeck.c:2068 +#: c-typeck.c:2255 msgid "suggest parentheses around + or - in operand of &" msgstr "" -#: c-typeck.c:2071 +#: c-typeck.c:2258 msgid "suggest parentheses around comparison in operand of &" msgstr "" -#: c-typeck.c:2078 +#: c-typeck.c:2264 msgid "comparisons like X<=Y<=Z do not have their mathematical meaning" msgstr "" -#: c-typeck.c:2138 -msgid "pointer of type `void *' used in subtraction" +#: c-typeck.c:2290 +msgid "pointer of type % used in subtraction" msgstr "" -#: c-typeck.c:2140 +#: c-typeck.c:2292 msgid "pointer to a function used in subtraction" msgstr "" -#: c-typeck.c:2228 +#: c-typeck.c:2381 msgid "wrong type argument to unary plus" msgstr "" -#: c-typeck.c:2241 +#: c-typeck.c:2394 msgid "wrong type argument to unary minus" msgstr "" -#: c-typeck.c:2258 -msgid "ISO C does not support `~' for complex conjugation" +#: c-typeck.c:2411 +msgid "ISO C does not support %<~%> for complex conjugation" msgstr "" -#: c-typeck.c:2264 +#: c-typeck.c:2417 msgid "wrong type argument to bit-complement" msgstr "" -#: c-typeck.c:2272 +#: c-typeck.c:2425 msgid "wrong type argument to abs" msgstr "" -#: c-typeck.c:2284 +#: c-typeck.c:2437 msgid "wrong type argument to conjugation" msgstr "" -#: c-typeck.c:2298 +#: c-typeck.c:2451 msgid "wrong type argument to unary exclamation mark" msgstr "" -#: c-typeck.c:2335 -msgid "ISO C does not support `++' and `--' on complex types" +#: c-typeck.c:2488 +msgid "ISO C does not support %<++%> and %<--%> on complex types" msgstr "" -#: c-typeck.c:2350 c-typeck.c:2382 +#: c-typeck.c:2504 c-typeck.c:2536 msgid "wrong type argument to increment" msgstr "" -#: c-typeck.c:2352 c-typeck.c:2384 +#: c-typeck.c:2506 c-typeck.c:2538 msgid "wrong type argument to decrement" msgstr "" -#: c-typeck.c:2373 +#: c-typeck.c:2527 msgid "increment of pointer to unknown structure" msgstr "" -#: c-typeck.c:2375 +#: c-typeck.c:2529 msgid "decrement of pointer to unknown structure" msgstr "" -#: c-typeck.c:2443 -msgid "invalid lvalue in unary `&'" +#: c-typeck.c:2597 +msgid "invalid lvalue in unary %<&%>" msgstr "" -#: c-typeck.c:2475 -#, c-format -msgid "attempt to take address of bit-field structure member `%s'" +#: c-typeck.c:2619 +msgid "attempt to take address of bit-field structure member %qD" msgstr "" -#: c-typeck.c:2562 +#: c-typeck.c:2712 #, c-format -msgid "%s of read-only member `%s'" +msgid "%s of read-only member %qs" msgstr "" -#: c-typeck.c:2566 +#: c-typeck.c:2716 #, c-format -msgid "%s of read-only variable `%s'" +msgid "%s of read-only variable %qs" msgstr "" -#: c-typeck.c:2569 +#: c-typeck.c:2719 #, c-format msgid "%s of read-only location" msgstr "" -#: c-typeck.c:2587 +#: c-typeck.c:2737 #, c-format -msgid "cannot take address of bit-field `%s'" +msgid "cannot take address of bit-field %qs" msgstr "" -#: c-typeck.c:2615 fortran/f95-lang.c:641 treelang/treetree.c:946 +#: c-typeck.c:2765 #, c-format -msgid "global register variable `%s' used in nested function" +msgid "global register variable %qs used in nested function" msgstr "" -#: c-typeck.c:2619 fortran/f95-lang.c:645 treelang/treetree.c:950 +#: c-typeck.c:2769 #, c-format -msgid "register variable `%s' used in nested function" +msgid "register variable %qs used in nested function" msgstr "" -#: c-typeck.c:2626 fortran/f95-lang.c:652 treelang/treetree.c:957 +#: c-typeck.c:2776 #, c-format -msgid "address of global register variable `%s' requested" +msgid "address of global register variable %qs requested" msgstr "" -#: c-typeck.c:2631 fortran/f95-lang.c:670 treelang/treetree.c:962 +#: c-typeck.c:2781 #, c-format -msgid "address of register variable `%s' requested" +msgid "address of register variable %qs requested" msgstr "" -#: c-typeck.c:2680 +#: c-typeck.c:2829 msgid "non-lvalue array in conditional expression" msgstr "" -#: c-typeck.c:2724 +#: c-typeck.c:2873 msgid "signed and unsigned type in conditional expression" msgstr "" -#: c-typeck.c:2731 +#: c-typeck.c:2880 msgid "ISO C forbids conditional expr with only one void side" msgstr "" -#: c-typeck.c:2747 c-typeck.c:2754 -msgid "ISO C forbids conditional expr between `void *' and function pointer" +#: c-typeck.c:2896 c-typeck.c:2904 +msgid "ISO C forbids conditional expr between % and function pointer" msgstr "" -#: c-typeck.c:2760 +#: c-typeck.c:2911 msgid "pointer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2767 c-typeck.c:2777 +#: c-typeck.c:2918 c-typeck.c:2928 msgid "pointer/integer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2791 +#: c-typeck.c:2942 msgid "type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2851 +#: c-typeck.c:2985 msgid "left-hand operand of comma expression has no effect" msgstr "" -#: c-typeck.c:2882 +#: c-typeck.c:3018 msgid "cast specifies array type" msgstr "" -#: c-typeck.c:2888 +#: c-typeck.c:3024 msgid "cast specifies function type" msgstr "" -#: c-typeck.c:2898 +#: c-typeck.c:3034 msgid "ISO C forbids casting nonscalar to the same type" msgstr "" -#: c-typeck.c:2916 +#: c-typeck.c:3052 msgid "ISO C forbids casts to union type" msgstr "" -#: c-typeck.c:2925 +#: c-typeck.c:3061 msgid "cast to union type from type not present in union" msgstr "" -#: c-typeck.c:2976 +#: c-typeck.c:3112 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:2981 +#: c-typeck.c:3117 msgid "cast discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:2996 +#: c-typeck.c:3132 msgid "cast increases required alignment of target type" msgstr "" -#: c-typeck.c:3002 cp/typeck.c:4877 +#: c-typeck.c:3138 cp/typeck.c:4932 msgid "cast from pointer to integer of different size" msgstr "" -#: c-typeck.c:3007 +#: c-typeck.c:3143 msgid "cast does not match function type" msgstr "" -#: c-typeck.c:3014 cp/typeck.c:4884 +#: c-typeck.c:3150 cp/typeck.c:4939 msgid "cast to pointer from integer of different size" msgstr "" -#: c-typeck.c:3026 +#: c-typeck.c:3162 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "" -#: c-typeck.c:3033 +#: c-typeck.c:3169 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "" -#: c-typeck.c:3036 +#: c-typeck.c:3172 msgid "dereferencing type-punned pointer might break strict-aliasing rules" msgstr "" -#: c-typeck.c:3048 +#: c-typeck.c:3184 msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "" -#: c-typeck.c:3057 +#: c-typeck.c:3193 msgid "ISO C forbids conversion of object pointer to function pointer type" msgstr "" -#: c-typeck.c:3142 +#: c-typeck.c:3286 msgid "invalid lvalue in assignment" msgstr "" @@ -3085,360 +3132,390 @@ msgstr "" #. Check this here to avoid odd errors when trying to convert #. a throw to the type of the COND_EXPR. #. The left-hand side must be an lvalue. -#: c-typeck.c:3151 c-typeck.c:3176 c-typeck.c:3193 cp/typeck.c:4998 -#: cp/typeck.c:5100 cp/typeck.c:5115 +#: c-typeck.c:3295 c-typeck.c:3320 c-typeck.c:3337 cp/typeck.c:5054 +#: cp/typeck.c:5153 cp/typeck.c:5168 msgid "assignment" msgstr "" -#: c-typeck.c:3260 +#: c-typeck.c:3404 msgid "cannot pass rvalue to reference parameter" msgstr "" -#: c-typeck.c:3368 c-typeck.c:3444 +#: c-typeck.c:3512 c-typeck.c:3589 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "" -#: c-typeck.c:3372 c-typeck.c:3424 +#: c-typeck.c:3516 c-typeck.c:3569 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:3378 +#: c-typeck.c:3522 msgid "ISO C prohibits argument conversion to union type" msgstr "" -#: c-typeck.c:3416 -#, c-format -msgid "ISO C forbids %s between function pointer and `void *'" +#: c-typeck.c:3560 +msgid "ISO C forbids %s between function pointer and %" msgstr "" -#: c-typeck.c:3433 +#: c-typeck.c:3578 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "" -#: c-typeck.c:3449 +#: c-typeck.c:3594 #, c-format msgid "%s from incompatible pointer type" msgstr "" -#: c-typeck.c:3455 c-typeck.c:3962 cp/typeck.c:1371 +#: c-typeck.c:3600 c-typeck.c:4136 cp/typeck.c:1402 msgid "invalid use of non-lvalue array" msgstr "" -#: c-typeck.c:3469 +#: c-typeck.c:3614 #, c-format msgid "%s makes pointer from integer without a cast" msgstr "" -#: c-typeck.c:3476 +#: c-typeck.c:3621 #, c-format msgid "%s makes integer from pointer without a cast" msgstr "" -#: c-typeck.c:3490 c-typeck.c:3493 +#: c-typeck.c:3635 c-typeck.c:3638 #, c-format -msgid "incompatible type for argument %d of `%s'" +msgid "incompatible type for argument %d of %qs" msgstr "" -#: c-typeck.c:3497 +#: c-typeck.c:3642 #, c-format msgid "incompatible type for argument %d of indirect function call" msgstr "" -#: c-typeck.c:3501 +#: c-typeck.c:3646 #, c-format msgid "incompatible types in %s" msgstr "" #. Function name is known; supply it. -#: c-typeck.c:3557 +#: c-typeck.c:3702 #, c-format -msgid "passing arg of `%s'" +msgid "passing arg of '%s'" msgstr "" #. Function name unknown (call through ptr). -#: c-typeck.c:3566 +#: c-typeck.c:3711 msgid "passing arg of pointer to function" msgstr "" #. Function name is known; supply it. -#: c-typeck.c:3574 +#: c-typeck.c:3719 #, c-format -msgid "passing arg %d of `%s'" +msgid "passing arg %d of '%s'" msgstr "" #. Function name unknown (call through ptr); just give arg number. -#: c-typeck.c:3583 +#: c-typeck.c:3728 #, c-format msgid "passing arg %d of pointer to function" msgstr "" -#: c-typeck.c:3640 +#: c-typeck.c:3784 msgid "traditional C rejects automatic aggregate initialization" msgstr "" -#: c-typeck.c:3811 c-typeck.c:3826 c-typeck.c:3841 +#: c-typeck.c:3952 c-typeck.c:3967 c-typeck.c:3982 #, c-format -msgid "(near initialization for `%s')" +msgid "(near initialization for %qs)" msgstr "" -#: c-typeck.c:3890 cp/typeck2.c:556 +#: c-typeck.c:3996 +msgid "array initialized from parenthesized string constant" +msgstr "" + +#: c-typeck.c:4060 cp/typeck2.c:704 msgid "char-array initialized from wide string" msgstr "" -#: c-typeck.c:3897 cp/typeck2.c:563 -msgid "int-array initialized from non-wide string" +#: c-typeck.c:4065 +msgid "wchar_t-array initialized from non-wide string" msgstr "" -#: c-typeck.c:3915 cp/typeck2.c:578 +#: c-typeck.c:4083 cp/typeck2.c:726 msgid "initializer-string for array of chars is too long" msgstr "" -#: c-typeck.c:3985 -msgid "array initialized from non-constant array expression" +#: c-typeck.c:4089 +msgid "array of inappropriate type initialized from string constant" msgstr "" -#: c-typeck.c:4002 c-typeck.c:4004 c-typeck.c:4020 c-typeck.c:4042 -#: c-typeck.c:5424 -msgid "initializer element is not constant" +#: c-typeck.c:4159 +msgid "array initialized from non-constant array expression" msgstr "" -#: c-typeck.c:4037 +#: c-typeck.c:4203 msgid "initialization" msgstr "" -#: c-typeck.c:4048 c-typeck.c:5429 +#: c-typeck.c:4218 c-typeck.c:5613 msgid "initializer element is not computable at load time" msgstr "" -#: c-typeck.c:4063 cp/typeck2.c:656 +#: c-typeck.c:4233 cp/typeck2.c:804 msgid "invalid initializer" msgstr "" -#: c-typeck.c:4348 cp/decl.c:4412 +#: c-typeck.c:4514 cp/decl.c:4461 msgid "opaque vector types cannot be initialized" msgstr "" -#: c-typeck.c:4542 +#: c-typeck.c:4710 msgid "extra brace group at end of initializer" msgstr "" -#: c-typeck.c:4562 +#: c-typeck.c:4730 msgid "missing braces around initializer" msgstr "" -#: c-typeck.c:4622 +#: c-typeck.c:4790 msgid "braces around scalar initializer" msgstr "" -#: c-typeck.c:4673 +#: c-typeck.c:4847 msgid "initialization of flexible array member in a nested context" msgstr "" -#: c-typeck.c:4675 +#: c-typeck.c:4849 msgid "initialization of a flexible array member" msgstr "" -#: c-typeck.c:4706 +#: c-typeck.c:4876 msgid "missing initializer" msgstr "" -#: c-typeck.c:4728 +#: c-typeck.c:4898 msgid "empty scalar initializer" msgstr "" -#: c-typeck.c:4733 +#: c-typeck.c:4903 msgid "extra elements in scalar initializer" msgstr "" -#: c-typeck.c:4818 +#: c-typeck.c:4991 msgid "initialization designators may not nest" msgstr "" -#: c-typeck.c:4839 c-typeck.c:4907 +#: c-typeck.c:5013 c-typeck.c:5088 msgid "array index in non-array initializer" msgstr "" -#: c-typeck.c:4844 c-typeck.c:4960 +#: c-typeck.c:5018 c-typeck.c:5141 msgid "field name not in record or union initializer" msgstr "" -#: c-typeck.c:4903 c-typeck.c:4905 +#: c-typeck.c:5064 +msgid "array index in initializer not of integer type" +msgstr "" + +#: c-typeck.c:5084 c-typeck.c:5086 msgid "nonconstant array index in initializer" msgstr "" -#: c-typeck.c:4909 c-typeck.c:4912 +#: c-typeck.c:5090 c-typeck.c:5093 msgid "array index in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:4923 +#: c-typeck.c:5104 msgid "empty index range in initializer" msgstr "" -#: c-typeck.c:4932 +#: c-typeck.c:5113 msgid "array index range in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:4972 +#: c-typeck.c:5153 #, c-format -msgid "unknown field `%s' specified in initializer" +msgid "unknown field %qs specified in initializer" msgstr "" -#: c-typeck.c:5008 c-typeck.c:5029 c-typeck.c:5491 +#: c-typeck.c:5189 c-typeck.c:5210 c-typeck.c:5676 msgid "initialized field with side-effects overwritten" msgstr "" -#: c-typeck.c:5699 +#: c-typeck.c:5885 msgid "excess elements in char array initializer" msgstr "" -#: c-typeck.c:5706 c-typeck.c:5752 +#: c-typeck.c:5892 c-typeck.c:5938 msgid "excess elements in struct initializer" msgstr "" -#: c-typeck.c:5767 +#: c-typeck.c:5953 msgid "non-static initialization of a flexible array member" msgstr "" -#: c-typeck.c:5834 +#: c-typeck.c:6021 msgid "excess elements in union initializer" msgstr "" -#: c-typeck.c:5855 +#: c-typeck.c:6043 msgid "traditional C rejects initialization of unions" msgstr "" -#: c-typeck.c:5918 +#: c-typeck.c:6107 msgid "excess elements in array initializer" msgstr "" -#: c-typeck.c:5947 +#: c-typeck.c:6137 msgid "excess elements in vector initializer" msgstr "" -#: c-typeck.c:5969 +#: c-typeck.c:6160 msgid "excess elements in scalar initializer" msgstr "" -#: c-typeck.c:6073 +#: c-typeck.c:6263 msgid "invalid lvalue in asm statement" msgstr "" -#: c-typeck.c:6164 cp/typeck.c:5792 -msgid "modification by `asm'" +#: c-typeck.c:6322 +msgid "ISO C forbids %" msgstr "" -#: c-typeck.c:6182 cp/typeck.c:5876 -msgid "function declared `noreturn' has a `return' statement" +#: c-typeck.c:6336 +msgid "function declared % has a % statement" msgstr "" -#: c-typeck.c:6189 -msgid "`return' with no value, in function returning non-void" +#: c-typeck.c:6343 +msgid "% with no value, in function returning non-void" msgstr "" -#: c-typeck.c:6195 -msgid "`return' with a value, in function returning void" +#: c-typeck.c:6350 +msgid "% with a value, in function returning void" msgstr "" -#: c-typeck.c:6199 +#: c-typeck.c:6354 msgid "return" msgstr "" -#: c-typeck.c:6251 +#: c-typeck.c:6407 msgid "function returns address of local variable" msgstr "" -#: c-typeck.c:6306 cp/semantics.c:748 +#: c-typeck.c:6468 cp/semantics.c:856 msgid "switch quantity not an integer" msgstr "" -#: c-typeck.c:6316 -msgid "`long' switch expression not converted to `int' in ISO C" +#: c-typeck.c:6478 +msgid "% switch expression not converted to % in ISO C" msgstr "" -#: c-typeck.c:6357 cp/parser.c:5636 +#: c-typeck.c:6515 cp/parser.c:6093 msgid "case label not within a switch statement" msgstr "" -#: c-typeck.c:6359 -msgid "`default' label not within a switch statement" +#: c-typeck.c:6517 +msgid "% label not within a switch statement" +msgstr "" + +#: c-typeck.c:6581 +msgid "%Hsuggest explicit braces to avoid ambiguous %" msgstr "" -#: c-typeck.c:6514 c-typeck.c:6548 +#: c-typeck.c:6591 +msgid "%Hempty body in an if-statement" +msgstr "" + +#: c-typeck.c:6599 +msgid "%Hempty body in an else-statement" +msgstr "" + +#: c-typeck.c:6690 cp/parser.c:6594 +msgid "continue statement not within a loop" +msgstr "" + +#: c-typeck.c:6707 +msgid "%Hstatement with no effect" +msgstr "" + +#: c-typeck.c:6736 +msgid "expression statement has incomplete type" +msgstr "" + +#: c-typeck.c:7059 c-typeck.c:7098 msgid "division by zero" msgstr "" -#: c-typeck.c:6593 cp/typeck.c:2933 +#: c-typeck.c:7143 cp/typeck.c:2956 msgid "right shift count is negative" msgstr "" -#: c-typeck.c:6600 cp/typeck.c:2939 +#: c-typeck.c:7150 cp/typeck.c:2962 msgid "right shift count >= width of type" msgstr "" -#: c-typeck.c:6621 cp/typeck.c:2958 +#: c-typeck.c:7171 cp/typeck.c:2981 msgid "left shift count is negative" msgstr "" -#: c-typeck.c:6624 cp/typeck.c:2960 +#: c-typeck.c:7174 cp/typeck.c:2983 msgid "left shift count >= width of type" msgstr "" -#: c-typeck.c:6645 +#: c-typeck.c:7195 msgid "shift count is negative" msgstr "" -#: c-typeck.c:6647 +#: c-typeck.c:7197 msgid "shift count >= width of type" msgstr "" -#: c-typeck.c:6664 cp/typeck.c:2995 +#: c-typeck.c:7214 cp/typeck.c:3018 msgid "comparing floating point with == or != is unsafe" msgstr "" -#: c-typeck.c:6688 c-typeck.c:6694 -msgid "ISO C forbids comparison of `void *' with function pointer" +#: c-typeck.c:7238 c-typeck.c:7245 +msgid "ISO C forbids comparison of % with function pointer" msgstr "" -#: c-typeck.c:6697 c-typeck.c:6737 c-typeck.c:6765 +#: c-typeck.c:7249 c-typeck.c:7289 c-typeck.c:7317 msgid "comparison of distinct pointer types lacks a cast" msgstr "" -#: c-typeck.c:6711 c-typeck.c:6716 c-typeck.c:6785 c-typeck.c:6790 +#: c-typeck.c:7263 c-typeck.c:7268 c-typeck.c:7337 c-typeck.c:7342 msgid "comparison between pointer and integer" msgstr "" -#: c-typeck.c:6732 c-typeck.c:6760 +#: c-typeck.c:7284 c-typeck.c:7312 msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "" -#: c-typeck.c:6757 +#: c-typeck.c:7309 msgid "comparison of complete and incomplete pointers" msgstr "" -#: c-typeck.c:6773 c-typeck.c:6780 +#: c-typeck.c:7325 c-typeck.c:7332 msgid "ordered comparison of pointer with integer zero" msgstr "" -#: c-typeck.c:6804 cp/typeck.c:3131 +#: c-typeck.c:7357 cp/typeck.c:3159 msgid "unordered comparison on non-floating point argument" msgstr "" -#: c-typeck.c:7017 +#: c-typeck.c:7570 msgid "comparison between signed and unsigned" msgstr "" -#: c-typeck.c:7063 cp/typeck.c:3378 +#: c-typeck.c:7616 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with constant" msgstr "" -#: c-typeck.c:7071 cp/typeck.c:3386 +#: c-typeck.c:7624 cp/typeck.c:3414 msgid "comparison of promoted ~unsigned with unsigned" msgstr "" -#: calls.c:2136 +#: calls.c:1909 msgid "function call has aggregate value" msgstr "" @@ -3482,7 +3559,7 @@ msgstr "" msgid "verify_flow_info: Basic block %d succ edge is corrupted" msgstr "" -#: cfghooks.c:164 cfgrtl.c:2012 +#: cfghooks.c:164 cfgrtl.c:2032 #, c-format msgid "Wrong amount of branch edges after unconditional jump %i" msgstr "" @@ -3561,458 +3638,488 @@ msgstr "" msgid "%s does not support make_forwarder_block." msgstr "" -#: cfghooks.c:647 +#: cfghooks.c:650 #, c-format msgid "%s does not support can_duplicate_block_p." msgstr "" -#: cfghooks.c:673 +#: cfghooks.c:676 #, c-format msgid "%s does not support duplicate_block." msgstr "" -#: cfghooks.c:741 +#: cfghooks.c:742 #, c-format msgid "%s does not support block_ends_with_call_p" msgstr "" -#: cfghooks.c:752 +#: cfghooks.c:753 #, c-format msgid "%s does not support block_ends_with_condjump_p" msgstr "" -#: cfghooks.c:770 +#: cfghooks.c:771 #, c-format msgid "%s does not support flow_call_edges_add" msgstr "" -#: cfgloop.c:1183 +#: cfgloop.c:1288 #, c-format msgid "Size of loop %d should be %d, not %d." msgstr "" -#: cfgloop.c:1202 +#: cfgloop.c:1305 #, c-format msgid "Bb %d do not belong to loop %d." msgstr "" -#: cfgloop.c:1220 +#: cfgloop.c:1323 #, c-format msgid "Loop %d's header does not have exactly 2 entries." msgstr "" -#: cfgloop.c:1228 +#: cfgloop.c:1331 #, c-format msgid "Loop %d's latch does not have exactly 1 successor." msgstr "" -#: cfgloop.c:1233 +#: cfgloop.c:1336 #, c-format msgid "Loop %d's latch does not have header as successor." msgstr "" -#: cfgloop.c:1238 +#: cfgloop.c:1341 #, c-format msgid "Loop %d's latch does not belong directly to it." msgstr "" -#: cfgloop.c:1244 +#: cfgloop.c:1347 #, c-format msgid "Loop %d's header does not belong directly to it." msgstr "" -#: cfgloop.c:1250 +#: cfgloop.c:1353 #, c-format msgid "Loop %d's latch is marked as part of irreducible region." msgstr "" -#: cfgloop.c:1280 +#: cfgloop.c:1383 #, c-format msgid "Basic block %d should be marked irreducible." msgstr "" -#: cfgloop.c:1286 +#: cfgloop.c:1389 #, c-format msgid "Basic block %d should not be marked irreducible." msgstr "" -#: cfgloop.c:1294 +#: cfgloop.c:1397 #, c-format msgid "Edge from %d to %d should be marked irreducible." msgstr "" -#: cfgloop.c:1301 +#: cfgloop.c:1404 #, c-format msgid "Edge from %d to %d should not be marked irreducible." msgstr "" -#: cfgrtl.c:1910 +#: cfgloop.c:1438 +#, c-format +msgid "Wrong single exit %d->%d recorded for loop %d." +msgstr "" + +#: cfgloop.c:1442 +#, c-format +msgid "Right exit is %d->%d." +msgstr "" + +#: cfgloop.c:1459 +#, c-format +msgid "Single exit not recorded for loop %d." +msgstr "" + +#: cfgloop.c:1466 +#, c-format +msgid "Loop %d should not have single exit (%d -> %d)." +msgstr "" + +#: cfgrtl.c:1926 #, c-format msgid "end insn %d for block %d not found in the insn stream" msgstr "" -#: cfgrtl.c:1924 +#: cfgrtl.c:1940 #, c-format msgid "insn %d is in multiple basic blocks (%d and %d)" msgstr "" -#: cfgrtl.c:1936 +#: cfgrtl.c:1952 #, c-format msgid "head insn %d for block %d not found in the insn stream" msgstr "" -#: cfgrtl.c:1958 +#: cfgrtl.c:1974 msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i" msgstr "" -#: cfgrtl.c:1970 +#: cfgrtl.c:1989 #, c-format msgid "Fallthru edge crosses section boundary (bb %i)" msgstr "" -#: cfgrtl.c:1994 +#: cfgrtl.c:2014 #, c-format msgid "Missing REG_EH_REGION note in the end of bb %i" msgstr "" -#: cfgrtl.c:2002 +#: cfgrtl.c:2022 #, c-format msgid "Too many outgoing branch edges from bb %i" msgstr "" -#: cfgrtl.c:2007 +#: cfgrtl.c:2027 #, c-format msgid "Fallthru edge after unconditional jump %i" msgstr "" -#: cfgrtl.c:2018 +#: cfgrtl.c:2038 #, c-format msgid "Wrong amount of branch edges after conditional jump %i" msgstr "" -#: cfgrtl.c:2023 +#: cfgrtl.c:2043 #, c-format msgid "Call edges for non-call insn in bb %i" msgstr "" -#: cfgrtl.c:2032 +#: cfgrtl.c:2052 #, c-format msgid "Abnormal edges for no purpose in bb %i" msgstr "" -#: cfgrtl.c:2042 +#: cfgrtl.c:2062 #, c-format msgid "insn %d inside basic block %d but block_for_insn is NULL" msgstr "" -#: cfgrtl.c:2046 +#: cfgrtl.c:2066 #, c-format msgid "insn %d inside basic block %d but block_for_insn is %i" msgstr "" -#: cfgrtl.c:2060 cfgrtl.c:2070 +#: cfgrtl.c:2080 cfgrtl.c:2090 #, c-format msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d" msgstr "" -#: cfgrtl.c:2083 +#: cfgrtl.c:2103 #, c-format msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d" msgstr "" -#: cfgrtl.c:2093 +#: cfgrtl.c:2113 #, c-format msgid "in basic block %d:" msgstr "" -#: cfgrtl.c:2094 +#: cfgrtl.c:2114 msgid "flow control insn inside a basic block" msgstr "" -#: cfgrtl.c:2140 +#: cfgrtl.c:2160 #, c-format msgid "missing barrier after block %i" msgstr "" -#: cfgrtl.c:2153 +#: cfgrtl.c:2173 #, c-format msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i" msgstr "" -#: cfgrtl.c:2168 +#: cfgrtl.c:2188 #, c-format msgid "verify_flow_info: Incorrect fallthru %i->%i" msgstr "" -#: cfgrtl.c:2170 +#: cfgrtl.c:2190 msgid "wrong insn in the fallthru edge" msgstr "" -#: cfgrtl.c:2187 +#: cfgrtl.c:2207 msgid "basic blocks not laid down consecutively" msgstr "" -#: cfgrtl.c:2212 +#: cfgrtl.c:2232 msgid "insn outside basic block" msgstr "" -#: cfgrtl.c:2220 +#: cfgrtl.c:2240 msgid "return not followed by barrier" msgstr "" -#: cfgrtl.c:2227 +#: cfgrtl.c:2247 #, c-format msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)" msgstr "" -#: cgraph.c:260 +#: cgraph.c:231 msgid "function body not available" msgstr "" -#: cgraph.c:262 cgraphunit.c:630 +#: cgraph.c:233 cgraphunit.c:869 msgid "redefined extern inline functions are not considered for inlining" msgstr "" -#: cgraph.c:265 cgraphunit.c:635 +#: cgraph.c:236 cgraphunit.c:874 msgid "function not considered for inlining" msgstr "" -#: cgraph.c:267 cgraphunit.c:633 +#: cgraph.c:238 cgraphunit.c:872 msgid "function not inlinable" msgstr "" -#: cgraph.c:614 +#: cgraph.c:578 msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:484 +#: cgraphunit.c:720 msgid "Shared call_expr:" msgstr "" -#: cgraphunit.c:490 +#: cgraphunit.c:726 msgid "Edge points to wrong declaration:" msgstr "" -#: cgraphunit.c:499 +#: cgraphunit.c:735 msgid "Missing callgraph edge for call expr:" msgstr "" -#: cgraphunit.c:525 +#: cgraphunit.c:761 #, c-format msgid "Aux field set for edge %s->%s" msgstr "" -#: cgraphunit.c:537 +#: cgraphunit.c:773 msgid "Inlined_to pointer is wrong" msgstr "" -#: cgraphunit.c:542 +#: cgraphunit.c:778 msgid "Multiple inline callers" msgstr "" -#: cgraphunit.c:549 +#: cgraphunit.c:785 msgid "Inlined_to pointer set for noninline callers" msgstr "" -#: cgraphunit.c:555 +#: cgraphunit.c:791 msgid "Inlined_to pointer is set but no predecesors found" msgstr "" -#: cgraphunit.c:560 +#: cgraphunit.c:796 msgid "Inlined_to pointer reffers to itself" msgstr "" -#: cgraphunit.c:570 +#: cgraphunit.c:806 msgid "Node not found in DECL_ASSEMBLER_NAME hash" msgstr "" -#: cgraphunit.c:584 +#: cgraphunit.c:820 #, c-format msgid "Edge %s->%s has no corresponding call_expr" msgstr "" -#: cgraphunit.c:595 +#: cgraphunit.c:831 msgid "verify_cgraph_node failed." msgstr "" -#: cgraphunit.c:1169 +#: cgraphunit.c:1015 +msgid "failed to reclaim unneeded function" +msgstr "" + +#: cgraphunit.c:1545 msgid "--param large-function-growth limit reached" msgstr "" -#: cgraphunit.c:1206 +#: cgraphunit.c:1582 msgid "recursive inlining" msgstr "" -#: cgraphunit.c:1371 cgraphunit.c:1623 +#: cgraphunit.c:1747 cgraphunit.c:1999 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: cgraphunit.c:1395 +#: cgraphunit.c:1771 msgid "" "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "" -#: cgraphunit.c:1445 +#: cgraphunit.c:1821 msgid "--param inline-unit-growth limit reached" msgstr "" -#: cgraphunit.c:1792 +#: cgraphunit.c:2843 msgid "Nodes with no released memory found." msgstr "" -#: collect2.c:405 -msgid "internal error" +#: collect2.c:406 gcc.c:6742 +#, c-format +msgid "internal gcc abort in %s, at %s:%d" msgstr "" -#: collect2.c:893 +#: collect2.c:900 msgid "no arguments" msgstr "" -#: collect2.c:1225 collect2.c:1373 collect2.c:1408 +#: collect2.c:1192 +#, c-format +msgid "unknown demangling style '%s'" +msgstr "" + +#: collect2.c:1266 collect2.c:1414 collect2.c:1449 #, c-format msgid "fopen %s" msgstr "" -#: collect2.c:1228 collect2.c:1378 collect2.c:1411 +#: collect2.c:1269 collect2.c:1419 collect2.c:1452 #, c-format msgid "fclose %s" msgstr "" -#: collect2.c:1237 +#: collect2.c:1278 #, c-format msgid "collect2 version %s" msgstr "" -#: collect2.c:1327 +#: collect2.c:1368 #, c-format msgid "%d constructor(s) found\n" msgstr "" -#: collect2.c:1328 +#: collect2.c:1369 #, c-format msgid "%d destructor(s) found\n" msgstr "" -#: collect2.c:1329 +#: collect2.c:1370 #, c-format msgid "%d frame table(s) found\n" msgstr "" -#: collect2.c:1471 +#: collect2.c:1512 #, c-format msgid "%s terminated with signal %d [%s]%s" msgstr "" -#: collect2.c:1489 +#: collect2.c:1530 #, c-format msgid "%s returned %d exit status" msgstr "" -#: collect2.c:1514 +#: collect2.c:1555 #, c-format msgid "[cannot find %s]" msgstr "" -#: collect2.c:1529 +#: collect2.c:1570 #, c-format msgid "cannot find `%s'" msgstr "" -#: collect2.c:1540 collect2.c:1543 +#: collect2.c:1581 collect2.c:1584 #, c-format msgid "redirecting stdout: %s" msgstr "" -#: collect2.c:1582 +#: collect2.c:1623 #, c-format msgid "[Leaving %s]\n" msgstr "" -#: collect2.c:1802 +#: collect2.c:1843 #, c-format msgid "" "\n" "write_c_file - output name is %s, prefix is %s\n" msgstr "" -#: collect2.c:2006 +#: collect2.c:2047 msgid "cannot find `nm'" msgstr "" -#: collect2.c:2016 collect2.c:2182 +#: collect2.c:2057 collect2.c:2223 msgid "pipe" msgstr "" -#: collect2.c:2020 collect2.c:2186 +#: collect2.c:2061 collect2.c:2227 msgid "fdopen" msgstr "" -#: collect2.c:2046 collect2.c:2212 +#: collect2.c:2087 collect2.c:2253 #, c-format msgid "dup2 %d 1" msgstr "" -#: collect2.c:2049 collect2.c:2052 collect2.c:2065 collect2.c:2215 -#: collect2.c:2218 collect2.c:2231 +#: collect2.c:2090 collect2.c:2093 collect2.c:2106 collect2.c:2256 +#: collect2.c:2259 collect2.c:2272 #, c-format msgid "close %d" msgstr "" -#: collect2.c:2055 collect2.c:2221 +#: collect2.c:2096 collect2.c:2262 #, c-format msgid "execv %s" msgstr "" -#: collect2.c:2109 +#: collect2.c:2150 #, c-format msgid "init function found in object %s" msgstr "" -#: collect2.c:2117 +#: collect2.c:2158 #, c-format msgid "fini function found in object %s" msgstr "" -#: collect2.c:2140 collect2.c:2270 +#: collect2.c:2181 collect2.c:2311 msgid "fclose" msgstr "" -#: collect2.c:2173 +#: collect2.c:2214 msgid "cannot find `ldd'" msgstr "" -#: collect2.c:2234 +#: collect2.c:2275 msgid "" "\n" "ldd output with constructors/destructors.\n" msgstr "" -#: collect2.c:2249 +#: collect2.c:2290 #, c-format msgid "dynamic dependency %s not found" msgstr "" -#: collect2.c:2261 +#: collect2.c:2302 #, c-format msgid "unable to open dynamic dependency '%s'" msgstr "" -#: collect2.c:2420 +#: collect2.c:2461 #, c-format msgid "%s: not a COFF file" msgstr "" -#: collect2.c:2540 +#: collect2.c:2581 #, c-format msgid "%s: cannot open as COFF file" msgstr "" -#: collect2.c:2595 +#: collect2.c:2636 #, c-format msgid "library lib%s not found" msgstr "" -#: combine.c:13037 +#: combine.c:12371 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new " @@ -4021,7 +4128,7 @@ msgid "" "\n" msgstr "" -#: combine.c:13046 +#: combine.c:12380 #, c-format msgid "" "\n" @@ -4029,7 +4136,7 @@ msgid "" ";; %d successes.\n" msgstr "" -#: convert.c:70 +#: convert.c:69 msgid "cannot convert to a pointer type" msgstr "" @@ -4045,790 +4152,83 @@ msgstr "" msgid "conversion to incomplete type" msgstr "" -#: convert.c:682 convert.c:760 +#: convert.c:681 convert.c:757 msgid "can't convert between vector values of different size" msgstr "" -#: convert.c:688 +#: convert.c:687 msgid "aggregate value used where an integer was expected" msgstr "" -#: convert.c:739 -msgid "pointer value used where a complex was expected" -msgstr "" - -#: convert.c:743 -msgid "aggregate value used where a complex was expected" -msgstr "" - -#: convert.c:766 -msgid "can't convert value to a vector" -msgstr "" - -#: coverage.c:168 -#, c-format -msgid "`%s' is not a gcov data file" -msgstr "" - -#: coverage.c:179 -#, c-format -msgid "`%s' is version `%.*s', expected version `%.*s'" -msgstr "" - -#: coverage.c:259 coverage.c:267 -#, c-format -msgid "coverage mismatch for function %u while reading execution counters." -msgstr "" - -#: coverage.c:261 coverage.c:346 -#, c-format -msgid "checksum is %x instead of %x" -msgstr "" - -#: coverage.c:269 coverage.c:354 -#, c-format -msgid "number of counters is %d instead of %d" -msgstr "" - -#: coverage.c:275 -#, c-format -msgid "cannot merge separate %s counters for function %u" -msgstr "" - -#: coverage.c:300 -#, c-format -msgid "`%s' has overflowed" -msgstr "" - -#: coverage.c:300 -#, c-format -msgid "`%s' is corrupted" -msgstr "" - -#: coverage.c:335 -#, c-format -msgid "no coverage for function '%s' found." -msgstr "" - -#: coverage.c:343 coverage.c:351 -#, c-format -msgid "coverage mismatch for function '%s' while reading counter '%s'." -msgstr "" - -#: coverage.c:531 -#, c-format -msgid "cannot open %s" -msgstr "" - -#: coverage.c:566 -#, c-format -msgid "error writing `%s'" -msgstr "" - -#. FIXME should be DL_SORRY -#: cppcharset.c:653 -#, c-format -msgid "conversion from %s to %s not supported by iconv" -msgstr "" - -#: cppcharset.c:656 -msgid "iconv_open" -msgstr "" - -#. FIXME: should be DL_SORRY -#: cppcharset.c:664 -#, c-format -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 "" - -#: cppcharset.c:811 -#, c-format -msgid "the meaning of '\\%c' is different in traditional C" -msgstr "" - -#: cppcharset.c:837 -#, c-format -msgid "incomplete universal character name %.*s" -msgstr "" - -#: cppcharset.c:849 -#, c-format -msgid "%.*s is not a valid universal character" -msgstr "" - -#: cppcharset.c:859 -#, c-format -msgid "universal character %.*s is not valid in an identifier" -msgstr "" - -#: cppcharset.c:863 -#, c-format -msgid "universal character %.*s is not valid at the start of an identifier" -msgstr "" - -#: cppcharset.c:898 -msgid "converting UCN to source character set" -msgstr "" - -#: cppcharset.c:902 -msgid "converting UCN to execution character set" -msgstr "" - -#: cppcharset.c:967 -msgid "the meaning of '\\x' is different in traditional C" -msgstr "" - -#: cppcharset.c:984 -msgid "\\x used with no following hex digits" -msgstr "" - -#: cppcharset.c:991 -msgid "hex escape sequence out of range" -msgstr "" - -#: cppcharset.c:1030 -msgid "octal escape sequence out of range" -msgstr "" - -#: cppcharset.c:1098 -msgid "the meaning of '\\a' is different in traditional C" -msgstr "" - -#: cppcharset.c:1105 -#, c-format -msgid "non-ISO-standard escape sequence, '\\%c'" -msgstr "" - -#: cppcharset.c:1113 -#, c-format -msgid "unknown escape sequence '\\%c'" -msgstr "" - -#: cppcharset.c:1116 -#, c-format -msgid "unknown escape sequence: '\\%03o'" -msgstr "" - -#: 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 -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:119 diagnostic.def:5 -msgid "warning: " -msgstr "" - -#: cpperror.c:121 -msgid "internal error: " -msgstr "" - -#: cpperror.c:180 -msgid "stdout" -msgstr "" - -#: cppexp.c:192 -msgid "too many decimal points in number" -msgstr "" - -#: cppexp.c:212 -#, c-format -msgid "invalid digit \"%c\" in octal constant" -msgstr "" - -#: cppexp.c:218 -msgid "use of C99 hexadecimal floating constant" -msgstr "" - -#: cppexp.c:227 -msgid "exponent has no digits" -msgstr "" - -#: cppexp.c:234 -msgid "hexadecimal floating constants require an exponent" -msgstr "" - -#: cppexp.c:240 -#, c-format -msgid "invalid suffix \"%.*s\" on floating constant" -msgstr "" - -#: cppexp.c:250 cppexp.c:275 -#, c-format -msgid "traditional C rejects the \"%.*s\" suffix" -msgstr "" - -#: cppexp.c:261 -#, c-format -msgid "invalid suffix \"%.*s\" on integer constant" -msgstr "" - -#: cppexp.c:283 -msgid "use of C99 long long integer constant" -msgstr "" - -#: cppexp.c:290 -msgid "imaginary constants are a GCC extension" -msgstr "" - -#: cppexp.c:376 -msgid "integer constant is too large for its type" -msgstr "" - -#: cppexp.c:388 -msgid "integer constant is so large that it is unsigned" -msgstr "" - -#: cppexp.c:470 -msgid "missing ')' after \"defined\"" -msgstr "" - -#: cppexp.c:477 -msgid "operator \"defined\" requires an identifier" -msgstr "" - -#: cppexp.c:485 -#, c-format -msgid "(\"%s\" is an alternative token for \"%s\" in C++)" -msgstr "" - -#: cppexp.c:495 -msgid "this use of \"defined\" may not be portable" -msgstr "" - -#: cppexp.c:534 -msgid "floating constant in preprocessor expression" -msgstr "" - -#: cppexp.c:540 -msgid "imaginary number in preprocessor expression" -msgstr "" - -#: cppexp.c:585 -#, c-format -msgid "\"%s\" is not defined" -msgstr "" - -#: cppexp.c:716 cppexp.c:745 -#, c-format -msgid "missing binary operator before token \"%s\"" -msgstr "" - -#: cppexp.c:736 -#, c-format -msgid "token \"%s\" is not valid in preprocessor expressions" -msgstr "" - -#: cppexp.c:755 -msgid "void expression between '(' and ')'" -msgstr "" - -#: cppexp.c:758 -msgid "#if with no expression" -msgstr "" - -#: cppexp.c:760 -#, c-format -msgid "operator '%s' has no right operand" -msgstr "" - -#: cppexp.c:786 -msgid " ':' without preceding '?'" -msgstr "" - -#: cppexp.c:813 -msgid "unbalanced stack in #if" -msgstr "" - -#: cppexp.c:832 -#, c-format -msgid "impossible operator '%u'" -msgstr "" - -#: cppexp.c:924 -msgid "missing ')' in expression" -msgstr "" - -#: cppexp.c:945 -msgid "'?' without following ':'" -msgstr "" - -#: cppexp.c:955 -msgid "integer overflow in preprocessor expression" -msgstr "" - -#: cppexp.c:960 -msgid "missing '(' in expression" -msgstr "" - -#: cppexp.c:992 -#, c-format -msgid "the left operand of \"%s\" changes sign when promoted" -msgstr "" - -#: cppexp.c:997 -#, c-format -msgid "the right operand of \"%s\" changes sign when promoted" -msgstr "" - -#: cppexp.c:1355 -msgid "comma operator in operand of #if" -msgstr "" - -#: cppexp.c:1487 -msgid "division by zero in #if" -msgstr "" - -#: cppfiles.c:406 -msgid "NULL directory in find_file" -msgstr "" - -#: cppfiles.c:436 -msgid "one or more PCH files were found, but they were invalid" -msgstr "" - -#: cppfiles.c:439 -msgid "use -Winvalid-pch for more information" -msgstr "" - -#: cppfiles.c:497 -#, c-format -msgid "%s is a block device" -msgstr "" - -#: cppfiles.c:514 -#, c-format -msgid "%s is too large" -msgstr "" - -#: cppfiles.c:549 -#, c-format -msgid "%s is shorter than expected" -msgstr "" - -#: cppfiles.c:752 -#, c-format -msgid "no include path in which to search for %s" -msgstr "" - -#: cppfiles.c:1028 -msgid "Multiple include guards may be useful for:\n" -msgstr "" - -#: cppinit.c:388 -msgid "cppchar_t must be an unsigned type" -msgstr "" - -#: cppinit.c:392 -#, c-format -msgid "" -"preprocessor arithmetic has maximum precision of %lu bits; target requires %" -"lu bits" -msgstr "" - -#: cppinit.c:399 -msgid "CPP arithmetic must be at least as precise as a target int" -msgstr "" - -#: cppinit.c:402 -msgid "target char is less than 8 bits wide" -msgstr "" - -#: cppinit.c:406 -msgid "target wchar_t is narrower than target char" -msgstr "" - -#: cppinit.c:410 -msgid "target int is narrower than target char" -msgstr "" - -#: cppinit.c:415 -msgid "CPP half-integer narrower than CPP character" -msgstr "" - -#: cppinit.c:419 -#, c-format -msgid "" -"CPP on this host cannot handle wide character constants over %lu bits, but " -"the target requires %lu bits" -msgstr "" - -#: cpplex.c:414 -msgid "null character(s) ignored" -msgstr "" - -#: cpplex.c:449 -msgid "'$' in identifier or number" -msgstr "" - -#: cpplex.c:496 -#, c-format -msgid "attempt to use poisoned \"%s\"" -msgstr "" - -#: cpplex.c:504 -msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro" -msgstr "" - -#: cpplex.c:600 -msgid "null character(s) preserved in literal" -msgstr "" - -#: cpplex.c:925 -msgid "unterminated comment" -msgstr "" - -#: cpplex.c:936 -msgid "C++ style comments are not allowed in ISO C90" -msgstr "" - -#: cpplex.c:938 -msgid "(this will be reported only once per input file)" -msgstr "" - -#: cpplex.c:943 -msgid "multi-line comment" -msgstr "" - -#: cpplex.c:1207 -#, c-format -msgid "unspellable token %s" -msgstr "" - -#: cpplib.c:218 -#, c-format -msgid "extra tokens at end of #%s directive" -msgstr "" - -#: cpplib.c:304 -#, c-format -msgid "#%s is a GCC extension" -msgstr "" - -#: cpplib.c:316 -msgid "suggest not using #elif in traditional C" -msgstr "" - -#: cpplib.c:319 -#, c-format -msgid "traditional C ignores #%s with the # indented" -msgstr "" - -#: cpplib.c:323 -#, c-format -msgid "suggest hiding #%s from traditional C with an indented #" -msgstr "" - -#: cpplib.c:345 -msgid "embedding a directive within macro arguments is not portable" -msgstr "" - -#: cpplib.c:365 -msgid "style of line directive is a GCC extension" -msgstr "" - -#: cpplib.c:415 -#, c-format -msgid "invalid preprocessing directive #%s" -msgstr "" - -#: cpplib.c:484 -msgid "\"defined\" cannot be used as a macro name" -msgstr "" - -#: cpplib.c:490 -#, c-format -msgid "\"%s\" cannot be used as a macro name as it is an operator in C++" -msgstr "" - -#: cpplib.c:493 -#, c-format -msgid "no macro name given in #%s directive" -msgstr "" - -#: cpplib.c:496 -msgid "macro names must be identifiers" -msgstr "" - -#: cpplib.c:537 -#, c-format -msgid "undefining \"%s\"" -msgstr "" - -#: cpplib.c:609 -msgid "missing terminating > character" -msgstr "" - -#: cpplib.c:662 -#, c-format -msgid "#%s expects \"FILENAME\" or " -msgstr "" - -#: cpplib.c:685 -msgid "#include nested too deeply" -msgstr "" - -#: cpplib.c:723 -msgid "#include_next in primary source file" -msgstr "" - -#: cpplib.c:749 -#, c-format -msgid "invalid flag \"%s\" in line directive" -msgstr "" - -#: cpplib.c:796 -#, c-format -msgid "\"%s\" after #line is not a positive integer" -msgstr "" - -#: cpplib.c:802 -msgid "line number out of range" -msgstr "" - -#: cpplib.c:815 cpplib.c:892 -#, c-format -msgid "\"%s\" is not a valid filename" -msgstr "" - -#: cpplib.c:852 -#, c-format -msgid "\"%s\" after # is not a positive integer" -msgstr "" - -#: cpplib.c:954 -msgid "invalid #ident directive" -msgstr "" - -#: cpplib.c:1034 -#, c-format -msgid "registering \"%s\" as both a pragma and a pragma namespace" -msgstr "" - -#: cpplib.c:1037 -#, c-format -msgid "#pragma %s %s is already registered" -msgstr "" - -#: cpplib.c:1040 -#, c-format -msgid "#pragma %s is already registered" -msgstr "" - -#: cpplib.c:1182 -msgid "#pragma once in main file" -msgstr "" - -#: cpplib.c:1205 -msgid "invalid #pragma GCC poison directive" -msgstr "" - -#: cpplib.c:1214 -#, c-format -msgid "poisoning existing macro \"%s\"" -msgstr "" - -#: cpplib.c:1235 -msgid "#pragma system_header ignored outside include file" -msgstr "" - -#: cpplib.c:1259 -#, c-format -msgid "cannot find source file %s" -msgstr "" - -#: cpplib.c:1263 -#, c-format -msgid "current file is older than %s" -msgstr "" - -#: cpplib.c:1376 -msgid "_Pragma takes a parenthesized string literal" -msgstr "" - -#: cpplib.c:1454 -msgid "#else without #if" -msgstr "" - -#: cpplib.c:1459 -msgid "#else after #else" -msgstr "" - -#: cpplib.c:1487 -msgid "#elif without #if" -msgstr "" - -#: cpplib.c:1492 -msgid "#elif after #else" -msgstr "" - -#: cpplib.c:1522 -msgid "#endif without #if" -msgstr "" - -#: cpplib.c:1599 -msgid "missing '(' after predicate" -msgstr "" - -#: cpplib.c:1614 -msgid "missing ')' to complete answer" -msgstr "" - -#: cpplib.c:1634 -msgid "predicate's answer is empty" -msgstr "" - -#: cpplib.c:1661 -msgid "assertion without predicate" -msgstr "" - -#: cpplib.c:1663 -msgid "predicate must be an identifier" -msgstr "" - -#: cpplib.c:1747 -#, c-format -msgid "\"%s\" re-asserted" -msgstr "" - -#: cppmacro.c:126 cppmacro.c:282 -#, c-format -msgid "invalid built-in macro \"%s\"" -msgstr "" - -#: cppmacro.c:223 -msgid "could not determine date and time" -msgstr "" - -#: cppmacro.c:395 -msgid "invalid string literal, ignoring final '\\'" -msgstr "" - -#: cppmacro.c:478 -#, c-format -msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token" -msgstr "" - -#: cppmacro.c:516 -msgid "ISO C99 requires rest arguments to be used" -msgstr "" - -#: cppmacro.c:521 -#, c-format -msgid "macro \"%s\" requires %u arguments, but only %u given" -msgstr "" - -#: cppmacro.c:526 -#, c-format -msgid "macro \"%s\" passed %u arguments, but takes just %u" -msgstr "" - -#: cppmacro.c:637 -#, c-format -msgid "unterminated argument list invoking macro \"%s\"" -msgstr "" - -#: cppmacro.c:740 -#, c-format -msgid "function-like macro \"%s\" must be used with arguments in traditional C" -msgstr "" - -#: cppmacro.c:1247 -#, c-format -msgid "duplicate macro parameter \"%s\"" -msgstr "" - -#: cppmacro.c:1292 -#, c-format -msgid "\"%s\" may not appear in macro parameter list" -msgstr "" - -#: cppmacro.c:1300 -msgid "macro parameters must be comma-separated" +#: convert.c:737 +msgid "pointer value used where a complex was expected" msgstr "" -#: cppmacro.c:1317 -msgid "parameter name missing" +#: convert.c:741 +msgid "aggregate value used where a complex was expected" msgstr "" -#: cppmacro.c:1334 -msgid "anonymous variadic macros were introduced in C99" +#: convert.c:763 +msgid "can't convert value to a vector" msgstr "" -#: cppmacro.c:1339 -msgid "ISO C does not permit named variadic macros" +#: coverage.c:168 +#, c-format +msgid "%qs is not a gcov data file" msgstr "" -#: cppmacro.c:1348 -msgid "missing ')' in macro parameter list" +#: coverage.c:179 +msgid "%qs is version %q.*s, expected version %q.*s" msgstr "" -#: cppmacro.c:1411 -msgid "ISO C requires whitespace after the macro name" +#: coverage.c:259 coverage.c:267 +#, c-format +msgid "coverage mismatch for function %u while reading execution counters." msgstr "" -#: cppmacro.c:1439 -msgid "'#' is not followed by a macro parameter" +#: coverage.c:261 coverage.c:344 +#, c-format +msgid "checksum is %x instead of %x" msgstr "" -#: cppmacro.c:1458 -msgid "'##' cannot appear at either end of a macro expansion" +#: coverage.c:269 coverage.c:352 +#, c-format +msgid "number of counters is %d instead of %d" msgstr "" -#: cppmacro.c:1597 +#: coverage.c:275 #, c-format -msgid "macro argument \"%s\" would be stringified in traditional C" +msgid "cannot merge separate %s counters for function %u" msgstr "" -#: cppmacro.c:1620 +#: coverage.c:296 #, c-format -msgid "invalid hash type %d in cpp_macro_definition" +msgid "%qs has overflowed" msgstr "" -#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365 cpppch.c:371 -msgid "while writing precompiled header" +#: coverage.c:296 +#, c-format +msgid "%qs is corrupted" msgstr "" -#: cpppch.c:469 +#: coverage.c:333 #, c-format -msgid "%s: not used because `%.*s' not defined" +msgid "no coverage for function %qs found." msgstr "" -#: cpppch.c:481 +#: coverage.c:341 coverage.c:349 #, c-format -msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'" +msgid "coverage mismatch for function %qs while reading counter %qs." msgstr "" -#: cpppch.c:522 +#: coverage.c:532 #, c-format -msgid "%s: not used because `%s' is defined" +msgid "cannot open %s" msgstr "" -#: cpppch.c:535 cpppch.c:722 -msgid "while reading precompiled header" +#: coverage.c:567 +#, c-format +msgid "error writing %qs" msgstr "" #: cppspec.c:106 @@ -4840,161 +4240,128 @@ msgstr "" msgid "too many input files" msgstr "" -#: cpptrad.c:744 -#, c-format -msgid "detected recursion whilst expanding macro \"%s\"" -msgstr "" - -#: cpptrad.c:911 -msgid "syntax error in macro parameter list" -msgstr "" - -#: cse.c:6953 +#: cse.c:6729 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr "" -#: diagnostic.c:209 +#: diagnostic.c:208 #, c-format msgid "%s:%d: confused by earlier errors, bailing out\n" msgstr "" -#: diagnostic.c:270 +#: diagnostic.c:268 msgid "compilation terminated due to -Wfatal-errors.\n" msgstr "" -#: diagnostic.c:286 +#: diagnostic.c:284 msgid "compilation terminated.\n" msgstr "" -#: diagnostic.c:577 +#: diagnostic.c:579 msgid "Internal compiler error: Error reporting routines re-entered.\n" msgstr "" -#: diagnostic.c:589 +#: diagnostic.c:591 #, c-format msgid "in %s, at %s:%d" msgstr "" -#: dominance.c:774 +#: dominance.c:810 #, c-format msgid "dominator of %d should be %d, not %d" msgstr "" -#: dwarf2out.c:3264 +#: dominance.c:823 +#, c-format +msgid "ENTRY does not dominate bb %d" +msgstr "" + +#: dwarf2out.c:3362 #, c-format msgid "DW_LOC_OP %s not implemented\n" msgstr "" -#: emit-rtl.c:1095 +#: emit-rtl.c:1178 msgid "can't access real part of complex value in hard register" msgstr "" -#: emit-rtl.c:1122 +#: emit-rtl.c:1205 msgid "can't access imaginary part of complex value in hard register" msgstr "" -#: emit-rtl.c:2245 +#: emit-rtl.c:2266 msgid "Invalid rtl sharing found in the insn" msgstr "" -#: emit-rtl.c:2247 +#: emit-rtl.c:2268 msgid "Shared rtx" msgstr "" -#: emit-rtl.c:3384 +#: emit-rtl.c:2270 +msgid "Internal consistency failure" +msgstr "" + +#: emit-rtl.c:3417 msgid "ICE: emit_insn used where emit_jump_insn needed:\n" msgstr "" -#: errors.c:129 +#: errors.c:133 java/jv-scan.c:268 #, c-format msgid "abort in %s, at %s:%d" msgstr "" -#: except.c:351 +#: except.c:346 msgid "exception handling disabled, use -fexceptions to enable" msgstr "" -#: except.c:3299 -msgid "argument of `__builtin_eh_return_regno' must be constant" +#: except.c:2924 +msgid "argument of %<__builtin_eh_return_regno%> must be constant" msgstr "" -#: except.c:3430 +#: except.c:3055 msgid "__builtin_eh_return not supported on this target" msgstr "" -#: explow.c:1393 +#: explow.c:1351 msgid "stack limits not supported on this target" msgstr "" -#: expr.c:6513 -msgid "%Jprior parameter's size depends on '%D'" -msgstr "" - -#: expr.c:6822 -msgid "returned value in block_exit_expr" -msgstr "" - -#. We can't make a bitwise copy of this object, so fail. -#: expr.c:9049 -msgid "cannot take the address of an unaligned member" -msgstr "" - -#: expr.c:9307 -#, c-format -msgid "case label value %d is less than minimum value for type" -msgstr "" - -#: expr.c:9316 -#, c-format -msgid "case label value %d exceeds maximum value for type" -msgstr "" - -#: expr.c:9325 -#, c-format -msgid "lower value %d in case label range less than minimum value for type" -msgstr "" - -#: expr.c:9334 -#, c-format -msgid "upper value %d in case label range exceeds maximum value for type" -msgstr "" - -#: final.c:1061 +#: final.c:1059 msgid "negative insn length" msgstr "" -#: final.c:2508 +#: final.c:2499 msgid "could not split insn" msgstr "" -#: final.c:2850 +#: final.c:2834 msgid "invalid `asm': " msgstr "" -#: final.c:3033 +#: final.c:3017 msgid "nested assembly dialect alternatives" msgstr "" -#: final.c:3050 final.c:3062 +#: final.c:3034 final.c:3046 msgid "unterminated assembly dialect alternative" msgstr "" -#: final.c:3106 +#: final.c:3093 #, c-format msgid "operand number missing after %%-letter" msgstr "" -#: final.c:3109 final.c:3148 +#: final.c:3096 final.c:3137 msgid "operand number out of range" msgstr "" -#: final.c:3167 +#: final.c:3156 #, c-format msgid "invalid %%-code" msgstr "" -#: final.c:3197 +#: final.c:3186 #, c-format msgid "`%%l' operand isn't a label" msgstr "" @@ -5005,164 +4372,173 @@ msgstr "" #. handle them. #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3299 vmsdbgout.c:486 config/i386/i386.c:6802 +#: final.c:3288 vmsdbgout.c:487 config/i386/i386.c:5831 #: config/pdp11/pdp11.c:1690 msgid "floating constant misused" msgstr "" -#: final.c:3355 vmsdbgout.c:543 config/i386/i386.c:6880 +#: final.c:3344 vmsdbgout.c:544 config/i386/i386.c:5909 #: config/pdp11/pdp11.c:1737 msgid "invalid expression as operand" msgstr "" -#: flow.c:1563 +#: flow.c:494 flow.c:518 flow.c:539 +msgid "internal consistency failure" +msgstr "" + +#: flow.c:1557 msgid "Attempt to delete prologue/epilogue insn:" msgstr "" -#: fold-const.c:2955 fold-const.c:2968 +#: fold-const.c:3186 fold-const.c:3197 #, c-format msgid "comparison is always %d due to width of bit-field" msgstr "" -#: fold-const.c:4170 fold-const.c:4187 +#: fold-const.c:4756 fold-const.c:4771 #, c-format msgid "comparison is always %d" msgstr "" -#: fold-const.c:4318 -msgid "`or' of unmatched not-equal tests is always 1" +#: fold-const.c:4900 +msgid "% of unmatched not-equal tests is always 1" msgstr "" -#: fold-const.c:4323 -msgid "`and' of mutually exclusive equal-tests is always 0" +#: fold-const.c:4905 +msgid "% of mutually exclusive equal-tests is always 0" msgstr "" -#: fold-const.c:8603 +#: fold-const.c:9025 msgid "fold check: original tree changed by fold" msgstr "" -#: function.c:866 varasm.c:1426 -msgid "%Jsize of variable '%D' is too large" +#: function.c:834 varasm.c:1551 +msgid "%Jsize of variable %qD is too large" msgstr "" -#: function.c:3741 -msgid "impossible constraint in `asm'" +#: function.c:1435 +msgid "impossible constraint in %" msgstr "" -#: function.c:5653 -msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" +#: function.c:3457 +msgid "%Jvariable %qD might be clobbered by % or %" msgstr "" -#: function.c:5673 -msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" +#: function.c:3478 +msgid "%Jargument %qD might be clobbered by % or %" msgstr "" -#: function.c:6280 +#: function.c:3869 msgid "function returns an aggregate" msgstr "" -#: function.c:6617 -msgid "%Junused parameter '%D'" +#: function.c:4202 +msgid "%Junused parameter %qD" msgstr "" -#: gcc.c:1234 +#: gcc.c:1240 #, c-format msgid "ambiguous abbreviation %s" msgstr "" -#: gcc.c:1261 +#: gcc.c:1267 #, c-format msgid "incomplete `%s' option" msgstr "" -#: gcc.c:1272 +#: gcc.c:1278 #, c-format msgid "missing argument to `%s' option" msgstr "" -#: gcc.c:1285 +#: gcc.c:1291 #, c-format msgid "extraneous argument to `%s' option" msgstr "" -#: gcc.c:1620 +#: gcc.c:1635 msgid "Using built-in specs.\n" msgstr "" -#: gcc.c:1805 +#: gcc.c:1823 #, c-format msgid "" "Setting spec %s to '%s'\n" "\n" msgstr "" -#: gcc.c:1914 +#: gcc.c:1932 #, c-format msgid "Reading specs from %s\n" msgstr "" -#: gcc.c:2010 gcc.c:2029 +#: gcc.c:2028 gcc.c:2047 #, c-format msgid "specs %%include syntax malformed after %ld characters" msgstr "" -#: gcc.c:2037 +#: gcc.c:2055 #, c-format msgid "could not find specs file %s\n" msgstr "" -#: gcc.c:2054 gcc.c:2062 gcc.c:2071 gcc.c:2080 +#: gcc.c:2072 gcc.c:2080 gcc.c:2089 gcc.c:2098 #, c-format msgid "specs %%rename syntax malformed after %ld characters" msgstr "" -#: gcc.c:2089 +#: gcc.c:2107 #, c-format msgid "specs %s spec was not found to be renamed" msgstr "" -#: gcc.c:2096 +#: gcc.c:2114 #, c-format msgid "%s: attempt to rename spec '%s' to already defined spec '%s'" msgstr "" -#: gcc.c:2101 +#: gcc.c:2119 #, c-format msgid "rename spec %s to %s\n" msgstr "" -#: gcc.c:2103 +#: gcc.c:2121 #, c-format msgid "" "spec is '%s'\n" "\n" msgstr "" -#: gcc.c:2116 +#: gcc.c:2134 #, c-format msgid "specs unknown %% command after %ld characters" msgstr "" -#: gcc.c:2127 gcc.c:2140 +#: gcc.c:2145 gcc.c:2158 #, c-format msgid "specs file malformed after %ld characters" msgstr "" -#: gcc.c:2193 +#: gcc.c:2211 msgid "spec file has no spec for linking" msgstr "" -#: gcc.c:2706 +#: gcc.c:2633 +#, c-format +msgid "system path `%s' is not absolute" +msgstr "" + +#: gcc.c:2696 msgid "-pipe not supported" msgstr "" -#: gcc.c:2768 +#: gcc.c:2758 msgid "" "\n" "Go ahead? (y or n) " msgstr "" -#: gcc.c:2894 +#: gcc.c:2883 #, c-format msgid "" "Internal error: %s (program %s)\n" @@ -5170,189 +4546,189 @@ msgid "" "See %s for instructions." msgstr "" -#: gcc.c:2912 +#: gcc.c:2901 #, c-format msgid "# %s %.2f %.2f\n" msgstr "" -#: gcc.c:3048 +#: gcc.c:3031 #, c-format msgid "Usage: %s [options] file...\n" msgstr "" -#: gcc.c:3049 +#: gcc.c:3032 msgid "Options:\n" msgstr "" -#: gcc.c:3051 +#: gcc.c:3034 msgid " -pass-exit-codes Exit with highest error code from a phase\n" msgstr "" -#: gcc.c:3052 +#: gcc.c:3035 msgid " --help Display this information\n" msgstr "" -#: gcc.c:3053 +#: gcc.c:3036 msgid "" " --target-help Display target specific command line options\n" msgstr "" -#: gcc.c:3055 +#: gcc.c:3038 msgid " (Use '-v --help' to display command line options of sub-processes)\n" msgstr "" -#: gcc.c:3056 +#: gcc.c:3039 msgid " -dumpspecs Display all of the built in spec strings\n" msgstr "" -#: gcc.c:3057 +#: gcc.c:3040 msgid " -dumpversion Display the version of the compiler\n" msgstr "" -#: gcc.c:3058 +#: gcc.c:3041 msgid " -dumpmachine Display the compiler's target processor\n" msgstr "" -#: gcc.c:3059 +#: gcc.c:3042 msgid "" " -print-search-dirs Display the directories in the compiler's search " "path\n" msgstr "" -#: gcc.c:3060 +#: gcc.c:3043 msgid "" " -print-libgcc-file-name Display the name of the compiler's companion " "library\n" msgstr "" -#: gcc.c:3061 +#: gcc.c:3044 msgid " -print-file-name= Display the full path to library \n" msgstr "" -#: gcc.c:3062 +#: gcc.c:3045 msgid "" " -print-prog-name= Display the full path to compiler component " "\n" msgstr "" -#: gcc.c:3063 +#: gcc.c:3046 msgid "" " -print-multi-directory Display the root directory for versions of " "libgcc\n" msgstr "" -#: gcc.c:3064 +#: gcc.c:3047 msgid "" " -print-multi-lib Display the mapping between command line options " "and\n" " multiple library search directories\n" msgstr "" -#: gcc.c:3067 +#: gcc.c:3050 msgid " -print-multi-os-directory Display the relative path to OS libraries\n" msgstr "" -#: gcc.c:3068 +#: gcc.c:3051 msgid "" " -Wa, Pass comma-separated on to the " "assembler\n" msgstr "" -#: gcc.c:3069 +#: gcc.c:3052 msgid "" " -Wp, Pass comma-separated on to the " "preprocessor\n" msgstr "" -#: gcc.c:3070 +#: gcc.c:3053 msgid "" " -Wl, Pass comma-separated on to the linker\n" msgstr "" -#: gcc.c:3071 +#: gcc.c:3054 msgid " -Xassembler Pass on to the assembler\n" msgstr "" -#: gcc.c:3072 +#: gcc.c:3055 msgid " -Xpreprocessor Pass on to the preprocessor\n" msgstr "" -#: gcc.c:3073 +#: gcc.c:3056 msgid " -Xlinker Pass on to the linker\n" msgstr "" -#: gcc.c:3074 +#: gcc.c:3057 msgid "" " -combine Pass multiple source files to compiler at once\n" msgstr "" -#: gcc.c:3075 +#: gcc.c:3058 msgid " -save-temps Do not delete intermediate files\n" msgstr "" -#: gcc.c:3076 +#: gcc.c:3059 msgid " -pipe Use pipes rather than intermediate files\n" msgstr "" -#: gcc.c:3077 +#: gcc.c:3060 msgid " -time Time the execution of each subprocess\n" msgstr "" -#: gcc.c:3078 +#: gcc.c:3061 msgid "" " -specs= Override built-in specs with the contents of " "\n" msgstr "" -#: gcc.c:3079 +#: gcc.c:3062 msgid "" " -std= Assume that the input sources are for \n" msgstr "" -#: gcc.c:3080 +#: gcc.c:3063 msgid "" " -B Add to the compiler's search paths\n" msgstr "" -#: gcc.c:3081 +#: gcc.c:3064 msgid " -b Run gcc for target , if installed\n" msgstr "" -#: gcc.c:3082 +#: gcc.c:3065 msgid "" " -V Run gcc version number , if installed\n" msgstr "" -#: gcc.c:3083 +#: gcc.c:3066 msgid "" " -v Display the programs invoked by the compiler\n" msgstr "" -#: gcc.c:3084 +#: gcc.c:3067 msgid "" " -### Like -v but options quoted and commands not " "executed\n" msgstr "" -#: gcc.c:3085 +#: gcc.c:3068 msgid "" " -E Preprocess only; do not compile, assemble or " "link\n" msgstr "" -#: gcc.c:3086 +#: gcc.c:3069 msgid " -S Compile only; do not assemble or link\n" msgstr "" -#: gcc.c:3087 +#: gcc.c:3070 msgid " -c Compile and assemble, but do not link\n" msgstr "" -#: gcc.c:3088 +#: gcc.c:3071 msgid " -o Place the output into \n" msgstr "" -#: gcc.c:3089 +#: gcc.c:3072 msgid "" " -x Specify the language of the following input " "files\n" @@ -5363,7 +4739,7 @@ msgid "" "extension\n" msgstr "" -#: gcc.c:3096 +#: gcc.c:3079 #, c-format msgid "" "\n" @@ -5372,28 +4748,28 @@ msgid "" " other options on to these processes the -W options must be used.\n" msgstr "" -#: gcc.c:3216 +#: gcc.c:3199 #, c-format msgid "`-%c' option must have argument" msgstr "" -#: gcc.c:3238 +#: gcc.c:3221 #, c-format msgid "couldn't run `%s': %s" msgstr "" #. translate_options () has turned --version into -fversion. -#: gcc.c:3424 +#: gcc.c:3406 #, c-format msgid "%s (GCC) %s\n" msgstr "" -#: gcc.c:3426 gcov.c:424 java/gjavah.c:2310 java/jcf-dump.c:916 +#: gcc.c:3408 gcov.c:412 java/gjavah.c:2310 java/jcf-dump.c:916 #: java/jv-scan.c:126 msgid "(C)" msgstr "" -#: gcc.c:3427 java/gjavah.c:2311 java/jcf-dump.c:917 java/jv-scan.c:127 +#: gcc.c:3409 java/gjavah.c:2311 java/jcf-dump.c:917 java/jv-scan.c:127 #, c-format msgid "" "This is free software; see the source for copying conditions. There is NO\n" @@ -5401,70 +4777,91 @@ msgid "" "\n" msgstr "" -#: gcc.c:3528 +#: gcc.c:3510 msgid "argument to `-Xlinker' is missing" msgstr "" -#: gcc.c:3536 +#: gcc.c:3518 msgid "argument to `-Xpreprocessor' is missing" msgstr "" -#: gcc.c:3543 +#: gcc.c:3525 msgid "argument to `-Xassembler' is missing" msgstr "" -#: gcc.c:3550 +#: gcc.c:3532 msgid "argument to `-l' is missing" msgstr "" -#: gcc.c:3571 +#: gcc.c:3553 msgid "argument to `-specs' is missing" msgstr "" -#: gcc.c:3585 +#: gcc.c:3567 msgid "argument to `-specs=' is missing" msgstr "" -#: gcc.c:3622 +#: gcc.c:3604 #, c-format msgid "`-%c' must come at the start of the command line" msgstr "" -#: gcc.c:3631 +#: gcc.c:3613 msgid "argument to `-B' is missing" msgstr "" -#: gcc.c:3805 +#: gcc.c:3786 msgid "warning: -pipe ignored because -save-temps specified" msgstr "" -#: gcc.c:3809 +#: gcc.c:3790 msgid "warning: -pipe ignored because -time specified" msgstr "" -#: gcc.c:4021 +#: gcc.c:4002 msgid "argument to `-x' is missing" msgstr "" -#: gcc.c:4049 +#: gcc.c:4030 #, c-format msgid "argument to `-%s' is missing" msgstr "" -#: gcc.c:4110 +#: gcc.c:4091 #, c-format msgid "warning: `-x %s' after last input file has no effect" msgstr "" -#: gcc.c:4511 -msgid "invalid specification! Bug in cc" +#: gcc.c:4368 +#, c-format +msgid "switch '%s' does not start with '-'" +msgstr "" + +#: gcc.c:4595 +#, c-format +msgid "spec '%s' invalid" msgstr "" -#: gcc.c:4665 +#: gcc.c:4661 #, c-format msgid "%s\n" msgstr "" +#: gcc.c:4734 +#, c-format +msgid "spec '%s' has invalid `%%0%c'" +msgstr "" + +#: gcc.c:4931 +#, c-format +msgid "spec `%s' has invalid `%%W%c" +msgstr "" + +#: gcc.c:4962 +#, c-format +msgid "spec `%s' has invalid `%%x%c'" +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 :. @@ -5511,154 +4908,186 @@ msgstr "" msgid "malformed spec function arguments" msgstr "" -#: gcc.c:6159 -msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC." +#: gcc.c:5655 +#, c-format +msgid "braced spec `%s' is invalid at `%c'" +msgstr "" + +#: gcc.c:5743 +#, c-format +msgid "braced spec body `%s' is invalid" msgstr "" #: gcc.c:6169 +msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC." +msgstr "" + +#: gcc.c:6179 msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC." msgstr "" -#: gcc.c:6262 +#: gcc.c:6272 #, c-format msgid "unrecognized option `-%s'" msgstr "" -#: gcc.c:6268 +#: gcc.c:6278 #, c-format msgid "install: %s%s\n" msgstr "" -#: gcc.c:6269 +#: gcc.c:6279 #, c-format msgid "programs: %s\n" msgstr "" -#: gcc.c:6270 +#: gcc.c:6280 #, c-format msgid "libraries: %s\n" msgstr "" -#: gcc.c:6327 +#: gcc.c:6337 #, c-format msgid "" "\n" "For bug reporting instructions, please see:\n" msgstr "" -#: gcc.c:6343 +#: gcc.c:6353 #, c-format msgid "Configured with: %s\n" msgstr "" -#: gcc.c:6357 +#: gcc.c:6367 #, c-format msgid "Thread model: %s\n" msgstr "" -#: gcc.c:6368 +#: gcc.c:6378 #, c-format msgid "gcc version %s\n" msgstr "" -#: gcc.c:6370 +#: gcc.c:6380 #, c-format msgid "gcc driver version %s executing gcc version %s\n" msgstr "" -#: gcc.c:6378 +#: gcc.c:6388 msgid "no input files" msgstr "" -#: gcc.c:6449 gcc.c:6512 +#: gcc.c:6459 gcc.c:6522 #, c-format msgid "%s: %s compiler not installed on this system" msgstr "" -#: gcc.c:6595 +#: gcc.c:6468 +#, c-format +msgid "spec `%s' is invalid" +msgstr "" + +#: gcc.c:6605 #, c-format msgid "%s: linker input file unused because linking not done" msgstr "" -#: gcc.c:6635 +#: gcc.c:6645 #, c-format msgid "language %s not recognized" msgstr "" -#: gcc.c:6732 -msgid "internal gcc abort" +#: gcc.c:6716 +#, c-format +msgid "%s: %s" +msgstr "" + +#: gcc.c:6936 +#, c-format +msgid "multilib spec `%s' is invalid" msgstr "" -#: gcov.c:384 -msgid "Internal gcov abort.\n" +#: gcc.c:7128 +#, c-format +msgid "multilib exclusions `%s' is invalid" msgstr "" -#: gcov.c:397 +#: gcc.c:7186 gcc.c:7327 +#, c-format +msgid "multilib select `%s' is invalid" +msgstr "" + +#: gcc.c:7365 +#, c-format +msgid "multilib exclusion `%s' is invalid" +msgstr "" + +#: gcov.c:385 msgid "" "Usage: gcov [OPTION]... SOURCEFILE\n" "\n" msgstr "" -#: gcov.c:398 +#: gcov.c:386 msgid "" "Print code coverage information.\n" "\n" msgstr "" -#: gcov.c:399 +#: gcov.c:387 msgid " -h, --help Print this help, then exit\n" msgstr "" -#: gcov.c:400 +#: gcov.c:388 msgid " -v, --version Print version number, then exit\n" msgstr "" -#: gcov.c:401 +#: gcov.c:389 msgid "" " -a, --all-blocks Show information for every basic block\n" msgstr "" -#: gcov.c:402 +#: gcov.c:390 msgid "" " -b, --branch-probabilities Include branch probabilities in output\n" msgstr "" -#: gcov.c:403 +#: gcov.c:391 msgid "" " -c, --branch-counts Given counts of branches taken\n" " rather than percentages\n" msgstr "" -#: gcov.c:405 +#: gcov.c:393 msgid " -n, --no-output Do not create an output file\n" msgstr "" -#: gcov.c:406 +#: gcov.c:394 msgid "" " -l, --long-file-names Use long output file names for included\n" " source files\n" msgstr "" -#: gcov.c:408 +#: gcov.c:396 msgid " -f, --function-summaries Output summaries for each function\n" msgstr "" -#: gcov.c:409 +#: gcov.c:397 msgid "" " -o, --object-directory DIR|FILE Search for object files in DIR or called " "FILE\n" msgstr "" -#: gcov.c:410 +#: gcov.c:398 msgid " -p, --preserve-paths Preserve all pathname components\n" msgstr "" -#: gcov.c:411 +#: gcov.c:399 msgid "" " -u, --unconditional-branches Show unconditional branch counts too\n" msgstr "" -#: gcov.c:412 +#: gcov.c:400 #, c-format msgid "" "\n" @@ -5666,12 +5095,12 @@ msgid "" "%s.\n" msgstr "" -#: gcov.c:422 +#: gcov.c:410 #, c-format msgid "gcov (GCC) %s\n" msgstr "" -#: gcov.c:426 +#: gcov.c:414 msgid "" "This is free software; see the source for copying conditions.\n" "There is NO warranty; not even for MERCHANTABILITY or \n" @@ -5679,467 +5108,471 @@ msgid "" "\n" msgstr "" -#: gcov.c:516 +#: gcov.c:504 #, c-format msgid "%s:no functions found\n" msgstr "" -#: gcov.c:537 gcov.c:565 +#: gcov.c:525 gcov.c:553 msgid "\n" msgstr "" -#: gcov.c:552 +#: gcov.c:540 #, c-format msgid "%s:creating `%s'\n" msgstr "" -#: gcov.c:556 +#: gcov.c:544 #, c-format msgid "%s:error writing output file `%s'\n" msgstr "" -#: gcov.c:561 +#: gcov.c:549 #, c-format msgid "%s:could not open output file `%s'\n" msgstr "" -#: gcov.c:712 +#: gcov.c:700 #, c-format msgid "%s:cannot open graph file\n" msgstr "" -#: gcov.c:718 +#: gcov.c:706 #, c-format msgid "%s:not a gcov graph file\n" msgstr "" -#: gcov.c:731 +#: gcov.c:719 #, c-format msgid "%s:version `%.4s', prefer `%.4s'\n" msgstr "" -#: gcov.c:783 +#: gcov.c:771 #, c-format msgid "%s:already seen blocks for `%s'\n" msgstr "" -#: gcov.c:904 gcov.c:1063 +#: gcov.c:889 gcov.c:1045 #, c-format msgid "%s:corrupted\n" msgstr "" -#: gcov.c:977 +#: gcov.c:963 #, c-format msgid "%s:cannot open data file\n" msgstr "" -#: gcov.c:982 +#: gcov.c:968 #, c-format msgid "%s:not a gcov data file\n" msgstr "" -#: gcov.c:995 +#: gcov.c:981 #, c-format msgid "%s:version `%.4s', prefer version `%.4s'\n" msgstr "" -#: gcov.c:1001 +#: gcov.c:987 #, c-format msgid "%s:stamp mismatch with graph file\n" msgstr "" -#: gcov.c:1027 +#: gcov.c:1013 #, c-format msgid "%s:unknown function `%u'\n" msgstr "" -#: gcov.c:1040 +#: gcov.c:1026 #, c-format msgid "%s:profile mismatch for `%s'\n" msgstr "" -#: gcov.c:1063 +#: gcov.c:1045 #, c-format msgid "%s:overflowed\n" msgstr "" -#: gcov.c:1086 +#: gcov.c:1069 #, c-format msgid "%s:`%s' lacks entry and/or exit blocks\n" msgstr "" -#: gcov.c:1091 +#: gcov.c:1074 #, c-format msgid "%s:`%s' has arcs to entry block\n" msgstr "" -#: gcov.c:1099 +#: gcov.c:1082 #, c-format msgid "%s:`%s' has arcs from exit block\n" msgstr "" -#: gcov.c:1307 +#: gcov.c:1290 #, c-format msgid "%s:graph is unsolvable for `%s'\n" msgstr "" -#: gcov.c:1387 +#: gcov.c:1370 #, c-format msgid "%s `%s'\n" msgstr "" -#: gcov.c:1390 +#: gcov.c:1373 #, c-format msgid "Lines executed:%s of %d\n" msgstr "" -#: gcov.c:1394 -msgid "No executable lines" +#: gcov.c:1377 +msgid "No executable lines\n" msgstr "" -#: gcov.c:1400 +#: gcov.c:1383 #, c-format msgid "Branches executed:%s of %d\n" msgstr "" -#: gcov.c:1404 +#: gcov.c:1387 #, c-format msgid "Taken at least once:%s of %d\n" msgstr "" -#: gcov.c:1410 +#: gcov.c:1393 msgid "No branches\n" msgstr "" -#: gcov.c:1412 +#: gcov.c:1395 #, c-format msgid "Calls executed:%s of %d\n" msgstr "" -#: gcov.c:1416 +#: gcov.c:1399 msgid "No calls\n" msgstr "" -#: gcov.c:1557 +#: gcov.c:1540 #, c-format msgid "%s:no lines for `%s'\n" msgstr "" -#: gcov.c:1752 +#: gcov.c:1735 #, c-format msgid "call %2d returned %s\n" msgstr "" -#: gcov.c:1757 +#: gcov.c:1740 #, c-format msgid "call %2d never executed\n" msgstr "" -#: gcov.c:1762 +#: gcov.c:1745 #, c-format msgid "branch %2d taken %s%s\n" msgstr "" -#: gcov.c:1766 +#: gcov.c:1749 #, c-format msgid "branch %2d never executed\n" msgstr "" -#: gcov.c:1771 +#: gcov.c:1754 #, c-format msgid "unconditional %2d taken %s\n" msgstr "" -#: gcov.c:1774 +#: gcov.c:1757 #, c-format msgid "unconditional %2d never executed\n" msgstr "" -#: gcov.c:1806 +#: gcov.c:1789 #, c-format msgid "%s:cannot open source file\n" msgstr "" -#: gcov.c:1816 +#: gcov.c:1799 #, 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:708 +#: gcse.c:711 msgid "GCSE disabled" msgstr "" #. Return if there's nothing to do, or it is too expensive. -#: gcse.c:6891 +#: gcse.c:6527 msgid "jump bypassing disabled" msgstr "" -#: gcse.c:6952 +#: gcse.c:6588 #, c-format msgid "%s: %d basic blocks and %d edges/basic block" msgstr "" -#: gcse.c:6965 +#: gcse.c:6601 #, c-format msgid "%s: %d basic blocks and %d registers" msgstr "" -#: ggc-common.c:400 ggc-common.c:408 ggc-common.c:476 ggc-common.c:496 -#: ggc-page.c:2220 ggc-page.c:2252 ggc-page.c:2259 ggc-zone.c:1387 -#: ggc-zone.c:1393 ggc-zone.c:1402 +#: ggc-common.c:397 ggc-common.c:405 ggc-common.c:473 ggc-common.c:494 +#: ggc-page.c:2196 ggc-page.c:2228 ggc-page.c:2235 ggc-zone.c:1582 +#: ggc-zone.c:1588 ggc-zone.c:1597 #, c-format msgid "can't write PCH file: %m" msgstr "" -#: ggc-common.c:489 +#: ggc-common.c:487 #, c-format msgid "can't get position in PCH file: %m" msgstr "" -#: ggc-common.c:499 +#: ggc-common.c:497 #, c-format msgid "can't write padding to PCH file: %m" msgstr "" -#: ggc-common.c:552 ggc-common.c:560 ggc-common.c:567 ggc-common.c:570 -#: ggc-common.c:580 ggc-common.c:583 ggc-page.c:2347 ggc-zone.c:1412 +#: ggc-common.c:550 ggc-common.c:558 ggc-common.c:565 ggc-common.c:568 +#: ggc-common.c:578 ggc-common.c:581 ggc-page.c:2322 ggc-zone.c:1607 #, c-format msgid "can't read PCH file: %m" msgstr "" -#: ggc-common.c:575 +#: ggc-common.c:573 msgid "had to relocate PCH" msgstr "" -#: ggc-page.c:1447 +#: ggc-page.c:1441 #, c-format msgid "open /dev/zero: %m" msgstr "" -#: ggc-page.c:2237 ggc-page.c:2243 +#: ggc-page.c:2213 ggc-page.c:2219 msgid "can't write PCH file" msgstr "" -#: gimplify.c:2746 +#: gimple-low.c:203 +msgid "unexpected node" +msgstr "" + +#: gimplify.c:3164 #, c-format msgid "invalid lvalue in asm output %d" msgstr "" -#: gimplify.c:2794 +#: gimplify.c:3212 #, c-format msgid "memory input %d is not directly addressable" msgstr "" -#: global.c:356 global.c:369 global.c:383 +#: gimplify.c:4065 +msgid "gimplification failed" +msgstr "" + +#: global.c:375 global.c:388 global.c:402 #, c-format msgid "%s cannot be used in asm here" msgstr "" -#: graph.c:403 passes.c:267 toplev.c:2499 java/jcf-parse.c:883 -#: java/jcf-parse.c:1029 java/lex.c:1828 objc/objc-act.c:501 +#: graph.c:399 passes.c:131 java/jcf-parse.c:907 java/jcf-parse.c:1065 +#: java/lex.c:1841 objc/objc-act.c:548 #, c-format msgid "can't open %s: %m" msgstr "" -#: haifa-sched.c:196 +#: haifa-sched.c:183 #, c-format msgid "fix_sched_param: unknown param: %s" msgstr "" -#: line-map.c:310 +#. Opening quotation mark. +#: intl.c:58 +msgid "`" +msgstr "" + +#. Closing quotation mark. +#: intl.c:61 +msgid "'" +msgstr "" + +#: langhooks.c:516 +msgid "At top level:" +msgstr "" + +#: langhooks.c:521 #, c-format -msgid "In file included from %s:%u" +msgid "In member function %qs:" msgstr "" -#. 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: -#. -#. 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:328 +#: langhooks.c:525 #, c-format -msgid "" -",\n" -" from %s:%u" +msgid "In function %qs:" msgstr "" #. What to print when a switch has no documentation. -#: opts.c:150 +#: opts.c:89 msgid "This switch lacks documentation" msgstr "" #. Eventually this should become a hard error IMO. -#: opts.c:319 +#: opts.c:259 #, c-format msgid "command line option \"%s\" is valid for %s but not for %s" msgstr "" -#: opts.c:407 +#: opts.c:347 #, c-format msgid "missing argument to \"%s\"" msgstr "" -#: opts.c:417 +#: opts.c:357 #, c-format msgid "argument to \"%s\" should be a non-negative integer" msgstr "" -#: opts.c:464 +#: opts.c:417 #, c-format msgid "unrecognized command line option \"%s\"" msgstr "" -#: opts.c:673 +#: opts.c:627 msgid "-Wuninitialized is not supported without -O" msgstr "" -#: opts.c:687 +#: opts.c:641 msgid "-freorder-blocks-and-partition does not work with exceptions" msgstr "" -#: opts.c:1429 +#: opts.c:654 +msgid "-freorder-blocks-and-partition does not work with -g (currently)" +msgstr "" + +#: opts.c:815 #, c-format -msgid "unrecognized register name \"%s\"" +msgid "structure alignment must be a small power of two, not %d" msgstr "" -#: opts.c:1473 +#: opts.c:878 #, c-format -msgid "unknown tls-model \"%s\"" +msgid "unrecognised visibility value \"%s\"" msgstr "" -#: opts.c:1538 -msgid "Andersen's PTA not available - libbanshee not compiled." +#: opts.c:930 +#, c-format +msgid "unrecognized register name \"%s\"" msgstr "" -#: opts.c:1544 +#: opts.c:950 #, c-format -msgid "`%s`: unknown points-to analysis algorithm" +msgid "unknown tls-model \"%s\"" msgstr "" -#: opts.c:1674 +#: opts.c:1025 #, c-format msgid "%s: --param arguments should be of the form NAME=VALUE" msgstr "" -#: opts.c:1679 +#: opts.c:1030 #, c-format msgid "invalid --param value `%s'" msgstr "" -#: opts.c:1775 +#: opts.c:1126 msgid "target system does not support debug output" msgstr "" -#: opts.c:1782 +#: opts.c:1133 #, c-format msgid "debug format \"%s\" conflicts with prior selection" msgstr "" -#: opts.c:1798 +#: opts.c:1149 #, c-format msgid "unrecognised debug output level \"%s\"" msgstr "" -#: opts.c:1800 +#: opts.c:1151 #, c-format msgid "debug output level %s is too high" msgstr "" -#: opts.c:1819 +#: opts.c:1170 msgid "The following options are language-independent:\n" msgstr "" -#: opts.c:1826 +#: opts.c:1177 #, c-format msgid "" "The %s front end recognizes the following options:\n" "\n" msgstr "" -#: opts.c:1840 +#: opts.c:1191 msgid "The --param option recognizes the following as parameters:\n" msgstr "" #. If we didn't find this parameter, issue an error message. #: params.c:76 #, c-format -msgid "invalid parameter `%s'" -msgstr "" - -#: passes.c:397 -msgid "%Hinvalid register name `%s' for register variable" +msgid "invalid parameter %qs" msgstr "" -#: passes.c:1783 +#: passes.c:1252 msgid "" "branch target register load optimization is not intended to be run twice" msgstr "" -#: profile.c:282 +#: profile.c:281 msgid "corrupted profile info: run_max * runs < sum_max" msgstr "" -#: profile.c:288 +#: profile.c:287 msgid "corrupted profile info: sum_all is smaller than sum_max" msgstr "" -#: profile.c:330 +#: profile.c:329 #, c-format msgid "corrupted profile info: edge from %i to %i exceeds maximal count" msgstr "" -#: profile.c:493 +#: profile.c:492 #, c-format msgid "" "corrupted profile info: number of iterations for basic block %d thought to " "be %i" msgstr "" -#: profile.c:514 +#: profile.c:513 #, 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:592 +#: protoize.c:582 #, c-format msgid "%s: error writing file `%s': %s\n" msgstr "" -#: protoize.c:636 +#: protoize.c:626 #, c-format msgid "%s: usage '%s [ -VqfnkN ] [ -i ] [ filename ... ]'\n" msgstr "" -#: protoize.c:639 +#: protoize.c:629 #, c-format msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B ] [ filename ... ]'\n" msgstr "" -#: protoize.c:745 +#: protoize.c:735 #, c-format msgid "%s: warning: no read access for file `%s'\n" msgstr "" -#: protoize.c:753 +#: protoize.c:743 #, c-format msgid "%s: warning: no write access for file `%s'\n" msgstr "" -#: protoize.c:761 +#: protoize.c:751 #, c-format msgid "%s: warning: no write access for dir containing `%s'\n" msgstr "" @@ -6147,776 +5580,757 @@ msgstr "" #. Catch cases like /.. where we try to backup to a #. point above the absolute root of the logical file #. system. -#: protoize.c:1148 +#: protoize.c:1138 #, c-format msgid "%s: invalid file name: %s\n" msgstr "" -#: protoize.c:1296 +#: protoize.c:1286 #, c-format msgid "%s: %s: can't get status: %s\n" msgstr "" -#: protoize.c:1317 +#: protoize.c:1307 #, c-format msgid "" "\n" "%s: fatal error: aux info file corrupted at line %d\n" msgstr "" -#: protoize.c:1646 +#: protoize.c:1636 #, c-format msgid "%s:%d: declaration of function `%s' takes different forms\n" msgstr "" -#: protoize.c:1901 +#: protoize.c:1891 #, c-format msgid "%s: compiling `%s'\n" msgstr "" -#: protoize.c:1924 +#: protoize.c:1914 #, c-format msgid "%s: wait: %s\n" msgstr "" -#: protoize.c:1929 +#: protoize.c:1919 #, c-format msgid "%s: subprocess got fatal signal %d\n" msgstr "" -#: protoize.c:1937 +#: protoize.c:1927 #, c-format msgid "%s: %s exited with status %d\n" msgstr "" -#: protoize.c:1986 +#: protoize.c:1976 #, c-format msgid "%s: warning: missing SYSCALLS file `%s'\n" msgstr "" -#: protoize.c:1995 protoize.c:2024 +#: protoize.c:1985 protoize.c:2014 #, c-format msgid "%s: can't read aux info file `%s': %s\n" msgstr "" -#: protoize.c:2040 protoize.c:2068 +#: protoize.c:2030 protoize.c:2058 #, c-format msgid "%s: can't get status of aux info file `%s': %s\n" msgstr "" -#: protoize.c:2096 +#: protoize.c:2086 #, c-format msgid "%s: can't open aux info file `%s' for reading: %s\n" msgstr "" -#: protoize.c:2114 +#: protoize.c:2104 #, c-format msgid "%s: error reading aux info file `%s': %s\n" msgstr "" -#: protoize.c:2127 +#: protoize.c:2117 #, c-format msgid "%s: error closing aux info file `%s': %s\n" msgstr "" -#: protoize.c:2143 +#: protoize.c:2133 #, c-format msgid "%s: can't delete aux info file `%s': %s\n" msgstr "" -#: protoize.c:2225 protoize.c:4195 +#: protoize.c:2215 protoize.c:4185 #, c-format msgid "%s: can't delete file `%s': %s\n" msgstr "" -#: protoize.c:2303 +#: protoize.c:2293 #, c-format msgid "%s: warning: can't rename file `%s' to `%s': %s\n" msgstr "" -#: protoize.c:2425 +#: protoize.c:2415 #, c-format msgid "%s: conflicting extern definitions of '%s'\n" msgstr "" -#: protoize.c:2429 +#: protoize.c:2419 #, c-format msgid "%s: declarations of '%s' will not be converted\n" msgstr "" -#: protoize.c:2431 +#: protoize.c:2421 #, c-format msgid "%s: conflict list for '%s' follows:\n" msgstr "" -#: protoize.c:2464 +#: protoize.c:2454 #, c-format msgid "%s: warning: using formals list from %s(%d) for function `%s'\n" msgstr "" -#: protoize.c:2504 +#: protoize.c:2494 #, c-format msgid "%s: %d: `%s' used but missing from SYSCALLS\n" msgstr "" -#: protoize.c:2510 +#: protoize.c:2500 #, c-format msgid "%s: %d: warning: no extern definition for `%s'\n" msgstr "" -#: protoize.c:2540 +#: protoize.c:2530 #, c-format msgid "%s: warning: no static definition for `%s' in file `%s'\n" msgstr "" -#: protoize.c:2546 +#: protoize.c:2536 #, c-format msgid "%s: multiple static defs of `%s' in file `%s'\n" msgstr "" -#: protoize.c:2716 protoize.c:2719 +#: protoize.c:2706 protoize.c:2709 #, c-format msgid "%s: %d: warning: source too confusing\n" msgstr "" -#: protoize.c:2915 +#: protoize.c:2905 #, c-format msgid "%s: %d: warning: varargs function declaration not converted\n" msgstr "" -#: protoize.c:2930 +#: protoize.c:2920 #, c-format msgid "%s: declaration of function `%s' not converted\n" msgstr "" -#: protoize.c:3053 +#: protoize.c:3043 #, c-format msgid "%s: warning: too many parameter lists in declaration of `%s'\n" msgstr "" -#: protoize.c:3074 +#: protoize.c:3064 #, c-format msgid "" "\n" "%s: warning: too few parameter lists in declaration of `%s'\n" msgstr "" -#: protoize.c:3170 +#: protoize.c:3160 #, c-format msgid "%s: %d: warning: found `%s' but expected `%s'\n" msgstr "" -#: protoize.c:3345 +#: protoize.c:3335 #, c-format msgid "%s: local declaration for function `%s' not inserted\n" msgstr "" -#: protoize.c:3372 +#: protoize.c:3362 #, c-format msgid "" "\n" "%s: %d: warning: can't add declaration of `%s' into macro call\n" msgstr "" -#: protoize.c:3444 +#: protoize.c:3434 #, c-format msgid "%s: global declarations for file `%s' not inserted\n" msgstr "" -#: protoize.c:3533 protoize.c:3563 +#: protoize.c:3523 protoize.c:3553 #, c-format msgid "%s: definition of function `%s' not converted\n" msgstr "" -#: protoize.c:3552 +#: protoize.c:3542 #, c-format msgid "%s: %d: warning: definition of %s not converted\n" msgstr "" -#: protoize.c:3878 +#: protoize.c:3868 #, 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:3894 +#: protoize.c:3884 #, c-format msgid "%s: %d: warning: `%s' excluded by preprocessing\n" msgstr "" -#: protoize.c:3897 +#: protoize.c:3887 #, c-format msgid "%s: function definition not converted\n" msgstr "" -#: protoize.c:3955 +#: protoize.c:3945 #, c-format msgid "%s: `%s' not converted\n" msgstr "" -#: protoize.c:3963 +#: protoize.c:3953 #, c-format msgid "%s: would convert file `%s'\n" msgstr "" -#: protoize.c:3966 +#: protoize.c:3956 #, c-format msgid "%s: converting file `%s'\n" msgstr "" -#: protoize.c:3976 +#: protoize.c:3966 #, c-format msgid "%s: can't get status for file `%s': %s\n" msgstr "" -#: protoize.c:4018 +#: protoize.c:4008 #, c-format msgid "%s: can't open file `%s' for reading: %s\n" msgstr "" -#: protoize.c:4033 +#: protoize.c:4023 #, c-format msgid "" "\n" "%s: error reading input file `%s': %s\n" msgstr "" -#: protoize.c:4067 +#: protoize.c:4057 #, c-format msgid "%s: can't create/open clean file `%s': %s\n" msgstr "" -#: protoize.c:4172 +#: protoize.c:4162 #, c-format msgid "%s: warning: file `%s' already saved in `%s'\n" msgstr "" -#: protoize.c:4180 +#: protoize.c:4170 #, c-format msgid "%s: can't link file `%s' to `%s': %s\n" msgstr "" -#: protoize.c:4210 +#: protoize.c:4200 #, c-format msgid "%s: can't create/open output file `%s': %s\n" msgstr "" -#: protoize.c:4243 +#: protoize.c:4233 #, c-format msgid "%s: can't change mode of file `%s': %s\n" msgstr "" -#: protoize.c:4416 +#: protoize.c:4406 #, c-format msgid "%s: cannot get working directory: %s\n" msgstr "" -#: protoize.c:4514 +#: protoize.c:4504 #, c-format msgid "%s: input file names must have .c suffixes: %s\n" msgstr "" -#: ra.c:750 +#: ra.c:772 msgid "Didn't find a coloring.\n" msgstr "" -#: reg-stack.c:672 +#: reg-stack.c:671 #, c-format msgid "output constraint %d must specify a single register" msgstr "" -#: reg-stack.c:682 +#: reg-stack.c:681 #, c-format msgid "output constraint %d cannot be specified together with \"%s\" clobber" msgstr "" -#: reg-stack.c:705 +#: reg-stack.c:704 msgid "output regs must be grouped at top of stack" msgstr "" -#: reg-stack.c:742 +#: reg-stack.c:741 msgid "implicitly popped regs must be grouped at top of stack" msgstr "" -#: reg-stack.c:761 +#: reg-stack.c:760 #, c-format msgid "output operand %d must use `&' constraint" msgstr "" -#: regclass.c:750 +#: regclass.c:770 #, c-format msgid "can't use '%s' as a %s register" msgstr "" -#: regclass.c:765 config/ia64/ia64.c:4686 config/ia64/ia64.c:4693 +#: regclass.c:785 config/ia64/ia64.c:4106 config/ia64/ia64.c:4113 +#: config/pa/pa.c:328 config/pa/pa.c:335 #, c-format msgid "unknown register name: %s" msgstr "" -#: regclass.c:775 +#: regclass.c:795 msgid "global register variable follows a function definition" msgstr "" -#: regclass.c:779 +#: regclass.c:799 msgid "register used for two global register variables" msgstr "" -#: regclass.c:784 +#: regclass.c:804 msgid "call-clobbered register used for global register variable" msgstr "" -#: regrename.c:1847 +#: regrename.c:1857 #, c-format msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)" msgstr "" -#: regrename.c:1859 +#: regrename.c:1869 #, c-format msgid "validate_value_data: Loop in regno chain (%u)" msgstr "" -#: regrename.c:1862 +#: regrename.c:1872 #, c-format msgid "validate_value_data: [%u] Bad oldest_regno (%u)" msgstr "" -#: regrename.c:1874 +#: regrename.c:1884 #, c-format msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)" msgstr "" -#: reload.c:1261 -msgid "cannot reload integer constant operand in `asm'" +#: reload.c:1257 +msgid "cannot reload integer constant operand in %" msgstr "" -#: reload.c:1283 -msgid "impossible register constraint in `asm'" +#: reload.c:1280 +msgid "impossible register constraint in %" msgstr "" -#: reload.c:3508 -msgid "`&' constraint used with no register class" +#: reload.c:3518 +msgid "%<&%> constraint used with no register class" msgstr "" -#: reload.c:3676 +#: reload.c:3684 msgid "unable to generate reloads for:" msgstr "" -#: reload.c:3677 reload.c:3889 -msgid "inconsistent operand constraints in an `asm'" +#: reload.c:3685 reload.c:3896 +msgid "inconsistent operand constraints in an %" msgstr "" -#: reload1.c:1226 +#: reload1.c:1221 msgid "frame size too large for reliable stack checking" msgstr "" -#: reload1.c:1229 +#: reload1.c:1224 msgid "try reducing the number of local variables" msgstr "" -#: reload1.c:1882 -#, c-format -msgid "can't find a register in class `%s' while reloading `asm'" +#: reload1.c:1874 +msgid "can't find a register in class %qs while reloading %" msgstr "" -#: reload1.c:1886 +#: reload1.c:1879 #, c-format -msgid "unable to find a register to spill in class `%s'" +msgid "unable to find a register to spill in class %qs" msgstr "" -#: reload1.c:1888 +#: reload1.c:1881 msgid "this is the insn:" msgstr "" -#: reload1.c:3908 -msgid "`asm' operand requires impossible reload" +#: reload1.c:3871 +msgid "% operand requires impossible reload" msgstr "" #. It's the compiler's fault. -#: reload1.c:5023 +#: reload1.c:4990 msgid "could not find a spill register" msgstr "" -#: reload1.c:5028 -msgid "`asm' operand constraint incompatible with operand size" +#: reload1.c:4995 +msgid "% operand constraint incompatible with operand size" msgstr "" #. It's the compiler's fault. -#: reload1.c:6650 +#: reload1.c:6613 msgid "VOIDmode on an output" msgstr "" -#: reload1.c:6651 -msgid "output operand is constant in `asm'" +#: reload1.c:6614 +msgid "output operand is constant in %" msgstr "" -#: rtl-error.c:124 +#: rtl-error.c:128 msgid "unrecognizable insn:" msgstr "" -#: rtl-error.c:126 +#: rtl-error.c:130 msgid "insn does not satisfy its constraints:" msgstr "" -#: rtl.c:484 +#: rtl.c:472 #, c-format msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:494 +#: rtl.c:482 #, c-format msgid "" "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d" msgstr "" -#: rtl.c:504 +#: rtl.c:492 #, c-format msgid "" "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %" "s:%d" msgstr "" -#: rtl.c:513 +#: rtl.c:501 #, c-format msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d" msgstr "" -#: rtl.c:523 +#: rtl.c:511 #, c-format msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d" msgstr "" -#: rtl.c:534 +#: rtl.c:522 #, c-format msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:545 +#: rtl.c:533 #, c-format msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d" msgstr "" -#: stmt.c:666 -#, c-format -msgid "jump to `%s' invalidly jumps into binding contour" -msgstr "" - -#: stmt.c:893 stmt.c:3647 -msgid "%Jlabel '%D' used before containing binding contour" +#: stmt.c:315 +msgid "output operand constraint lacks %<=%>" msgstr "" -#: stmt.c:1072 -msgid "output operand constraint lacks `='" -msgstr "" - -#: stmt.c:1087 +#: stmt.c:330 #, c-format -msgid "output constraint `%c' for operand %d is not at the beginning" +msgid "output constraint %qc for operand %d is not at the beginning" msgstr "" -#: stmt.c:1109 -msgid "operand constraint contains incorrectly positioned '+' or '='" +#: stmt.c:353 +msgid "operand constraint contains incorrectly positioned %<+%> or %<=%>" msgstr "" -#: stmt.c:1115 stmt.c:1214 -#, c-format -msgid "`%%' constraint used with last operand" +#: stmt.c:360 stmt.c:459 +msgid "%<%%%> constraint used with last operand" msgstr "" -#: stmt.c:1134 +#: stmt.c:379 msgid "matching constraint not valid in output operand" msgstr "" -#: stmt.c:1205 +#: stmt.c:450 #, c-format -msgid "input operand constraint contains `%c'" +msgid "input operand constraint contains %qc" msgstr "" -#: stmt.c:1247 +#: stmt.c:492 msgid "matching constraint references invalid operand number" msgstr "" -#: stmt.c:1285 +#: stmt.c:530 #, c-format -msgid "invalid punctuation `%c' in constraint" +msgid "invalid punctuation %qc in constraint" msgstr "" -#: stmt.c:1309 +#: stmt.c:554 msgid "matching constraint does not allow a register" msgstr "" -#: stmt.c:1364 +#: stmt.c:609 #, c-format -msgid "asm-specifier for variable `%s' conflicts with asm clobber list" +msgid "asm-specifier for variable %qs conflicts with asm clobber list" msgstr "" -#: stmt.c:1452 -#, c-format -msgid "unknown register name `%s' in `asm'" +#: stmt.c:698 +msgid "unknown register name %qs in %" msgstr "" -#: stmt.c:1460 -#, c-format -msgid "PIC register `%s' clobbered in `asm'" +#: stmt.c:706 +msgid "PIC register %qs clobbered in %" msgstr "" -#: stmt.c:1509 -#, c-format -msgid "more than %d operands in `asm'" +#: stmt.c:753 +msgid "more than %d operands in %" msgstr "" -#: stmt.c:1571 +#: stmt.c:816 #, c-format msgid "output number %d not directly addressable" msgstr "" -#: stmt.c:1649 -#, c-format -msgid "asm operand %d probably doesn't match constraints" +#: stmt.c:895 +msgid "asm operand %d probably doesn%'t match constraints" msgstr "" -#: stmt.c:1659 +#: stmt.c:905 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1813 +#: stmt.c:1051 msgid "asm clobber conflict with output operand" msgstr "" -#: stmt.c:1818 +#: stmt.c:1056 msgid "asm clobber conflict with input operand" msgstr "" -#: stmt.c:1898 -msgid "too many alternatives in `asm'" +#: stmt.c:1133 +msgid "too many alternatives in %" msgstr "" -#: stmt.c:1910 -msgid "operand constraints for `asm' differ in number of alternatives" +#: stmt.c:1145 +msgid "operand constraints for % differ in number of alternatives" msgstr "" -#: stmt.c:1962 +#: stmt.c:1198 #, c-format -msgid "duplicate asm operand name '%s'" +msgid "duplicate asm operand name %qs" msgstr "" -#: stmt.c:2060 +#: stmt.c:1296 msgid "missing close brace for named operand" msgstr "" -#: stmt.c:2088 +#: stmt.c:1324 #, c-format -msgid "undefined named operand '%s'" -msgstr "" - -#: stmt.c:2145 -msgid "%Hstatement with no effect" +msgid "undefined named operand %qs" msgstr "" -#: stmt.c:2301 +#: stmt.c:1491 msgid "%Hvalue computed is not used" msgstr "" -#: stmt.c:3599 -msgid "%Junused variable '%D'" -msgstr "" - -#: stmt.c:4407 -msgid "%Hunreachable code at beginning of %s" -msgstr "" - -#: stor-layout.c:170 -msgid "type size can't be explicitly evaluated" +#: stor-layout.c:152 +msgid "type size can%'t be explicitly evaluated" msgstr "" -#: stor-layout.c:172 +#: stor-layout.c:154 msgid "variable-size type declared outside of any function" msgstr "" -#: stor-layout.c:553 -msgid "%Jsize of '%D' is %d bytes" +#: stor-layout.c:458 +msgid "%Jsize of %qD is %d bytes" msgstr "" -#: stor-layout.c:555 -msgid "%Jsize of '%D' is larger than %d bytes" +#: stor-layout.c:460 +msgid "%Jsize of %qD is larger than %d bytes" msgstr "" -#: stor-layout.c:923 -msgid "%Jpacked attribute causes inefficient alignment for '%D'" +#: stor-layout.c:842 +msgid "%Jpacked attribute causes inefficient alignment for %qD" msgstr "" -#: stor-layout.c:926 -msgid "%Jpacked attribute is unnecessary for '%D'" +#: stor-layout.c:845 +msgid "%Jpacked attribute is unnecessary for %qD" msgstr "" -#: stor-layout.c:942 -msgid "%Jpadding struct to align '%D'" +#: stor-layout.c:861 +msgid "%Jpadding struct to align %qD" msgstr "" -#: stor-layout.c:1285 +#: stor-layout.c:1203 msgid "padding struct size to alignment boundary" msgstr "" -#: stor-layout.c:1315 +#: stor-layout.c:1233 #, c-format -msgid "packed attribute causes inefficient alignment for `%s'" +msgid "packed attribute causes inefficient alignment for %qs" msgstr "" -#: stor-layout.c:1317 +#: stor-layout.c:1236 #, c-format -msgid "packed attribute is unnecessary for `%s'" +msgid "packed attribute is unnecessary for %qs" msgstr "" -#: stor-layout.c:1322 +#: stor-layout.c:1241 msgid "packed attribute causes inefficient alignment" msgstr "" -#: stor-layout.c:1324 +#: stor-layout.c:1243 msgid "packed attribute is unnecessary" msgstr "" -#: targhooks.c:95 +#: targhooks.c:96 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:440 +#: timevar.c:432 msgid "" "\n" "Execution times (seconds)\n" msgstr "" #. Print total time. -#: timevar.c:490 +#: timevar.c:482 msgid " TOTAL :" msgstr "" -#: timevar.c:518 +#: timevar.c:510 #, c-format msgid "time in %s: %ld.%06ld (%ld%%)\n" msgstr "" -#: tlink.c:377 +#: tlink.c:381 #, c-format msgid "collect: reading %s\n" msgstr "" -#: tlink.c:478 +#: tlink.c:475 +#, c-format +msgid "repository file `%s' does not contain command-line arguments" +msgstr "" + +#: tlink.c:525 #, c-format msgid "collect: recompiling %s\n" msgstr "" -#: tlink.c:654 +#: tlink.c:696 +#, c-format +msgid "" +"`%s' was assigned to `%s', but was not defined during recompilation, or vice " +"versa" +msgstr "" + +#: tlink.c:705 #, c-format msgid "collect: tweaking %s in %s\n" msgstr "" -#: tlink.c:700 +#: tlink.c:751 #, c-format msgid "collect: relinking\n" msgstr "" -#: tlink.c:709 +#: tlink.c:760 #, c-format msgid "ld returned %d exit status" msgstr "" -#: toplev.c:1172 +#: toplev.c:470 #, c-format msgid "%s " msgstr "" -#: toplev.c:1174 +#: toplev.c:472 #, c-format msgid " %s" msgstr "" -#: toplev.c:1239 +#: toplev.c:537 #, c-format -msgid "invalid option argument `%s'" +msgid "invalid option argument %qs" +msgstr "" + +#: toplev.c:601 +msgid "unrecoverable error" msgstr "" -#: toplev.c:1302 +#: toplev.c:621 #, c-format msgid "getting core file size maximum limit: %m" msgstr "" -#: toplev.c:1305 +#: toplev.c:624 #, c-format msgid "setting core file size limit to maximum: %m" msgstr "" -#: toplev.c:1522 -msgid "%J'%F' used but never defined" -msgstr "" - -#: toplev.c:1524 -msgid "%J'%F' declared `static' but never defined" +#: toplev.c:845 +msgid "%J%qF declared % but never defined" msgstr "" -#: toplev.c:1549 -msgid "%J'%D' defined but not used" +#: toplev.c:871 +msgid "%J%qD defined but not used" msgstr "" -#: toplev.c:1570 toplev.c:1587 +#: toplev.c:894 toplev.c:917 #, c-format -msgid "`%s' is deprecated (declared at %s:%d)" +msgid "%qs is deprecated (declared at %s:%d)" msgstr "" -#: toplev.c:1590 +#: toplev.c:920 #, c-format -msgid "`%s' is deprecated" +msgid "type is deprecated (declared at %s:%d)" msgstr "" -#: toplev.c:1593 +#: toplev.c:926 #, c-format -msgid "type is deprecated (declared at %s:%d)" +msgid "%qs is deprecated" msgstr "" -#: toplev.c:1596 +#: toplev.c:928 msgid "type is deprecated" msgstr "" -#: toplev.c:1728 +#: toplev.c:1070 #, c-format msgid "" "\n" "Target specific options:\n" msgstr "" -#: toplev.c:1742 toplev.c:1761 +#: toplev.c:1084 toplev.c:1103 #, c-format msgid " -m%-23s [undocumented]\n" msgstr "" -#: toplev.c:1770 +#: toplev.c:1112 #, c-format msgid "" "\n" "There are undocumented target specific options as well.\n" msgstr "" -#: toplev.c:1772 +#: toplev.c:1114 #, c-format msgid " They exist, but they are not documented.\n" msgstr "" -#: toplev.c:1816 +#: toplev.c:1158 #, c-format msgid "unrecognized gcc debugging option: %c" msgstr "" -#: toplev.c:1878 config/rs6000/rs6000.c:1002 config/rs6000/rs6000.c:1013 +#: toplev.c:1220 #, c-format -msgid "invalid option `%s'" +msgid "invalid option %qs" msgstr "" -#: toplev.c:1893 +#: toplev.c:1235 #, c-format msgid "" "%s%s%s version %s (%s)\n" @@ -6924,593 +6338,668 @@ msgid "" "%s%s%s version %s (%s) compiled by CC.\n" msgstr "" -#: toplev.c:1900 +#: toplev.c:1242 #, c-format msgid "" "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n" msgstr "" -#: toplev.c:1952 +#: toplev.c:1294 msgid "options passed: " msgstr "" -#: toplev.c:1981 +#: toplev.c:1323 msgid "options enabled: " msgstr "" -#: toplev.c:2039 java/jcf-write.c:3433 -#, c-format -msgid "can't open %s for writing: %m" +#: toplev.c:1397 +msgid "can%'t open %s for writing: %m" msgstr "" -#: toplev.c:2122 config/sh/sh.c:7039 +#: toplev.c:1480 config/sh/sh.c:7263 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:2124 config/sh/sh.c:7041 +#: toplev.c:1482 config/sh/sh.c:7265 msgid "created and used with different settings of -fpie" msgstr "" -#: toplev.c:2175 config/sh/sh.c:7091 +#: toplev.c:1533 #, c-format -msgid "created and used with differing settings of `-m%s'" +msgid "created and used with differing settings of '-m%s'" msgstr "" -#: toplev.c:2178 config/sh/sh.c:7094 +#: toplev.c:1536 config/sh/sh.c:7318 msgid "out of memory" msgstr "" -#: toplev.c:2364 +#: toplev.c:1731 msgid "instruction scheduling not supported on this target machine" msgstr "" -#: toplev.c:2368 +#: toplev.c:1735 msgid "this target machine does not have delayed branches" msgstr "" -#: toplev.c:2372 -msgid "test-coverage not yet implemented in trees." -msgstr "" - -#: toplev.c:2374 +#: toplev.c:1739 msgid "value-based profiling not yet implemented in trees." msgstr "" -#: toplev.c:2387 +#: toplev.c:1752 #, c-format msgid "-f%sleading-underscore not supported on this target machine" msgstr "" -#: toplev.c:2460 +#: toplev.c:1826 #, c-format msgid "target system does not support the \"%s\" debug format" msgstr "" -#: toplev.c:2472 +#: toplev.c:1838 msgid "variable tracking requested, but useless unless producing debug info" msgstr "" -#: toplev.c:2475 +#: toplev.c:1841 msgid "variable tracking requested, but not supported by this debug format" msgstr "" -#: toplev.c:2506 +#: toplev.c:1865 +msgid "can%'t open %s: %m" +msgstr "" + +#: toplev.c:1872 msgid "-ffunction-sections not supported for this target" msgstr "" -#: toplev.c:2511 +#: toplev.c:1877 msgid "-fdata-sections not supported for this target" msgstr "" -#: toplev.c:2518 +#: toplev.c:1884 msgid "-ffunction-sections disabled; it makes profiling impossible" msgstr "" -#: toplev.c:2525 +#: toplev.c:1891 msgid "-fprefetch-loop-arrays not supported for this target" msgstr "" -#: toplev.c:2531 +#: toplev.c:1897 +msgid "-fspeculative-prefetching not supported for this target" +msgstr "" + +#: toplev.c:1903 msgid "" "-fprefetch-loop-arrays not supported for this target (try -march switches)" msgstr "" -#: toplev.c:2540 +#: toplev.c:1909 +msgid "" +"-fspeculative-prefetching not supported for this target (try -march switches)" +msgstr "" + +#: toplev.c:1918 msgid "-fprefetch-loop-arrays is not supported with -Os" msgstr "" -#: toplev.c:2546 +#: toplev.c:1924 msgid "-ffunction-sections may affect debugging on some targets" msgstr "" -#: toplev.c:2649 +#: toplev.c:2033 #, c-format msgid "error writing to %s: %m" msgstr "" -#: toplev.c:2651 java/jcf-parse.c:902 java/jcf-write.c:3440 +#: toplev.c:2035 java/jcf-parse.c:926 java/jcf-write.c:3524 #, c-format msgid "error closing %s: %m" msgstr "" -#: tree-cfg.c:1009 tree-cfg.c:1700 +#: tree-cfg.c:1127 tree-cfg.c:1827 tree-cfg.c:1829 msgid "%Hwill never be executed" msgstr "" -#: tree-cfg.c:3020 +#: tree-cfg.c:3096 msgid "SSA name in freelist but still referenced" msgstr "" -#: tree-cfg.c:3030 +#: tree-cfg.c:3106 msgid "GIMPLE register modified with BIT_FIELD_REF" msgstr "" -#: tree-cfg.c:3046 +#: tree-cfg.c:3126 msgid "address taken, but ADDRESSABLE bit not set" msgstr "" -#: tree-cfg.c:3055 +#: tree-cfg.c:3135 msgid "non-boolean used in condition" msgstr "" -#: tree-cfg.c:3078 -msgid "Invalid operand to unary operator" +#: tree-cfg.c:3192 +msgid "Invalid reference prefix." msgstr "" -#: tree-cfg.c:3128 tree-cfg.c:3137 -msgid "Invalid operand to binary operator" +#: tree-cfg.c:3257 +msgid "Is not a valid GIMPLE statement." msgstr "" -#: tree-cfg.c:3159 -msgid "Is not a valid GIMPLE statement." +#: tree-cfg.c:3277 +msgid "Statement marked for throw, but doesn%'t." +msgstr "" + +#: tree-cfg.c:3282 +msgid "Statement marked for throw in middle of block." msgstr "" -#: tree-cfg.c:3262 +#: tree-cfg.c:3382 msgid "PHI def is not a GIMPLE value" msgstr "" -#: tree-cfg.c:3278 tree-cfg.c:3293 +#: tree-cfg.c:3398 tree-cfg.c:3414 msgid "Incorrect sharing of tree nodes" msgstr "" -#: tree-cfg.c:3302 +#: tree-cfg.c:3423 msgid "verify_stmts failed." msgstr "" -#: tree-cfg.c:3322 +#: tree-cfg.c:3443 msgid "ENTRY_BLOCK has a statement list associated with it\n" msgstr "" -#: tree-cfg.c:3328 +#: tree-cfg.c:3449 msgid "EXIT_BLOCK has a statement list associated with it\n" msgstr "" -#: tree-cfg.c:3335 +#: tree-cfg.c:3456 #, c-format msgid "Fallthru to exit from bb %d\n" msgstr "" -#: tree-cfg.c:3351 +#: tree-cfg.c:3472 #, c-format msgid "Label %s to block does not match in bb %d\n" msgstr "" -#: tree-cfg.c:3360 +#: tree-cfg.c:3481 #, c-format msgid "Label %s has incorrect context in bb %d\n" msgstr "" -#: tree-cfg.c:3374 +#: tree-cfg.c:3495 #, c-format msgid "Control flow in the middle of basic block %d\n" msgstr "" -#: tree-cfg.c:3384 +#: tree-cfg.c:3505 #, c-format msgid "Label %s in the middle of basic block %d\n" msgstr "" -#: tree-cfg.c:3401 +#: tree-cfg.c:3522 #, c-format msgid "Fallthru edge after a control statement in bb %d \n" msgstr "" -#: tree-cfg.c:3416 +#: tree-cfg.c:3537 #, c-format msgid "Structured COND_EXPR at the end of bb %d\n" msgstr "" -#: tree-cfg.c:3429 tree-cfg.c:3467 tree-cfg.c:3479 tree-cfg.c:3522 +#: tree-cfg.c:3550 tree-cfg.c:3588 tree-cfg.c:3600 tree-cfg.c:3671 #, c-format msgid "Wrong outgoing edge flags at end of bb %d\n" msgstr "" -#: tree-cfg.c:3437 -#, c-format -msgid "`then' label does not match edge at end of bb %d\n" +#: tree-cfg.c:3558 +msgid "% label does not match edge at end of bb %d\n" msgstr "" -#: tree-cfg.c:3445 -#, c-format -msgid "`else' label does not match edge at end of bb %d\n" +#: tree-cfg.c:3566 +msgid "% label does not match edge at end of bb %d\n" msgstr "" -#: tree-cfg.c:3455 +#: tree-cfg.c:3576 #, c-format msgid "Explicit goto at end of bb %d\n" msgstr "" -#: tree-cfg.c:3484 +#: tree-cfg.c:3605 #, c-format msgid "Return edge does not point to exit in bb %d\n" msgstr "" -#: tree-cfg.c:3514 +#: tree-cfg.c:3638 +msgid "Found default case not at end of case vector" +msgstr "" + +#: tree-cfg.c:3644 +msgid "" +"Case labels not sorted:\n" +" " +msgstr "" + +#: tree-cfg.c:3655 +msgid "No default case found at end of case vector" +msgstr "" + +#: tree-cfg.c:3663 #, c-format msgid "Extra outgoing edge %d->%d\n" msgstr "" -#: tree-cfg.c:3536 +#: tree-cfg.c:3685 #, c-format msgid "Missing edge %i->%i\n" msgstr "" -#: tree-cfg.c:4511 -msgid "%Jfunction might be possible candidate for attribute `noreturn'" +#: tree-cfg.c:4845 +msgid "%Jfunction might be possible candidate for attribute %" msgstr "" -#: tree-cfg.c:4528 -msgid "%H`noreturn' function does return" +#: tree-cfg.c:4872 tree-cfg.c:4876 +msgid "%H% function does return" msgstr "" -#: tree-cfg.c:4546 +#: tree-cfg.c:4896 tree-cfg.c:4901 msgid "%Hcontrol reaches end of non-void function" msgstr "" -#: tree-dump.c:752 +#: tree-dump.c:845 #, c-format -msgid "could not open dump file `%s': %s" +msgid "could not open dump file %qs: %s" msgstr "" -#: tree-dump.c:851 -#, c-format -msgid "ignoring unknown option `%.*s' in `-fdump-%s'" +#: tree-dump.c:958 +msgid "ignoring unknown option %q.*s in %<-fdump-%s%>" msgstr "" -#: tree-inline.c:960 +#: tree-inline.c:943 msgid "" "%Jfunction '%F' can never be inlined because it uses alloca (override using " "the always_inline attribute)" msgstr "" -#: tree-inline.c:973 +#: tree-inline.c:955 msgid "%Jfunction '%F' can never be inlined because it uses setjmp" msgstr "" -#: tree-inline.c:987 +#: tree-inline.c:969 msgid "" "%Jfunction '%F' can never be inlined because it uses variable argument lists" msgstr "" -#: tree-inline.c:998 +#: tree-inline.c:980 msgid "" "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp " "exception handling" msgstr "" -#: tree-inline.c:1005 +#: tree-inline.c:987 msgid "%Jfunction '%F' can never be inlined because it uses non-local goto" msgstr "" -#: tree-inline.c:1021 +#: tree-inline.c:1003 msgid "" "%Jfunction '%F' can never be inlined because it contains a nested function" msgstr "" -#: tree-inline.c:1038 +#: tree-inline.c:1020 msgid "" "%Jfunction '%F' can never be inlined because it contains a computed goto" msgstr "" -#: tree-inline.c:1052 +#: tree-inline.c:1034 msgid "" "%Jfunction '%F' can never be inlined because it receives a non-local goto" msgstr "" -#: tree-inline.c:1073 +#: tree-inline.c:1056 msgid "" "%Jfunction '%F' can never be inlined because it uses variable sized variables" msgstr "" -#: tree-inline.c:1503 +#: tree-inline.c:1478 msgid "originally indirect function call not considered for inlining" msgstr "" -#: tree-inline.c:1513 tree-inline.c:1520 +#: tree-inline.c:1488 tree-inline.c:1495 msgid "%Jinlining failed in call to '%F': %s" msgstr "" -#: tree-inline.c:1514 tree-inline.c:1521 +#: tree-inline.c:1489 tree-inline.c:1496 msgid "called from here" msgstr "" -#: tree-mudflap.c:613 +#: tree-mudflap.c:750 msgid "mudflap checking not yet implemented for ARRAY_RANGE_REF" msgstr "" -#: tree-mudflap.c:812 -#, c-format -msgid "mudflap cannot handle variable-sized declaration `%s'" -msgstr "" - -#: tree-mudflap.c:861 +#: tree-mudflap.c:972 msgid "mudflap ran off end of BIND_EXPR body" msgstr "" -#: tree-mudflap.c:1025 +#: tree-mudflap.c:1163 #, c-format -msgid "mudflap cannot track lifetime of `%s'" +msgid "mudflap cannot track lifetime of %qs" msgstr "" #: tree-nomudflap.c:51 msgid "mudflap: this language is not supported" msgstr "" -#: tree-optimize.c:633 +#: tree-optimize.c:666 msgid "%Jsize of return value of '%D' is %u bytes" msgstr "" -#: tree-optimize.c:636 -msgid "%Jsize of return value of '%D' is larger than %wd bytes" +#: tree-optimize.c:669 +msgid "%Jsize of return value of '%D' is larger than %wd bytes" +msgstr "" + +#: tree-outof-ssa.c:613 tree-outof-ssa.c:628 tree-outof-ssa.c:642 +#: tree-outof-ssa.c:663 tree-outof-ssa.c:1036 tree-outof-ssa.c:1849 +#: tree-ssa-live.c:417 tree-ssa-live.c:1791 +msgid "SSA corruption" +msgstr "" + +#: tree-profile.c:103 tree-profile.c:119 tree-profile.c:135 tree-profile.c:152 +msgid "unimplemented functionality" +msgstr "" + +#: tree-ssa-operands.c:1186 +msgid "internal error" +msgstr "" + +#: tree-ssa.c:116 +msgid "Expected an SSA_NAME object" +msgstr "" + +#: tree-ssa.c:122 +msgid "Type mismatch between an SSA_NAME and its symbol." +msgstr "" + +#: tree-ssa.c:128 +msgid "Found an SSA_NAME that had been released into the free pool" +msgstr "" + +#: tree-ssa.c:134 +msgid "Found a virtual definition for a GIMPLE register" msgstr "" -#: tree-ssa.c:121 -msgid "Expected an SSA_NAME object" +#: tree-ssa.c:140 +msgid "Found a real definition for a non-register" msgstr "" -#: tree-ssa.c:128 +#: tree-ssa.c:169 #, c-format msgid "SSA_NAME created in two different blocks %i and %i" msgstr "" -#: tree-ssa.c:140 +#: tree-ssa.c:178 msgid "SSA_NAME_DEF_STMT is wrong" msgstr "" -#: tree-ssa.c:175 +#: tree-ssa.c:229 msgid "Missing definition" msgstr "" -#: tree-ssa.c:181 +#: tree-ssa.c:235 #, c-format msgid "Definition in block %i does not dominate use in block %i" msgstr "" -#: tree-ssa.c:189 +#: tree-ssa.c:243 +#, c-format +msgid "Definition in block %i follows the use" +msgstr "" + +#: tree-ssa.c:250 msgid "SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set" msgstr "" -#: tree-ssa.c:237 +#: tree-ssa.c:300 #, c-format msgid "Wrong edge %d->%d for PHI argument\n" msgstr "" -#: tree-ssa.c:244 +#: tree-ssa.c:307 #, c-format msgid "PHI argument flowing through dead edge %d->%d\n" msgstr "" -#: tree-ssa.c:251 +#: tree-ssa.c:314 #, c-format msgid "PHI argument duplicated for edge %d->%d\n" msgstr "" -#: tree-ssa.c:269 +#: tree-ssa.c:333 #, c-format msgid "No argument flowing through edge %d->%d\n" msgstr "" -#: tree-ssa.c:330 -msgid "Found a virtual definition for a GIMPLE register" +#: tree-ssa.c:378 +msgid "Non-addressable variable inside an alias set." msgstr "" -#: tree-ssa.c:344 -msgid "Found a real definition for a non-GIMPLE register" +#: tree-ssa.c:396 +msgid "Addressable variable that is an alias tag but is not in any alias set." msgstr "" -#: tree-ssa.c:368 -#, c-format -msgid "AUX pointer initialized for edge %d->%d\n" +#: tree-ssa.c:406 +msgid "verify_flow_insensitive_alias_info failed." +msgstr "" + +#: tree-ssa.c:443 +msgid "Dereferenced pointers should have a name or a type tag" +msgstr "" + +#: tree-ssa.c:452 +msgid "" +"Pointers with a memory tag, should have points-to sets or point to malloc" +msgstr "" + +#: tree-ssa.c:460 +msgid "Pointer escapes but its name tag is not call-clobbered." +msgstr "" + +#: tree-ssa.c:483 +msgid "Two pointers with different name tags and identical points-to sets" +msgstr "" + +#: tree-ssa.c:495 +msgid "verify_flow_sensitive_alias_info failed." msgstr "" -#: tree-ssa.c:397 tree-ssa.c:413 -msgid "Found a virtual use for a GIMPLE register" +#: tree-ssa.c:553 +msgid "Statement makes aliased stores, but has no V_MAY_DEFS" msgstr "" -#: tree-ssa.c:429 -msgid "Found a real use of a non-GIMPLE register" +#: tree-ssa.c:586 +#, c-format +msgid "AUX pointer initialized for edge %d->%d\n" msgstr "" -#: tree-ssa.c:445 +#: tree-ssa.c:665 msgid "verify_ssa failed." msgstr "" -#: tree-ssa.c:1005 +#: tree-ssa.c:1277 msgid "%H'%D' is used uninitialized in this function" msgstr "" -#: tree-ssa.c:1030 +#: tree-ssa.c:1302 msgid "%H'%D' may be used uninitialized in this function" msgstr "" -#: tree.c:4138 -msgid "arrays of functions are not meaningful" +#: tree-vectorizer.c:928 +msgid "no support for reduction/induction" msgstr "" -#: tree.c:4187 -msgid "function return type cannot be function" +#: tree-vectorizer.c:954 +msgid "unsupported defining stmt" msgstr "" -#: tree.c:5042 -msgid "invalid initializer for bit string" +#: tree.c:3093 +msgid "%Jfunction %qD definition is marked dllimport." msgstr "" -#: tree.c:5095 -#, c-format -msgid "tree check: expected %s, have %s in %s, at %s:%d" +#: tree.c:3101 +msgid "%Jvariable %qD definition is marked dllimport." msgstr "" -#: tree.c:5108 -#, c-format -msgid "tree check: expected %s or %s, have %s in %s, at %s:%d" +#: tree.c:3121 +msgid "%Jexternal linkage required for symbol %qD because of %qs attribute." msgstr "" -#: tree.c:5121 -#, c-format -msgid "tree check: expected %s, %s or %s; have %s in %s, at %s:%d" +#: tree.c:4261 +msgid "arrays of functions are not meaningful" msgstr "" -#: tree.c:5136 -#, c-format -msgid "tree check: expected %s, %s, %s or %s; have %s in %s, at %s:%d" +#: tree.c:4310 +msgid "function return type cannot be function" msgstr "" -#: tree.c:5151 +#: tree.c:5191 +msgid "invalid initializer for bit string" +msgstr "" + +#: tree.c:5269 #, c-format -msgid "tree check: expected %s, %s, %s, %s or %s; have %s in %s, at %s:%d" +msgid "tree check: expected %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:5165 +#: tree.c:5306 #, c-format -msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d" +msgid "tree check: expected none of %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:5178 +#: tree.c:5319 #, c-format -msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" +msgid "tree check: expected class %qc, have %qc (%s) in %s, at %s:%d" msgstr "" -#: tree.c:5190 +#: tree.c:5332 #, c-format -msgid "tree check: accessed elt %d of ephi_node with %d elts in %s, at %s:%d" +msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "" -#: tree.c:5202 +#: tree.c:5344 #, c-format msgid "tree check: accessed elt %d of phi_node with %d elts in %s, at %s:%d" msgstr "" -#: tree.c:5214 +#: tree.c:5356 #, c-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "" -#: varasm.c:435 +#: varasm.c:480 msgid "%J%D causes a section type conflict" msgstr "" -#: varasm.c:807 -msgid "%Jregister name not specified for '%D'" +#: varasm.c:900 +msgid "%Jregister name not specified for %qD" msgstr "" -#: varasm.c:809 -msgid "%Jinvalid register name for '%D'" +#: varasm.c:902 +msgid "%Jinvalid register name for %qD" msgstr "" -#: varasm.c:811 -msgid "%Jdata type of '%D' isn't suitable for a register" +#: varasm.c:904 +msgid "%Jdata type of %qD isn%'t suitable for a register" msgstr "" -#: varasm.c:814 -msgid "%Jregister specified for '%D' isn't suitable for data type" +#: varasm.c:907 +msgid "%Jregister specified for %qD isn%'t suitable for data type" msgstr "" -#: varasm.c:824 +#: varasm.c:917 msgid "global register variable has initial value" msgstr "" -#: varasm.c:827 -msgid "volatile register variables don't work as you might wish" -msgstr "" - -#: varasm.c:859 -msgid "%Jregister name given for non-register variable '%D'" +#: varasm.c:920 +msgid "volatile register variables don%'t work as you might wish" msgstr "" -#: varasm.c:1398 -msgid "%Jstorage size of `%D' isn't known" +#: varasm.c:953 +msgid "%Jregister name given for non-register variable %qD" msgstr "" -#: varasm.c:1452 +#: varasm.c:1574 msgid "" -"%Jalignment of '%D' is greater than maximum object file alignment. Using %d" +"%Jalignment of %qD is greater than maximum object file alignment. Using %d" msgstr "" -#: varasm.c:1498 +#: varasm.c:1623 msgid "thread-local COMMON data not implemented" msgstr "" -#: varasm.c:1523 +#: varasm.c:1648 msgid "" -"%Jrequested alignment for '%D' is greater than implemented alignment of %d" +"%Jrequested alignment for %qD is greater than implemented alignment of %d" msgstr "" -#: varasm.c:3584 +#: varasm.c:3725 msgid "initializer for integer value is too complicated" msgstr "" -#: varasm.c:3589 +#: varasm.c:3730 msgid "initializer for floating value is not a floating constant" msgstr "" -#: varasm.c:3655 +#: varasm.c:3796 msgid "unknown set constructor type" msgstr "" -#: varasm.c:3874 +#: varasm.c:4015 #, c-format -msgid "invalid initial value for member `%s'" +msgid "invalid initial value for member %qs" msgstr "" -#: varasm.c:4061 varasm.c:4105 -msgid "%Jweak declaration of '%D' must precede definition" +#: varasm.c:4202 varasm.c:4246 +msgid "%Jweak declaration of %qD must precede definition" msgstr "" -#: varasm.c:4069 +#: varasm.c:4210 msgid "" -"%Jweak declaration of '%D' after first use results in unspecified behavior" +"%Jweak declaration of %qD after first use results in unspecified behavior" msgstr "" -#: varasm.c:4103 -msgid "%Jweak declaration of '%D' must be public" +#: varasm.c:4244 +msgid "%Jweak declaration of %qD must be public" msgstr "" -#: varasm.c:4112 -msgid "%Jweak declaration of '%D' not supported" +#: varasm.c:4253 +msgid "%Jweak declaration of %qD not supported" msgstr "" -#: varasm.c:4141 varasm.c:4234 +#: varasm.c:4282 varasm.c:4375 msgid "only weak aliases are supported in this configuration" msgstr "" -#: varasm.c:4237 +#: varasm.c:4378 msgid "alias definitions not supported in this configuration; ignored" msgstr "" -#: varasm.c:4266 +#: varasm.c:4407 msgid "visibility attribute not supported in this configuration; ignored" msgstr "" -#: varray.c:197 +#: varray.c:204 #, c-format msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d" msgstr "" -#: varray.c:207 +#: varray.c:214 #, c-format msgid "underflowed virtual array %s in %s, at %s:%d" msgstr "" +#: vec.c:146 +#, c-format +msgid "vector %s %s domain error, in %s at %s:%u" +msgstr "" + #. Print an error message for unrecognized stab codes. #: xcoffout.c:187 #, c-format @@ -7538,6 +7027,10 @@ msgstr "" msgid "sorry, unimplemented: " msgstr "" +#: diagnostic.def:5 +msgid "warning: " +msgstr "" + #: diagnostic.def:6 msgid "anachronism: " msgstr "" @@ -7672,309 +7165,427 @@ msgstr "" msgid "The maximum number of unswitchings in a single loop" msgstr "" -#: params.def:234 +#: params.def:236 +msgid "" +"Bound on the number of iterations the brute force # of iterations \t " +"analysis algorithm evaluates" +msgstr "" + +#: params.def:242 +msgid "" +"Maximum number of loops to perform swing modulo scheduling on \t (mainly " +"for debugging)" +msgstr "" + +#: params.def:249 +msgid "" +"A factor for tuning the upper bound that swing modulo scheduler uses \t for " +"scheduling a loop" +msgstr "" + +#: params.def:254 +msgid "" +"The number of cycles the swing modulo scheduler considers when \t checking " +"conflicts using DFA" +msgstr "" + +#: params.def:259 +msgid "" +"A threshold on the average loop count considered by the swing modulo \t " +"scheduler" +msgstr "" + +#: params.def:265 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:239 +#: params.def:270 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:244 +#: params.def:275 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:249 +#: params.def:280 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:254 +#: params.def:285 msgid "Maximal code growth caused by tail duplication (in percent)" msgstr "" -#: params.def:258 +#: params.def:289 msgid "" "Stop reverse growth if the reverse probability of best edge is less than " "this threshold (in percent)" msgstr "" -#: params.def:263 +#: params.def:294 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:268 +#: params.def:299 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:275 +#: params.def:306 msgid "The maximum number of incoming edges to consider for crossjumping" msgstr "" -#: params.def:281 +#: params.def:312 +msgid "" +"The minimum number of matching instructions to consider for crossjumping" +msgstr "" + +#: params.def:318 msgid "The maximum length of path considered in cse" msgstr "" -#: params.def:288 +#: params.def:325 +msgid "" +"The minimum cost of an expensive expression in the loop invariant motion" +msgstr "" + +#: params.def:334 +msgid "" +"Bound on number of candidates below that all candidates are considered in iv " +"optimizations" +msgstr "" + +#: params.def:342 +msgid "Bound on number of iv uses in loop optimized in iv optimizations" +msgstr "" + +#: params.def:349 msgid "" "Given N calls and V call-clobbered vars in a function. Use .GLOBAL_VAR if " "NxV is larger than this limit" msgstr "" -#: params.def:293 +#: params.def:354 msgid "The maximum memory locations recorded by cselib" msgstr "" -#: params.def:306 +#: params.def:367 msgid "" "Minimum heap expansion to trigger garbage collection, as a percentage of the " "total size of the heap" msgstr "" -#: params.def:312 +#: params.def:373 msgid "Minimum heap size before we start collecting garbage, in kilobytes" msgstr "" -#: params.def:320 +#: params.def:381 msgid "" "The maximum number of instructions to search backward when looking for " "equivalent reload" msgstr "" -#: params.def:325 +#: params.def:386 msgid "" "The maximum number of virtual operands allowed to represent aliases before " "triggering alias grouping." msgstr "" -#: params.def:330 +#: params.def:391 msgid "" "The maximum number of blocks in a region to be considered for interblock " "scheduling" msgstr "" -#: params.def:335 +#: params.def:396 msgid "" "The maximum number of insns in a region to be considered for interblock " "scheduling" msgstr "" -#: config/darwin-c.c:82 +#: params.def:404 +msgid "The upper bound for sharing integer constants" +msgstr "" + +#: config/darwin-c.c:84 msgid "too many #pragma options align=reset" msgstr "" -#: config/darwin-c.c:102 config/darwin-c.c:105 config/darwin-c.c:107 -#: config/darwin-c.c:109 +#: config/darwin-c.c:104 config/darwin-c.c:107 config/darwin-c.c:109 +#: config/darwin-c.c:111 msgid "malformed '#pragma options', ignoring" msgstr "" -#: config/darwin-c.c:112 +#: config/darwin-c.c:114 msgid "junk at end of '#pragma options'" msgstr "" -#: config/darwin-c.c:122 +#: config/darwin-c.c:124 msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring" msgstr "" -#: config/darwin-c.c:134 +#: config/darwin-c.c:136 msgid "missing '(' after '#pragma unused', ignoring" msgstr "" -#: config/darwin-c.c:152 +#: config/darwin-c.c:154 msgid "missing ')' after '#pragma unused', ignoring" msgstr "" -#: config/darwin-c.c:155 +#: config/darwin-c.c:157 msgid "junk at end of '#pragma unused'" msgstr "" -#: config/darwin-c.c:365 +#: config/darwin-c.c:367 #, c-format msgid "subframework include %s conflicts with framework include" msgstr "" -#: config/darwin.c:1423 +#: config/darwin.c:1328 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" +#: config/sol2-c.c:93 config/sol2-c.c:109 +msgid "malformed %<#pragma align%>, ignoring" +msgstr "" + +#: config/sol2-c.c:102 +msgid "invalid alignment for %<#pragma align%>, ignoring" +msgstr "" + +#: config/sol2-c.c:117 +msgid "%<#pragma align%> must appear before the declaration of %D, ignoring" +msgstr "" + +#: config/sol2-c.c:129 config/sol2-c.c:141 +msgid "malformed %<#pragma align%>" msgstr "" -#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75 -msgid "-msystem-v and -mthreads are incompatible" +#: config/sol2-c.c:136 +msgid "junk at end of %<#pragma align%>" +msgstr "" + +#: config/sol2-c.c:157 config/sol2-c.c:164 +msgid "malformed %<#pragma init%>, ignoring" +msgstr "" + +#: config/sol2-c.c:187 config/sol2-c.c:199 +msgid "malformed %<#pragma init%>" +msgstr "" + +#: config/sol2-c.c:194 +msgid "junk at end of %<#pragma init%>" +msgstr "" + +#: config/sol2-c.c:215 config/sol2-c.c:222 +msgid "malformed %<#pragma fini%>, ignoring" +msgstr "" + +#: config/sol2-c.c:245 config/sol2-c.c:257 +msgid "malformed %<#pragma fini%>" +msgstr "" + +#: config/sol2-c.c:252 +msgid "junk at end of %<#pragma fini%>" +msgstr "" + +#: config/sol2.c:53 +msgid "%Jignoring %<#pragma align%> for explicitly aligned %<%D%>" +msgstr "" + +#: config/darwin.h:152 +msgid "Set sizeof(bool) to 1" +msgstr "" + +#: config/darwin.h:154 +msgid "Generate code suitable for fast turn around debugging" +msgstr "" + +#: config/darwin.h:156 +msgid "Don't generate code suitable for fast turn around debugging" +msgstr "" + +#: config/lynx.h:137 +msgid "Use shared libraries" +msgstr "" + +#: config/lynx.h:138 +msgid "Support multi-threading" +msgstr "" + +#: config/lynx.h:139 +msgid "Support legacy multi-threading" msgstr "" #: config/windiss.h:37 msgid "profiler support for WindISS" msgstr "" -#: config/alpha/alpha.c:231 +#: config/alpha/alpha.c:254 #, c-format msgid "-f%s ignored for Unicos/Mk (not supported)" msgstr "" -#: config/alpha/alpha.c:255 +#: config/alpha/alpha.c:278 msgid "-mieee not supported on Unicos/Mk" msgstr "" -#: config/alpha/alpha.c:266 +#: config/alpha/alpha.c:289 msgid "-mieee-with-inexact not supported on Unicos/Mk" msgstr "" -#: config/alpha/alpha.c:283 +#: config/alpha/alpha.c:306 #, c-format msgid "bad value `%s' for -mtrap-precision switch" msgstr "" -#: config/alpha/alpha.c:297 +#: config/alpha/alpha.c:320 #, c-format msgid "bad value `%s' for -mfp-rounding-mode switch" msgstr "" -#: config/alpha/alpha.c:312 +#: config/alpha/alpha.c:335 #, c-format msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1179 +#: config/alpha/alpha.c:347 config/rs6000/rs6000.c:1613 #, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "" -#: config/alpha/alpha.c:343 config/alpha/alpha.c:355 +#: config/alpha/alpha.c:366 config/alpha/alpha.c:378 #, c-format msgid "bad value `%s' for -mcpu switch" msgstr "" -#: config/alpha/alpha.c:362 +#: config/alpha/alpha.c:385 msgid "trap mode not supported on Unicos/Mk" msgstr "" -#: config/alpha/alpha.c:369 +#: config/alpha/alpha.c:392 msgid "fp software completion requires -mtrap-precision=i" msgstr "" -#: config/alpha/alpha.c:385 +#: config/alpha/alpha.c:408 msgid "rounding mode not supported for VAX floats" msgstr "" -#: config/alpha/alpha.c:390 +#: config/alpha/alpha.c:413 msgid "trap mode not supported for VAX floats" msgstr "" -#: config/alpha/alpha.c:394 +#: config/alpha/alpha.c:417 msgid "128-bit long double not supported for VAX floats" msgstr "" -#: config/alpha/alpha.c:422 +#: config/alpha/alpha.c:445 #, c-format msgid "L%d cache latency unknown for %s" msgstr "" -#: config/alpha/alpha.c:437 +#: config/alpha/alpha.c:460 #, c-format msgid "bad value `%s' for -mmemory-latency" msgstr "" -#: config/alpha/alpha.c:5409 +#: config/alpha/alpha.c:4541 #, c-format msgid "invalid %%H value" msgstr "" -#: config/alpha/alpha.c:5430 +#: config/alpha/alpha.c:4562 #, c-format msgid "invalid %%J value" msgstr "" -#: config/alpha/alpha.c:5446 config/ia64/ia64.c:4289 +#: config/alpha/alpha.c:4578 config/ia64/ia64.c:3709 #, c-format msgid "invalid %%r value" msgstr "" -#: config/alpha/alpha.c:5456 config/rs6000/rs6000.c:9478 -#: config/xtensa/xtensa.c:2022 +#: config/alpha/alpha.c:4588 config/rs6000/rs6000.c:10187 +#: config/xtensa/xtensa.c:1951 #, c-format msgid "invalid %%R value" msgstr "" -#: config/alpha/alpha.c:5462 config/rs6000/rs6000.c:9397 -#: config/xtensa/xtensa.c:1989 +#: config/alpha/alpha.c:4594 config/rs6000/rs6000.c:10106 +#: config/xtensa/xtensa.c:1918 #, c-format msgid "invalid %%N value" msgstr "" -#: config/alpha/alpha.c:5470 config/rs6000/rs6000.c:9425 +#: config/alpha/alpha.c:4602 config/rs6000/rs6000.c:10134 #, c-format msgid "invalid %%P value" msgstr "" -#: config/alpha/alpha.c:5478 +#: config/alpha/alpha.c:4610 #, c-format msgid "invalid %%h value" msgstr "" -#: config/alpha/alpha.c:5486 config/xtensa/xtensa.c:2015 +#: config/alpha/alpha.c:4618 config/xtensa/xtensa.c:1944 #, c-format msgid "invalid %%L value" msgstr "" -#: config/alpha/alpha.c:5525 config/rs6000/rs6000.c:9379 +#: config/alpha/alpha.c:4657 config/rs6000/rs6000.c:10088 #, c-format msgid "invalid %%m value" msgstr "" -#: config/alpha/alpha.c:5533 config/rs6000/rs6000.c:9387 +#: config/alpha/alpha.c:4665 config/rs6000/rs6000.c:10096 #, c-format msgid "invalid %%M value" msgstr "" -#: config/alpha/alpha.c:5577 +#: config/alpha/alpha.c:4709 #, c-format msgid "invalid %%U value" msgstr "" -#: config/alpha/alpha.c:5589 config/alpha/alpha.c:5603 -#: config/rs6000/rs6000.c:9486 +#: config/alpha/alpha.c:4721 config/alpha/alpha.c:4735 +#: config/rs6000/rs6000.c:10195 #, c-format msgid "invalid %%s value" msgstr "" -#: config/alpha/alpha.c:5626 +#: config/alpha/alpha.c:4758 #, c-format msgid "invalid %%C value" msgstr "" -#: config/alpha/alpha.c:5663 config/rs6000/rs6000.c:9216 -#: config/rs6000/rs6000.c:9236 +#: config/alpha/alpha.c:4795 config/rs6000/rs6000.c:9925 +#: config/rs6000/rs6000.c:9945 #, c-format msgid "invalid %%E value" msgstr "" -#: config/alpha/alpha.c:5688 config/alpha/alpha.c:5736 +#: config/alpha/alpha.c:4820 config/alpha/alpha.c:4868 msgid "unknown relocation unspec" msgstr "" -#: config/alpha/alpha.c:5697 config/rs6000/rs6000.c:9809 +#: config/alpha/alpha.c:4829 config/rs6000/rs6000.c:10507 #, c-format msgid "invalid %%xn code" msgstr "" -#: config/alpha/alpha.c:6641 config/alpha/alpha.c:6644 config/s390/s390.c:6515 -#: config/s390/s390.c:6518 +#: config/alpha/alpha.c:5789 config/alpha/alpha.c:5792 config/s390/s390.c:7333 +#: config/s390/s390.c:7336 msgid "bad builtin fcode" msgstr "" @@ -7991,14 +7602,14 @@ 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:293 config/i386/i386.h:332 config/i386/i386.h:334 -#: config/i386/i386.h:336 config/ns32k/ns32k.h:140 config/s390/s390.h:124 -#: config/sparc/sparc.h:538 config/sparc/sparc.h:543 +#: config/alpha/alpha.h:293 config/i386/i386.h:333 config/i386/i386.h:335 +#: config/i386/i386.h:337 config/ns32k/ns32k.h:140 config/s390/s390.h:132 +#: config/sparc/sparc.h:616 config/sparc/sparc.h:621 msgid "Use hardware fp" msgstr "" -#: config/alpha/alpha.h:294 config/i386/i386.h:333 config/i386/i386.h:335 -#: config/sparc/sparc.h:540 config/sparc/sparc.h:545 +#: config/alpha/alpha.h:294 config/i386/i386.h:334 config/i386/i386.h:336 +#: config/sparc/sparc.h:618 config/sparc/sparc.h:623 msgid "Do not use hardware fp" msgstr "" @@ -8117,186 +7728,195 @@ msgstr "" msgid "Tune expected memory latency" msgstr "" -#: config/alpha/alpha.h:376 config/ia64/ia64.h:275 config/rs6000/sysv4.h:90 +#: config/alpha/alpha.h:376 config/ia64/ia64.h:284 config/rs6000/sysv4.h:90 msgid "Specify bit size of immediate TLS offsets" msgstr "" -#: config/arc/arc.c:166 +#: config/arc/arc.c:172 #, c-format msgid "bad value (%s) for -mcpu switch" msgstr "" -#: config/arc/arc.c:388 +#: config/arc/arc.c:394 #, c-format msgid "argument of `%s' attribute is not a string constant" msgstr "" -#: config/arc/arc.c:395 +#: config/arc/arc.c:401 #, c-format msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\"" msgstr "" -#: config/arc/arc.c:1733 config/m32r/m32r.c:2340 +#: config/arc/arc.c:1739 config/m32r/m32r.c:2130 #, c-format msgid "invalid operand to %%R code" msgstr "" -#: config/arc/arc.c:1765 config/m32r/m32r.c:2363 +#: config/arc/arc.c:1771 config/m32r/m32r.c:2153 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "" -#: config/arc/arc.c:1788 config/m32r/m32r.c:2434 +#: config/arc/arc.c:1794 config/m32r/m32r.c:2224 #, c-format msgid "invalid operand to %%U code" msgstr "" -#: config/arc/arc.c:1799 +#: config/arc/arc.c:1805 #, c-format msgid "invalid operand to %%V code" msgstr "" #. Unknown flag. #. Undocumented flag. -#: config/arc/arc.c:1806 config/m32r/m32r.c:2461 config/sparc/sparc.c:7159 +#: config/arc/arc.c:1812 config/m32r/m32r.c:2251 config/sparc/sparc.c:7254 msgid "invalid operand output code" msgstr "" -#: config/arm/arm.c:627 +#: config/arm/arm.c:774 #, c-format msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "" -#: config/arm/arm.c:637 config/rs6000/rs6000.c:847 config/sparc/sparc.c:436 +#: config/arm/arm.c:784 config/rs6000/rs6000.c:1187 config/sparc/sparc.c:612 #, c-format msgid "bad value (%s) for %s switch" msgstr "" -#: config/arm/arm.c:743 +#: config/arm/arm.c:893 msgid "target CPU does not support interworking" msgstr "" -#: config/arm/arm.c:749 +#: config/arm/arm.c:899 msgid "target CPU does not support THUMB instructions" msgstr "" -#: config/arm/arm.c:763 +#: config/arm/arm.c:913 msgid "" "enabling backtrace support is only meaningful when compiling for the Thumb" msgstr "" -#: config/arm/arm.c:766 +#: config/arm/arm.c:916 msgid "" "enabling callee interworking support is only meaningful when compiling for " "the Thumb" msgstr "" -#: config/arm/arm.c:769 +#: config/arm/arm.c:919 msgid "" "enabling caller interworking support is only meaningful when compiling for " "the Thumb" msgstr "" -#: config/arm/arm.c:773 +#: config/arm/arm.c:923 msgid "-mapcs-stack-check incompatible with -mno-apcs-frame" msgstr "" -#: config/arm/arm.c:781 +#: config/arm/arm.c:931 msgid "-fpic and -mapcs-reent are incompatible" msgstr "" -#: config/arm/arm.c:784 +#: config/arm/arm.c:934 msgid "APCS reentrant code not supported. Ignored" msgstr "" -#: config/arm/arm.c:792 +#: config/arm/arm.c:942 msgid "-g with -mno-apcs-frame may not give sensible debugging" msgstr "" -#: config/arm/arm.c:800 +#: config/arm/arm.c:950 msgid "passing floating point arguments in fp regs not yet supported" msgstr "" -#: config/arm/arm.c:830 +#: config/arm/arm.c:992 #, c-format msgid "invalid ABI option: -mabi=%s" msgstr "" -#: config/arm/arm.c:836 +#: config/arm/arm.c:998 msgid "iwmmxt requires an AAPCS compatible ABI for proper operation" msgstr "" -#: config/arm/arm.c:839 +#: config/arm/arm.c:1001 msgid "iwmmxt abi requires an iwmmxt capable cpu" msgstr "" -#: config/arm/arm.c:849 +#: config/arm/arm.c:1011 #, c-format msgid "invalid floating point emulation option: -mfpe=%s" msgstr "" -#: config/arm/arm.c:866 +#: config/arm/arm.c:1028 #, c-format msgid "invalid floating point option: -mfpu=%s" msgstr "" -#: config/arm/arm.c:907 +#: config/arm/arm.c:1069 #, c-format msgid "invalid floating point abi: -mfloat-abi=%s" msgstr "" -#: config/arm/arm.c:920 -msgid "-mfloat-abi=softfp" +#: config/arm/arm.c:1082 +msgid "-mfloat-abi=hard and VFP" msgstr "" -#: config/arm/arm.c:945 +#: config/arm/arm.c:1108 #, c-format msgid "structure size boundary can only be set to %s" msgstr "" -#: config/arm/arm.c:954 +#: config/arm/arm.c:1117 msgid "-mpic-register= is useless without -fpic" msgstr "" -#: config/arm/arm.c:961 +#: config/arm/arm.c:1124 #, c-format msgid "unable to use '%s' for PIC register" msgstr "" -#: config/arm/arm.c:2475 config/arm/arm.c:2493 config/avr/avr.c:4566 -#: config/c4x/c4x.c:4497 config/h8300/h8300.c:4377 config/i386/i386.c:1640 -#: config/i386/i386.c:1686 config/ip2k/ip2k.c:3178 -#: config/m68hc11/m68hc11.c:1325 config/m68k/m68k.c:341 -#: config/mcore/mcore.c:3394 config/ns32k/ns32k.c:1068 -#: config/rs6000/rs6000.c:15220 config/sh/sh.c:6893 config/sh/sh.c:6914 -#: config/sh/sh.c:6949 config/stormy16/stormy16.c:2048 config/v850/v850.c:2184 +#: config/arm/arm.c:2598 config/arm/arm.c:2616 config/avr/avr.c:4533 +#: config/c4x/c4x.c:4500 config/h8300/h8300.c:5755 config/i386/i386.c:1681 +#: config/i386/i386.c:1727 config/ip2k/ip2k.c:3181 +#: config/m68hc11/m68hc11.c:1350 config/m68k/m68k.c:288 +#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1068 +#: config/rs6000/rs6000.c:16236 config/sh/sh.c:7117 config/sh/sh.c:7138 +#: config/sh/sh.c:7173 config/stormy16/stormy16.c:2413 config/v850/v850.c:2207 #, c-format msgid "`%s' attribute only applies to functions" msgstr "" -#: config/arm/arm.c:11569 +#: config/arm/arm.c:2630 config/arm/arm.c:2657 config/avr/avr.c:4514 +#: config/h8300/h8300.c:5779 config/h8300/h8300.c:5802 config/i386/i386.c:1709 +#: config/i386/i386.c:14480 config/ia64/ia64.c:512 config/ip2k/ip2k.c:3163 +#: config/m68hc11/m68hc11.c:1314 config/rs6000/rs6000.c:16201 +#: config/sh/symbian.c:414 config/sh/symbian.c:421 +#, c-format +msgid "`%s' attribute ignored" +msgstr "" + +#: config/arm/arm.c:11289 msgid "unable to compute real location of stacked parameter" msgstr "" #. @@@ better error message -#: config/arm/arm.c:12201 config/arm/arm.c:12238 +#: config/arm/arm.c:11922 config/arm/arm.c:11959 msgid "selector must be an immediate" msgstr "" #. @@@ better error message -#: config/arm/arm.c:12281 config/i386/i386.c:14142 config/i386/i386.c:14176 +#: config/arm/arm.c:12002 config/i386/i386.c:13373 config/i386/i386.c:13407 msgid "mask must be an immediate" msgstr "" -#: config/arm/arm.c:12979 +#: config/arm/arm.c:12678 msgid "no low registers available for popping high registers" msgstr "" -#: config/arm/arm.c:13188 +#: config/arm/arm.c:12896 msgid "interrupt Service Routines cannot be coded in Thumb mode" msgstr "" -#: config/arm/pe.c:171 config/mcore/mcore.c:3260 +#: config/arm/pe.c:171 config/mcore/mcore.c:3241 msgid "%Jinitialized variable '%D' is marked dllimport" msgstr "" @@ -8304,171 +7924,171 @@ msgstr "" msgid "%Jstatic variable '%D' is marked dllimport" msgstr "" -#: config/arm/arm.h:306 +#: config/arm/arm.h:318 msgid "Generate APCS conformant stack frames" msgstr "" -#: config/arm/arm.h:309 +#: config/arm/arm.h:321 msgid "Store function names in object code" msgstr "" -#: config/arm/arm.h:315 +#: config/arm/arm.h:327 msgid "Pass FP arguments in FP registers" msgstr "" -#: config/arm/arm.h:318 +#: config/arm/arm.h:330 msgid "Generate re-entrant, PIC code" msgstr "" -#: config/arm/arm.h:321 +#: config/arm/arm.h:333 msgid "Use library calls to perform FP operations" msgstr "" -#: config/arm/arm.h:323 +#: config/arm/arm.h:335 msgid "Use hardware floating point instructions" msgstr "" -#: config/arm/arm.h:325 +#: config/arm/arm.h:337 msgid "Assume target CPU is configured as big endian" msgstr "" -#: config/arm/arm.h:327 +#: config/arm/arm.h:339 msgid "Assume target CPU is configured as little endian" msgstr "" -#: config/arm/arm.h:329 +#: config/arm/arm.h:341 msgid "Assume big endian bytes, little endian words" msgstr "" -#: config/arm/arm.h:331 +#: config/arm/arm.h:343 msgid "Support calls between Thumb and ARM instruction sets" msgstr "" -#: config/arm/arm.h:334 +#: config/arm/arm.h:346 msgid "Generate a call to abort if a noreturn function returns" msgstr "" -#: config/arm/arm.h:337 +#: config/arm/arm.h:349 msgid "Do not move instructions into a function's prologue" msgstr "" -#: config/arm/arm.h:340 +#: config/arm/arm.h:352 msgid "Do not load the PIC register in function prologues" msgstr "" -#: config/arm/arm.h:343 +#: config/arm/arm.h:355 msgid "Generate call insns as indirect calls, if necessary" msgstr "" -#: config/arm/arm.h:346 +#: config/arm/arm.h:358 msgid "Compile for the Thumb not the ARM" msgstr "" -#: config/arm/arm.h:350 +#: config/arm/arm.h:362 msgid "Thumb: Generate (non-leaf) stack frames even if not needed" msgstr "" -#: config/arm/arm.h:353 +#: config/arm/arm.h:365 msgid "Thumb: Generate (leaf) stack frames even if not needed" msgstr "" -#: config/arm/arm.h:356 +#: config/arm/arm.h:368 msgid "Thumb: Assume non-static functions may be called from ARM code" msgstr "" -#: config/arm/arm.h:360 +#: config/arm/arm.h:372 msgid "Thumb: Assume function pointers may go to non-Thumb aware code" msgstr "" -#: config/arm/arm.h:364 +#: config/arm/arm.h:376 msgid "Cirrus: Place NOPs to avoid invalid instruction combinations" msgstr "" -#: config/arm/arm.h:366 +#: config/arm/arm.h:378 msgid "Cirrus: Do not break up invalid instruction combinations with NOPs" msgstr "" -#: config/arm/arm.h:374 +#: config/arm/arm.h:386 msgid "Specify the name of the target CPU" msgstr "" -#: config/arm/arm.h:376 +#: config/arm/arm.h:388 msgid "Specify the name of the target architecture" msgstr "" -#: config/arm/arm.h:381 +#: config/arm/arm.h:393 msgid "Specify the name of the target floating point hardware/format" msgstr "" -#: config/arm/arm.h:383 +#: config/arm/arm.h:395 msgid "Specify if floating point hardware should be used" msgstr "" -#: config/arm/arm.h:385 +#: config/arm/arm.h:397 msgid "Specify the minimum bit alignment of structures" msgstr "" -#: config/arm/arm.h:387 +#: config/arm/arm.h:399 msgid "Specify the register to be used for PIC addressing" msgstr "" -#: config/arm/arm.h:388 config/mips/mips.h:787 +#: config/arm/arm.h:400 config/mips/mips.h:774 msgid "Specify an ABI" msgstr "" -#: config/arm/pe.h:66 +#: config/arm/pe.h:59 msgid "Ignore dllimport attribute for functions" msgstr "" -#: config/avr/avr.c:521 +#: config/avr/avr.c:520 #, c-format msgid "large frame pointer change (%d) with -mtiny-stack" msgstr "" -#: config/avr/avr.c:1108 +#: config/avr/avr.c:1107 msgid "bad address, not (reg+disp):" msgstr "" -#: config/avr/avr.c:1116 +#: config/avr/avr.c:1115 msgid "internal compiler error. Bad address:" msgstr "" -#: config/avr/avr.c:1129 +#: config/avr/avr.c:1128 msgid "internal compiler error. Unknown mode:" msgstr "" -#: config/avr/avr.c:1751 config/avr/avr.c:2412 +#: config/avr/avr.c:1750 config/avr/avr.c:2411 msgid "invalid insn:" msgstr "" -#: config/avr/avr.c:1785 config/avr/avr.c:1868 config/avr/avr.c:1917 -#: config/avr/avr.c:1926 config/avr/avr.c:2021 config/avr/avr.c:2190 -#: config/avr/avr.c:2446 config/avr/avr.c:2554 +#: config/avr/avr.c:1784 config/avr/avr.c:1867 config/avr/avr.c:1916 +#: config/avr/avr.c:1925 config/avr/avr.c:2020 config/avr/avr.c:2189 +#: config/avr/avr.c:2445 config/avr/avr.c:2553 msgid "incorrect insn:" msgstr "" -#: config/avr/avr.c:1945 config/avr/avr.c:2106 config/avr/avr.c:2261 -#: config/avr/avr.c:2598 +#: config/avr/avr.c:1944 config/avr/avr.c:2105 config/avr/avr.c:2260 +#: config/avr/avr.c:2597 msgid "unknown move insn:" msgstr "" -#: config/avr/avr.c:2821 +#: config/avr/avr.c:2820 msgid "bad shift insn:" msgstr "" -#: config/avr/avr.c:2934 config/avr/avr.c:3355 config/avr/avr.c:3726 +#: config/avr/avr.c:2933 config/avr/avr.c:3354 config/avr/avr.c:3725 msgid "internal compiler error. Incorrect shift:" msgstr "" -#: config/avr/avr.c:4540 config/ip2k/ip2k.c:3153 +#: config/avr/avr.c:4507 config/ip2k/ip2k.c:3156 msgid "only initialized variables can be placed into program memory area" msgstr "" -#: config/avr/avr.c:4634 +#: config/avr/avr.c:4601 msgid "only uninitialized variables can be placed in the .noinit section" msgstr "" -#: config/avr/avr.c:4648 +#: config/avr/avr.c:4615 #, c-format msgid "MCU `%s' supported for assembler only" msgstr "" @@ -8509,7 +8129,7 @@ msgstr "" msgid "Specify the MCU name" msgstr "" -#: config/avr/avr.h:773 +#: config/avr/avr.h:771 msgid "trampolines not supported" msgstr "" @@ -8543,98 +8163,98 @@ msgstr "" msgid "junk at end of '#pragma %s'" msgstr "" -#: config/c4x/c4x.c:308 +#: config/c4x/c4x.c:313 #, c-format msgid "unknown CPU version %d, using 40.\n" msgstr "" -#: config/c4x/c4x.c:858 +#: config/c4x/c4x.c:875 #, c-format msgid "ISR %s requires %d words of local vars, max is 32767" msgstr "" -#: config/c4x/c4x.c:1582 +#: config/c4x/c4x.c:1599 msgid "using CONST_DOUBLE for address" msgstr "" -#: config/c4x/c4x.c:1720 +#: config/c4x/c4x.c:1737 msgid "c4x_address_cost: Invalid addressing mode" msgstr "" -#: config/c4x/c4x.c:1855 +#: config/c4x/c4x.c:1872 #, c-format msgid "c4x_print_operand: %%L inconsistency" msgstr "" -#: config/c4x/c4x.c:1861 +#: config/c4x/c4x.c:1878 #, c-format msgid "c4x_print_operand: %%N inconsistency" msgstr "" -#: config/c4x/c4x.c:1902 +#: config/c4x/c4x.c:1919 #, c-format msgid "c4x_print_operand: %%O inconsistency" msgstr "" -#: config/c4x/c4x.c:1997 +#: config/c4x/c4x.c:2014 msgid "c4x_print_operand: Bad operand case" msgstr "" -#: config/c4x/c4x.c:2038 +#: config/c4x/c4x.c:2055 msgid "c4x_print_operand_address: Bad post_modify" msgstr "" -#: config/c4x/c4x.c:2060 +#: config/c4x/c4x.c:2077 msgid "c4x_print_operand_address: Bad pre_modify" msgstr "" -#: config/c4x/c4x.c:2108 config/c4x/c4x.c:2120 config/c4x/c4x.c:2135 +#: config/c4x/c4x.c:2125 config/c4x/c4x.c:2137 config/c4x/c4x.c:2152 msgid "c4x_print_operand_address: Bad operand case" msgstr "" -#: config/c4x/c4x.c:2386 +#: config/c4x/c4x.c:2403 msgid "c4x_rptb_insert: Cannot find start label" msgstr "" -#: config/c4x/c4x.c:3301 config/c4x/c4x.c:3319 +#: config/c4x/c4x.c:3318 config/c4x/c4x.c:3336 msgid "mode not QImode" msgstr "" -#: config/c4x/c4x.c:3389 +#: config/c4x/c4x.c:3406 msgid "invalid indirect memory address" msgstr "" -#: config/c4x/c4x.c:3478 +#: config/c4x/c4x.c:3495 msgid "invalid indirect (S) memory address" msgstr "" -#: config/c4x/c4x.c:3819 +#: config/c4x/c4x.c:3830 msgid "c4x_valid_operands: Internal error" msgstr "" -#: config/c4x/c4x.c:4266 +#: config/c4x/c4x.c:4269 msgid "c4x_operand_subword: invalid mode" msgstr "" -#: config/c4x/c4x.c:4269 +#: config/c4x/c4x.c:4272 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:4295 +#: config/c4x/c4x.c:4298 msgid "c4x_operand_subword: invalid autoincrement" msgstr "" -#: config/c4x/c4x.c:4301 +#: config/c4x/c4x.c:4304 msgid "c4x_operand_subword: invalid address" msgstr "" -#: config/c4x/c4x.c:4312 +#: config/c4x/c4x.c:4315 msgid "c4x_operand_subword: address not offsettable" msgstr "" -#: config/c4x/c4x.c:4522 +#: config/c4x/c4x.c:4525 msgid "c4x_rptb_rpts_p: Repeat block top label moved\n" msgstr "" @@ -8856,159 +8476,159 @@ msgstr "" msgid "Select CPU to generate code for" msgstr "" -#: config/cris/cris.c:618 +#: config/cris/cris.c:620 msgid "unexpected index-type in cris_print_index" msgstr "" -#: config/cris/cris.c:632 +#: config/cris/cris.c:634 msgid "unexpected base-type in cris_print_base" msgstr "" -#: config/cris/cris.c:925 +#: config/cris/cris.c:927 #, c-format msgid "stackframe too big: %d bytes" msgstr "" -#: config/cris/cris.c:1236 +#: config/cris/cris.c:1238 msgid "allocated but unused delay list in epilogue" msgstr "" -#: config/cris/cris.c:1246 +#: config/cris/cris.c:1248 msgid "" "unexpected function type needing stack adjustment for __builtin_eh_return" msgstr "" -#: config/cris/cris.c:1322 +#: config/cris/cris.c:1324 msgid "invalid operand for 'b' modifier" msgstr "" -#: config/cris/cris.c:1335 +#: config/cris/cris.c:1337 msgid "invalid operand for 'v' modifier" msgstr "" -#: config/cris/cris.c:1345 +#: config/cris/cris.c:1347 msgid "invalid operand for 'P' modifier" msgstr "" -#: config/cris/cris.c:1352 +#: config/cris/cris.c:1354 msgid "invalid operand for 'p' modifier" msgstr "" -#: config/cris/cris.c:1391 +#: config/cris/cris.c:1393 msgid "invalid operand for 'z' modifier" msgstr "" -#: config/cris/cris.c:1439 config/cris/cris.c:1469 +#: config/cris/cris.c:1441 config/cris/cris.c:1471 msgid "invalid operand for 'H' modifier" msgstr "" -#: config/cris/cris.c:1445 +#: config/cris/cris.c:1447 msgid "bad register" msgstr "" -#: config/cris/cris.c:1483 +#: config/cris/cris.c:1485 msgid "invalid operand for 'e' modifier" msgstr "" -#: config/cris/cris.c:1500 +#: config/cris/cris.c:1502 msgid "invalid operand for 'm' modifier" msgstr "" -#: config/cris/cris.c:1525 +#: config/cris/cris.c:1527 msgid "invalid operand for 'A' modifier" msgstr "" -#: config/cris/cris.c:1533 +#: config/cris/cris.c:1535 msgid "invalid operand for 'D' modifier" msgstr "" -#: config/cris/cris.c:1547 +#: config/cris/cris.c:1549 msgid "invalid operand for 'T' modifier" msgstr "" -#: config/cris/cris.c:1556 +#: config/cris/cris.c:1558 msgid "invalid operand modifier letter" msgstr "" -#: config/cris/cris.c:1564 +#: config/cris/cris.c:1566 #, c-format msgid "internal error: bad register: %d" msgstr "" -#: config/cris/cris.c:1612 +#: config/cris/cris.c:1614 msgid "unexpected multiplicative operand" msgstr "" -#: config/cris/cris.c:1632 +#: config/cris/cris.c:1634 msgid "unexpected operand" msgstr "" -#: config/cris/cris.c:1665 config/cris/cris.c:1675 +#: config/cris/cris.c:1667 config/cris/cris.c:1677 msgid "unrecognized address" msgstr "" -#: config/cris/cris.c:2025 +#: config/cris/cris.c:2036 msgid "internal error: sideeffect-insn affecting main effect" msgstr "" #. If we get here, the caller got its initial tests wrong. -#: config/cris/cris.c:2418 +#: config/cris/cris.c:2429 msgid "internal error: cris_side_effect_mode_ok with bad operands" msgstr "" -#: config/cris/cris.c:2494 config/cris/cris.c:2555 +#: config/cris/cris.c:2506 config/cris/cris.c:2567 msgid "unrecognized supposed constant" msgstr "" -#: config/cris/cris.c:2599 +#: config/cris/cris.c:2611 msgid "unrecognized supposed constant in cris_global_pic_symbol" msgstr "" -#: config/cris/cris.c:2618 +#: config/cris/cris.c:2630 #, c-format msgid "-max-stackframe=%d is not usable, not between 0 and %d" msgstr "" -#: config/cris/cris.c:2646 +#: config/cris/cris.c:2658 #, c-format msgid "unknown CRIS version specification in -march= or -mcpu= : %s" msgstr "" -#: config/cris/cris.c:2682 +#: config/cris/cris.c:2694 #, c-format msgid "unknown CRIS cpu version specification in -mtune= : %s" msgstr "" -#: config/cris/cris.c:2700 +#: config/cris/cris.c:2712 msgid "-fPIC and -fpic are not supported in this configuration" msgstr "" -#: config/cris/cris.c:2716 +#: config/cris/cris.c:2727 msgid "that particular -g option is invalid with -maout and -melinux" msgstr "" -#: config/cris/cris.c:2971 config/cris/cris.c:3016 +#: config/cris/cris.c:2902 config/cris/cris.c:2947 msgid "unexpected side-effects in address" msgstr "" #. Labels are never marked as global symbols. -#: config/cris/cris.c:3111 config/cris/cris.c:3142 +#: config/cris/cris.c:3042 config/cris/cris.c:3073 msgid "unexpected PIC symbol" msgstr "" -#: config/cris/cris.c:3115 +#: config/cris/cris.c:3046 msgid "PIC register isn't set up" msgstr "" -#: config/cris/cris.c:3128 config/cris/cris.c:3211 +#: config/cris/cris.c:3059 config/cris/cris.c:3142 msgid "unexpected address expression" msgstr "" -#: config/cris/cris.c:3146 +#: config/cris/cris.c:3077 msgid "emitting PIC operand, but PIC register isn't set up" msgstr "" -#: config/cris/cris.c:3155 +#: config/cris/cris.c:3086 msgid "unexpected NOTE as addr_const:" msgstr "" @@ -9020,79 +8640,79 @@ msgstr "" msgid "For elinux, request a specified stack-size for this program" msgstr "" -#: config/cris/cris.h:363 +#: 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:369 +#: config/cris/cris.h:368 msgid "Compile for ETRAX 4 (CRIS v3)" msgstr "" -#: config/cris/cris.h:374 +#: config/cris/cris.h:373 msgid "Compile for ETRAX 100 (CRIS v8)" msgstr "" -#: config/cris/cris.h:378 +#: config/cris/cris.h:377 msgid "Emit verbose debug information in assembly code" msgstr "" -#: config/cris/cris.h:381 +#: config/cris/cris.h:380 msgid "Do not use condition codes from normal instructions" msgstr "" -#: config/cris/cris.h:385 +#: config/cris/cris.h:384 msgid "Do not emit addressing modes with side-effect assignment" msgstr "" -#: config/cris/cris.h:388 +#: config/cris/cris.h:387 msgid "Do not tune stack alignment" msgstr "" -#: config/cris/cris.h:391 +#: config/cris/cris.h:390 msgid "Do not tune writable data alignment" msgstr "" -#: config/cris/cris.h:394 +#: config/cris/cris.h:393 msgid "Do not tune code and read-only data alignment" msgstr "" -#: config/cris/cris.h:403 +#: config/cris/cris.h:402 msgid "Align code and data to 32 bits" msgstr "" -#: config/cris/cris.h:416 +#: config/cris/cris.h:415 msgid "Don't align items in code or data" msgstr "" -#: config/cris/cris.h:419 +#: 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:423 +#: 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:429 +#: config/cris/cris.h:428 msgid "Override -mbest-lib-options" msgstr "" -#: config/cris/cris.h:461 +#: config/cris/cris.h:460 msgid "Generate code for the specified chip or CPU version" msgstr "" -#: config/cris/cris.h:463 +#: config/cris/cris.h:462 msgid "Tune alignment for the specified chip or CPU version" msgstr "" -#: config/cris/cris.h:465 +#: config/cris/cris.h:464 msgid "Warn when a stackframe is larger than the specified size" msgstr "" #. Node: Profiling -#: config/cris/cris.h:1048 +#: config/cris/cris.h:1031 msgid "no FUNCTION_PROFILER for CRIS" msgstr "" @@ -9100,46 +8720,46 @@ msgstr "" msgid "Together with -fpic and -fPIC, do not use GOTPLT references" msgstr "" -#: config/fr30/fr30.c:461 +#: config/fr30/fr30.c:463 msgid "fr30_print_operand_address: unhandled address" msgstr "" -#: config/fr30/fr30.c:485 +#: config/fr30/fr30.c:487 #, c-format msgid "fr30_print_operand: unrecognized %%p code" msgstr "" -#: config/fr30/fr30.c:505 +#: config/fr30/fr30.c:507 #, c-format msgid "fr30_print_operand: unrecognized %%b code" msgstr "" -#: config/fr30/fr30.c:526 +#: config/fr30/fr30.c:528 #, c-format msgid "fr30_print_operand: unrecognized %%B code" msgstr "" -#: config/fr30/fr30.c:534 +#: config/fr30/fr30.c:536 #, c-format msgid "fr30_print_operand: invalid operand to %%A code" msgstr "" -#: config/fr30/fr30.c:551 +#: config/fr30/fr30.c:553 #, c-format msgid "fr30_print_operand: invalid %%x code" msgstr "" -#: config/fr30/fr30.c:558 +#: config/fr30/fr30.c:560 #, c-format msgid "fr30_print_operand: invalid %%F code" msgstr "" -#: config/fr30/fr30.c:575 +#: config/fr30/fr30.c:577 msgid "fr30_print_operand: unknown code" msgstr "" -#: config/fr30/fr30.c:604 config/fr30/fr30.c:613 config/fr30/fr30.c:624 -#: config/fr30/fr30.c:637 +#: config/fr30/fr30.c:606 config/fr30/fr30.c:615 config/fr30/fr30.c:626 +#: config/fr30/fr30.c:639 msgid "fr30_print_operand: unhandled MEM" msgstr "" @@ -9147,141 +8767,141 @@ msgstr "" msgid "Assume small address space" msgstr "" -#: config/frv/frv.c:463 config/frv/frv.c:481 +#: config/frv/frv.c:563 config/frv/frv.c:590 #, c-format msgid "Unknown cpu: -mcpu=%s" msgstr "" -#: config/frv/frv.c:504 -msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)" -msgstr "" - -#: config/frv/frv.c:2463 +#: config/frv/frv.c:2513 msgid "Bad insn to frv_print_operand_address:" msgstr "" -#: config/frv/frv.c:2474 +#: config/frv/frv.c:2524 msgid "Bad register to frv_print_operand_memory_reference_reg:" msgstr "" -#: config/frv/frv.c:2513 config/frv/frv.c:2523 config/frv/frv.c:2532 -#: config/frv/frv.c:2553 config/frv/frv.c:2558 +#: config/frv/frv.c:2563 config/frv/frv.c:2573 config/frv/frv.c:2582 +#: config/frv/frv.c:2603 config/frv/frv.c:2608 msgid "Bad insn to frv_print_operand_memory_reference:" msgstr "" -#: config/frv/frv.c:2697 +#: config/frv/frv.c:2747 msgid "Bad insn in frv_print_operand, bad const_double" msgstr "" -#: config/frv/frv.c:2742 +#: config/frv/frv.c:2792 msgid "Bad insn to frv_print_operand, 'C' modifier:" msgstr "" -#: config/frv/frv.c:2765 +#: config/frv/frv.c:2815 msgid "Bad insn to frv_print_operand, 'c' modifier:" msgstr "" -#: config/frv/frv.c:2790 +#: config/frv/frv.c:2840 msgid "Bad insn to frv_print_operand, 'e' modifier:" msgstr "" -#: config/frv/frv.c:2798 +#: config/frv/frv.c:2848 msgid "Bad insn to frv_print_operand, 'F' modifier:" msgstr "" -#: config/frv/frv.c:2814 +#: config/frv/frv.c:2864 msgid "Bad insn to frv_print_operand, 'f' modifier:" msgstr "" -#: config/frv/frv.c:2828 +#: config/frv/frv.c:2878 msgid "Bad insn to frv_print_operand, 'g' modifier:" msgstr "" -#: config/frv/frv.c:2876 +#: config/frv/frv.c:2926 msgid "Bad insn to frv_print_operand, 'L' modifier:" msgstr "" -#: config/frv/frv.c:2889 +#: config/frv/frv.c:2939 msgid "Bad insn to frv_print_operand, 'M/N' modifier:" msgstr "" -#: config/frv/frv.c:2910 +#: config/frv/frv.c:2960 msgid "Bad insn to frv_print_operand, 'O' modifier:" msgstr "" -#: config/frv/frv.c:2928 +#: config/frv/frv.c:2978 msgid "Bad insn to frv_print_operand, P modifier:" msgstr "" -#: config/frv/frv.c:2948 +#: config/frv/frv.c:2998 msgid "Bad insn in frv_print_operand, z case" msgstr "" -#: config/frv/frv.c:2979 +#: config/frv/frv.c:3029 msgid "Bad insn in frv_print_operand, 0 case" msgstr "" -#: config/frv/frv.c:2984 +#: config/frv/frv.c:3034 msgid "frv_print_operand: unknown code" msgstr "" -#: config/frv/frv.c:5881 +#: config/frv/frv.c:5799 msgid "Bad output_move_single operand" msgstr "" -#: config/frv/frv.c:6008 +#: config/frv/frv.c:5926 msgid "Bad output_move_double operand" msgstr "" -#: config/frv/frv.c:6150 +#: config/frv/frv.c:6068 msgid "Bad output_condmove_single operand" msgstr "" -#: config/frv/frv.c:8453 -msgid "frv_registers_update" -msgstr "" - -#: config/frv/frv.c:8610 -msgid "frv_registers_used_p" -msgstr "" - -#: config/frv/frv.c:8736 -msgid "frv_registers_set_p" -msgstr "" - -#: config/frv/frv.c:9332 +#: config/frv/frv.c:9563 msgid "accumulator is not a constant integer" msgstr "" -#: config/frv/frv.c:9337 +#: config/frv/frv.c:9568 msgid "accumulator number is out of bounds" msgstr "" -#: config/frv/frv.c:9348 +#: config/frv/frv.c:9579 #, c-format msgid "inappropriate accumulator for `%s'" msgstr "" -#: config/frv/frv.c:9408 +#: config/frv/frv.c:9645 +msgid "invalid IACC argument" +msgstr "" + +#: config/frv/frv.c:9668 #, c-format msgid "`%s' expects a constant argument" msgstr "" -#: config/frv/frv.c:9413 +#: config/frv/frv.c:9673 #, c-format msgid "constant argument out of range for `%s'" msgstr "" -#: config/frv/frv.c:9760 +#: config/frv/frv.c:10070 msgid "media functions are not available unless -mmedia is used" msgstr "" -#: config/frv/frv.c:9772 +#: config/frv/frv.c:10082 msgid "this media function is only available on the fr500" msgstr "" -#: config/frv/frv.c:9800 -msgid "this media function is only available on the fr400" +#: config/frv/frv.c:10110 +msgid "this media function is only available on the fr400 and fr550" +msgstr "" + +#: config/frv/frv.c:10129 +msgid "this builtin function is only available on the fr405 and fr450" +msgstr "" + +#: config/frv/frv.c:10138 +msgid "this builtin function is only available on the fr500 and fr550" +msgstr "" + +#: config/frv/frv.c:10150 +msgid "this builtin function is only available on the fr450" msgstr "" #. This macro is a C statement to print on `stderr' a string describing the @@ -9293,16 +8913,16 @@ msgstr "" #. #else #. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)"); #. #endif -#: config/frv/frv.h:554 +#: config/frv/frv.h:542 #, c-format msgid " (frv)" msgstr "" -#: config/h8300/h8300.c:288 +#: config/h8300/h8300.c:358 msgid "-ms2600 is used without -ms" msgstr "" -#: config/h8300/h8300.c:294 +#: config/h8300/h8300.c:364 msgid "-mn is used without -mh or -ms" msgstr "" @@ -9311,290 +8931,286 @@ 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:145 +#: config/h8300/h8300.h:159 msgid "Generate H8S code" msgstr "" -#: config/h8300/h8300.h:146 +#: config/h8300/h8300.h:160 msgid "Do not generate H8S code" msgstr "" -#: config/h8300/h8300.h:147 +#: config/h8300/h8300.h:161 +msgid "Generate H8SX code" +msgstr "" + +#: config/h8300/h8300.h:162 +msgid "Do not generate H8SX code" +msgstr "" + +#: config/h8300/h8300.h:163 msgid "Generate H8S/2600 code" msgstr "" -#: config/h8300/h8300.h:148 +#: config/h8300/h8300.h:164 msgid "Do not generate H8S/2600 code" msgstr "" -#: config/h8300/h8300.h:149 +#: config/h8300/h8300.h:165 msgid "Make integers 32 bits wide" msgstr "" -#: config/h8300/h8300.h:152 +#: config/h8300/h8300.h:168 msgid "Use registers for argument passing" msgstr "" -#: config/h8300/h8300.h:154 +#: config/h8300/h8300.h:170 msgid "Do not use registers for argument passing" msgstr "" -#: config/h8300/h8300.h:156 +#: config/h8300/h8300.h:172 msgid "Consider access to byte sized memory slow" msgstr "" -#: config/h8300/h8300.h:157 +#: config/h8300/h8300.h:173 msgid "Enable linker relaxing" msgstr "" -#: config/h8300/h8300.h:158 +#: config/h8300/h8300.h:174 msgid "Generate H8/300H code" msgstr "" -#: config/h8300/h8300.h:159 +#: config/h8300/h8300.h:175 msgid "Enable the normal mode" msgstr "" -#: config/h8300/h8300.h:160 +#: config/h8300/h8300.h:176 msgid "Do not generate H8/300H code" msgstr "" -#: config/h8300/h8300.h:161 +#: config/h8300/h8300.h:177 msgid "Use H8/300 alignment rules" msgstr "" -#: config/i386/i386.c:1227 +#: config/i386/i386.c:1242 #, c-format msgid "code model %s not supported in PIC mode" msgstr "" -#: config/i386/i386.c:1237 config/sparc/sparc.c:399 +#: config/i386/i386.c:1252 config/sparc/sparc.c:575 #, c-format msgid "bad value (%s) for -mcmodel= switch" msgstr "" -#: config/i386/i386.c:1252 +#: config/i386/i386.c:1267 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "" -#: config/i386/i386.c:1255 +#: config/i386/i386.c:1270 #, c-format msgid "code model `%s' not supported in the %s bit mode" msgstr "" -#: config/i386/i386.c:1258 +#: config/i386/i386.c:1273 msgid "code model `large' not supported yet" msgstr "" -#: config/i386/i386.c:1260 +#: config/i386/i386.c:1275 #, c-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:1290 config/i386/i386.c:1302 +#: config/i386/i386.c:1316 config/i386/i386.c:1330 msgid "CPU you selected does not support x86-64 instruction set" msgstr "" -#: config/i386/i386.c:1295 config/iq2000/iq2000.c:1862 +#: config/i386/i386.c:1323 config/iq2000/iq2000.c:1671 #, c-format msgid "bad value (%s) for -march= switch" msgstr "" -#: config/i386/i386.c:1308 +#: config/i386/i386.c:1342 #, c-format msgid "bad value (%s) for -mtune= switch" msgstr "" -#: config/i386/i386.c:1325 +#: config/i386/i386.c:1359 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1338 +#: config/i386/i386.c:1372 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "" -#: config/i386/i386.c:1343 config/i386/i386.c:1356 config/i386/i386.c:1369 +#: config/i386/i386.c:1377 config/i386/i386.c:1390 config/i386/i386.c:1403 #, c-format msgid "-malign-loops=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1351 +#: config/i386/i386.c:1385 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "" -#: config/i386/i386.c:1364 +#: config/i386/i386.c:1398 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "" -#: config/i386/i386.c:1402 +#: config/i386/i386.c:1436 #, c-format msgid "-mpreferred-stack-boundary=%d is not between %d and 12" msgstr "" -#: config/i386/i386.c:1414 +#: config/i386/i386.c:1448 #, c-format msgid "-mbranch-cost=%d is not between 0 and 5" msgstr "" -#: config/i386/i386.c:1426 +#: config/i386/i386.c:1460 #, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "" -#: config/i386/i386.c:1455 +#: config/i386/i386.c:1489 msgid "-malign-double makes no sense in the 64bit mode" msgstr "" -#: config/i386/i386.c:1457 +#: config/i386/i386.c:1491 msgid "-mrtd calling convention not supported in the 64bit mode" msgstr "" -#: config/i386/i386.c:1479 config/i386/i386.c:1490 +#: config/i386/i386.c:1513 config/i386/i386.c:1524 msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "" -#: config/i386/i386.c:1495 +#: config/i386/i386.c:1529 msgid "387 instruction set disabled, using SSE arithmetics" msgstr "" -#: config/i386/i386.c:1502 +#: config/i386/i386.c:1536 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "" -#: config/i386/i386.c:1650 config/i386/i386.c:1661 +#: config/i386/i386.c:1691 config/i386/i386.c:1702 msgid "fastcall and stdcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:1654 config/i386/i386.c:1710 +#: config/i386/i386.c:1695 config/i386/i386.c:1751 msgid "fastcall and regparm attributes are not compatible" msgstr "" -#: config/i386/i386.c:1697 +#: config/i386/i386.c:1738 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "" -#: config/i386/i386.c:1703 +#: config/i386/i386.c:1744 #, c-format msgid "argument to `%s' attribute larger than %d" msgstr "" -#: config/i386/i386.c:2669 +#: config/i386/i386.c:2760 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2685 +#: config/i386/i386.c:2776 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2913 +#: config/i386/i386.c:3022 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6874 +#: config/i386/i386.c:5903 msgid "invalid UNSPEC as operand" msgstr "" -#: config/i386/i386.c:7132 +#: config/i386/i386.c:6161 msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:7147 +#: config/i386/i386.c:6176 msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:7462 +#: config/i386/i386.c:6491 msgid "" "operand is neither a constant nor a condition code, invalid operand code 'c'" msgstr "" -#: config/i386/i386.c:7508 +#: config/i386/i386.c:6537 #, c-format msgid "invalid operand code `%c'" msgstr "" -#: config/i386/i386.c:7551 +#: config/i386/i386.c:6580 msgid "invalid constraints for operand" msgstr "" -#: config/i386/i386.c:12072 +#: config/i386/i386.c:11316 msgid "unknown insn mode" msgstr "" -#: config/i386/i386.c:13944 config/i386/i386.c:13980 +#: config/i386/i386.c:13175 config/i386/i386.c:13211 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "" -#: config/i386/i386.c:14208 +#: config/i386/i386.c:13439 msgid "shift must be an immediate" msgstr "" -#: config/i386/i386.c:15260 +#: config/i386/i386.c:14489 #, c-format msgid "`%s' incompatible attribute ignored" msgstr "" -#: config/i386/winnt.c:104 -msgid "%Jfunction `%D' definition is marked dllimport." -msgstr "" - -#: 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:149 +#: config/i386/winnt.c:74 #, c-format msgid "`%s' attribute only applies to variables" msgstr "" -#: config/i386/winnt.c:248 +#: config/i386/winnt.c:173 msgid "" "%Jfunction '%D' is defined after prior declaration as dllimport: attribute " "ignored" msgstr "" -#: config/i386/winnt.c:259 +#: config/i386/winnt.c:184 msgid "%Jinline function '%D' is declared as dllimport: attribute ignored." msgstr "" -#: config/i386/winnt.c:271 +#: config/i386/winnt.c:196 msgid "%Jdefinition of static data member '%D' of dllimport'd class." msgstr "" -#: config/i386/winnt.c:330 +#: config/i386/winnt.c:256 msgid "%Jinconsistent dll linkage for '%D', dllexport assumed." msgstr "" -#: config/i386/winnt.c:372 +#: config/i386/winnt.c:300 config/sh/symbian.c:279 #, c-format msgid "`%s' declared as both exported to and imported from a DLL" msgstr "" -#: config/i386/winnt.c:381 +#: config/i386/winnt.c:309 msgid "" "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external " "linkage." msgstr "" -#: config/i386/winnt.c:530 +#: config/i386/winnt.c:448 msgid "%J'%D' defined locally after being referenced with dllimport linkage" msgstr "" -#: config/i386/winnt.c:533 +#: config/i386/winnt.c:451 msgid "" "%J'%D' redeclared without dllimport attribute after being referenced with " "dllimport linkage" msgstr "" -#: config/i386/winnt.c:707 +#: config/i386/winnt.c:618 msgid "%J'%D' causes a section type conflict" msgstr "" @@ -9634,7 +9250,7 @@ msgstr "" msgid "Use Mingw-specific thread support" msgstr "" -#: config/i386/cygming.h:190 +#: config/i386/cygming.h:182 #, c-format msgid "-f%s ignored for target (all code is position independent)" msgstr "" @@ -9643,7 +9259,7 @@ msgstr "" msgid "-mbnu210 is ignored (option is obsolete)" msgstr "" -#: config/i386/i386-interix.h:256 +#: config/i386/i386-interix.h:257 msgid "ms-bitfields not supported for objc" msgstr "" @@ -9653,167 +9269,167 @@ msgstr "" #. Deprecated. #. Deprecated. #. Deprecated. -#: config/i386/i386.h:344 +#: config/i386/i386.h:345 msgid "Alternate calling convention" msgstr "" -#: config/i386/i386.h:346 config/m68k/m68k.h:343 config/ns32k/ns32k.h:144 +#: config/i386/i386.h:347 config/m68k/m68k.h:336 config/ns32k/ns32k.h:144 msgid "Use normal calling convention" msgstr "" -#: config/i386/i386.h:348 +#: config/i386/i386.h:349 msgid "Align some doubles on dword boundary" msgstr "" -#: config/i386/i386.h:350 +#: config/i386/i386.h:351 msgid "Align doubles on word boundary" msgstr "" -#: config/i386/i386.h:352 +#: config/i386/i386.h:353 msgid "Uninitialized locals in .bss" msgstr "" -#: config/i386/i386.h:354 +#: config/i386/i386.h:355 msgid "Uninitialized locals in .data" msgstr "" -#: config/i386/i386.h:356 config/m68k/linux.h:42 config/ns32k/ns32k.h:167 +#: config/i386/i386.h:357 config/m68k/linux.h:42 config/ns32k/ns32k.h:167 msgid "Use IEEE math for fp comparisons" msgstr "" -#: config/i386/i386.h:358 config/ns32k/ns32k.h:169 +#: config/i386/i386.h:359 config/ns32k/ns32k.h:169 msgid "Do not use IEEE math for fp comparisons" msgstr "" -#: config/i386/i386.h:360 +#: config/i386/i386.h:361 msgid "Return values of functions in FPU registers" msgstr "" -#: config/i386/i386.h:362 +#: config/i386/i386.h:363 msgid "Do not return values of functions in FPU registers" msgstr "" -#: config/i386/i386.h:364 +#: config/i386/i386.h:365 msgid "Do not generate sin, cos, sqrt for FPU" msgstr "" -#: config/i386/i386.h:366 +#: config/i386/i386.h:367 msgid "Generate sin, cos, sqrt for FPU" msgstr "" -#: config/i386/i386.h:368 +#: config/i386/i386.h:369 msgid "Omit the frame pointer in leaf functions" msgstr "" -#: config/i386/i386.h:371 +#: config/i386/i386.h:372 msgid "Enable stack probing" msgstr "" #. undocumented #. undocumented -#: config/i386/i386.h:376 +#: config/i386/i386.h:377 msgid "Align destination of the string operations" msgstr "" -#: config/i386/i386.h:378 +#: config/i386/i386.h:379 msgid "Do not align destination of the string operations" msgstr "" -#: config/i386/i386.h:380 +#: config/i386/i386.h:381 msgid "Inline all known string operations" msgstr "" -#: config/i386/i386.h:382 +#: config/i386/i386.h:383 msgid "Do not inline all known string operations" msgstr "" -#: config/i386/i386.h:384 config/i386/i386.h:388 +#: config/i386/i386.h:385 config/i386/i386.h:389 msgid "Use push instructions to save outgoing arguments" msgstr "" -#: config/i386/i386.h:386 config/i386/i386.h:390 +#: config/i386/i386.h:387 config/i386/i386.h:391 msgid "Do not use push instructions to save outgoing arguments" msgstr "" -#: config/i386/i386.h:392 +#: config/i386/i386.h:393 msgid "Support MMX built-in functions" msgstr "" -#: config/i386/i386.h:394 +#: config/i386/i386.h:395 msgid "Do not support MMX built-in functions" msgstr "" -#: config/i386/i386.h:396 +#: config/i386/i386.h:397 msgid "Support 3DNow! built-in functions" msgstr "" -#: config/i386/i386.h:398 +#: config/i386/i386.h:399 msgid "Do not support 3DNow! built-in functions" msgstr "" -#: config/i386/i386.h:400 +#: config/i386/i386.h:401 msgid "Support MMX and SSE built-in functions and code generation" msgstr "" -#: config/i386/i386.h:402 +#: config/i386/i386.h:403 msgid "Do not support MMX and SSE built-in functions and code generation" msgstr "" -#: config/i386/i386.h:404 +#: config/i386/i386.h:405 msgid "Support MMX, SSE and SSE2 built-in functions and code generation" msgstr "" -#: config/i386/i386.h:406 +#: config/i386/i386.h:407 msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation" msgstr "" -#: config/i386/i386.h:408 +#: config/i386/i386.h:409 msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation" msgstr "" -#: config/i386/i386.h:410 +#: config/i386/i386.h:411 msgid "" "Do not support MMX, SSE, SSE2 and SSE3 built-in functions and code generation" msgstr "" -#: config/i386/i386.h:412 +#: config/i386/i386.h:413 msgid "sizeof(long double) is 16" msgstr "" -#: config/i386/i386.h:414 +#: config/i386/i386.h:415 msgid "sizeof(long double) is 12" msgstr "" -#: config/i386/i386.h:416 +#: config/i386/i386.h:417 msgid "Generate 64bit x86-64 code" msgstr "" -#: config/i386/i386.h:418 +#: config/i386/i386.h:419 msgid "Generate 32bit i386 code" msgstr "" -#: config/i386/i386.h:420 +#: config/i386/i386.h:421 msgid "Use native (MS) bitfield layout" msgstr "" -#: config/i386/i386.h:422 +#: config/i386/i386.h:423 msgid "Use gcc default bitfield layout" msgstr "" -#: config/i386/i386.h:424 +#: config/i386/i386.h:425 msgid "Use red-zone in the x86-64 code" msgstr "" -#: config/i386/i386.h:426 +#: config/i386/i386.h:427 msgid "Do not use red-zone in the x86-64 code" msgstr "" -#: config/i386/i386.h:428 +#: config/i386/i386.h:429 #, c-format msgid "Use direct references against %gs when accessing tls data" msgstr "" -#: config/i386/i386.h:430 +#: config/i386/i386.h:431 #, c-format msgid "Do not use direct references against %gs when accessing tls data" msgstr "" @@ -9827,68 +9443,58 @@ 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:464 config/ia64/ia64.h:277 config/rs6000/rs6000.h:445 -#: config/s390/s390.h:146 config/sparc/sparc.h:633 +#: config/i386/i386.h:465 config/ia64/ia64.h:286 config/rs6000/rs6000.h:453 +#: config/s390/s390.h:152 config/sparc/sparc.h:711 msgid "Schedule code for given CPU" msgstr "" -#: config/i386/i386.h:466 +#: config/i386/i386.h:467 msgid "Generate floating point mathematics using given instruction set" msgstr "" -#: config/i386/i386.h:468 config/s390/s390.h:148 +#: config/i386/i386.h:469 config/s390/s390.h:154 msgid "Generate code for given CPU" msgstr "" -#: config/i386/i386.h:470 +#: config/i386/i386.h:471 msgid "Number of registers used to pass integer arguments" msgstr "" -#. 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. -#. -#. 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:472 config/m68k/m68k.h:359 +#: config/i386/i386.h:473 msgid "Loop code aligned to this power of 2" msgstr "" -#: config/i386/i386.h:474 config/m68k/m68k.h:361 +#: config/i386/i386.h:475 msgid "Jump targets are aligned to this power of 2" msgstr "" -#: config/i386/i386.h:476 config/m68k/m68k.h:363 +#: config/i386/i386.h:477 msgid "Function starts are aligned to this power of 2" msgstr "" -#: config/i386/i386.h:479 +#: config/i386/i386.h:480 msgid "Attempt to keep stack aligned to this power of 2" msgstr "" -#: config/i386/i386.h:481 +#: config/i386/i386.h:482 msgid "Branches are this expensive (1-5, arbitrary units)" msgstr "" -#: config/i386/i386.h:483 +#: config/i386/i386.h:484 msgid "Use given x86-64 code model" msgstr "" #. Undocumented. #. Undocumented. -#: config/i386/i386.h:489 +#: config/i386/i386.h:490 msgid "Use given assembler dialect" msgstr "" -#: config/i386/i386.h:491 +#: config/i386/i386.h:492 msgid "Use given thread-local storage dialect" msgstr "" -#: config/i386/sco5.h:292 +#: config/i386/sco5.h:290 msgid "Generate ELF output" msgstr "" @@ -9925,58 +9531,58 @@ msgstr "" msgid "malformed #pragma builtin" msgstr "" -#: config/ia64/ia64.c:1049 config/m32r/m32r.c:366 +#: config/ia64/ia64.c:480 config/m32r/m32r.c:356 #, c-format msgid "invalid argument of `%s' attribute" msgstr "" -#: config/ia64/ia64.c:1061 +#: config/ia64/ia64.c:492 msgid "%Jan address area attribute cannot be specified for local variables" msgstr "" -#: config/ia64/ia64.c:1068 +#: config/ia64/ia64.c:499 msgid "%Jaddress area of '%s' conflicts with previous declaration" msgstr "" -#: config/ia64/ia64.c:1075 +#: config/ia64/ia64.c:506 msgid "%Jaddress area attribute cannot be specified for functions" msgstr "" -#: config/ia64/ia64.c:4334 +#: config/ia64/ia64.c:3754 msgid "ia64_print_operand: unknown code" msgstr "" -#: config/ia64/ia64.c:4674 +#: config/ia64/ia64.c:4094 config/pa/pa.c:316 msgid "value of -mfixed-range must have form REG1-REG2" msgstr "" -#: config/ia64/ia64.c:4701 +#: config/ia64/ia64.c:4121 config/pa/pa.c:343 #, c-format msgid "%s-%s is an empty range" msgstr "" -#: config/ia64/ia64.c:4752 +#: config/ia64/ia64.c:4172 msgid "cannot optimize floating point division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4769 +#: config/ia64/ia64.c:4189 msgid "cannot optimize integer division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4786 +#: config/ia64/ia64.c:4206 msgid "cannot optimize square root for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4800 +#: config/ia64/ia64.c:4220 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4812 +#: config/ia64/ia64.c:4232 #, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "" -#: config/ia64/ia64.c:4828 +#: config/ia64/ia64.c:4248 #, c-format msgid "bad value (%s) for -tune= switch" msgstr "" @@ -9984,171 +9590,171 @@ 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:173 +#: config/ia64/ia64.h:182 msgid "Generate big endian code" msgstr "" -#: config/ia64/ia64.h:175 config/mcore/mcore.h:154 +#: config/ia64/ia64.h:184 config/mcore/mcore.h:146 msgid "Generate little endian code" msgstr "" -#: config/ia64/ia64.h:177 +#: config/ia64/ia64.h:186 msgid "Generate code for GNU as" msgstr "" -#: config/ia64/ia64.h:179 +#: config/ia64/ia64.h:188 msgid "Generate code for Intel as" msgstr "" -#: config/ia64/ia64.h:181 +#: config/ia64/ia64.h:190 msgid "Generate code for GNU ld" msgstr "" -#: config/ia64/ia64.h:183 +#: config/ia64/ia64.h:192 msgid "Generate code for Intel ld" msgstr "" -#: config/ia64/ia64.h:185 +#: config/ia64/ia64.h:194 msgid "Generate code without GP reg" msgstr "" -#: config/ia64/ia64.h:187 +#: config/ia64/ia64.h:196 msgid "Emit stop bits before and after volatile extended asms" msgstr "" -#: config/ia64/ia64.h:189 +#: config/ia64/ia64.h:198 msgid "Don't emit stop bits before and after volatile extended asms" msgstr "" -#: config/ia64/ia64.h:191 +#: config/ia64/ia64.h:200 msgid "Emit code for Itanium (TM) processor B step" msgstr "" -#: config/ia64/ia64.h:193 +#: config/ia64/ia64.h:202 msgid "Use in/loc/out register names" msgstr "" -#: config/ia64/ia64.h:195 +#: config/ia64/ia64.h:204 msgid "Disable use of sdata/scommon/sbss" msgstr "" -#: config/ia64/ia64.h:197 +#: config/ia64/ia64.h:206 msgid "Enable use of sdata/scommon/sbss" msgstr "" -#: config/ia64/ia64.h:199 +#: config/ia64/ia64.h:208 msgid "gp is constant (but save/restore gp on indirect calls)" msgstr "" -#: config/ia64/ia64.h:201 +#: config/ia64/ia64.h:210 msgid "Generate self-relocatable code" msgstr "" -#: config/ia64/ia64.h:203 +#: config/ia64/ia64.h:212 msgid "Generate inline floating point division, optimize for latency" msgstr "" -#: config/ia64/ia64.h:205 +#: config/ia64/ia64.h:214 msgid "Generate inline floating point division, optimize for throughput" msgstr "" -#: config/ia64/ia64.h:208 +#: config/ia64/ia64.h:217 msgid "Do not inline floating point division" msgstr "" -#: config/ia64/ia64.h:210 +#: config/ia64/ia64.h:219 msgid "Generate inline integer division, optimize for latency" msgstr "" -#: config/ia64/ia64.h:212 +#: config/ia64/ia64.h:221 msgid "Generate inline integer division, optimize for throughput" msgstr "" -#: config/ia64/ia64.h:214 +#: config/ia64/ia64.h:223 msgid "Do not inline integer division" msgstr "" -#: config/ia64/ia64.h:216 +#: config/ia64/ia64.h:225 msgid "Generate inline square root, optimize for latency" msgstr "" -#: config/ia64/ia64.h:218 +#: config/ia64/ia64.h:227 msgid "Generate inline square root, optimize for throughput" msgstr "" -#: config/ia64/ia64.h:220 +#: config/ia64/ia64.h:229 msgid "Do not inline square root" msgstr "" -#: config/ia64/ia64.h:222 +#: config/ia64/ia64.h:231 msgid "Enable Dwarf 2 line debug info via GNU as" msgstr "" -#: config/ia64/ia64.h:224 +#: config/ia64/ia64.h:233 msgid "Disable Dwarf 2 line debug info via GNU as" msgstr "" -#: config/ia64/ia64.h:226 +#: config/ia64/ia64.h:235 msgid "Enable earlier placing stop bits for better scheduling" msgstr "" -#: config/ia64/ia64.h:228 +#: config/ia64/ia64.h:237 msgid "Disable earlier placing stop bits" msgstr "" -#: config/ia64/ia64.h:273 +#: config/ia64/ia64.h:282 msgid "Specify range of registers to make fixed" msgstr "" -#: config/ip2k/ip2k.c:1083 +#: config/ip2k/ip2k.c:1086 msgid "bad operand" msgstr "" -#: config/iq2000/iq2000.c:1838 +#: config/iq2000/iq2000.c:1647 #, c-format msgid "bad value (%s) for -mcpu= switch" msgstr "" -#: config/iq2000/iq2000.c:1867 +#: config/iq2000/iq2000.c:1676 #, c-format msgid "The compiler does not support -march=%s." msgstr "" -#: config/iq2000/iq2000.c:2254 +#: config/iq2000/iq2000.c:2063 #, c-format msgid "gp_offset (%ld) or end_offset (%ld) is less than zero." msgstr "" -#: config/iq2000/iq2000.c:3040 +#: config/iq2000/iq2000.c:2845 #, c-format msgid "argument `%d' is not a constant" msgstr "" -#: config/iq2000/iq2000.c:3343 config/xtensa/xtensa.c:2104 +#: config/iq2000/iq2000.c:3148 config/xtensa/xtensa.c:2033 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "" -#: config/iq2000/iq2000.c:3498 +#: config/iq2000/iq2000.c:3303 #, c-format msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "" -#: config/iq2000/iq2000.c:3507 config/mips/mips.c:5426 -#: config/xtensa/xtensa.c:1958 +#: config/iq2000/iq2000.c:3312 config/mips/mips.c:4809 +#: config/xtensa/xtensa.c:1887 msgid "PRINT_OPERAND null pointer" msgstr "" -#: config/iq2000/iq2000.c:3576 +#: config/iq2000/iq2000.c:3381 #, c-format msgid "invalid %%P operand" msgstr "" -#: config/iq2000/iq2000.c:3584 config/rs6000/rs6000.c:9415 +#: config/iq2000/iq2000.c:3389 config/rs6000/rs6000.c:10124 #, c-format msgid "invalid %%p value" msgstr "" -#: config/iq2000/iq2000.c:3648 config/mips/mips.c:5548 +#: config/iq2000/iq2000.c:3453 config/mips/mips.c:4935 #, c-format msgid "invalid use of %%d, %%x, or %%X" msgstr "" @@ -10165,87 +9771,87 @@ msgstr "" msgid "Don't use GP relative sdata/sbss sections" msgstr "" -#: config/iq2000/iq2000.h:78 config/mips/mips.h:602 +#: config/iq2000/iq2000.h:78 config/mips/mips.h:579 msgid "Use ROM instead of RAM" msgstr "" -#: config/iq2000/iq2000.h:80 config/mips/mips.h:604 +#: config/iq2000/iq2000.h:80 config/mips/mips.h:581 msgid "Don't use ROM instead of RAM" msgstr "" -#: config/iq2000/iq2000.h:82 config/mips/mips.h:606 +#: config/iq2000/iq2000.h:82 config/mips/mips.h:583 msgid "Put uninitialized constants in ROM (needs -membedded-data)" msgstr "" -#: config/iq2000/iq2000.h:84 config/mips/mips.h:608 +#: config/iq2000/iq2000.h:84 config/mips/mips.h:585 msgid "Don't put uninitialized constants in ROM" msgstr "" -#: config/iq2000/iq2000.h:106 config/mips/mips.h:783 config/pa/pa.h:310 +#: config/iq2000/iq2000.h:106 config/mips/mips.h:770 msgid "Specify CPU for scheduling purposes" msgstr "" -#: config/iq2000/iq2000.h:108 config/mips/mips.h:785 +#: config/iq2000/iq2000.h:108 config/mips/mips.h:772 msgid "Specify CPU for code generation purposes" msgstr "" -#: config/m32r/m32r.c:184 +#: config/m32r/m32r.c:174 #, c-format msgid "bad value (%s) for -mmodel switch" msgstr "" -#: config/m32r/m32r.c:193 +#: config/m32r/m32r.c:183 #, c-format msgid "bad value (%s) for -msdata switch" msgstr "" -#: config/m32r/m32r.c:200 +#: config/m32r/m32r.c:190 #, c-format msgid "bad value (%s) for -flush-trap=n (0= found without a %%< in assembler pattern" msgstr "" -#: config/mips/mips.c:5403 +#: config/mips/mips.c:4786 #, c-format msgid "internal error: %%} found without a %%{ in assembler pattern" msgstr "" -#: config/mips/mips.c:5417 +#: config/mips/mips.c:4800 #, c-format msgid "PRINT_OPERAND: unknown punctuation '%c'" msgstr "" -#: config/mips/mips.c:5446 +#: config/mips/mips.c:4829 #, c-format msgid "PRINT_OPERAND, invalid insn for %%C" msgstr "" -#: config/mips/mips.c:5463 +#: config/mips/mips.c:4846 #, c-format msgid "PRINT_OPERAND, invalid insn for %%N" msgstr "" -#: config/mips/mips.c:5472 +#: config/mips/mips.c:4855 #, c-format msgid "PRINT_OPERAND, invalid insn for %%F" msgstr "" -#: config/mips/mips.c:5481 +#: config/mips/mips.c:4864 #, c-format msgid "PRINT_OPERAND, invalid insn for %%W" msgstr "" -#: config/mips/mips.c:5579 -msgid "PRINT_OPERAND, invalid operand for relocation" -msgstr "" - -#: config/mips/mips.c:8172 -#, c-format -msgid "can not handle inconsistent calls to `%s'" -msgstr "" - -#: config/mips/mips.c:9560 -msgid "the cpu name must be lower case" -msgstr "" - -#: config/mips/mips.c:9582 +#: config/mips/mips.c:4885 #, c-format -msgid "bad value (%s) for %s" +msgid "invalid %%Y value" msgstr "" -#: config/mips/mips.c:10108 -#, c-format -msgid "can't rewind temp file: %m" +#: config/mips/mips.c:4963 +msgid "PRINT_OPERAND, invalid operand for relocation" msgstr "" -#: config/mips/mips.c:10112 +#: config/mips/mips.c:7518 #, c-format -msgid "can't write to output file: %m" +msgid "cannot handle inconsistent calls to `%s'" msgstr "" -#: config/mips/mips.c:10115 -#, c-format -msgid "can't read from temp file: %m" +#: config/mips/mips.c:8908 +msgid "the cpu name must be lower case" msgstr "" -#: config/mips/mips.c:10118 +#: config/mips/mips.c:8930 #, c-format -msgid "can't close temp file: %m" +msgid "bad value (%s) for %s" msgstr "" #: config/mips/linux64.h:39 @@ -10807,75 +10374,63 @@ 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/mips/mips.h:544 +#: config/mips/mips.h:527 msgid "Use 64-bit int type" msgstr "" -#: config/mips/mips.h:546 +#: config/mips/mips.h:529 msgid "Use 64-bit long type" msgstr "" -#: config/mips/mips.h:548 +#: config/mips/mips.h:531 msgid "Use 32-bit long type" msgstr "" -#: config/mips/mips.h:550 +#: config/mips/mips.h:533 msgid "Optimize lui/addiu address loads" msgstr "" -#: config/mips/mips.h:552 +#: config/mips/mips.h:535 msgid "Don't optimize lui/addiu address loads" msgstr "" -#: config/mips/mips.h:554 -msgid "Use MIPS as" -msgstr "" - -#: config/mips/mips.h:556 -msgid "Use GNU as" -msgstr "" - -#: config/mips/mips.h:558 -msgid "Use symbolic register names" -msgstr "" - -#: config/mips/mips.h:560 -msgid "Don't use symbolic register names" +#: config/mips/mips.h:537 +msgid "Use GNU as (now ignored)" msgstr "" -#: config/mips/mips.h:562 config/mips/mips.h:564 +#: config/mips/mips.h:539 config/mips/mips.h:541 msgid "Use GP relative sdata/sbss sections (now ignored)" msgstr "" -#: config/mips/mips.h:566 config/mips/mips.h:568 +#: config/mips/mips.h:543 config/mips/mips.h:545 msgid "Don't use GP relative sdata/sbss sections (now ignored)" msgstr "" -#: config/mips/mips.h:570 +#: config/mips/mips.h:547 msgid "Output compiler statistics (now ignored)" msgstr "" -#: config/mips/mips.h:572 +#: config/mips/mips.h:549 msgid "Don't output compiler statistics" msgstr "" -#: config/mips/mips.h:574 +#: config/mips/mips.h:551 msgid "Don't optimize block moves" msgstr "" -#: config/mips/mips.h:576 +#: config/mips/mips.h:553 msgid "Optimize block moves" msgstr "" -#: config/mips/mips.h:578 +#: config/mips/mips.h:555 msgid "Use mips-tfile asm postpass" msgstr "" -#: config/mips/mips.h:580 +#: config/mips/mips.h:557 msgid "Don't use mips-tfile asm postpass" msgstr "" -#: config/mips/mips.h:582 config/pa/pa.h:266 +#: config/mips/mips.h:559 config/pa/pa.h:288 msgid "Use software floating point" msgstr "" @@ -10885,264 +10440,280 @@ 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:584 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:321 +#: config/mips/mips.h:561 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:329 msgid "Use hardware floating point" msgstr "" -#: config/mips/mips.h:586 +#: config/mips/mips.h:563 msgid "Use 64-bit FP registers" msgstr "" -#: config/mips/mips.h:588 +#: config/mips/mips.h:565 msgid "Use 32-bit FP registers" msgstr "" -#: config/mips/mips.h:590 +#: config/mips/mips.h:567 msgid "Use 64-bit general registers" msgstr "" -#: config/mips/mips.h:592 +#: config/mips/mips.h:569 msgid "Use 32-bit general registers" msgstr "" -#: config/mips/mips.h:594 +#: config/mips/mips.h:571 msgid "Use Irix PIC" msgstr "" -#: config/mips/mips.h:596 +#: config/mips/mips.h:573 msgid "Don't use Irix PIC" msgstr "" -#: config/mips/mips.h:598 +#: config/mips/mips.h:575 msgid "Use indirect calls" msgstr "" -#: config/mips/mips.h:600 +#: config/mips/mips.h:577 msgid "Don't use indirect calls" msgstr "" -#: config/mips/mips.h:610 +#: config/mips/mips.h:587 msgid "Use big-endian byte order" msgstr "" -#: config/mips/mips.h:612 +#: config/mips/mips.h:589 msgid "Use little-endian byte order" msgstr "" -#: config/mips/mips.h:614 +#: config/mips/mips.h:591 msgid "Use single (32-bit) FP only" msgstr "" -#: config/mips/mips.h:616 +#: config/mips/mips.h:593 msgid "Don't use single (32-bit) FP only" msgstr "" -#: config/mips/mips.h:618 +#: config/mips/mips.h:595 config/mips/mips.h:597 +msgid "Use paired-single floating point instructions" +msgstr "" + +#: config/mips/mips.h:599 config/mips/mips.h:601 +msgid "Use MIPS-3D instructions" +msgstr "" + +#: config/mips/mips.h:603 msgid "Use multiply accumulate" msgstr "" -#: config/mips/mips.h:620 +#: config/mips/mips.h:605 msgid "Don't use multiply accumulate" msgstr "" -#: config/mips/mips.h:622 +#: config/mips/mips.h:607 msgid "Don't generate fused multiply/add instructions" msgstr "" -#: config/mips/mips.h:624 config/rs6000/rs6000.h:337 +#: config/mips/mips.h:609 config/rs6000/rs6000.h:345 msgid "Generate fused multiply/add instructions" msgstr "" -#: config/mips/mips.h:626 +#: config/mips/mips.h:611 msgid "Perform VR4130-specific alignment optimizations" msgstr "" -#: config/mips/mips.h:628 +#: config/mips/mips.h:613 msgid "Don't perform VR4130-specific alignment optimizations" msgstr "" -#: config/mips/mips.h:630 +#: config/mips/mips.h:615 msgid "Work around early 4300 hardware bug" msgstr "" -#: config/mips/mips.h:632 +#: config/mips/mips.h:617 msgid "Don't work around early 4300 hardware bug" msgstr "" -#: config/mips/mips.h:634 +#: config/mips/mips.h:619 msgid "Work around errata for early SB-1 revision 2 cores" msgstr "" -#: config/mips/mips.h:636 +#: config/mips/mips.h:621 msgid "Don't work around errata for early SB-1 revision 2 cores" msgstr "" -#: config/mips/mips.h:638 +#: config/mips/mips.h:623 msgid "Work around R4000 errata" msgstr "" -#: config/mips/mips.h:640 +#: config/mips/mips.h:625 msgid "Don't work around R4000 errata" msgstr "" -#: config/mips/mips.h:642 +#: config/mips/mips.h:627 msgid "Work around R4400 errata" msgstr "" -#: config/mips/mips.h:644 +#: config/mips/mips.h:629 msgid "Don't work around R4400 errata" msgstr "" -#: config/mips/mips.h:646 +#: config/mips/mips.h:631 msgid "Work around certain VR4120 errata" msgstr "" -#: config/mips/mips.h:648 +#: config/mips/mips.h:633 msgid "Don't work around certain VR4120 errata" msgstr "" -#: config/mips/mips.h:650 +#: config/mips/mips.h:635 msgid "Trap on integer divide by zero" msgstr "" -#: config/mips/mips.h:652 +#: config/mips/mips.h:637 msgid "Don't trap on integer divide by zero" msgstr "" -#: config/mips/mips.h:654 +#: config/mips/mips.h:639 +msgid "Use trap to check for integer divide by zero" +msgstr "" + +#: config/mips/mips.h:641 +msgid "Use break to check for integer divide by zero" +msgstr "" + +#: config/mips/mips.h:643 msgid "Use Branch Likely instructions, overriding default for arch" msgstr "" -#: config/mips/mips.h:656 +#: config/mips/mips.h:645 msgid "Don't use Branch Likely instructions, overriding default for arch" msgstr "" -#: config/mips/mips.h:658 +#: config/mips/mips.h:647 msgid "Use NewABI-style %reloc() assembly operators" msgstr "" -#: config/mips/mips.h:660 +#: config/mips/mips.h:649 msgid "Use assembler macros instead of relocation operators" msgstr "" -#: config/mips/mips.h:662 +#: config/mips/mips.h:651 msgid "Generate mips16 code" msgstr "" -#: config/mips/mips.h:664 +#: config/mips/mips.h:653 msgid "Generate normal-mode code" msgstr "" -#: config/mips/mips.h:666 +#: config/mips/mips.h:655 msgid "Lift restrictions on GOT size" msgstr "" -#: config/mips/mips.h:668 +#: config/mips/mips.h:657 msgid "Do not lift restrictions on GOT size" msgstr "" -#: config/mips/mips.h:670 +#: config/mips/mips.h:659 msgid "FP exceptions are enabled" msgstr "" -#: config/mips/mips.h:672 +#: config/mips/mips.h:661 msgid "FP exceptions are not enabled" msgstr "" -#: config/mips/mips.h:789 +#: config/mips/mips.h:776 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:2426 +#: config/mips/mips.h:2329 msgid "mips16 function profiling" msgstr "" -#: config/mmix/mmix.c:225 +#: config/mmix/mmix.c:229 #, c-format msgid "-f%s not supported: ignored" msgstr "" -#: config/mmix/mmix.c:651 +#: config/mmix/mmix.c:657 #, c-format msgid "" "too large function value type, needs %d registers, have only %d registers " "for this" msgstr "" -#: config/mmix/mmix.c:821 +#: config/mmix/mmix.c:827 msgid "function_profiler support for MMIX" msgstr "" -#: config/mmix/mmix.c:843 +#: config/mmix/mmix.c:849 msgid "MMIX Internal: Last named vararg would not fit in a register" msgstr "" -#: config/mmix/mmix.c:1557 config/mmix/mmix.c:1687 +#: config/mmix/mmix.c:1458 config/mmix/mmix.c:1588 msgid "MMIX Internal: Expected a CONST_INT, not this" msgstr "" -#: config/mmix/mmix.c:1565 config/mmix/mmix.c:1589 config/mmix/mmix.c:1705 +#: config/mmix/mmix.c:1466 config/mmix/mmix.c:1490 config/mmix/mmix.c:1606 #, c-format msgid "MMIX Internal: Bad register: %d" msgstr "" -#: config/mmix/mmix.c:1636 +#: config/mmix/mmix.c:1537 msgid "MMIX Internal: Bad value for 'm', not a CONST_INT" msgstr "" -#: config/mmix/mmix.c:1655 +#: config/mmix/mmix.c:1556 msgid "MMIX Internal: Expected a register, not this" msgstr "" -#: config/mmix/mmix.c:1665 +#: config/mmix/mmix.c:1566 msgid "MMIX Internal: Expected a constant, not this" msgstr "" #. Presumably there's a missing case above if we get here. -#: config/mmix/mmix.c:1697 +#: config/mmix/mmix.c:1598 #, c-format msgid "MMIX Internal: Missing `%c' case in mmix_print_operand" msgstr "" #. We need the original here. -#: config/mmix/mmix.c:1749 +#: config/mmix/mmix.c:1650 msgid "MMIX Internal: Cannot decode this operand" msgstr "" -#: config/mmix/mmix.c:1806 +#: config/mmix/mmix.c:1707 msgid "MMIX Internal: This is not a recognized address" msgstr "" -#: config/mmix/mmix.c:1983 +#: config/mmix/mmix.c:1884 #, c-format msgid "stack frame not a multiple of 8 bytes: %d" msgstr "" -#: config/mmix/mmix.c:2222 +#: config/mmix/mmix.c:2123 #, c-format msgid "stack frame not a multiple of octabyte: %d" msgstr "" -#: config/mmix/mmix.c:2696 config/mmix/mmix.c:2760 +#: config/mmix/mmix.c:2597 config/mmix/mmix.c:2661 #, c-format msgid "MMIX Internal: %s is not a shiftable int" msgstr "" -#: config/mmix/mmix.c:2876 +#: config/mmix/mmix.c:2777 msgid "MMIX Internal: Trying to output invalidly reversed condition:" msgstr "" -#: config/mmix/mmix.c:2883 +#: config/mmix/mmix.c:2784 msgid "MMIX Internal: What's the CC of this?" msgstr "" -#: config/mmix/mmix.c:2887 +#: config/mmix/mmix.c:2788 msgid "MMIX Internal: What is the CC of this?" msgstr "" -#: config/mmix/mmix.c:2957 +#: config/mmix/mmix.c:2858 msgid "MMIX Internal: This is not a constant:" msgstr "" @@ -11237,7 +10808,7 @@ msgstr "" msgid "Do not work around hardware multiply bug" msgstr "" -#: config/ns32k/ns32k.h:142 config/s390/s390.h:125 +#: config/ns32k/ns32k.h:142 config/s390/s390.h:133 msgid "Don't use hardware fp" msgstr "" @@ -11309,150 +10880,205 @@ msgstr "" msgid "No \"Small register classes\" kludge" msgstr "" -#: config/pa/pa.c:319 +#: config/pa/pa.c:404 #, c-format msgid "" "unknown -mschedule= option (%s).\n" "Valid options are 700, 7100, 7100LC, 7200, 7300, and 8000\n" msgstr "" -#: config/pa/pa.c:344 +#: config/pa/pa.c:429 #, c-format msgid "" "unknown -march= option (%s).\n" "Valid options are 1.0, 1.1, and 2.0\n" msgstr "" -#: config/pa/pa.c:357 +#: config/pa/pa.c:449 +#, c-format +msgid "" +"unknown -munix= option (%s).\n" +"Valid options are 93, 95 and 98.\n" +msgstr "" + +#: config/pa/pa.c:454 +#, c-format +msgid "" +"unknown -munix= option (%s).\n" +"Valid options are 93 and 95.\n" +msgstr "" + +#: config/pa/pa.c:458 +#, c-format +msgid "" +"unknown -munix= option (%s).\n" +"Valid option is 93.\n" +msgstr "" + +#: config/pa/pa.c:475 msgid "PIC code generation is not supported in the portable runtime model\n" msgstr "" -#: config/pa/pa.c:362 +#: config/pa/pa.c:480 msgid "PIC code generation is not compatible with fast indirect calls\n" msgstr "" -#: config/pa/pa.c:367 +#: config/pa/pa.c:485 msgid "-g is only supported when using GAS on this processor," msgstr "" -#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:25 +#: config/pa/pa.c:486 +msgid "-g option disabled" +msgstr "" + +#: config/pa/pa-hpux.h:96 config/pa/pa64-hpux.h:25 msgid "Generate cpp defines for server IO" msgstr "" -#: config/pa/pa-hpux.h:93 config/pa/pa64-hpux.h:27 +#: config/pa/pa-hpux.h:97 config/pa/pa64-hpux.h:27 msgid "Generate cpp defines for workstation IO" msgstr "" +#: config/pa/pa-hpux10.h:84 +msgid "" +"Specify UNIX standard for predefines and linking.\n" +"Supported value is 93." +msgstr "" + +#: config/pa/pa-hpux1010.h:28 config/pa/pa-hpux11.h:98 +msgid "" +"Specify UNIX standard for predefines and linking.\n" +"Supported values are 93 and 95." +msgstr "" + +#: config/pa/pa-hpux11.h:81 +msgid "-munix=98 option required for C89 Amendment 1 features.\n" +msgstr "" + +#: config/pa/pa-hpux1111.h:28 +msgid "" +"Specify UNIX standard for predefines and linking.\n" +"Supported values are 93, 95 and 98." +msgstr "" + #. 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 +#: config/pa/pa.h:254 config/pa/pa.h:260 msgid "Generate PA1.1 code" msgstr "" -#: config/pa/pa.h:234 config/pa/pa.h:236 +#: config/pa/pa.h:256 config/pa/pa.h:258 msgid "Generate PA1.0 code" msgstr "" -#: config/pa/pa.h:240 +#: config/pa/pa.h:262 msgid "Generate PA2.0 code (requires binutils 2.10 or later)" msgstr "" -#: config/pa/pa.h:242 +#: config/pa/pa.h:264 msgid "Disable FP regs" msgstr "" -#: config/pa/pa.h:244 +#: config/pa/pa.h:266 msgid "Do not disable FP regs" msgstr "" -#: config/pa/pa.h:246 +#: config/pa/pa.h:268 msgid "Disable space regs" msgstr "" -#: config/pa/pa.h:248 +#: config/pa/pa.h:270 msgid "Do not disable space regs" msgstr "" -#: config/pa/pa.h:250 +#: config/pa/pa.h:272 msgid "Put jumps in call delay slots" msgstr "" -#: config/pa/pa.h:252 +#: config/pa/pa.h:274 msgid "Do not put jumps in call delay slots" msgstr "" -#: config/pa/pa.h:254 +#: config/pa/pa.h:276 msgid "Disable indexed addressing" msgstr "" -#: config/pa/pa.h:256 +#: config/pa/pa.h:278 msgid "Do not disable indexed addressing" msgstr "" -#: config/pa/pa.h:258 +#: config/pa/pa.h:280 msgid "Use portable calling conventions" msgstr "" -#: config/pa/pa.h:260 +#: config/pa/pa.h:282 msgid "Do not use portable calling conventions" msgstr "" -#: config/pa/pa.h:262 +#: config/pa/pa.h:284 msgid "Assume code will be assembled by GAS" msgstr "" -#: config/pa/pa.h:264 +#: config/pa/pa.h:286 msgid "Do not assume code will be assembled by GAS" msgstr "" -#: config/pa/pa.h:268 +#: config/pa/pa.h:290 msgid "Do not use software floating point" msgstr "" -#: config/pa/pa.h:270 +#: config/pa/pa.h:292 msgid "Emit long load/store sequences" msgstr "" -#: config/pa/pa.h:272 +#: config/pa/pa.h:294 msgid "Do not emit long load/store sequences" msgstr "" -#: config/pa/pa.h:274 +#: config/pa/pa.h:296 msgid "Generate fast indirect calls" msgstr "" -#: config/pa/pa.h:276 +#: config/pa/pa.h:298 msgid "Do not generate fast indirect calls" msgstr "" -#: config/pa/pa.h:278 +#: config/pa/pa.h:300 msgid "Generate code for huge switch statements" msgstr "" -#: config/pa/pa.h:280 +#: config/pa/pa.h:302 msgid "Do not generate code for huge switch statements" msgstr "" -#: config/pa/pa.h:282 +#: config/pa/pa.h:304 msgid "Always generate long calls" msgstr "" -#: config/pa/pa.h:284 +#: config/pa/pa.h:306 msgid "Generate long calls only when needed" msgstr "" -#: config/pa/pa.h:286 +#: config/pa/pa.h:308 msgid "Enable linker optimizations" msgstr "" -#: config/pa/pa.h:312 +#: config/pa/pa.h:332 msgid "" -"Specify architecture for code generation. Values are 1.0, 1.1, and 2.0. " -"2.0 requires gas snapshot 19990413 or later." +"Specify PA-RISC architecture for code generation.\n" +"Values are 1.0, 1.1 and 2.0." +msgstr "" + +#: config/pa/pa.h:335 +msgid "Specify range of registers to make fixed." +msgstr "" + +#: config/pa/pa.h:337 +msgid "Specify CPU for scheduling purposes." msgstr "" #: config/pa/pa64-hpux.h:29 @@ -11463,7 +11089,7 @@ msgstr "" msgid "Assume code will be linked by HP ld" msgstr "" -#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:323 +#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:331 msgid "Do not use hardware floating point" msgstr "" @@ -11491,7 +11117,7 @@ msgstr "" msgid "Generate code for an 11/10" msgstr "" -#. use movstrhi for bcopy +#. use movmemhi for bcopy #. use 32 bit for int #: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79 msgid "Use 32 bit int" @@ -11596,185 +11222,192 @@ msgstr "" msgid "junk at end of #pragma longcall" msgstr "" -#: config/rs6000/rs6000.c:871 +#: config/rs6000/rs6000.c:1211 msgid "-mmultiple is not supported on little endian systems" msgstr "" -#: config/rs6000/rs6000.c:878 +#: config/rs6000/rs6000.c:1218 msgid "-mstring is not supported on little endian systems" msgstr "" -#: config/rs6000/rs6000.c:892 +#: config/rs6000/rs6000.c:1232 #, c-format msgid "unknown -mdebug-%s switch" msgstr "" -#: config/rs6000/rs6000.c:904 +#: config/rs6000/rs6000.c:1244 #, c-format msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'" msgstr "" -#: config/rs6000/rs6000.c:915 +#: config/rs6000/rs6000.c:1255 #, c-format msgid "Unknown switch -mlong-double-%s" msgstr "" -#: config/rs6000/rs6000.c:956 +#: config/rs6000/rs6000.c:1296 msgid "AltiVec and E500 instructions cannot coexist" msgstr "" -#: config/rs6000/rs6000.c:1120 +#. Handle -mfix-and-continue. +#: config/rs6000/rs6000.c:1342 config/rs6000/rs6000.c:1353 +#: config/rs6000/darwin.h:106 +#, c-format +msgid "invalid option `%s'" +msgstr "" + +#: config/rs6000/rs6000.c:1554 #, c-format msgid "unknown -m%s= option specified: '%s'" msgstr "" -#: config/rs6000/rs6000.c:1141 +#: config/rs6000/rs6000.c:1575 #, c-format msgid "not configured for ABI: '%s'" msgstr "" -#: config/rs6000/rs6000.c:1147 +#: config/rs6000/rs6000.c:1581 #, c-format msgid "unknown ABI specified: '%s'" msgstr "" -#: config/rs6000/rs6000.c:1161 +#: config/rs6000/rs6000.c:1595 #, c-format msgid "unknown -malign-XXXXX option specified: '%s'" msgstr "" -#: config/rs6000/rs6000.c:4110 +#: config/rs6000/rs6000.c:4582 msgid "" "Cannot return value in vector register because altivec instructions are " "disabled, use -maltivec to enable them." msgstr "" -#: config/rs6000/rs6000.c:4233 +#: config/rs6000/rs6000.c:4716 msgid "" "Cannot pass argument in vector register because altivec instructions are " "disabled, use -maltivec to enable them." msgstr "" -#: config/rs6000/rs6000.c:5760 +#: config/rs6000/rs6000.c:6150 msgid "argument 1 must be a 5-bit signed literal" msgstr "" -#: config/rs6000/rs6000.c:5863 config/rs6000/rs6000.c:6498 +#: config/rs6000/rs6000.c:6253 config/rs6000/rs6000.c:6922 msgid "argument 2 must be a 5-bit unsigned literal" msgstr "" -#: config/rs6000/rs6000.c:5903 +#: config/rs6000/rs6000.c:6293 msgid "argument 1 of __builtin_altivec_predicate must be a constant" msgstr "" -#: config/rs6000/rs6000.c:5957 +#: config/rs6000/rs6000.c:6347 msgid "argument 1 of __builtin_altivec_predicate is out of range" msgstr "" -#: config/rs6000/rs6000.c:6086 +#: config/rs6000/rs6000.c:6509 msgid "argument 3 must be a 4-bit unsigned literal" msgstr "" -#: config/rs6000/rs6000.c:6258 +#: config/rs6000/rs6000.c:6681 #, c-format msgid "argument to `%s' must be a 2-bit unsigned literal" msgstr "" -#: config/rs6000/rs6000.c:6371 +#: config/rs6000/rs6000.c:6794 msgid "argument to dss must be a 2-bit unsigned literal" msgstr "" -#: config/rs6000/rs6000.c:6385 +#: config/rs6000/rs6000.c:6809 #, c-format msgid "invalid parameter combination for `%s' AltiVec intrinsic" msgstr "" -#: config/rs6000/rs6000.c:6618 +#: config/rs6000/rs6000.c:7042 msgid "argument 1 of __builtin_spe_predicate must be a constant" msgstr "" -#: config/rs6000/rs6000.c:6691 +#: config/rs6000/rs6000.c:7115 msgid "argument 1 of __builtin_spe_predicate is out of range" msgstr "" -#: config/rs6000/rs6000.c:9245 +#: config/rs6000/rs6000.c:9954 #, c-format msgid "invalid %%f value" msgstr "" -#: config/rs6000/rs6000.c:9254 +#: config/rs6000/rs6000.c:9963 #, c-format msgid "invalid %%F value" msgstr "" -#: config/rs6000/rs6000.c:9263 +#: config/rs6000/rs6000.c:9972 #, c-format msgid "invalid %%G value" msgstr "" -#: config/rs6000/rs6000.c:9298 +#: config/rs6000/rs6000.c:10007 #, c-format msgid "invalid %%j code" msgstr "" -#: config/rs6000/rs6000.c:9308 +#: config/rs6000/rs6000.c:10017 #, c-format msgid "invalid %%J code" msgstr "" -#: config/rs6000/rs6000.c:9318 +#: config/rs6000/rs6000.c:10027 #, c-format msgid "invalid %%k value" msgstr "" -#: config/rs6000/rs6000.c:9338 config/xtensa/xtensa.c:2008 +#: config/rs6000/rs6000.c:10047 config/xtensa/xtensa.c:1937 #, c-format msgid "invalid %%K value" msgstr "" -#: config/rs6000/rs6000.c:9405 +#: config/rs6000/rs6000.c:10114 #, c-format msgid "invalid %%O value" msgstr "" -#: config/rs6000/rs6000.c:9452 +#: config/rs6000/rs6000.c:10161 #, c-format msgid "invalid %%q value" msgstr "" -#: config/rs6000/rs6000.c:9496 +#: config/rs6000/rs6000.c:10205 #, c-format msgid "invalid %%S value" msgstr "" -#: config/rs6000/rs6000.c:9538 +#: config/rs6000/rs6000.c:10247 #, c-format msgid "invalid %%T value" msgstr "" -#: config/rs6000/rs6000.c:9548 +#: config/rs6000/rs6000.c:10257 #, c-format msgid "invalid %%u value" msgstr "" -#: config/rs6000/rs6000.c:9557 config/xtensa/xtensa.c:1978 +#: config/rs6000/rs6000.c:10266 config/xtensa/xtensa.c:1907 #, c-format msgid "invalid %%v value" msgstr "" -#: config/rs6000/rs6000.c:14064 +#: config/rs6000/rs6000.c:15086 msgid "no profiling of 64-bit code for this ABI" msgstr "" -#: config/rs6000/rs6000.c:15136 +#: config/rs6000/rs6000.c:16152 msgid "use of 'long' in AltiVec types is deprecated; use 'int'" msgstr "" -#: config/rs6000/aix.h:210 config/rs6000/beos.h:32 +#: config/rs6000/aix.h:203 config/rs6000/beos.h:32 msgid "Always pass floating-point arguments in memory" msgstr "" -#: config/rs6000/aix.h:212 config/rs6000/beos.h:34 +#: config/rs6000/aix.h:205 config/rs6000/beos.h:34 msgid "Don't always pass floating-point arguments in memory" msgstr "" @@ -11804,30 +11437,42 @@ msgid "" "-maix64 required: 64-bit computation with 32-bit addressing not yet supported" msgstr "" -#: config/rs6000/darwin.h:64 +#: config/rs6000/darwin.h:69 config/rs6000/sysv4.h:153 +msgid "Generate 64-bit code" +msgstr "" + +#: config/rs6000/darwin.h:71 config/rs6000/sysv4.h:155 +msgid "Generate 32-bit code" +msgstr "" + +#: config/rs6000/darwin.h:73 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 +#: config/rs6000/darwin.h:89 msgid "-mdynamic-no-pic overrides -fpic or -fPIC" msgstr "" #. Darwin doesn't support -fpic. -#: config/rs6000/darwin.h:86 +#: config/rs6000/darwin.h:95 msgid "-fpic is not supported; -fPIC assumed" msgstr "" -#: config/rs6000/linux64.h:96 +#: config/rs6000/darwin.h:113 +msgid "-m64 requires PowerPC64 architecture, enabling" +msgstr "" + +#: config/rs6000/linux64.h:104 msgid "-m64 requires a PowerPC64 cpu" msgstr "" -#: config/rs6000/linux64.h:206 +#: config/rs6000/linux64.h:214 msgid "Call mcount for profiling before a function prologue" msgstr "" -#: config/rs6000/linux64.h:208 +#: config/rs6000/linux64.h:216 msgid "Call mcount for profiling after a function prologue" msgstr "" @@ -11838,199 +11483,199 @@ 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:269 +#: config/rs6000/rs6000.h:277 msgid "Use POWER instruction set" msgstr "" -#: config/rs6000/rs6000.h:272 +#: config/rs6000/rs6000.h:280 msgid "Use POWER2 instruction set" msgstr "" -#: config/rs6000/rs6000.h:274 +#: config/rs6000/rs6000.h:282 msgid "Do not use POWER2 instruction set" msgstr "" -#: config/rs6000/rs6000.h:277 +#: config/rs6000/rs6000.h:285 msgid "Do not use POWER instruction set" msgstr "" -#: config/rs6000/rs6000.h:279 +#: config/rs6000/rs6000.h:287 msgid "Use PowerPC instruction set" msgstr "" -#: config/rs6000/rs6000.h:282 +#: config/rs6000/rs6000.h:290 msgid "Do not use PowerPC instruction set" msgstr "" -#: config/rs6000/rs6000.h:284 +#: config/rs6000/rs6000.h:292 msgid "Use PowerPC General Purpose group optional instructions" msgstr "" -#: config/rs6000/rs6000.h:286 +#: config/rs6000/rs6000.h:294 msgid "Do not use PowerPC General Purpose group optional instructions" msgstr "" -#: config/rs6000/rs6000.h:288 +#: config/rs6000/rs6000.h:296 msgid "Use PowerPC Graphics group optional instructions" msgstr "" -#: config/rs6000/rs6000.h:290 +#: config/rs6000/rs6000.h:298 msgid "Do not use PowerPC Graphics group optional instructions" msgstr "" -#: config/rs6000/rs6000.h:292 +#: config/rs6000/rs6000.h:300 msgid "Use PowerPC-64 instruction set" msgstr "" -#: config/rs6000/rs6000.h:294 +#: config/rs6000/rs6000.h:302 msgid "Do not use PowerPC-64 instruction set" msgstr "" -#: config/rs6000/rs6000.h:296 +#: config/rs6000/rs6000.h:304 msgid "Use AltiVec instructions" msgstr "" -#: config/rs6000/rs6000.h:298 +#: config/rs6000/rs6000.h:306 msgid "Do not use AltiVec instructions" msgstr "" -#: config/rs6000/rs6000.h:300 +#: config/rs6000/rs6000.h:308 msgid "Use new mnemonics for PowerPC architecture" msgstr "" -#: config/rs6000/rs6000.h:302 +#: config/rs6000/rs6000.h:310 msgid "Use old mnemonics for PowerPC architecture" msgstr "" -#: config/rs6000/rs6000.h:305 +#: config/rs6000/rs6000.h:313 msgid "Put everything in the regular TOC" msgstr "" -#: config/rs6000/rs6000.h:307 +#: config/rs6000/rs6000.h:315 msgid "Place floating point constants in TOC" msgstr "" -#: config/rs6000/rs6000.h:309 +#: config/rs6000/rs6000.h:317 msgid "Do not place floating point constants in TOC" msgstr "" -#: config/rs6000/rs6000.h:311 +#: config/rs6000/rs6000.h:319 msgid "Place symbol+offset constants in TOC" msgstr "" -#: config/rs6000/rs6000.h:313 +#: config/rs6000/rs6000.h:321 msgid "Do not place symbol+offset constants in TOC" msgstr "" -#: config/rs6000/rs6000.h:319 +#: config/rs6000/rs6000.h:327 msgid "Place variable addresses in the regular TOC" msgstr "" -#: config/rs6000/rs6000.h:325 +#: config/rs6000/rs6000.h:333 msgid "Generate load/store multiple instructions" msgstr "" -#: config/rs6000/rs6000.h:327 +#: config/rs6000/rs6000.h:335 msgid "Do not generate load/store multiple instructions" msgstr "" -#: config/rs6000/rs6000.h:329 +#: config/rs6000/rs6000.h:337 msgid "Generate string instructions for block moves" msgstr "" -#: config/rs6000/rs6000.h:331 +#: config/rs6000/rs6000.h:339 msgid "Do not generate string instructions for block moves" msgstr "" -#: config/rs6000/rs6000.h:333 +#: config/rs6000/rs6000.h:341 msgid "Generate load/store with update instructions" msgstr "" -#: config/rs6000/rs6000.h:335 +#: config/rs6000/rs6000.h:343 msgid "Do not generate load/store with update instructions" msgstr "" -#: config/rs6000/rs6000.h:339 +#: config/rs6000/rs6000.h:347 msgid "Do not generate fused multiply/add instructions" msgstr "" -#: config/rs6000/rs6000.h:343 +#: config/rs6000/rs6000.h:351 msgid "Do not schedule the start and end of the procedure" msgstr "" -#: config/rs6000/rs6000.h:349 +#: config/rs6000/rs6000.h:357 msgid "Return all structures in memory (AIX default)" msgstr "" -#: config/rs6000/rs6000.h:351 +#: config/rs6000/rs6000.h:359 msgid "Return small structures in registers (SVR4 default)" msgstr "" -#: config/rs6000/rs6000.h:357 +#: config/rs6000/rs6000.h:365 msgid "Generate single field mfcr instruction" msgstr "" -#: config/rs6000/rs6000.h:359 +#: config/rs6000/rs6000.h:367 msgid "Do not generate single field mfcr instruction" msgstr "" -#: config/rs6000/rs6000.h:443 config/sparc/sparc.h:631 +#: config/rs6000/rs6000.h:451 config/sparc/sparc.h:709 msgid "Use features of and schedule code for given CPU" msgstr "" -#: config/rs6000/rs6000.h:446 +#: config/rs6000/rs6000.h:454 msgid "Enable debug output" msgstr "" -#: config/rs6000/rs6000.h:448 +#: config/rs6000/rs6000.h:456 msgid "Select full, part, or no traceback table" msgstr "" -#: config/rs6000/rs6000.h:449 +#: config/rs6000/rs6000.h:457 msgid "Specify ABI to use" msgstr "" -#: config/rs6000/rs6000.h:451 +#: config/rs6000/rs6000.h:459 msgid "Specify size of long double (64 or 128 bits)" msgstr "" -#: config/rs6000/rs6000.h:453 +#: config/rs6000/rs6000.h:461 msgid "Specify yes/no if isel instructions should be generated" msgstr "" -#: config/rs6000/rs6000.h:455 +#: config/rs6000/rs6000.h:463 msgid "Specify yes/no if SPE SIMD instructions should be generated" msgstr "" -#: config/rs6000/rs6000.h:457 +#: config/rs6000/rs6000.h:465 msgid "Specify yes/no if using floating point in the GPRs" msgstr "" -#: config/rs6000/rs6000.h:459 +#: config/rs6000/rs6000.h:467 msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec" msgstr "" -#: config/rs6000/rs6000.h:461 +#: config/rs6000/rs6000.h:469 msgid "Avoid all range limits on call instructions" msgstr "" -#: config/rs6000/rs6000.h:464 +#: config/rs6000/rs6000.h:472 msgid "Warn about deprecated 'vector long ...' AltiVec type usage" msgstr "" -#: config/rs6000/rs6000.h:467 +#: config/rs6000/rs6000.h:475 msgid "Determine which dependences between insns are considered costly" msgstr "" -#: config/rs6000/rs6000.h:469 +#: config/rs6000/rs6000.h:477 msgid "Specify which post scheduling nop insertion scheme to apply" msgstr "" -#: config/rs6000/rs6000.h:471 +#: config/rs6000/rs6000.h:479 msgid "Specify alignment of structure fields default/natural" msgstr "" -#: config/rs6000/rs6000.h:473 +#: config/rs6000/rs6000.h:481 msgid "Specify scheduling priority for dispatch slot restricted insns" msgstr "" @@ -12046,7 +11691,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:1826 +#: config/rs6000/rs6000.h:1818 msgid "RETURN_ADDRESS_OFFSET not supported" msgstr "" @@ -12142,14 +11787,6 @@ msgstr "" 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 @@ -12158,255 +11795,367 @@ msgstr "" #. #. The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to #. get control. -#: config/rs6000/sysv4.h:214 +#: config/rs6000/sysv4.h:219 #, c-format msgid "bad value for -mcall-%s" msgstr "" -#: config/rs6000/sysv4.h:230 +#: config/rs6000/sysv4.h:235 #, c-format msgid "bad value for -msdata=%s" msgstr "" -#: config/rs6000/sysv4.h:247 +#: config/rs6000/sysv4.h:252 #, c-format msgid "-mrelocatable and -msdata=%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:256 +#: config/rs6000/sysv4.h:261 #, c-format msgid "-f%s and -msdata=%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:265 +#: config/rs6000/sysv4.h:270 #, c-format msgid "-msdata=%s and -mcall-%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:274 +#: config/rs6000/sysv4.h:279 msgid "-mrelocatable and -mno-minimal-toc are incompatible" msgstr "" -#: config/rs6000/sysv4.h:280 +#: config/rs6000/sysv4.h:285 #, c-format msgid "-mrelocatable and -mcall-%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:287 +#: config/rs6000/sysv4.h:292 #, c-format msgid "-fPIC and -mcall-%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:294 +#: config/rs6000/sysv4.h:299 msgid "-mcall-aixdesc must be big endian" msgstr "" -#: config/rs6000/sysv4.h:309 +#: config/rs6000/sysv4.h:314 #, c-format msgid "-m%s not supported in this configuration" msgstr "" -#: config/s390/s390.c:933 +#: config/s390/s390.c:1133 #, c-format msgid "Unknown cpu used in -march=%s." msgstr "" -#: config/s390/s390.c:952 +#: config/s390/s390.c:1152 #, c-format msgid "Unknown cpu used in -mtune=%s." msgstr "" -#: config/s390/s390.c:957 +#: config/s390/s390.c:1157 #, c-format msgid "z/Architecture mode not supported on %s." msgstr "" -#: config/s390/s390.c:959 +#: config/s390/s390.c:1159 msgid "64-bit ABI not supported in ESA/390 mode." msgstr "" -#: config/s390/s390.c:3385 +#: config/s390/s390.c:1165 +msgid "invalid value for -mwarn-framesize" +msgstr "" + +#: config/s390/s390.c:1175 +msgid "invalid value for -mstack-size" +msgstr "" + +#: config/s390/s390.c:1178 +msgid "stack size must be an exact power of 2" +msgstr "" + +#: config/s390/s390.c:1184 +msgid "invalid value for -mstack-guard" +msgstr "" + +#: config/s390/s390.c:1187 +msgid "stack size must be greater than the stack guard value" +msgstr "" + +#: config/s390/s390.c:1190 +msgid "stack guard value must be an exact power of 2" +msgstr "" + +#: config/s390/s390.c:1193 +msgid "-mstack-size implies use of -mstack-guard" +msgstr "" + +#: config/s390/s390.c:1197 +msgid "-mstack-guard implies use of -mstack-size" +msgstr "" + +#: config/s390/s390.c:3877 msgid "Cannot decompose address." msgstr "" -#: config/s390/s390.c:3556 +#: config/s390/s390.c:4048 msgid "UNKNOWN in print_operand !?" msgstr "" -#: config/s390/s390.c:5257 +#: config/s390/s390.c:5926 msgid "Total size of local variables exceeds architecture limit." msgstr "" -#: config/s390/s390.h:126 -msgid "Set backchain" +#: config/s390/s390.c:6389 +#, c-format +msgid "frame size of `%s' is " +msgstr "" + +#: config/s390/s390.c:6389 +msgid " bytes" msgstr "" -#: config/s390/s390.h:127 -msgid "Don't set backchain (faster, but debug harder" +#: config/s390/s390.c:6393 +#, c-format +msgid "`%s' uses dynamic stack allocation" msgstr "" -#: config/s390/s390.h:128 +#: config/s390/s390.h:134 msgid "Use bras for executable < 64k" msgstr "" -#: config/s390/s390.h:129 +#: config/s390/s390.h:135 msgid "Don't use bras" msgstr "" -#: config/s390/s390.h:130 +#: config/s390/s390.h:136 msgid "Additional debug prints" msgstr "" -#: config/s390/s390.h:131 +#: config/s390/s390.h:137 msgid "Don't print additional debug prints" msgstr "" -#: config/s390/s390.h:132 +#: config/s390/s390.h:138 msgid "64 bit ABI" msgstr "" -#: config/s390/s390.h:133 +#: config/s390/s390.h:139 msgid "31 bit ABI" msgstr "" -#: config/s390/s390.h:134 +#: config/s390/s390.h:140 msgid "z/Architecture" msgstr "" -#: config/s390/s390.h:135 +#: config/s390/s390.h:141 msgid "ESA/390 architecture" msgstr "" -#: config/s390/s390.h:136 +#: config/s390/s390.h:142 msgid "mvcle use" msgstr "" -#: config/s390/s390.h:137 +#: config/s390/s390.h:143 msgid "mvc&ex" msgstr "" -#: config/s390/s390.h:138 -msgid "enable tpf OS code" +#: config/s390/s390.h:144 +msgid "enable tpf OS tracing code" msgstr "" -#: config/s390/s390.h:139 -msgid "disable tpf OS code" +#: config/s390/s390.h:145 +msgid "disable tpf OS tracing code" msgstr "" -#: config/s390/s390.h:140 +#: config/s390/s390.h:146 msgid "disable fused multiply/add instructions" msgstr "" -#: config/s390/s390.h:141 +#: config/s390/s390.h:147 msgid "enable fused multiply/add instructions" msgstr "" -#: config/sh/sh.c:5999 +#: config/s390/s390.h:156 +msgid "Set backchain" +msgstr "" + +#: config/s390/s390.h:158 +msgid "Do not set backchain" +msgstr "" + +#: config/s390/s390.h:160 +msgid "Set backchain appropriate for the linux kernel" +msgstr "" + +#: config/s390/s390.h:162 +msgid "Warn if a single function's framesize exceeds the given framesize" +msgstr "" + +#: config/s390/s390.h:165 +msgid "Warn if a function uses alloca or creates an array with dynamic size" +msgstr "" + +#: config/s390/s390.h:168 +msgid "" +"Emit extra code in the function prologue in order to trap if the stacksize " +"exceeds the given limit" +msgstr "" + +#: config/s390/s390.h:171 +msgid "" +"Set the max. number of bytes which has to be left to stack size before a " +"trap instruction is triggered" +msgstr "" + +#: config/sh/sh.c:6160 msgid "__builtin_saveregs not supported by this subtarget" msgstr "" -#: config/sh/sh.c:6899 +#: config/sh/sh.c:7123 msgid "attribute interrupt_handler is not compatible with -m5-compact" msgstr "" #. The sp_switch attribute only has meaning for interrupt functions. #. The trap_exit attribute only has meaning for interrupt functions. -#: config/sh/sh.c:6921 config/sh/sh.c:6956 +#: config/sh/sh.c:7145 config/sh/sh.c:7180 #, c-format msgid "`%s' attribute only applies to interrupt functions" msgstr "" #. The argument must be a constant string. -#: config/sh/sh.c:6928 +#: config/sh/sh.c:7152 #, c-format msgid "`%s' attribute argument not a string constant" msgstr "" #. The argument must be a constant integer. -#: config/sh/sh.c:6963 +#: config/sh/sh.c:7187 #, c-format msgid "`%s' attribute argument not an integer constant" msgstr "" +#: config/sh/sh.c:7315 +#, c-format +msgid "created and used with differing settings of `-m%s'" +msgstr "" + +#: config/sh/symbian.c:147 +msgid "" +"%H function '%D' is defined after prior declaration as dllimport: attribute " +"ignored" +msgstr "" + +#: config/sh/symbian.c:158 +msgid "%Hinline function '%D' is declared as dllimport: attribute ignored." +msgstr "" + +#: config/sh/symbian.c:171 +msgid "%Hdefinition of static data member '%D' of dllimport'd class." +msgstr "" + +#: config/sh/symbian.c:286 +msgid "" +"%Hfailure in redeclaration of '%D': dllimport'd symbol lacks external " +"linkage." +msgstr "" + +#: config/sh/symbian.c:332 +msgid "%H%s '%D' %s after being referenced with dllimport linkage." +msgstr "" + +#: config/sh/symbian.c:436 +msgid "%Hvariable `%D' definition is marked dllimport." +msgstr "" + +#: config/sh/symbian.c:511 +msgid "%Hexternal linkage required for symbol '%D' because of '%s' attribute." +msgstr "" + +#: config/sh/symbian.c:893 cp/tree.c:2337 +#, c-format +msgid "lang_* check: failed in %s, at %s:%d" +msgstr "" + #. There are no delay slots on SHmedia. #. Relaxation isn't yet supported for SHmedia #. -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 +#: config/sh/sh.h:754 msgid "Profiling is not supported on this target." msgstr "" -#: config/sparc/sparc.c:372 +#: config/sparc/sparc.c:548 #, c-format msgid "%s is not supported by this configuration" msgstr "" -#: config/sparc/sparc.c:379 +#: config/sparc/sparc.c:555 msgid "-mlong-double-64 not allowed with -m64" msgstr "" -#: config/sparc/sparc.c:404 +#: config/sparc/sparc.c:580 msgid "-mcmodel= is not supported on 32 bit systems" msgstr "" -#: config/sparc/sparc.c:6967 config/sparc/sparc.c:6973 +#: config/sparc/sparc.c:7062 config/sparc/sparc.c:7068 #, c-format msgid "invalid %%Y operand" msgstr "" -#: config/sparc/sparc.c:7043 +#: config/sparc/sparc.c:7138 #, c-format msgid "invalid %%A operand" msgstr "" -#: config/sparc/sparc.c:7053 +#: config/sparc/sparc.c:7148 #, c-format msgid "invalid %%B operand" msgstr "" -#: config/sparc/sparc.c:7092 +#: config/sparc/sparc.c:7187 #, c-format msgid "invalid %%c operand" msgstr "" -#: config/sparc/sparc.c:7093 +#: config/sparc/sparc.c:7188 #, c-format msgid "invalid %%C operand" msgstr "" -#: config/sparc/sparc.c:7114 +#: config/sparc/sparc.c:7209 #, c-format msgid "invalid %%d operand" msgstr "" -#: config/sparc/sparc.c:7115 +#: config/sparc/sparc.c:7210 #, c-format msgid "invalid %%D operand" msgstr "" -#: config/sparc/sparc.c:7131 +#: config/sparc/sparc.c:7226 #, c-format msgid "invalid %%f operand" msgstr "" -#: config/sparc/sparc.c:7145 +#: config/sparc/sparc.c:7240 #, c-format msgid "invalid %%s operand" msgstr "" -#: config/sparc/sparc.c:7199 +#: config/sparc/sparc.c:7294 msgid "long long constant not a valid immediate operand" msgstr "" -#: config/sparc/sparc.c:7202 +#: config/sparc/sparc.c:7297 msgid "floating point constant not a valid immediate operand" msgstr "" -#: config/sparc/freebsd.h:77 config/sparc/linux.h:91 +#: config/sparc/freebsd.h:77 config/sparc/linux.h:86 #: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:211 msgid "Use 64 bit long doubles" msgstr "" -#: config/sparc/freebsd.h:78 config/sparc/linux.h:92 +#: config/sparc/freebsd.h:78 config/sparc/linux.h:87 #: config/sparc/linux64.h:107 config/sparc/netbsd-elf.h:212 msgid "Use 128 bit long doubles" msgstr "" @@ -12423,139 +12172,147 @@ msgstr "" msgid "Use little-endian byte order for data" msgstr "" -#: config/sparc/sparc.h:548 +#: config/sparc/sparc.h:626 msgid "Assume possible double misalignment" msgstr "" -#: config/sparc/sparc.h:550 +#: config/sparc/sparc.h:628 msgid "Assume all doubles are aligned" msgstr "" -#: config/sparc/sparc.h:552 +#: config/sparc/sparc.h:630 msgid "Pass -assert pure-text to linker" msgstr "" -#: config/sparc/sparc.h:554 +#: config/sparc/sparc.h:632 msgid "Do not pass -assert pure-text to linker" msgstr "" -#: config/sparc/sparc.h:556 +#: config/sparc/sparc.h:634 msgid "Use ABI reserved registers" msgstr "" -#: config/sparc/sparc.h:558 +#: config/sparc/sparc.h:636 msgid "Do not use ABI reserved registers" msgstr "" -#: config/sparc/sparc.h:560 +#: config/sparc/sparc.h:638 msgid "Use hardware quad fp instructions" msgstr "" -#: config/sparc/sparc.h:562 +#: config/sparc/sparc.h:640 msgid "Do not use hardware quad fp instructions" msgstr "" -#: config/sparc/sparc.h:564 +#: config/sparc/sparc.h:642 msgid "Compile for v8plus ABI" msgstr "" -#: config/sparc/sparc.h:566 +#: config/sparc/sparc.h:644 msgid "Do not compile for v8plus ABI" msgstr "" -#: config/sparc/sparc.h:568 +#: config/sparc/sparc.h:646 msgid "Utilize Visual Instruction Set" msgstr "" -#: config/sparc/sparc.h:570 +#: config/sparc/sparc.h:648 msgid "Do not utilize Visual Instruction Set" msgstr "" -#: config/sparc/sparc.h:572 +#: config/sparc/sparc.h:650 msgid "Pointers are 64-bit" msgstr "" -#: config/sparc/sparc.h:574 +#: config/sparc/sparc.h:652 msgid "Pointers are 32-bit" msgstr "" -#: config/sparc/sparc.h:576 +#: config/sparc/sparc.h:654 msgid "Use 32-bit ABI" msgstr "" -#: config/sparc/sparc.h:578 +#: config/sparc/sparc.h:656 msgid "Use 64-bit ABI" msgstr "" -#: config/sparc/sparc.h:580 +#: config/sparc/sparc.h:658 msgid "Use stack bias" msgstr "" -#: config/sparc/sparc.h:582 +#: config/sparc/sparc.h:660 msgid "Do not use stack bias" msgstr "" -#: config/sparc/sparc.h:584 +#: config/sparc/sparc.h:662 msgid "Use structs on stronger alignment for double-word copies" msgstr "" -#: config/sparc/sparc.h:586 +#: config/sparc/sparc.h:664 msgid "Do not use structs on stronger alignment for double-word copies" msgstr "" -#: config/sparc/sparc.h:588 +#: config/sparc/sparc.h:666 msgid "Optimize tail call instructions in assembler and linker" msgstr "" -#: config/sparc/sparc.h:590 +#: config/sparc/sparc.h:668 msgid "Do not optimize tail call instructions in assembler or linker" msgstr "" -#: config/sparc/sparc.h:635 +#: config/sparc/sparc.h:713 msgid "Use given SPARC code model" msgstr "" -#: config/stormy16/stormy16.c:527 +#: config/stormy16/stormy16.c:528 msgid "Constant halfword load operand out of range." msgstr "" -#: config/stormy16/stormy16.c:537 +#: config/stormy16/stormy16.c:538 msgid "Constant arithmetic operand out of range." msgstr "" -#: config/stormy16/stormy16.c:1028 +#: config/stormy16/stormy16.c:1224 msgid "Local variable memory requirements exceed capacity." msgstr "" -#: config/stormy16/stormy16.c:1194 +#: config/stormy16/stormy16.c:1390 msgid "function_profiler support" msgstr "" -#: config/stormy16/stormy16.c:1283 +#: config/stormy16/stormy16.c:1479 msgid "cannot use va_start in interrupt function" msgstr "" -#: config/stormy16/stormy16.c:1599 +#: config/stormy16/stormy16.c:1921 config/stormy16/stormy16.c:1992 msgid "`B' operand is not constant" msgstr "" -#: config/stormy16/stormy16.c:1605 +#: config/stormy16/stormy16.c:1948 msgid "`B' operand has multiple bits set" msgstr "" -#: config/stormy16/stormy16.c:1631 +#: config/stormy16/stormy16.c:1974 msgid "`o' operand is not constant" msgstr "" -#: config/stormy16/stormy16.c:1645 +#: config/stormy16/stormy16.c:2006 msgid "xstormy16_print_operand: unknown code" msgstr "" -#: config/stormy16/stormy16.c:1691 +#: config/stormy16/stormy16.c:2052 #, c-format msgid "switch statement of size %lu entries too large" msgstr "" +#: config/stormy16/stormy16.c:2434 +msgid "`__BELOW100__' attribute only applies to variables" +msgstr "" + +#: config/stormy16/stormy16.c:2441 +msgid "__BELOW100__ attribute not allowed with auto storage class." +msgstr "" + #: config/v850/v850-c.c:67 msgid "#pragma GHS endXXXX found without previous startXXX" msgstr "" @@ -12613,63 +12370,63 @@ msgstr "" msgid "junk at end of #pragma ghs endzda" msgstr "" -#: config/v850/v850.c:154 +#: config/v850/v850.c:163 #, c-format msgid "%s=%s is not numeric" msgstr "" -#: config/v850/v850.c:161 +#: config/v850/v850.c:170 #, c-format msgid "%s=%s is too large" msgstr "" -#: config/v850/v850.c:313 +#: config/v850/v850.c:336 msgid "const_double_split got a bad insn:" msgstr "" -#: config/v850/v850.c:878 +#: config/v850/v850.c:901 msgid "output_move_single:" msgstr "" -#: config/v850/v850.c:2220 +#: config/v850/v850.c:2243 msgid "%Jdata area attributes cannot be specified for local variables" msgstr "" -#: config/v850/v850.c:2231 +#: config/v850/v850.c:2254 msgid "%Jdata area of '%D' conflicts with previous declaration" msgstr "" -#: config/v850/v850.c:2430 +#: config/v850/v850.c:2453 #, c-format msgid "bogus JR construction: %d\n" msgstr "" -#: config/v850/v850.c:2451 config/v850/v850.c:2654 +#: config/v850/v850.c:2474 config/v850/v850.c:2677 #, c-format msgid "bad amount of stack space removal: %d" msgstr "" -#: config/v850/v850.c:2630 +#: config/v850/v850.c:2653 #, c-format msgid "bogus JARL construction: %d\n" msgstr "" -#: config/v850/v850.c:3000 +#: config/v850/v850.c:3023 #, c-format msgid "Bogus DISPOSE construction: %d\n" msgstr "" -#: config/v850/v850.c:3022 +#: config/v850/v850.c:3045 #, c-format msgid "Too much stack space to dispose of: %d" msgstr "" -#: config/v850/v850.c:3195 +#: config/v850/v850.c:3218 #, c-format msgid "Bogus PREPEARE construction: %d\n" msgstr "" -#: config/v850/v850.c:3217 +#: config/v850/v850.c:3240 #, c-format msgid "Too much stack space to prepare: %d" msgstr "" @@ -12749,56 +12506,61 @@ msgstr "" msgid "Set the max size of data eligible for the ZDA area" msgstr "" -#: config/xtensa/xtensa.c:1837 +#: config/xtensa/xtensa.c:1014 config/xtensa/xtensa.c:1046 +#: config/xtensa/xtensa.c:1055 +msgid "bad test" +msgstr "" + +#: config/xtensa/xtensa.c:1774 msgid "boolean registers required for the floating-point option" msgstr "" -#: config/xtensa/xtensa.c:1891 +#: config/xtensa/xtensa.c:1820 #, c-format msgid "-f%s is not supported with CONST16 instructions" msgstr "" -#: config/xtensa/xtensa.c:1896 +#: config/xtensa/xtensa.c:1825 msgid "PIC is required but not supported with CONST16 instructions" msgstr "" -#: config/xtensa/xtensa.c:1966 +#: config/xtensa/xtensa.c:1895 #, c-format msgid "invalid %%D value" msgstr "" -#: config/xtensa/xtensa.c:2003 +#: config/xtensa/xtensa.c:1932 msgid "invalid mask" msgstr "" -#: config/xtensa/xtensa.c:2029 +#: config/xtensa/xtensa.c:1958 #, c-format msgid "invalid %%x value" msgstr "" -#: config/xtensa/xtensa.c:2036 +#: config/xtensa/xtensa.c:1965 #, c-format msgid "invalid %%d value" msgstr "" -#: config/xtensa/xtensa.c:2057 config/xtensa/xtensa.c:2067 +#: config/xtensa/xtensa.c:1986 config/xtensa/xtensa.c:1996 #, c-format msgid "invalid %%t/%%b value" msgstr "" -#: config/xtensa/xtensa.c:2109 +#: config/xtensa/xtensa.c:2038 msgid "invalid address" msgstr "" -#: config/xtensa/xtensa.c:2134 +#: config/xtensa/xtensa.c:2063 msgid "no register in address" msgstr "" -#: config/xtensa/xtensa.c:2142 +#: config/xtensa/xtensa.c:2071 msgid "address offset not a constant" msgstr "" -#: config/xtensa/xtensa.c:2752 +#: config/xtensa/xtensa.c:2672 msgid "only uninitialized variables can be placed in a .bss section" msgstr "" @@ -12842,140 +12604,140 @@ msgstr "" msgid "Use direct CALLn instructions for fast calls" msgstr "" -#: ada/misc.c:248 +#: ada/misc.c:258 #, c-format msgid "missing argument to \"-%s\"" msgstr "" -#: ada/misc.c:289 +#: ada/misc.c:299 msgid "`-gnat' misspelled as `-gant'" msgstr "" -#: cp/call.c:296 +#: cp/call.c:282 msgid "unable to call pointer to member function here" msgstr "" -#: cp/call.c:2375 +#: cp/call.c:2365 msgid "%s %D(%T, %T, %T) " msgstr "" -#: cp/call.c:2380 +#: cp/call.c:2370 msgid "%s %D(%T, %T) " msgstr "" -#: cp/call.c:2384 +#: cp/call.c:2374 msgid "%s %D(%T) " msgstr "" -#: cp/call.c:2388 +#: cp/call.c:2378 msgid "%s %T " msgstr "" -#: cp/call.c:2390 +#: cp/call.c:2380 msgid "%J%s %+#D " msgstr "" -#: cp/call.c:2392 +#: cp/call.c:2382 msgid "%J%s %+#D" msgstr "" -#: cp/call.c:2427 +#: cp/call.c:2417 msgid "candidates are:" msgstr "" -#: cp/call.c:2617 +#: cp/call.c:2603 msgid "conversion from `%T' to `%T' is ambiguous" msgstr "" -#: cp/call.c:2773 cp/call.c:2822 +#: cp/call.c:2757 cp/call.c:2815 msgid "no matching function for call to `%D(%A)'" msgstr "" -#: cp/call.c:2776 cp/call.c:2825 +#: cp/call.c:2760 cp/call.c:2818 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:2893 +#: cp/call.c:2886 #, c-format msgid "" "pointer-to-member function %E cannot be called without an object; consider " "using .* or ->*" msgstr "" -#: cp/call.c:2962 +#: cp/call.c:2955 msgid "no match for call to `(%T) (%A)'" msgstr "" -#: cp/call.c:2971 +#: cp/call.c:2964 msgid "call of `(%T) (%A)' is ambiguous" msgstr "" -#: cp/call.c:3008 +#: cp/call.c:3001 #, c-format msgid "%s for ternary 'operator?:' in '%E ? %E : %E'" msgstr "" -#: cp/call.c:3014 +#: cp/call.c:3007 #, c-format msgid "%s for 'operator%s' in '%E%s'" msgstr "" -#: cp/call.c:3018 +#: cp/call.c:3011 #, c-format msgid "%s for 'operator[]' in '%E[%E]'" msgstr "" -#: cp/call.c:3023 +#: cp/call.c:3016 #, c-format msgid "%s for '%s' in '%s %E'" msgstr "" -#: cp/call.c:3028 +#: cp/call.c:3021 #, c-format msgid "%s for 'operator%s' in '%E %s %E'" msgstr "" -#: cp/call.c:3031 +#: cp/call.c:3024 #, c-format msgid "%s for 'operator%s' in '%s%E'" msgstr "" -#: cp/call.c:3121 +#: cp/call.c:3114 msgid "ISO C++ forbids omitting the middle term of a ?: expression" msgstr "" -#: cp/call.c:3198 +#: cp/call.c:3191 #, c-format msgid "`%E' has type `void' and is not a throw-expression" msgstr "" -#: cp/call.c:3237 cp/call.c:3447 +#: cp/call.c:3230 cp/call.c:3440 msgid "operands to ?: have different types" msgstr "" -#: cp/call.c:3401 +#: cp/call.c:3394 msgid "enumeral mismatch in conditional expression: `%T' vs `%T'" msgstr "" -#: cp/call.c:3408 +#: cp/call.c:3401 msgid "enumeral and non-enumeral type in conditional expression" msgstr "" -#: cp/call.c:3702 +#: cp/call.c:3695 msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead" msgstr "" -#: cp/call.c:3754 +#: cp/call.c:3747 msgid "using synthesized `%#D' for copy assignment" msgstr "" -#: cp/call.c:3756 +#: cp/call.c:3749 msgid " where cfront would use `%#D'" msgstr "" -#: cp/call.c:3780 +#: cp/call.c:3781 msgid "comparison between `%#T' and `%#T'" msgstr "" @@ -12999,348 +12761,348 @@ msgstr "" msgid "within this context" msgstr "" -#: cp/call.c:4130 +#: cp/call.c:4143 msgid "invalid conversion from `%T' to `%T'" msgstr "" -#: cp/call.c:4132 +#: cp/call.c:4145 msgid " initializing argument %P of `%D'" msgstr "" -#: cp/call.c:4286 +#: cp/call.c:4288 msgid "cannot bind bitfield `%E' to `%T'" msgstr "" -#: cp/call.c:4289 +#: cp/call.c:4291 msgid "cannot bind packed field `%E' to `%T'" msgstr "" -#: cp/call.c:4292 +#: cp/call.c:4294 msgid "cannot bind rvalue `%E' to `%T'" msgstr "" -#: cp/call.c:4380 +#: cp/call.c:4379 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:4404 +#: cp/call.c:4405 msgid "" "cannot receive objects of non-POD type `%#T' through `...'; call will abort " "at runtime" msgstr "" -#: cp/call.c:4444 +#: cp/call.c:4449 msgid "the default argument for parameter %d of `%D' has not yet been parsed" msgstr "" -#: cp/call.c:4643 +#: cp/call.c:4654 msgid "passing `%T' as `this' argument of `%#D' discards qualifiers" msgstr "" -#: cp/call.c:4662 +#: cp/call.c:4673 msgid "`%T' is not an accessible base of `%T'" msgstr "" -#: cp/call.c:4930 +#: cp/call.c:4923 msgid "could not find class$ field in java interface type `%T'" msgstr "" -#: cp/call.c:5187 +#: cp/call.c:5185 msgid "call to non-function `%D'" msgstr "" -#: cp/call.c:5213 +#: cp/call.c:5210 msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'" msgstr "" -#: cp/call.c:5291 +#: cp/call.c:5288 msgid "no matching function for call to `%T::%s(%A)%#V'" msgstr "" -#: cp/call.c:5309 +#: cp/call.c:5306 #, c-format msgid "call of overloaded `%s(%A)' is ambiguous" msgstr "" -#: cp/call.c:5331 +#: cp/call.c:5328 msgid "cannot call member function `%D' without object" msgstr "" -#: cp/call.c:5935 +#: cp/call.c:5933 msgid "passing `%T' chooses `%T' over `%T'" msgstr "" -#: cp/call.c:5937 cp/name-lookup.c:4156 +#: cp/call.c:5935 cp/name-lookup.c:4246 msgid " in call to `%D'" msgstr "" -#: cp/call.c:5994 +#: cp/call.c:5992 msgid "choosing `%D' over `%D'" msgstr "" -#: cp/call.c:5995 +#: cp/call.c:5993 msgid " for conversion from `%T' to `%T'" msgstr "" -#: cp/call.c:5997 +#: cp/call.c:5995 msgid " because conversion sequence for the argument is better" msgstr "" -#: cp/call.c:6117 +#: cp/call.c:6116 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:6121 +#: cp/call.c:6120 msgid "candidate 1:" msgstr "" -#: cp/call.c:6122 +#: cp/call.c:6121 msgid "candidate 2:" msgstr "" -#: cp/call.c:6258 +#: cp/call.c:6257 msgid "could not convert `%E' to `%T'" msgstr "" -#: cp/call.c:6383 +#: cp/call.c:6381 msgid "" "invalid initialization of non-const reference of type '%T' from a temporary " "of type '%T'" msgstr "" -#: cp/call.c:6387 +#: cp/call.c:6385 msgid "" "invalid initialization of reference of type '%T' from expression of type '%T'" msgstr "" -#: cp/class.c:287 +#: cp/class.c:284 msgid "" "cannot convert from base `%T' to derived type `%T' via virtual base `%T'" msgstr "" -#: cp/class.c:837 +#: cp/class.c:912 msgid "Java class '%T' cannot have an implicit non-trivial destructor" msgstr "" -#: cp/class.c:838 +#: cp/class.c:913 msgid "Java class '%T' cannot have a destructor" msgstr "" -#: cp/class.c:1006 +#: cp/class.c:1012 msgid "`%#D' and `%#D' cannot be overloaded" msgstr "" -#: cp/class.c:1052 +#: cp/class.c:1069 msgid "conflicting access specifications for method `%D', ignored" msgstr "" -#: cp/class.c:1054 +#: cp/class.c:1071 #, c-format -msgid "conflicting access specifications for field `%s', ignored" +msgid "conflicting access specifications for field `%E', ignored" msgstr "" -#: cp/class.c:1104 +#: cp/class.c:1121 msgid "`%D' names constructor" msgstr "" -#: cp/class.c:1109 +#: cp/class.c:1126 msgid "`%D' invalid in `%T'" msgstr "" -#: cp/class.c:1117 +#: cp/class.c:1134 msgid "no members matching `%D' in `%#T'" msgstr "" -#: cp/class.c:1149 cp/class.c:1157 +#: cp/class.c:1166 cp/class.c:1174 msgid "`%D' invalid in `%#T'" msgstr "" -#: cp/class.c:1150 +#: cp/class.c:1167 msgid " because of local method `%#D' with same name" msgstr "" -#: cp/class.c:1158 +#: cp/class.c:1175 msgid " because of local member `%#D' with same name" msgstr "" -#: cp/class.c:1228 +#: cp/class.c:1220 msgid "base class `%#T' has a non-virtual destructor" msgstr "" -#: cp/class.c:1248 +#: cp/class.c:1240 msgid "" "base `%T' with only non-default constructor in class without a constructor" msgstr "" -#: cp/class.c:1632 +#: cp/class.c:1550 msgid "all member functions in class `%T' are private" msgstr "" -#: cp/class.c:1643 +#: cp/class.c:1561 msgid "`%#T' only defines a private destructor and has no friends" msgstr "" -#: cp/class.c:1685 +#: cp/class.c:1601 msgid "`%#T' only defines private constructors and has no friends" msgstr "" -#: cp/class.c:2070 +#: cp/class.c:2013 msgid "no unique final overrider for `%D' in `%T'" msgstr "" #. Here we know it is a hider, and no overrider exists. -#: cp/class.c:2516 +#: cp/class.c:2465 msgid "`%D' was hidden" msgstr "" -#: cp/class.c:2517 +#: cp/class.c:2466 msgid " by `%D'" msgstr "" -#: cp/class.c:2559 cp/decl2.c:1180 +#: cp/class.c:2507 cp/decl2.c:1143 msgid "`%#D' invalid; an anonymous union can only have non-static data members" msgstr "" -#: cp/class.c:2565 cp/decl2.c:1187 +#: cp/class.c:2513 cp/decl2.c:1150 msgid "private member `%#D' in anonymous union" msgstr "" -#: cp/class.c:2568 cp/decl2.c:1189 +#: cp/class.c:2516 cp/decl2.c:1152 msgid "protected member `%#D' in anonymous union" msgstr "" -#: cp/class.c:2687 +#: cp/class.c:2630 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:2747 +#: cp/class.c:2688 msgid "bit-field `%#D' with non-integral type" msgstr "" -#: cp/class.c:2767 +#: cp/class.c:2708 msgid "bit-field `%D' width not an integer constant" msgstr "" -#: cp/class.c:2773 +#: cp/class.c:2714 msgid "negative width in bit-field `%D'" msgstr "" -#: cp/class.c:2778 +#: cp/class.c:2719 msgid "zero width for bit-field `%D'" msgstr "" -#: cp/class.c:2784 +#: cp/class.c:2725 msgid "width of `%D' exceeds its type" msgstr "" -#: cp/class.c:2793 +#: cp/class.c:2734 msgid "`%D' is too small to hold all values of `%#T'" msgstr "" -#: cp/class.c:2855 +#: cp/class.c:2796 msgid "member `%#D' with constructor not allowed in union" msgstr "" -#: cp/class.c:2858 +#: cp/class.c:2799 msgid "member `%#D' with destructor not allowed in union" msgstr "" -#: cp/class.c:2861 +#: cp/class.c:2802 msgid "member `%#D' with copy assignment operator not allowed in union" msgstr "" -#: cp/class.c:2888 +#: cp/class.c:2829 msgid "multiple fields in union `%T' initialized" msgstr "" -#: cp/class.c:2954 +#: cp/class.c:2895 msgid "ignoring packed attribute on unpacked non-POD field `%#D'" msgstr "" -#: cp/class.c:3014 +#: cp/class.c:2955 msgid "`%D' may not be static because it is a member of a union" msgstr "" -#: cp/class.c:3019 +#: cp/class.c:2960 msgid "`%D' may not have reference type `%T' because it is a member of a union" msgstr "" -#: cp/class.c:3027 +#: cp/class.c:2968 msgid "field `%D' in local class cannot be static" msgstr "" -#: cp/class.c:3033 +#: cp/class.c:2974 msgid "field `%D' invalidly declared function type" msgstr "" -#: cp/class.c:3040 +#: cp/class.c:2981 msgid "field `%D' invalidly declared method type" msgstr "" -#: cp/class.c:3073 +#: cp/class.c:3014 msgid "non-static reference `%#D' in class without a constructor" msgstr "" -#: cp/class.c:3116 +#: cp/class.c:3062 msgid "non-static const member `%#D' in class without a constructor" msgstr "" -#: cp/class.c:3131 +#: cp/class.c:3077 msgid "field `%#D' with same name as class" msgstr "" -#: cp/class.c:3149 +#: cp/class.c:3111 msgid "`%#T' has pointer data members" msgstr "" -#: cp/class.c:3153 +#: cp/class.c:3115 msgid " but does not override `%T(const %T&)'" msgstr "" -#: cp/class.c:3155 +#: cp/class.c:3117 msgid " or `operator=(const %T&)'" msgstr "" -#: cp/class.c:3158 +#: cp/class.c:3120 msgid " but does not override `operator=(const %T&)'" msgstr "" -#: cp/class.c:3588 +#: cp/class.c:3553 msgid "" "offset of empty base `%T' may not be ABI-compliant and maychange in a future " "version of GCC" msgstr "" -#: cp/class.c:3698 +#: cp/class.c:3664 msgid "class `%T' will be considered nearly empty in a future version of GCC" msgstr "" -#: cp/class.c:3780 +#: cp/class.c:3746 msgid "initializer specified for non-virtual method `%D'" msgstr "" -#: cp/class.c:4468 +#: cp/class.c:4415 msgid "" "offset of virtual base `%T' is not ABI-compliant and may change in a future " "version of GCC" msgstr "" -#: cp/class.c:4558 +#: cp/class.c:4509 msgid "direct base `%T' inaccessible in `%T' due to ambiguity" msgstr "" -#: cp/class.c:4571 +#: cp/class.c:4521 msgid "virtual base `%T' inaccessible in `%T' due to ambiguity" msgstr "" -#: cp/class.c:4745 +#: cp/class.c:4692 msgid "" "size assigned to `%T' may not be ABI-compliant and may change in a future " "version of GCC" @@ -13348,77 +13110,77 @@ msgstr "" #. Versions of G++ before G++ 3.4 did not reset the #. DECL_MODE. -#: cp/class.c:4784 +#: cp/class.c:4731 msgid "" "the offset of `%D' may not be ABI-compliant and may change in a future " "version of GCC" msgstr "" -#: cp/class.c:4807 +#: cp/class.c:4754 msgid "" "offset of `%D' is not ABI-compliant and may change in a future version of GCC" msgstr "" -#: cp/class.c:4816 +#: cp/class.c:4763 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:4875 +#: cp/class.c:4822 msgid "" "layout of classes derived from empty class `%T' may change in a future " "version of GCC" msgstr "" -#: cp/class.c:5010 cp/semantics.c:1971 +#: cp/class.c:4963 cp/semantics.c:2078 msgid "redefinition of `%#T'" msgstr "" -#: cp/class.c:5180 -msgid "`%#T' has virtual functions but non-virtual destructor" +#: cp/class.c:5107 +msgid "%#T' has virtual functions but non-virtual destructor" msgstr "" -#: cp/class.c:5259 +#: cp/class.c:5203 msgid "trying to finish struct, but kicked out due to previous parse errors" msgstr "" -#: cp/class.c:5701 +#: cp/class.c:5621 #, c-format -msgid "language string `\"%s\"' not recognized" +msgid "language string `\"%E\"' not recognized" msgstr "" -#: cp/class.c:5789 +#: cp/class.c:5708 msgid "" "cannot resolve overloaded function `%D' based on conversion to type `%T'" msgstr "" -#: cp/class.c:5914 +#: cp/class.c:5833 msgid "no matches converting function `%D' to type `%#T'" msgstr "" -#: cp/class.c:5937 +#: cp/class.c:5856 msgid "converting overloaded function `%D' to type `%#T' is ambiguous" msgstr "" -#: cp/class.c:5963 +#: cp/class.c:5882 msgid "assuming pointer to member `%D'" msgstr "" -#: cp/class.c:5966 +#: cp/class.c:5885 #, c-format msgid "(a pointer to member can only be formed with `&%E')" msgstr "" -#: cp/class.c:6011 cp/class.c:6193 cp/class.c:6200 +#: cp/class.c:5930 cp/class.c:6109 cp/class.c:6116 msgid "not enough type information" msgstr "" -#: cp/class.c:6028 +#: cp/class.c:5947 msgid "argument of type `%T' does not match `%T'" msgstr "" -#: cp/class.c:6177 +#: cp/class.c:6093 msgid "invalid operation on uninstantiated type" msgstr "" @@ -13427,11 +13189,11 @@ 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:6435 cp/decl.c:1193 cp/name-lookup.c:508 cp/pt.c:2099 +#: cp/class.c:6359 cp/decl.c:1229 cp/name-lookup.c:577 cp/pt.c:2153 msgid "declaration of `%#D'" msgstr "" -#: cp/class.c:6436 +#: cp/class.c:6360 msgid "changes meaning of `%D' from `%+#D'" msgstr "" @@ -13447,7 +13209,7 @@ msgstr "" msgid "converting from `%T' to `%T'" msgstr "" -#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297 +#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:299 msgid "cannot convert `%E' from type `%T' to type `%T'" msgstr "" @@ -13455,219 +13217,238 @@ msgstr "" msgid "pointer to member cast from `%T' to `%T' is via virtual base" msgstr "" -#: cp/cvt.c:276 +#: cp/cvt.c:278 msgid "invalid conversion from '%T' to '%T'" msgstr "" -#: cp/cvt.c:508 +#: cp/cvt.c:510 msgid "conversion from `%T' to `%T' discards qualifiers" msgstr "" -#: cp/cvt.c:526 +#: cp/cvt.c:528 msgid "casting `%T' to `%T' does not dereference pointer" msgstr "" -#: cp/cvt.c:553 +#: cp/cvt.c:555 msgid "cannot convert type `%T' to type `%T'" msgstr "" -#: cp/cvt.c:676 +#: cp/cvt.c:679 msgid "conversion from `%#T' to `%#T'" msgstr "" -#: cp/cvt.c:688 +#: cp/cvt.c:691 msgid "`%#T' used where a `%T' was expected" msgstr "" -#: cp/cvt.c:710 +#: cp/cvt.c:713 msgid "`%#T' used where a floating point value was expected" msgstr "" -#: cp/cvt.c:757 +#: cp/cvt.c:760 msgid "conversion from `%T' to non-scalar type `%T' requested" msgstr "" -#: cp/cvt.c:843 +#: cp/cvt.c:848 msgid "object of incomplete type `%T' will not be accessed in %s" msgstr "" -#: cp/cvt.c:846 +#: cp/cvt.c:851 msgid "object of type `%T' will not be accessed in %s" msgstr "" -#: cp/cvt.c:862 +#: cp/cvt.c:867 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:878 +#: cp/cvt.c:883 #, c-format msgid "%s cannot resolve address of overloaded function" msgstr "" #. Only warn when there is no &. -#: cp/cvt.c:884 +#: cp/cvt.c:889 #, c-format msgid "%s is a reference, not call, to function `%E'" msgstr "" -#: cp/cvt.c:892 +#: cp/cvt.c:897 #, c-format msgid "%s has no effect" msgstr "" -#: cp/cvt.c:1003 +#: cp/cvt.c:1008 msgid "converting NULL to non-pointer type" msgstr "" -#: cp/cvt.c:1076 +#: cp/cvt.c:1081 msgid "ambiguous default type conversion from `%T'" msgstr "" -#: cp/cvt.c:1078 +#: cp/cvt.c:1083 msgid " candidate conversions include `%D' and `%D'" msgstr "" -#: cp/decl.c:371 +#: cp/decl.c:366 msgid "label `%D' used but not defined" msgstr "" -#: cp/decl.c:378 +#: cp/decl.c:377 msgid "label `%D' defined but not used" msgstr "" -#: cp/decl.c:1100 +#: cp/decl.c:573 +msgid "%Junused variable '%D'" +msgstr "" + +#: cp/decl.c:1136 msgid "`%D' was declared `extern' and later `static'" msgstr "" -#: cp/decl.c:1101 cp/decl.c:1521 +#: cp/decl.c:1137 cp/decl.c:1602 msgid "previous declaration of `%D'" msgstr "" -#: cp/decl.c:1149 +#: cp/decl.c:1185 msgid "%Jfunction '%D' redeclared as inline" msgstr "" -#: cp/decl.c:1150 +#: cp/decl.c:1186 msgid "%Jprevious declaration of '%D' with attribute noinline" msgstr "" -#: cp/decl.c:1157 +#: cp/decl.c:1193 msgid "%Jfunction '%D' redeclared with attribute noinline" msgstr "" -#: cp/decl.c:1159 +#: cp/decl.c:1195 msgid "%Jprevious declaration of '%D' was inline" msgstr "" -#: cp/decl.c:1180 cp/decl.c:1218 +#: cp/decl.c:1216 cp/decl.c:1287 msgid "shadowing %s function `%#D'" msgstr "" -#: cp/decl.c:1189 +#: cp/decl.c:1225 msgid "library function `%#D' redeclared as non-function `%#D'" msgstr "" -#: cp/decl.c:1194 +#: cp/decl.c:1230 msgid "conflicts with built-in declaration `%#D'" msgstr "" -#: cp/decl.c:1213 cp/decl.c:1322 cp/decl.c:1338 +#: cp/decl.c:1282 cp/decl.c:1391 cp/decl.c:1407 msgid "new declaration `%#D'" msgstr "" -#: cp/decl.c:1214 +#: cp/decl.c:1283 msgid "ambiguates built-in declaration `%#D'" msgstr "" -#: cp/decl.c:1285 +#: cp/decl.c:1354 msgid "`%#D' redeclared as different kind of symbol" msgstr "" -#: cp/decl.c:1288 +#: cp/decl.c:1357 msgid "previous declaration of `%#D'" msgstr "" -#: cp/decl.c:1307 +#: cp/decl.c:1376 msgid "declaration of template `%#D'" msgstr "" -#: cp/decl.c:1308 cp/name-lookup.c:509 +#: cp/decl.c:1377 cp/name-lookup.c:578 msgid "conflicts with previous declaration `%#D'" msgstr "" -#: cp/decl.c:1323 cp/decl.c:1339 +#: cp/decl.c:1392 cp/decl.c:1408 msgid "ambiguates old declaration `%#D'" msgstr "" -#: cp/decl.c:1331 +#: cp/decl.c:1400 msgid "declaration of C function `%#D' conflicts with" msgstr "" -#: cp/decl.c:1333 +#: cp/decl.c:1402 msgid "previous declaration `%#D' here" msgstr "" -#: cp/decl.c:1346 +#: cp/decl.c:1415 msgid "conflicting declaration '%#D'" msgstr "" -#: cp/decl.c:1347 +#: cp/decl.c:1416 msgid "'%D' has a previous declaration as `%#D'" msgstr "" -#: cp/decl.c:1400 +#. [namespace.alias] +#. +#. A namespace-name or namespace-alias shall not be declared as +#. the name of any other entity in the same declarative region. +#. A namespace-name defined at global scope shall not be +#. declared as the name of any other entity in any global scope +#. of the program. +#: cp/decl.c:1469 +msgid "declaration of `namespace %D' conflicts with" +msgstr "" + +#: cp/decl.c:1470 +msgid "previous declaration of `namespace %D' here" +msgstr "" + +#: cp/decl.c:1482 msgid "`%#D' previously defined here" msgstr "" -#: cp/decl.c:1401 +#: cp/decl.c:1483 msgid "`%#D' previously declared here" msgstr "" #. Prototype decl follows defn w/o prototype. -#: cp/decl.c:1410 +#: cp/decl.c:1492 msgid "prototype for `%#D'" msgstr "" -#: cp/decl.c:1411 +#: cp/decl.c:1493 msgid "%Jfollows non-prototype definition here" msgstr "" -#: cp/decl.c:1423 +#: cp/decl.c:1505 msgid "previous declaration of `%#D' with %L linkage" msgstr "" -#: cp/decl.c:1425 +#: cp/decl.c:1507 msgid "conflicts with new declaration with %L linkage" msgstr "" -#: cp/decl.c:1448 cp/decl.c:1455 +#: cp/decl.c:1530 cp/decl.c:1537 msgid "default argument given for parameter %d of `%#D'" msgstr "" -#: cp/decl.c:1450 cp/decl.c:1457 +#: cp/decl.c:1532 cp/decl.c:1539 msgid "after previous specification in `%#D'" msgstr "" -#: cp/decl.c:1466 +#: cp/decl.c:1548 msgid "`%#D' was used before it was declared inline" msgstr "" -#: cp/decl.c:1467 +#: cp/decl.c:1549 msgid "%Jprevious non-inline declaration here" msgstr "" -#: cp/decl.c:1520 +#: cp/decl.c:1601 msgid "redundant redeclaration of `%D' in same scope" msgstr "" -#: cp/decl.c:1614 +#: cp/decl.c:1695 #, c-format msgid "declaration of `%F' throws different exceptions" msgstr "" -#: cp/decl.c:1616 +#: cp/decl.c:1697 #, c-format msgid "than previous declaration `%F'" msgstr "" @@ -13680,808 +13461,857 @@ 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:1763 +#: cp/decl.c:1844 msgid "explicit specialization of %D after first use" msgstr "" -#: cp/decl.c:1843 +#: cp/decl.c:1923 msgid "%J'%D': visibility attribute ignored because it" msgstr "" -#: cp/decl.c:1845 +#: cp/decl.c:1925 msgid "%Jconflicts with previous declaration here" msgstr "" -#: cp/decl.c:2069 +#: cp/decl.c:2153 #, c-format -msgid "label `%s' referenced outside of any function" +msgid "label `%E' referenced outside of any function" msgstr "" -#: cp/decl.c:2166 cp/decl.c:2190 cp/decl.c:2278 +#: cp/decl.c:2249 cp/decl.c:2273 cp/decl.c:2361 msgid "jump to label `%D'" msgstr "" -#: cp/decl.c:2168 cp/decl.c:2192 +#: cp/decl.c:2251 cp/decl.c:2275 msgid "jump to case label" msgstr "" -#: cp/decl.c:2171 cp/decl.c:2195 +#: cp/decl.c:2254 cp/decl.c:2278 msgid "%H from here" msgstr "" -#: cp/decl.c:2176 +#: cp/decl.c:2259 msgid " crosses initialization of `%#D'" msgstr "" -#: cp/decl.c:2179 cp/decl.c:2294 +#: cp/decl.c:2262 cp/decl.c:2377 msgid " enters scope of non-POD `%#D'" msgstr "" -#: cp/decl.c:2199 cp/decl.c:2298 +#: cp/decl.c:2282 cp/decl.c:2381 msgid " enters try block" msgstr "" -#: cp/decl.c:2201 cp/decl.c:2300 +#: cp/decl.c:2284 cp/decl.c:2383 msgid " enters catch block" msgstr "" -#: cp/decl.c:2279 +#: cp/decl.c:2362 msgid " from here" msgstr "" #. Can't skip init of __exception_info. -#: cp/decl.c:2290 +#: cp/decl.c:2373 msgid "%J enters catch block" msgstr "" -#: cp/decl.c:2292 +#: cp/decl.c:2375 msgid " skips initialization of `%#D'" msgstr "" -#: cp/decl.c:2326 +#: cp/decl.c:2409 msgid "label named wchar_t" msgstr "" -#: cp/decl.c:2329 +#: cp/decl.c:2412 msgid "duplicate label `%D'" msgstr "" -#: cp/decl.c:2559 cp/parser.c:3256 +#: cp/decl.c:2643 cp/parser.c:3542 msgid "`%D' used without template parameters" msgstr "" -#: cp/decl.c:2569 cp/decl.c:2585 cp/decl.c:2673 +#: cp/decl.c:2653 cp/decl.c:2669 cp/decl.c:2756 msgid "no class template named `%#T' in `%#T'" msgstr "" -#: cp/decl.c:2606 cp/decl.c:2616 cp/decl.c:2636 +#: cp/decl.c:2690 cp/decl.c:2700 cp/decl.c:2720 msgid "no type named `%#T' in `%#T'" msgstr "" -#: cp/decl.c:3341 +#: cp/decl.c:3426 msgid "%Jan anonymous union cannot have function members" msgstr "" -#: cp/decl.c:3359 +#: cp/decl.c:3444 msgid "member %#D' with constructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:3362 +#: cp/decl.c:3447 msgid "member %#D' with destructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:3365 +#: cp/decl.c:3450 msgid "" "member %#D' with copy assignment operator not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:3405 -msgid "redeclaration of C++ built-in type `%T'" +#: cp/decl.c:3475 +msgid "multiple types in one declaration" msgstr "" -#: cp/decl.c:3443 -msgid "multiple types in one declaration" +#: cp/decl.c:3479 +msgid "redeclaration of C++ built-in type %qT" msgstr "" -#: cp/decl.c:3469 +#: cp/decl.c:3515 msgid "missing type-name in typedef-declaration" msgstr "" -#: cp/decl.c:3477 +#: cp/decl.c:3523 msgid "ISO C++ prohibits anonymous structs" msgstr "" -#: cp/decl.c:3484 -msgid "`%D' can only be specified for functions" +#: cp/decl.c:3530 +#, c-format +msgid "`%s' can only be specified for functions" +msgstr "" + +#: cp/decl.c:3536 +msgid "`friend' can only be specified inside a class" msgstr "" -#: cp/decl.c:3486 -msgid "`%D' can only be specified inside a class" +#: cp/decl.c:3538 +msgid "`explicit' can only be specified for constructors" msgstr "" -#: cp/decl.c:3488 -msgid "`%D' can only be specified for constructors" +#: cp/decl.c:3540 +msgid "a storage class can only be specified for objects and functions" msgstr "" -#: cp/decl.c:3491 -msgid "`%D' can only be specified for objects and functions" +#: cp/decl.c:3546 +msgid "qualifiers can only be specified for objects and functions" msgstr "" -#: cp/decl.c:3633 cp/decl2.c:874 +#: cp/decl.c:3684 cp/decl2.c:856 msgid "typedef `%D' is initialized (use __typeof__ instead)" msgstr "" -#: cp/decl.c:3638 +#: cp/decl.c:3689 msgid "function `%#D' is initialized like a variable" msgstr "" -#: cp/decl.c:3650 +#: cp/decl.c:3701 msgid "declaration of `%#D' has `extern' and is initialized" msgstr "" -#: cp/decl.c:3683 +#: cp/decl.c:3724 cp/decl.c:9720 +msgid "%Jinline function '%D' given attribute noinline" +msgstr "" + +#: cp/decl.c:3732 msgid "`%#D' is not a static member of `%#T'" msgstr "" -#: cp/decl.c:3689 +#: cp/decl.c:3738 msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'" msgstr "" -#: cp/decl.c:3700 +#: cp/decl.c:3749 msgid "duplicate initialization of %D" msgstr "" -#: cp/decl.c:3733 +#: cp/decl.c:3782 msgid "declaration of `%#D' outside of class is not definition" msgstr "" -#: cp/decl.c:3782 +#: cp/decl.c:3831 msgid "variable `%#D' has initializer but incomplete type" msgstr "" -#: cp/decl.c:3790 cp/decl.c:4372 +#: cp/decl.c:3839 cp/decl.c:4421 msgid "elements of array `%#D' have incomplete type" msgstr "" -#: cp/decl.c:3806 +#: cp/decl.c:3855 msgid "aggregate `%#D' has incomplete type and cannot be defined" msgstr "" -#: cp/decl.c:3856 +#: cp/decl.c:3905 msgid "`%D' declared as reference but not initialized" msgstr "" -#: cp/decl.c:3862 +#: cp/decl.c:3911 msgid "ISO C++ forbids use of initializer list to initialize reference `%D'" msgstr "" -#: cp/decl.c:3890 +#: cp/decl.c:3939 msgid "cannot initialize `%T' from `%T'" msgstr "" -#: cp/decl.c:3922 +#: cp/decl.c:3971 msgid "initializer fails to determine size of `%D'" msgstr "" -#: cp/decl.c:3927 +#: cp/decl.c:3976 msgid "array size missing in `%D'" msgstr "" -#: cp/decl.c:3939 +#: cp/decl.c:3988 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:3976 +#: cp/decl.c:4025 msgid "storage size of `%D' isn't known" msgstr "" -#: cp/decl.c:3998 +#: cp/decl.c:4047 msgid "storage size of `%D' isn't constant" msgstr "" -#: cp/decl.c:4053 +#: cp/decl.c:4102 msgid "" "sorry: semantics of inline function static data `%#D' are wrong (you'll wind " "up with multiple copies)" msgstr "" -#: cp/decl.c:4054 +#: cp/decl.c:4103 msgid "%J you can work around this by removing the initializer" msgstr "" -#: cp/decl.c:4080 +#: cp/decl.c:4129 msgid "uninitialized const `%D'" msgstr "" -#: cp/decl.c:4158 +#: cp/decl.c:4207 msgid "brace-enclosed initializer used to initialize `%T'" msgstr "" -#: cp/decl.c:4221 +#: cp/decl.c:4270 msgid "initializer for `%T' must be brace-enclosed" msgstr "" -#: cp/decl.c:4238 +#: cp/decl.c:4287 msgid "ISO C++ does not allow designated initializers" msgstr "" -#: cp/decl.c:4242 +#: cp/decl.c:4291 msgid "`%T' has no non-static data member named `%D'" msgstr "" -#: cp/decl.c:4305 +#: cp/decl.c:4354 msgid "name `%D' used in a GNU-style designated initializer for an array" msgstr "" -#: cp/decl.c:4328 +#: cp/decl.c:4377 msgid "too many initializers for `%T'" msgstr "" -#: cp/decl.c:4366 +#: cp/decl.c:4415 msgid "variable-sized object `%D' may not be initialized" msgstr "" -#: cp/decl.c:4377 +#: cp/decl.c:4426 msgid "`%D' has incomplete type" msgstr "" -#: cp/decl.c:4431 +#: cp/decl.c:4480 msgid "`%D' must be initialized by constructor, not by `{...}'" msgstr "" -#: cp/decl.c:4475 +#: cp/decl.c:4524 msgid "structure `%D' with uninitialized const members" msgstr "" -#: cp/decl.c:4477 +#: cp/decl.c:4526 msgid "structure `%D' with uninitialized reference members" msgstr "" -#: cp/decl.c:4658 +#: cp/decl.c:4721 msgid "assignment (not initialization) in declaration" msgstr "" -#: cp/decl.c:4675 +#: cp/decl.c:4738 msgid "cannot initialize `%D' to namespace `%D'" msgstr "" -#: cp/decl.c:4729 +#: cp/decl.c:4782 msgid "shadowing previous type declaration of `%#D'" msgstr "" -#: cp/decl.c:4766 +#: cp/decl.c:4819 msgid "`%D' cannot be thread-local because it has non-POD type `%T'" msgstr "" -#: cp/decl.c:4781 +#: cp/decl.c:4834 msgid "`%D' is thread-local and so cannot be dynamically initialized" msgstr "" -#: cp/decl.c:5263 -msgid "invalid catch parameter" -msgstr "" - -#: cp/decl.c:5377 +#: cp/decl.c:5425 msgid "destructor for alien class `%T' cannot be a member" msgstr "" -#: cp/decl.c:5380 +#: cp/decl.c:5428 msgid "constructor for alien class `%T' cannot be a member" msgstr "" -#: cp/decl.c:5402 +#: cp/decl.c:5450 msgid "`%D' declared as a `virtual' %s" msgstr "" -#: cp/decl.c:5404 +#: cp/decl.c:5452 msgid "`%D' declared as an `inline' %s" msgstr "" -#: cp/decl.c:5406 +#: cp/decl.c:5454 msgid "" "`const' and `volatile' function specifiers on `%D' invalid in %s declaration" msgstr "" -#: cp/decl.c:5409 +#: cp/decl.c:5457 msgid "`%D' declared as a friend" msgstr "" -#: cp/decl.c:5415 +#: cp/decl.c:5463 msgid "`%D' declared with an exception specification" msgstr "" -#: cp/decl.c:5497 +#: cp/decl.c:5545 msgid "cannot declare `::main' to be a template" msgstr "" -#: cp/decl.c:5499 +#: cp/decl.c:5547 msgid "cannot declare `::main' to be inline" msgstr "" -#: cp/decl.c:5501 +#: cp/decl.c:5549 msgid "cannot declare `::main' to be static" msgstr "" -#: cp/decl.c:5504 +#: cp/decl.c:5552 msgid "`main' must return `int'" msgstr "" -#: cp/decl.c:5531 +#: cp/decl.c:5580 msgid "non-local function `%#D' uses anonymous type" msgstr "" -#: cp/decl.c:5534 cp/decl.c:5852 +#: cp/decl.c:5583 cp/decl.c:5909 msgid "" "`%#D' does not refer to the unqualified type, so it is not used for linkage" msgstr "" -#: cp/decl.c:5540 +#: cp/decl.c:5589 msgid "non-local function `%#D' uses local type `%T'" msgstr "" -#: cp/decl.c:5564 -msgid "%smember function `%D' cannot have `%T' method qualifier" +#: cp/decl.c:5613 +msgid "%smember function `%D' cannot have cv-qualifier" msgstr "" -#: cp/decl.c:5588 +#: cp/decl.c:5637 msgid "defining explicit specialization `%D' in friend declaration" msgstr "" #. Something like `template friend void f()'. -#: cp/decl.c:5598 +#: cp/decl.c:5647 msgid "invalid use of template-id `%D' in declaration of primary template" msgstr "" -#: cp/decl.c:5625 +#: cp/decl.c:5674 msgid "" "default arguments are not allowed in declaration of friend template " "specialization `%D'" msgstr "" -#: cp/decl.c:5632 +#: cp/decl.c:5681 msgid "" "`inline' is not allowed in declaration of friend template specialization `%D'" msgstr "" -#: cp/decl.c:5692 +#: cp/decl.c:5741 msgid "definition of implicitly-declared `%D'" msgstr "" -#: cp/decl.c:5712 cp/decl2.c:757 +#: cp/decl.c:5761 cp/decl2.c:718 msgid "no `%#D' member function declared in class `%T'" msgstr "" -#: cp/decl.c:5849 +#: cp/decl.c:5906 msgid "non-local variable `%#D' uses anonymous type" msgstr "" -#: cp/decl.c:5858 +#: cp/decl.c:5915 msgid "non-local variable `%#D' uses local type `%T'" msgstr "" -#: cp/decl.c:5973 +#: cp/decl.c:6031 msgid "" "invalid in-class initialization of static data member of non-integral type `%" "T'" msgstr "" -#: cp/decl.c:5982 +#: cp/decl.c:6040 msgid "ISO C++ forbids in-class initialization of non-const static member `%D'" msgstr "" -#: cp/decl.c:5985 +#: cp/decl.c:6043 msgid "" "ISO C++ forbids initialization of member constant `%D' of non-integral type `" "%T'" msgstr "" -#: cp/decl.c:6004 +#: cp/decl.c:6062 msgid "size of array `%D' has non-integral type `%T'" msgstr "" -#: cp/decl.c:6006 +#: cp/decl.c:6064 msgid "size of array has non-integral type `%T'" msgstr "" -#: cp/decl.c:6042 +#: cp/decl.c:6100 msgid "size of array `%D' is negative" msgstr "" -#: cp/decl.c:6044 +#: cp/decl.c:6102 msgid "size of array is negative" msgstr "" -#: cp/decl.c:6052 +#: cp/decl.c:6110 msgid "ISO C++ forbids zero-size array `%D'" msgstr "" -#: cp/decl.c:6054 +#: cp/decl.c:6112 msgid "ISO C++ forbids zero-size array" msgstr "" -#: cp/decl.c:6061 +#: cp/decl.c:6119 msgid "size of array `%D' is not an integral constant-expression" msgstr "" -#: cp/decl.c:6064 +#: cp/decl.c:6122 msgid "size of array is not an integral constant-expression" msgstr "" -#: cp/decl.c:6069 +#: cp/decl.c:6127 msgid "ISO C++ forbids variable-size array `%D'" msgstr "" -#: cp/decl.c:6071 +#: cp/decl.c:6129 msgid "ISO C++ forbids variable-size array" msgstr "" -#: cp/decl.c:6093 +#: cp/decl.c:6151 msgid "overflow in array dimension" msgstr "" -#: cp/decl.c:6187 +#: cp/decl.c:6226 msgid "declaration of `%D' as %s" msgstr "" -#: cp/decl.c:6189 +#: cp/decl.c:6228 #, c-format msgid "creating %s" msgstr "" -#: cp/decl.c:6201 +#: cp/decl.c:6240 msgid "" "declaration of `%D' as multidimensional array must have bounds for all " "dimensions except the first" msgstr "" -#: cp/decl.c:6204 +#: cp/decl.c:6243 msgid "" "multidimensional array must have bounds for all dimensions except the first" msgstr "" -#: cp/decl.c:6232 +#: cp/decl.c:6277 msgid "return type specification for constructor invalid" msgstr "" -#: cp/decl.c:6239 +#: cp/decl.c:6287 msgid "return type specification for destructor invalid" msgstr "" -#: cp/decl.c:6245 +#: cp/decl.c:6300 msgid "operator `%T' declared to return `%T'" msgstr "" -#: cp/decl.c:6247 +#: cp/decl.c:6302 msgid "return type specified for `operator %T'" msgstr "" -#: cp/decl.c:6391 -msgid "destructors must be member functions" +#: cp/decl.c:6471 +msgid "type `%T' is not derived from type `%T'" msgstr "" -#: cp/decl.c:6410 -msgid "destructor `%T' must match class name `%T'" +#: cp/decl.c:6516 +msgid "declarator-id missing; using reserved word `%D'" msgstr "" -#: cp/decl.c:6473 -msgid "declarator-id missing; using reserved word `%D'" +#: cp/decl.c:6572 +msgid "declaration of `%D' as non-function" msgstr "" -#: cp/decl.c:6527 -msgid "type `%T' is not derived from type `%T'" +#: cp/decl.c:6605 +#, c-format +msgid "two or more data types in declaration of `%s'" msgstr "" -#. Parse error puts this typespec where -#. a declarator should go. -#: cp/decl.c:6590 -msgid "`%T' specified as declarator-id" +#: cp/decl.c:6643 +msgid "`long long long' is too long for GCC" msgstr "" -#: cp/decl.c:6592 -msgid " perhaps you want `%T' for a constructor" +#: cp/decl.c:6645 +msgid "ISO C++ does not support `long long'" msgstr "" -#. Sometimes, we see a template-name used as part of a -#. decl-specifier like in -#. std::allocator alloc; -#. Handle that gracefully. -#: cp/decl.c:6614 +#: cp/decl.c:6667 #, c-format -msgid "invalid use of template-name '%E' in a declarator" +msgid "duplicate `%s'" msgstr "" -#: cp/decl.c:6634 -msgid "declaration of `%D' as non-function" +#: cp/decl.c:6703 cp/decl.c:6706 +#, c-format +msgid "ISO C++ forbids declaration of `%s' with no type" msgstr "" -#: cp/decl.c:6711 -msgid "`bool' is now a keyword" +#: cp/decl.c:6732 +#, c-format +msgid "short, signed or unsigned invalid for `%s'" msgstr "" -#: cp/decl.c:6713 -msgid "extraneous `%T' ignored" +#: cp/decl.c:6734 +#, c-format +msgid "long, short, signed or unsigned invalid for `%s'" msgstr "" -#: cp/decl.c:6729 cp/decl.c:6773 -msgid "multiple declarations `%T' and `%T'" +#: cp/decl.c:6736 +#, c-format +msgid "long and short specified together for `%s'" msgstr "" -#: cp/decl.c:6742 -msgid "ISO C++ does not support `long long'" +#: cp/decl.c:6738 +#, c-format +msgid "long or short specified with char for `%s'" msgstr "" -#: cp/decl.c:6846 cp/decl.c:6849 +#: cp/decl.c:6740 #, c-format -msgid "ISO C++ forbids declaration of `%s' with no type" +msgid "long or short specified with floating type for `%s'" msgstr "" -#: cp/decl.c:6880 +#: cp/decl.c:6742 #, c-format -msgid "short, signed or unsigned invalid for `%s'" +msgid "signed and unsigned given together for `%s'" msgstr "" -#: cp/decl.c:6885 +#: cp/decl.c:6748 #, c-format -msgid "long and short specified together for `%s'" +msgid "long, short, signed or unsigned used invalidly for `%s'" msgstr "" -#: cp/decl.c:6896 +#: cp/decl.c:6813 #, c-format -msgid "signed and unsigned given together for `%s'" +msgid "complex invalid for `%s'" msgstr "" -#: cp/decl.c:7005 +#: cp/decl.c:6842 msgid "qualifiers are not allowed on declaration of `operator %T'" msgstr "" -#: cp/decl.c:7027 +#: cp/decl.c:6863 msgid "member `%D' cannot be declared both virtual and static" msgstr "" -#: cp/decl.c:7036 +#: cp/decl.c:6871 msgid "`%T::%D' is not a valid declarator" msgstr "" -#: cp/decl.c:7048 -msgid "storage class specifiers invalid in parameter declarations" +#: cp/decl.c:6879 +msgid "typedef declaration invalid in parameter declaration" msgstr "" -#: cp/decl.c:7052 -msgid "typedef declaration invalid in parameter declaration" +#: cp/decl.c:6883 +msgid "storage class specifiers invalid in parameter declarations" msgstr "" -#: cp/decl.c:7065 +#: cp/decl.c:6890 msgid "virtual outside class declaration" msgstr "" -#: cp/decl.c:7124 +#: cp/decl.c:6903 cp/decl.c:6910 +#, c-format +msgid "multiple storage classes in declaration of `%s'" +msgstr "" + +#: cp/decl.c:6953 #, c-format msgid "storage class specified for %s `%s'" msgstr "" -#: cp/decl.c:7159 +#: cp/decl.c:6960 +#, c-format +msgid "storage class specified for parameter `%s'" +msgstr "" + +#: cp/decl.c:6979 +#, c-format +msgid "`%s' initialized and declared `extern'" +msgstr "" + +#: cp/decl.c:6982 +#, c-format +msgid "`%s' has both `extern' and initializer" +msgstr "" + +#: cp/decl.c:6986 +#, c-format +msgid "nested function `%s' declared `extern'" +msgstr "" + +#: cp/decl.c:6990 #, c-format msgid "top-level declaration of `%s' specifies `auto'" msgstr "" -#: cp/decl.c:7171 +#: cp/decl.c:6996 +#, c-format +msgid "function-scope `%s' implicitly auto and declared `__thread'" +msgstr "" + +#: cp/decl.c:7002 msgid "storage class specifiers invalid in friend function declarations" msgstr "" -#: cp/decl.c:7343 -msgid "destructor cannot be static member function" +#: cp/decl.c:7095 +#, c-format +msgid "`%s' declared as function returning a function" msgstr "" -#: cp/decl.c:7346 +#: cp/decl.c:7100 #, c-format -msgid "destructors may not be `%s'" +msgid "`%s' declared as function returning an array" msgstr "" -#: cp/decl.c:7367 -msgid "constructor cannot be static member function" +#: cp/decl.c:7136 +msgid "destructor cannot be static member function" msgstr "" -#: cp/decl.c:7370 -msgid "constructors cannot be declared virtual" +#: cp/decl.c:7139 +msgid "destructors may not be cv-qualified" msgstr "" -#: cp/decl.c:7375 -#, c-format -msgid "constructors may not be `%s'" +#: cp/decl.c:7159 +msgid "constructor cannot be static member function" msgstr "" -#: cp/decl.c:7385 -msgid "return value type specifier for constructor ignored" +#: cp/decl.c:7162 +msgid "constructors cannot be declared virtual" +msgstr "" + +#: cp/decl.c:7167 +msgid "constructors may not be cv-qualified" msgstr "" -#: cp/decl.c:7404 +#: cp/decl.c:7187 #, c-format msgid "can't initialize friend function `%s'" msgstr "" #. Cannot be both friend and virtual. -#: cp/decl.c:7408 +#: cp/decl.c:7191 msgid "virtual functions cannot be friends" msgstr "" -#: cp/decl.c:7413 +#: cp/decl.c:7195 msgid "friend declaration not in class definition" msgstr "" -#: cp/decl.c:7415 +#: cp/decl.c:7197 #, c-format msgid "can't define friend function `%s' in a local class definition" msgstr "" -#: cp/decl.c:7436 +#: cp/decl.c:7209 msgid "destructors may not have parameters" msgstr "" -#: cp/decl.c:7456 cp/decl.c:7463 +#: cp/decl.c:7227 cp/decl.c:7234 msgid "cannot declare reference to `%#T'" msgstr "" -#: cp/decl.c:7457 +#: cp/decl.c:7228 msgid "cannot declare pointer to `%#T'" msgstr "" -#: cp/decl.c:7462 +#: cp/decl.c:7236 msgid "cannot declare pointer to `%#T' member" msgstr "" -#: cp/decl.c:7600 +#: cp/decl.c:7292 +msgid "template-id `%D' used as a declarator" +msgstr "" + +#: cp/decl.c:7343 msgid "extra qualification `%T::' on member `%s' ignored" msgstr "" -#: cp/decl.c:7616 +#: cp/decl.c:7362 msgid "cannot declare member function `%T::%s' within `%T'" msgstr "" -#: cp/decl.c:7631 +#: cp/decl.c:7377 msgid "cannot declare member `%T::%s' within `%T'" msgstr "" -#: cp/decl.c:7711 +#: cp/decl.c:7405 +#, c-format +msgid "size of array `%s' is too large" +msgstr "" + +#: cp/decl.c:7416 msgid "data member may not have variably modified type `%T'" msgstr "" -#: cp/decl.c:7713 +#: cp/decl.c:7418 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:7721 +#: cp/decl.c:7426 msgid "only declarations of constructors can be `explicit'" msgstr "" -#: cp/decl.c:7729 +#: cp/decl.c:7434 #, c-format msgid "non-member `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7734 +#: cp/decl.c:7439 #, c-format msgid "non-object member `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7740 +#: cp/decl.c:7445 #, c-format msgid "function `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7745 +#: cp/decl.c:7450 #, c-format msgid "static `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7750 +#: cp/decl.c:7455 #, c-format msgid "const `%s' cannot be declared `mutable'" msgstr "" -#: cp/decl.c:7764 -msgid "template-id `%D' used as a declarator" -msgstr "" - -#: cp/decl.c:7785 +#: cp/decl.c:7473 msgid "ISO C++ forbids nested type `%D' with same name as enclosing class" msgstr "" -#: cp/decl.c:7793 +#: cp/decl.c:7481 msgid "%Jtypedef name may not be a nested-name-specifier" msgstr "" -#: cp/decl.c:7839 +#: cp/decl.c:7527 msgid "%Jinvalid type qualifier for non-member function type" msgstr "" -#: cp/decl.c:7902 +#: cp/decl.c:7590 msgid "type qualifiers specified for friend class declaration" msgstr "" -#: cp/decl.c:7907 +#: cp/decl.c:7595 msgid "`inline' specified for friend class declaration" msgstr "" -#: cp/decl.c:7915 +#: cp/decl.c:7603 msgid "template parameters cannot be friends" msgstr "" -#: cp/decl.c:7917 +#: cp/decl.c:7605 msgid "friend declaration requires class-key, i.e. `friend class %T::%D'" msgstr "" -#: cp/decl.c:7921 +#: cp/decl.c:7609 msgid "friend declaration requires class-key, i.e. `friend %#T'" msgstr "" -#: cp/decl.c:7934 +#: cp/decl.c:7622 msgid "trying to make class `%T' a friend of global scope" msgstr "" -#: cp/decl.c:7945 +#: cp/decl.c:7633 msgid "invalid qualifiers on non-member function type" msgstr "" -#: cp/decl.c:7964 +#: cp/decl.c:7652 msgid "abstract declarator `%T' used as declaration" msgstr "" -#: cp/decl.c:7976 +#: cp/decl.c:7664 msgid "unnamed variable or field declared void" msgstr "" -#: cp/decl.c:7985 +#: cp/decl.c:7668 +#, c-format +msgid "variable or field `%s' declared void" +msgstr "" + +#: cp/decl.c:7671 msgid "variable or field declared void" msgstr "" -#: cp/decl.c:7995 +#: cp/decl.c:7681 msgid "cannot use `::' in parameter declaration" msgstr "" #. Something like struct S { int N::j; }; -#: cp/decl.c:8040 +#: cp/decl.c:7726 msgid "invalid use of `::'" msgstr "" -#: cp/decl.c:8052 +#: cp/decl.c:7738 msgid "function `%D' cannot be declared friend" msgstr "" -#: cp/decl.c:8064 +#: cp/decl.c:7750 msgid "can't make `%D' into a method -- not in a class" msgstr "" -#: cp/decl.c:8073 +#: cp/decl.c:7759 msgid "function `%D' declared virtual inside a union" msgstr "" -#: cp/decl.c:8082 +#: cp/decl.c:7768 msgid "`%D' cannot be declared virtual, since it is always static" msgstr "" -#: cp/decl.c:8161 +#: cp/decl.c:7847 msgid "field `%D' has incomplete type" msgstr "" -#: cp/decl.c:8163 +#: cp/decl.c:7849 msgid "name `%T' has incomplete type" msgstr "" -#: cp/decl.c:8172 +#: cp/decl.c:7858 msgid " in instantiation of template `%T'" msgstr "" -#: cp/decl.c:8182 +#: cp/decl.c:7868 #, c-format -msgid "`%s' is neither function nor member function; cannot be declared friend" +msgid "`%E' is neither function nor member function; cannot be declared friend" msgstr "" -#: cp/decl.c:8193 +#: cp/decl.c:7879 msgid "member functions are implicitly friends of their class" msgstr "" @@ -14497,97 +14327,86 @@ 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:8233 +#: cp/decl.c:7919 msgid "ISO C++ forbids initialization of member `%D'" msgstr "" -#: cp/decl.c:8235 +#: cp/decl.c:7921 msgid "making `%D' static" msgstr "" -#: cp/decl.c:8291 +#: cp/decl.c:7979 #, c-format msgid "storage class `auto' invalid for function `%s'" msgstr "" -#: cp/decl.c:8293 +#: cp/decl.c:7981 #, c-format msgid "storage class `register' invalid for function `%s'" msgstr "" -#: cp/decl.c:8295 +#: cp/decl.c:7983 #, c-format msgid "storage class `__thread' invalid for function `%s'" msgstr "" -#: cp/decl.c:8306 +#: cp/decl.c:7994 #, c-format msgid "" -"storage class `static' invalid for function `%s' declared out of global scope" +"`static' specified invalid for function `%s' declared out of global scope" msgstr "" -#: cp/decl.c:8308 +#: cp/decl.c:7996 #, c-format msgid "" -"storage class `inline' invalid for function `%s' declared out of global scope" +"`inline' specifier invalid for function `%s' declared out of global scope" msgstr "" -#: cp/decl.c:8315 +#: cp/decl.c:8003 #, c-format msgid "virtual non-class function `%s'" msgstr "" -#: cp/decl.c:8346 +#: cp/decl.c:8034 msgid "cannot declare member function `%D' to have static linkage" msgstr "" #. FIXME need arm citation -#: cp/decl.c:8352 +#: cp/decl.c:8040 msgid "cannot declare static function inside another function" msgstr "" -#: cp/decl.c:8380 +#: cp/decl.c:8069 msgid "" "`static' may not be used when defining (as opposed to declaring) a static " "data member" msgstr "" -#: cp/decl.c:8386 +#: cp/decl.c:8075 msgid "static member `%D' declared `register'" msgstr "" -#: cp/decl.c:8391 +#: cp/decl.c:8080 msgid "cannot explicitly declare member `%#D' to have extern linkage" msgstr "" -#: cp/decl.c:8531 +#: cp/decl.c:8220 msgid "default argument for `%#D' has type `%T'" msgstr "" -#: cp/decl.c:8534 +#: cp/decl.c:8223 msgid "default argument for parameter of type `%T' has type `%T'" msgstr "" -#: cp/decl.c:8551 +#: cp/decl.c:8240 msgid "default argument `%E' uses local variable `%D'" msgstr "" -#: cp/decl.c:8595 -#, c-format -msgid "invalid string constant `%E'" -msgstr "" - -#: cp/decl.c:8597 -msgid "" -"invalid integer constant in parameter list, did you forget to give parameter " -"name?" -msgstr "" - -#: cp/decl.c:8635 +#: cp/decl.c:8309 msgid "parameter `%D' invalidly declared method type" msgstr "" -#: cp/decl.c:8659 +#: cp/decl.c:8333 msgid "parameter `%D' includes %s to array of unknown bound `%T'" msgstr "" @@ -14606,94 +14425,102 @@ 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:8818 +#: cp/decl.c:8490 msgid "invalid constructor; you probably meant `%T (const %T&)'" msgstr "" -#: cp/decl.c:8945 +#: cp/decl.c:8614 +msgid "`%D' may not be declared within a namespace" +msgstr "" + +#: cp/decl.c:8616 +msgid "`%D' may not be declared as static" +msgstr "" + +#: cp/decl.c:8636 msgid "`%D' must be a nonstatic member function" msgstr "" -#: cp/decl.c:8951 +#: cp/decl.c:8642 msgid "" "`%D' must be either a non-static member function or a non-member function" msgstr "" -#: cp/decl.c:8968 +#: cp/decl.c:8659 msgid "`%D' must have an argument of class or enumerated type" msgstr "" -#: cp/decl.c:9003 +#: cp/decl.c:8694 #, c-format msgid "conversion to %s%s will never use a type conversion operator" msgstr "" #. 13.4.0.3 -#: cp/decl.c:9010 +#: cp/decl.c:8701 msgid "ISO C++ prohibits overloading operator ?:" msgstr "" -#: cp/decl.c:9060 +#: cp/decl.c:8751 msgid "postfix `%D' must take `int' as its argument" msgstr "" -#: cp/decl.c:9064 +#: cp/decl.c:8755 msgid "postfix `%D' must take `int' as its second argument" msgstr "" -#: cp/decl.c:9071 +#: cp/decl.c:8762 msgid "`%D' must take either zero or one argument" msgstr "" -#: cp/decl.c:9073 +#: cp/decl.c:8764 msgid "`%D' must take either one or two arguments" msgstr "" -#: cp/decl.c:9094 +#: cp/decl.c:8785 msgid "prefix `%D' should return `%T'" msgstr "" -#: cp/decl.c:9100 +#: cp/decl.c:8791 msgid "postfix `%D' should return `%T'" msgstr "" -#: cp/decl.c:9109 +#: cp/decl.c:8800 msgid "`%D' must take `void'" msgstr "" -#: cp/decl.c:9111 cp/decl.c:9119 +#: cp/decl.c:8802 cp/decl.c:8810 msgid "`%D' must take exactly one argument" msgstr "" -#: cp/decl.c:9121 +#: cp/decl.c:8812 msgid "`%D' must take exactly two arguments" msgstr "" -#: cp/decl.c:9129 +#: cp/decl.c:8820 msgid "user-defined `%D' always evaluates both arguments" msgstr "" -#: cp/decl.c:9143 +#: cp/decl.c:8834 msgid "`%D' should return by value" msgstr "" -#: cp/decl.c:9155 cp/decl.c:9158 +#: cp/decl.c:8846 cp/decl.c:8849 msgid "`%D' cannot have default arguments" msgstr "" -#: cp/decl.c:9218 +#: cp/decl.c:8909 msgid "using typedef-name `%D' after `%s'" msgstr "" -#: cp/decl.c:9224 +#: cp/decl.c:8915 msgid "using template type parameter `%T' after `%s'" msgstr "" -#: cp/decl.c:9232 +#: cp/decl.c:8923 msgid "`%T' referred to as `%s'" msgstr "" -#: cp/decl.c:9238 +#: cp/decl.c:8929 msgid "`%T' referred to as enum" msgstr "" @@ -14704,43 +14531,47 @@ msgstr "" #. void f(class C); // No template header here #. #. then the required template argument is missing. -#: cp/decl.c:9253 +#: cp/decl.c:8944 msgid "template argument required for `%s %T'" msgstr "" -#: cp/decl.c:9398 +#: cp/decl.c:9089 msgid "use of enum `%#D' without previous declaration" msgstr "" -#: cp/decl.c:9455 +#: cp/decl.c:9107 +msgid "redeclaration of `%T' as a non-template" +msgstr "" + +#: cp/decl.c:9200 msgid "derived union `%T' invalid" msgstr "" -#: cp/decl.c:9508 -msgid "base type `%T' fails to be a struct or class type" +#: cp/decl.c:9211 +msgid "Java class '%T' cannot have multiple bases" msgstr "" -#: cp/decl.c:9516 -msgid "recursive type `%T' undefined" +#: cp/decl.c:9223 +msgid "Java class '%T' cannot have virtual bases" msgstr "" -#: cp/decl.c:9518 -msgid "duplicate base type `%T' invalid" +#: cp/decl.c:9242 +msgid "base type `%T' fails to be a struct or class type" msgstr "" -#: cp/decl.c:9596 -msgid "Java class '%T' cannot have multiple bases" +#: cp/decl.c:9250 +msgid "recursive type `%T' undefined" msgstr "" -#: cp/decl.c:9598 -msgid "Java class '%T' cannot have virtual bases" +#: cp/decl.c:9252 +msgid "duplicate base type `%T' invalid" msgstr "" -#: cp/decl.c:9638 +#: cp/decl.c:9317 msgid "multiple definition of `%#T'" msgstr "" -#: cp/decl.c:9639 +#: cp/decl.c:9318 msgid "%Jprevious definition here" msgstr "" @@ -14748,198 +14579,193 @@ msgstr "" #. #. IF no integral type can represent all the enumerator values, the #. enumeration is ill-formed. -#: cp/decl.c:9774 +#: cp/decl.c:9443 msgid "no integral type can represent all of the enumerator values for `%T'" msgstr "" -#: cp/decl.c:9864 +#: cp/decl.c:9544 msgid "enumerator value for `%D' not integer constant" msgstr "" -#: cp/decl.c:9884 +#: cp/decl.c:9571 msgid "overflow in enumeration values at `%D'" msgstr "" -#: cp/decl.c:9955 +#: cp/decl.c:9642 msgid "return type `%#T' is incomplete" msgstr "" -#: cp/decl.c:10073 -msgid "return type for `main' changed to `int'" +#: cp/decl.c:9757 cp/typeck.c:5982 +msgid "`operator=' should return a reference to `*this'" msgstr "" -#: cp/decl.c:10118 cp/typeck.c:5961 -msgid "`operator=' should return a reference to `*this'" +#: cp/decl.c:10034 +msgid "return type for `main' changed to `int'" msgstr "" -#: cp/decl.c:10387 +#: cp/decl.c:10089 msgid "parameter `%D' declared void" msgstr "" -#: cp/decl.c:10857 +#: cp/decl.c:10571 msgid "invalid member function declaration" msgstr "" -#: cp/decl.c:10872 +#: cp/decl.c:10586 msgid "`%D' is already defined in class `%T'" msgstr "" -#: cp/decl.c:11084 +#: cp/decl.c:10797 msgid "static member function `%#D' declared with type qualifiers" msgstr "" -#: cp/decl2.c:145 -#, c-format -msgid "duplicate type qualifiers in %s declaration" -msgstr "" - -#: cp/decl2.c:318 +#: cp/decl2.c:280 msgid "name missing for member function" msgstr "" -#: cp/decl2.c:410 cp/decl2.c:424 +#: cp/decl2.c:373 cp/decl2.c:387 msgid "ambiguous conversion for array subscript" msgstr "" -#: cp/decl2.c:418 +#: cp/decl2.c:381 msgid "invalid types `%T[%T]' for array subscript" msgstr "" -#: cp/decl2.c:462 +#: cp/decl2.c:426 msgid "deleting array `%#D'" msgstr "" -#: cp/decl2.c:468 +#: cp/decl2.c:432 msgid "type `%#T' argument given to `delete', expected pointer" msgstr "" -#: cp/decl2.c:480 +#: cp/decl2.c:444 msgid "" "cannot delete a function. Only pointer-to-objects are valid arguments to " "`delete'" msgstr "" -#: cp/decl2.c:487 +#: cp/decl2.c:451 msgid "deleting `%T' is undefined" msgstr "" #. 14.5.2.2 [temp.mem] #. #. A local class shall not have member templates. -#: cp/decl2.c:523 +#: cp/decl2.c:487 msgid "invalid declaration of member template `%#D' in local class" msgstr "" -#: cp/decl2.c:532 +#: cp/decl2.c:496 msgid "invalid use of `virtual' in template declaration of `%#D'" msgstr "" -#: cp/decl2.c:542 cp/pt.c:2845 +#: cp/decl2.c:506 cp/pt.c:2912 msgid "template declaration of `%#D'" msgstr "" -#: cp/decl2.c:591 +#: cp/decl2.c:555 msgid "Java method '%D' has non-Java return type `%T'" msgstr "" -#: cp/decl2.c:607 +#: cp/decl2.c:571 msgid "Java method '%D' has non-Java parameter type `%T'" msgstr "" -#: cp/decl2.c:718 +#: cp/decl2.c:680 msgid "prototype for `%#D' does not match any in class `%T'" msgstr "" -#: cp/decl2.c:797 +#: cp/decl2.c:781 msgid "local class `%#T' shall not have static data member `%#D'" msgstr "" -#: cp/decl2.c:805 +#: cp/decl2.c:789 msgid "initializer invalid for static member with constructor" msgstr "" -#: cp/decl2.c:808 +#: cp/decl2.c:792 msgid "(an out of class initialization is required)" msgstr "" -#: cp/decl2.c:891 +#: cp/decl2.c:873 msgid "member `%D' conflicts with virtual function table field name" msgstr "" -#: cp/decl2.c:908 +#: cp/decl2.c:890 msgid "`%D' is already defined in `%T'" msgstr "" -#: cp/decl2.c:955 +#: cp/decl2.c:937 msgid "field initializer is not constant" msgstr "" -#: cp/decl2.c:983 +#: cp/decl2.c:965 msgid "`asm' specifiers are not permitted on non-static data members" msgstr "" -#: cp/decl2.c:1033 +#: cp/decl2.c:1011 msgid "cannot declare `%D' to be a bit-field type" msgstr "" -#: cp/decl2.c:1043 +#: cp/decl2.c:1021 msgid "cannot declare bit-field `%D' with function type" msgstr "" -#: cp/decl2.c:1050 +#: cp/decl2.c:1028 msgid "`%D' is already defined in the class %T" msgstr "" -#: cp/decl2.c:1057 +#: cp/decl2.c:1035 msgid "static member `%D' cannot be a bit-field" msgstr "" -#: cp/decl2.c:1116 +#: cp/decl2.c:1094 msgid "initializer specified for non-member function `%D'" msgstr "" -#: cp/decl2.c:1120 +#: cp/decl2.c:1098 msgid "invalid initializer for virtual method `%D'" msgstr "" -#: cp/decl2.c:1167 +#: cp/decl2.c:1130 msgid "anonymous struct not inside named type" msgstr "" -#: cp/decl2.c:1237 +#: cp/decl2.c:1201 msgid "namespace-scope anonymous aggregates must be static" msgstr "" -#: cp/decl2.c:1244 +#: cp/decl2.c:1208 msgid "anonymous union with no members" msgstr "" -#: cp/decl2.c:1278 +#: cp/decl2.c:1242 msgid "`operator new' must return type `%T'" msgstr "" -#: cp/decl2.c:1286 +#: cp/decl2.c:1250 msgid "`operator new' takes type `size_t' (`%T') as first parameter" msgstr "" -#: cp/decl2.c:1312 +#: cp/decl2.c:1276 msgid "`operator delete' must return type `%T'" msgstr "" -#: cp/decl2.c:1320 +#: cp/decl2.c:1284 msgid "`operator delete' takes type `%T' as first parameter" msgstr "" -#: cp/decl2.c:2834 +#: cp/decl2.c:3030 msgid "inline function `%D' used but never defined" msgstr "" -#: cp/decl2.c:2989 +#: cp/decl2.c:3180 msgid "default argument missing for parameter %P of `%+#D'" msgstr "" #. damn ICE suppression -#: cp/error.c:2350 +#: cp/error.c:2368 #, c-format msgid "unexpected letter `%c' in locate_error\n" msgstr "" @@ -14962,111 +14788,111 @@ msgstr "" msgid "mixing C++ and Java catches in a single translation unit" msgstr "" -#: cp/except.c:575 +#: cp/except.c:576 msgid "throwing NULL, which has integral, not pointer type" msgstr "" -#: cp/except.c:598 cp/init.c:2029 +#: cp/except.c:599 cp/init.c:1874 msgid "`%D' should never be overloaded" msgstr "" -#: cp/except.c:665 +#: cp/except.c:666 msgid " in thrown expression" msgstr "" -#: cp/except.c:811 +#: cp/except.c:810 msgid "" "expression '%E' of abstract class type '%T' cannot be used in throw-" "expression" msgstr "" -#: cp/except.c:892 +#: cp/except.c:894 msgid "%Hexception of type `%T' will be caught" msgstr "" -#: cp/except.c:894 +#: cp/except.c:896 msgid "%H by earlier handler for `%T'" msgstr "" -#: cp/except.c:913 +#: cp/except.c:926 msgid "%H`...' handler must be the last handler for its try block" msgstr "" -#: cp/friend.c:151 +#: cp/friend.c:152 msgid "`%D' is already a friend of class `%T'" msgstr "" -#: cp/friend.c:202 +#: cp/friend.c:204 msgid "invalid type `%T' declared `friend'" msgstr "" #. [temp.friend] #. Friend declarations shall not declare partial #. specializations. -#: cp/friend.c:218 +#: cp/friend.c:220 msgid "partial specialization `%T' declared `friend'" msgstr "" -#: cp/friend.c:228 +#: cp/friend.c:230 msgid "class `%T' is implicitly friends with itself" msgstr "" #. template friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:248 msgid "typename type `%#T' declared `friend'" msgstr "" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:254 msgid "template parameter type `%T' declared `friend'" msgstr "" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:260 msgid "`%#T' is not a template" msgstr "" -#: cp/friend.c:277 +#: cp/friend.c:279 msgid "`%D' is already a friend of `%T'" msgstr "" -#: cp/friend.c:287 +#: cp/friend.c:289 msgid "`%T' is already a friend of `%T'" msgstr "" -#: cp/friend.c:412 +#: cp/friend.c:414 msgid "member `%D' declared as friend before type `%T' defined" msgstr "" -#: cp/friend.c:468 +#: cp/friend.c:470 msgid "friend declaration `%#D' declares a non-template function" msgstr "" -#: cp/friend.c:471 +#: 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:229 java/jvspec.c:415 +#: cp/g++spec.c:235 java/jvspec.c:415 #, c-format msgid "argument to `%s' missing\n" msgstr "" -#: cp/init.c:321 +#: cp/init.c:318 msgid "`%D' should be initialized in the member initialization list" msgstr "" -#: cp/init.c:370 +#: cp/init.c:367 msgid "default-initialization of `%#D', which has reference type" msgstr "" -#: cp/init.c:375 +#: cp/init.c:372 msgid "uninitialized reference member `%D'" msgstr "" -#: cp/init.c:377 +#: cp/init.c:374 msgid "uninitialized member `%D' with `const' type `%T'" msgstr "" @@ -15107,186 +14933,162 @@ msgid "" "base class `%#T' should be explicitly initialized in the copy constructor" msgstr "" -#: cp/init.c:895 cp/init.c:914 +#: cp/init.c:891 cp/init.c:910 msgid "class `%T' does not have any field named `%D'" msgstr "" -#: cp/init.c:901 +#: cp/init.c:897 msgid "" "`%#D' is a static data member; it can only be initialized at its definition" msgstr "" -#: cp/init.c:908 +#: cp/init.c:904 msgid "`%#D' is not a non-static data member of `%T'" msgstr "" -#: cp/init.c:947 +#: cp/init.c:943 msgid "unnamed initializer for `%T', which has no base classes" msgstr "" -#: cp/init.c:954 +#: cp/init.c:951 msgid "unnamed initializer for `%T', which uses multiple inheritance" msgstr "" -#: cp/init.c:1009 +#: cp/init.c:997 msgid "'%D' is both a direct base and an indirect virtual base" msgstr "" -#: cp/init.c:1017 +#: cp/init.c:1005 msgid "type `%D' is not a direct or virtual base of `%T'" msgstr "" -#: cp/init.c:1020 +#: cp/init.c:1008 msgid "type `%D' is not a direct base of `%T'" msgstr "" -#: cp/init.c:1100 +#: cp/init.c:1088 msgid "bad array initializer" msgstr "" -#: cp/init.c:1300 +#: cp/init.c:1287 msgid "`%T' is not an aggregate type" msgstr "" -#: cp/init.c:1321 -msgid "`%T' fails to be an aggregate typedef" -msgstr "" - -#: cp/init.c:1330 -msgid "type `%T' is of non-aggregate type" -msgstr "" - -#: cp/init.c:1422 cp/typeck.c:1799 +#: cp/init.c:1379 cp/typeck.c:1835 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "" -#: cp/init.c:1430 +#: cp/init.c:1387 msgid "incomplete type `%T' does not have member `%D'" msgstr "" -#: cp/init.c:1449 +#: cp/init.c:1407 msgid "`%D' is not a member of type `%T'" msgstr "" -#: cp/init.c:1468 +#: cp/init.c:1434 msgid "invalid pointer to bit-field `%D'" msgstr "" -#: cp/init.c:1570 +#: cp/init.c:1536 msgid "invalid use of non-static member function `%D'" msgstr "" -#: cp/init.c:1576 cp/semantics.c:1162 +#: cp/init.c:1542 cp/semantics.c:1268 msgid "invalid use of non-static data member `%D'" msgstr "" -#: cp/init.c:1716 -msgid "new of array type fails to specify size" -msgstr "" - -#: cp/init.c:1727 -msgid "size in array new must have integral type" -msgstr "" - -#: cp/init.c:1733 -msgid "zero size array reserves no space" -msgstr "" - -#: cp/init.c:1799 +#: cp/init.c:1659 msgid "new cannot be applied to a reference type" msgstr "" -#: cp/init.c:1805 +#: cp/init.c:1665 msgid "new cannot be applied to a function type" msgstr "" -#: cp/init.c:1851 +#: cp/init.c:1697 msgid "call to Java constructor, while `jclass' undefined" msgstr "" -#: cp/init.c:1867 +#: cp/init.c:1713 msgid "can't find class$" msgstr "" -#: cp/init.c:1994 +#: cp/init.c:1826 msgid "invalid type `void' for new" msgstr "" -#: cp/init.c:2004 +#: cp/init.c:1836 msgid "uninitialized const in `new' of `%#T'" msgstr "" -#: cp/init.c:2024 +#: cp/init.c:1869 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "" -#: cp/init.c:2064 +#: cp/init.c:1909 msgid "request for member `%D' is ambiguous" msgstr "" -#: cp/init.c:2184 +#: cp/init.c:2042 msgid "ISO C++ forbids initialization in array new" msgstr "" -#: cp/init.c:2656 +#: cp/init.c:2512 msgid "initializer ends prematurely" msgstr "" -#: cp/init.c:2713 +#: cp/init.c:2565 msgid "cannot initialize multi-dimensional array with initializer" msgstr "" -#: cp/init.c:2874 +#: cp/init.c:2724 msgid "possible problem detected in invocation of delete operator:" msgstr "" -#: cp/init.c:2877 +#: cp/init.c:2727 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:2898 +#: cp/init.c:2748 msgid "unknown array size in delete" msgstr "" -#: cp/init.c:3162 +#: cp/init.c:3008 msgid "type to vector delete is neither pointer or array type" msgstr "" -#: cp/lex.c:99 -msgid "type name expected before `*'" -msgstr "" - -#: cp/lex.c:501 +#: cp/lex.c:437 #, c-format msgid "junk at end of #pragma %s" msgstr "" -#: cp/lex.c:508 +#: cp/lex.c:444 #, c-format msgid "invalid #pragma %s" msgstr "" -#: cp/lex.c:516 +#: cp/lex.c:452 msgid "#pragma vtable no longer supported" msgstr "" -#: cp/lex.c:590 +#: cp/lex.c:524 #, c-format msgid "#pragma implementation for %s appears after file is included" msgstr "" -#: cp/lex.c:614 +#: cp/lex.c:548 msgid "junk at end of #pragma GCC java_exceptions" msgstr "" -#: cp/lex.c:628 +#: cp/lex.c:562 msgid "`%D' not defined" msgstr "" -#: cp/lex.c:632 +#: cp/lex.c:566 msgid "`%D' was not declared in this scope" msgstr "" @@ -15300,44 +15102,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:666 +#: cp/lex.c:600 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:675 +#: cp/lex.c:609 msgid "" "(if you use `-fpermissive', G++ will accept your code, but allowing the use " "of an undeclared name is deprecated)" msgstr "" -#: cp/mangle.c:2054 +#: cp/mangle.c:2114 msgid "call_expr cannot be mangled due to a defect in the C++ ABI" msgstr "" -#: cp/mangle.c:2107 +#: cp/mangle.c:2122 +msgid "zero-operand casts cannot be mangled due to a defect in the C++ ABI" +msgstr "" + +#: cp/mangle.c:2172 msgid "omitted middle operand to `?:' operand cannot be mangled" msgstr "" -#: cp/mangle.c:2406 +#: cp/mangle.c:2482 msgid "the mangled name of `%D' will change in a future version of GCC" msgstr "" -#: cp/method.c:461 +#: cp/method.c:443 msgid "generic thunk code fails for method `%#D' which uses `...'" msgstr "" -#: cp/method.c:676 +#: cp/method.c:652 msgid "non-static const member `%#D', can't use default assignment operator" msgstr "" -#: cp/method.c:681 +#: cp/method.c:657 msgid "" "non-static reference member `%#D', can't use default assignment operator" msgstr "" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:762 msgid "redeclaration of `wchar_t' as `%T'" msgstr "" @@ -15347,493 +15153,544 @@ msgstr "" #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:794 msgid "invalid redeclaration of `%D'" msgstr "" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:795 msgid "as `%D'" msgstr "" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:883 msgid "type mismatch with previous external decl of `%#D'" msgstr "" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:884 msgid "previous external decl of `%#D'" msgstr "" -#: cp/name-lookup.c:895 +#: cp/name-lookup.c:966 msgid "extern declaration of `%#D' doesn't match" msgstr "" -#: cp/name-lookup.c:896 +#: cp/name-lookup.c:967 msgid "global declaration `%#D'" msgstr "" -#: cp/name-lookup.c:932 cp/name-lookup.c:939 +#: cp/name-lookup.c:1003 cp/name-lookup.c:1010 msgid "declaration of '%#D' shadows a parameter" msgstr "" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:956 +#: cp/name-lookup.c:1035 msgid "declaration of '%D' shadows a member of 'this'" msgstr "" -#: cp/name-lookup.c:962 +#: cp/name-lookup.c:1041 msgid "declaration of '%D' shadows a previous local" msgstr "" -#: cp/name-lookup.c:969 +#: cp/name-lookup.c:1048 msgid "declaration of '%D' shadows a global declaration" msgstr "" -#: cp/name-lookup.c:1138 +#: cp/name-lookup.c:1164 msgid "name lookup of `%D' changed" msgstr "" -#: cp/name-lookup.c:1140 +#: cp/name-lookup.c:1166 msgid " matches this `%D' under ISO standard rules" msgstr "" -#: cp/name-lookup.c:1142 +#: cp/name-lookup.c:1168 msgid " matches this `%D' under old rules" msgstr "" -#: cp/name-lookup.c:1156 cp/name-lookup.c:1163 +#: cp/name-lookup.c:1186 cp/name-lookup.c:1193 msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1188 msgid " cannot use obsolete binding at `%D' because it has a destructor" msgstr "" -#: cp/name-lookup.c:1165 +#: cp/name-lookup.c:1195 msgid " using obsolete binding at `%D'" msgstr "" -#: cp/name-lookup.c:1218 +#: cp/name-lookup.c:1248 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" -#: cp/name-lookup.c:1221 +#: cp/name-lookup.c:1251 #, c-format msgid "%s %s %p %d\n" msgstr "" -#: cp/name-lookup.c:1340 +#: cp/name-lookup.c:1378 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1978 +#: cp/name-lookup.c:2011 msgid "`%#D' hides constructor for `%#T'" msgstr "" -#: cp/name-lookup.c:1993 +#: cp/name-lookup.c:2026 msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "" -#: cp/name-lookup.c:2005 +#: cp/name-lookup.c:2038 msgid "previous non-function declaration `%#D'" msgstr "" -#: cp/name-lookup.c:2006 +#: cp/name-lookup.c:2039 msgid "conflicts with function declaration `%#D'" msgstr "" +#. It's a nested name with template parameter dependent scope. +#. This can only be using-declaration for class member. +#: cp/name-lookup.c:2117 cp/name-lookup.c:2141 cp/name-lookup.c:3386 +msgid "`%T' is not a namespace" +msgstr "" + #. 7.3.3/5 #. A using-declaration shall not name a template-id. -#: cp/name-lookup.c:2083 +#: cp/name-lookup.c:2127 msgid "a using-declaration cannot specify a template-id. Try `using %D'" msgstr "" -#: cp/name-lookup.c:2089 +#: cp/name-lookup.c:2133 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:2097 cp/name-lookup.c:2111 cp/name-lookup.c:3375 -msgid "`%T' is not a namespace" -msgstr "" - -#: cp/name-lookup.c:2134 +#: cp/name-lookup.c:2169 msgid "`%D' not declared" msgstr "" #. If the OLD_FN was really declared, the #. declarations don't match. -#: cp/name-lookup.c:2146 cp/name-lookup.c:2188 cp/name-lookup.c:2225 +#: cp/name-lookup.c:2181 cp/name-lookup.c:2223 cp/name-lookup.c:2260 msgid "`%D' is already declared in this scope" msgstr "" -#: cp/name-lookup.c:2231 +#: cp/name-lookup.c:2266 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2399 cp/name-lookup.c:2418 +#: cp/name-lookup.c:2434 cp/name-lookup.c:2453 msgid "`%#D' redeclared as %C" msgstr "" -#: cp/name-lookup.c:2791 +#: cp/name-lookup.c:2821 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2878 +#: cp/name-lookup.c:2916 msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:2885 +#: cp/name-lookup.c:2923 msgid "using-declaration cannot name destructor" msgstr "" -#: cp/name-lookup.c:2990 +#: cp/name-lookup.c:3002 msgid "declaration of `%D' not in a namespace surrounding `%D'" msgstr "" -#: cp/name-lookup.c:3030 +#: cp/name-lookup.c:3042 msgid "`%D' should have been declared inside `%D'" msgstr "" -#: cp/name-lookup.c:3094 +#: cp/name-lookup.c:3105 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:3209 +#: cp/name-lookup.c:3220 msgid "unknown namespace `%D'" msgstr "" -#: cp/name-lookup.c:3369 +#: cp/name-lookup.c:3380 msgid "namespace `%T' undeclared" msgstr "" -#: cp/name-lookup.c:3413 +#: cp/name-lookup.c:3424 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3420 +#: cp/name-lookup.c:3431 msgid "`%D' attribute directive ignored" msgstr "" -#: cp/name-lookup.c:3554 +#: cp/name-lookup.c:3565 msgid "use of `%D' is ambiguous" msgstr "" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid " first declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3558 +#: cp/name-lookup.c:3569 msgid " also declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3573 +#: cp/name-lookup.c:3584 msgid "`%D' denotes an ambiguous type" msgstr "" -#: cp/name-lookup.c:3574 +#: cp/name-lookup.c:3585 msgid "%J first type here" msgstr "" -#: cp/name-lookup.c:3575 +#: cp/name-lookup.c:3586 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:3639 cp/typeck.c:1773 +#: cp/name-lookup.c:3650 cp/typeck.c:1809 msgid "invalid use of `%D'" msgstr "" -#: cp/name-lookup.c:3679 +#: cp/name-lookup.c:3690 msgid "`%D::%D' is not a template" msgstr "" -#: cp/name-lookup.c:3696 +#: cp/name-lookup.c:3707 msgid "`%D' undeclared in namespace `%D'" msgstr "" -#: cp/name-lookup.c:4154 +#: cp/name-lookup.c:4244 msgid "`%D' is not a function," msgstr "" -#: cp/name-lookup.c:4155 +#: cp/name-lookup.c:4245 msgid " conflict with `%D'" msgstr "" -#: cp/name-lookup.c:4896 +#: cp/name-lookup.c:5008 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4905 +#: cp/name-lookup.c:5017 msgid "XXX leaving pop_everything ()\n" msgstr "" -#: cp/parser.c:609 +#: cp/parser.c:635 msgid "invalid token" msgstr "" -#: cp/parser.c:1810 +#: cp/parser.c:2037 msgid "`%D::%D' has not been declared" msgstr "" -#: cp/parser.c:1813 cp/semantics.c:2235 +#: cp/parser.c:2040 cp/semantics.c:2321 msgid "`::%D' has not been declared" msgstr "" -#: cp/parser.c:1815 +#: cp/parser.c:2043 +msgid "request for member `%D' in non-class type `%T'" +msgstr "" + +#: cp/parser.c:2046 +msgid "`%T::%D' has not been declared" +msgstr "" + +#: cp/parser.c:2049 msgid "`%D' has not been declared" msgstr "" -#: cp/parser.c:1818 +#: cp/parser.c:2052 msgid "`%D::%D' %s" msgstr "" -#: cp/parser.c:1820 +#: cp/parser.c:2054 msgid "`::%D' %s" msgstr "" -#: cp/parser.c:1822 +#: cp/parser.c:2056 msgid "`%D' %s" msgstr "" -#: cp/parser.c:1874 +#: cp/parser.c:2109 msgid "new types may not be defined in a return type" msgstr "" -#: cp/parser.c:1892 cp/pt.c:4207 +#: cp/parser.c:2127 cp/pt.c:4278 msgid "`%T' is not a template" msgstr "" -#: cp/parser.c:1894 +#: cp/parser.c:2129 #, c-format -msgid "`%s' is not a template" +msgid "`%E' is not a template" msgstr "" -#: cp/parser.c:1896 +#: cp/parser.c:2131 msgid "invalid template-id" msgstr "" -#: cp/parser.c:1937 +#: cp/parser.c:2172 #, c-format msgid "%s cannot appear in a constant-expression" msgstr "" -#: cp/parser.c:1961 +#: cp/parser.c:2196 #, c-format msgid "invalid use of template-name `%E' without an argument list" msgstr "" #. Issue an error message. -#: cp/parser.c:1966 +#: cp/parser.c:2201 #, c-format msgid "`%E' does not name a type" msgstr "" -#: cp/parser.c:1997 +#: cp/parser.c:2232 msgid "(perhaps `typename %T::%E' was intended)" msgstr "" -#: cp/parser.c:2012 +#: cp/parser.c:2247 #, c-format msgid "`%E' in namespace `%E' does not name a type" msgstr "" -#: cp/parser.c:2015 +#: cp/parser.c:2250 msgid "`%E' in class `%T' does not name a type" msgstr "" -#: cp/parser.c:2491 +#: cp/parser.c:2778 msgid "ISO C++ forbids braced-groups within expressions" msgstr "" -#: cp/parser.c:2500 +#: cp/parser.c:2787 msgid "statement-expressions are allowed only inside functions" msgstr "" -#: cp/parser.c:2551 +#: cp/parser.c:2838 msgid "`this' may not be used in this context" msgstr "" -#: cp/parser.c:2695 +#: cp/parser.c:2973 msgid "local variable `%D' may not appear in this context" msgstr "" -#: cp/parser.c:3060 +#: cp/parser.c:3338 msgid "typedef-name `%D' used as destructor declarator" msgstr "" -#: cp/parser.c:3712 +#: cp/parser.c:3995 msgid "ISO C++ forbids compound-literals" msgstr "" -#: cp/parser.c:4534 +#: cp/parser.c:4862 msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:4535 +#: cp/parser.c:4863 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4697 +#: cp/parser.c:4969 +msgid "size in array new must have integral type" +msgstr "" + +#: cp/parser.c:4972 +msgid "zero size array reserves no space" +msgstr "" + +#: cp/parser.c:5071 msgid "expression in new-declarator must have integral or enumeration type" msgstr "" -#: cp/parser.c:4878 +#: cp/parser.c:5252 msgid "use of old-style cast" msgstr "" -#: cp/parser.c:5626 +#: cp/parser.c:6083 #, c-format msgid "case label `%E' not within a switch statement" msgstr "" -#: cp/parser.c:6168 +#: cp/parser.c:6625 msgid "ISO C++ forbids computed gotos" msgstr "" -#: cp/parser.c:6288 +#: cp/parser.c:6749 msgid "extra `;'" msgstr "" -#: cp/parser.c:6594 +#: cp/parser.c:7061 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6732 +#: cp/parser.c:7188 msgid "duplicate `friend'" msgstr "" -#: cp/parser.c:6881 +#: cp/parser.c:7240 +msgid "`__thread' before `static'" +msgstr "" + +#: cp/parser.c:7250 +msgid "`__thread' before `extern'" +msgstr "" + +#: cp/parser.c:7357 msgid "class definition may not be declared a friend" msgstr "" -#: cp/parser.c:7196 +#: cp/parser.c:7681 msgid "only constructors take base initializers" msgstr "" -#: cp/parser.c:7247 +#: cp/parser.c:7732 msgid "anachronistic old-style base class initializer" msgstr "" +#: cp/parser.c:7773 +msgid "" +"keyword `typename' not allowed in this context (a qualified member " +"initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7640 +#: cp/parser.c:8135 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:8000 +#: cp/parser.c:8508 msgid "`<::' cannot begin a template-argument list" msgstr "" -#: cp/parser.c:8001 +#: cp/parser.c:8509 msgid "" "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:8008 +#: cp/parser.c:8516 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8180 +#: cp/parser.c:8691 msgid "non-template `%D' used as template" msgstr "" -#: cp/parser.c:8181 -msgid "(use `%T::template %D' to indicate that it is a template)" +#: cp/parser.c:8692 +msgid "use `%T::template %D' to indicate that it is a template" msgstr "" -#: cp/parser.c:9118 +#: cp/parser.c:9719 msgid "using `typename' outside of template" msgstr "" -#: cp/parser.c:9240 +#: cp/parser.c:9842 msgid "expected type-name" msgstr "" -#: cp/parser.c:9299 +#: cp/parser.c:9901 msgid "type attributes are honored only at type definition" msgstr "" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9682 +#: cp/parser.c:10272 msgid "a template-id may not appear in a using-declaration" msgstr "" -#: cp/parser.c:10011 +#: cp/parser.c:10597 msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:10013 +#: cp/parser.c:10599 msgid "attributes are not allowed on a function-definition" msgstr "" -#: cp/parser.c:10146 +#: cp/parser.c:10730 msgid "attributes after parenthesized initializer ignored" msgstr "" -#: cp/parser.c:11348 +#: cp/parser.c:11159 +msgid "`%T::%D' is not a type" +msgstr "" + +#: cp/parser.c:11204 +msgid "invalid use of constructor as a template" +msgstr "" + +#: cp/parser.c:11205 +msgid "" +"use `%T::%D' instead of `%T::%T' to name the constructor in a qualified name" +msgstr "" + +#: cp/parser.c:11392 +msgid "duplicate cv-qualifier" +msgstr "" + +#: cp/parser.c:11909 msgid "file ends in default argument" msgstr "" -#: cp/parser.c:11404 +#: cp/parser.c:11965 msgid "deprecated use of default argument for parameter of non-function" msgstr "" -#: cp/parser.c:11407 +#: cp/parser.c:11968 msgid "default arguments are only permitted for function parameters" msgstr "" -#: cp/parser.c:12133 +#: cp/parser.c:12710 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "" -#: cp/parser.c:12146 +#: cp/parser.c:12723 msgid "extra qualification ignored" msgstr "" -#: cp/parser.c:12157 +#: cp/parser.c:12734 msgid "an explicit specialization must be preceded by 'template <>'" msgstr "" -#: cp/parser.c:12440 +#: cp/parser.c:13017 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12458 +#: cp/parser.c:13035 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12489 +#: cp/parser.c:13049 msgid "friend declaration does not name a class or function" msgstr "" -#: cp/parser.c:12660 +#: cp/parser.c:13222 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12933 +#: cp/parser.c:13495 msgid "keyword `typename' not allowed outside of templates" msgstr "" -#: cp/parser.c:12935 +#: cp/parser.c:13497 msgid "" "keyword `typename' not allowed in this context (the base class is implicitly " "a type)" msgstr "" -#: cp/parser.c:13761 +#: cp/parser.c:13770 +msgid "invalid catch parameter" +msgstr "" + +#: cp/parser.c:14339 msgid "reference to `%D' is ambiguous" msgstr "" -#: cp/parser.c:13935 +#: cp/parser.c:14508 msgid "too few template-parameter-lists" msgstr "" @@ -15841,142 +15698,145 @@ msgstr "" #. something like: #. #. template template void S::f(); -#: cp/parser.c:13950 +#: cp/parser.c:14523 msgid "too many template-parameter-lists" msgstr "" -#. If begin_function_definition didn't like the definition, skip -#. the entire function. -#: cp/parser.c:14242 +#. Skip the entire function. +#: cp/parser.c:14820 msgid "invalid function declaration" msgstr "" #. Issue an error message. -#: cp/parser.c:14279 +#: cp/parser.c:14857 msgid "named return values are no longer supported" msgstr "" -#: cp/parser.c:14618 +#: cp/parser.c:15199 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:14626 +#: cp/parser.c:15207 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14631 +#: cp/parser.c:15212 msgid "missing `>' to terminate the template argument list" msgstr "" -#: cp/parser.c:15119 +#: cp/parser.c:15740 msgid "`%s' tag used in naming `%#T'" msgstr "" -#: cp/parser.c:15139 +#: cp/parser.c:15760 msgid "%D redeclared with different access" msgstr "" -#: cp/parser.c:15156 +#: cp/parser.c:15777 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" -#: cp/parser.c:15367 +#: cp/parser.c:16009 msgid "inter-module optimizations not implemented for C++" msgstr "" -#: cp/pt.c:243 +#: cp/pt.c:247 msgid "data member `%D' cannot be a member template" msgstr "" -#: cp/pt.c:255 +#: cp/pt.c:259 msgid "invalid member template declaration `%D'" msgstr "" -#: cp/pt.c:639 +#: cp/pt.c:642 msgid "explicit specialization in non-namespace scope `%D'" msgstr "" -#: cp/pt.c:651 +#: cp/pt.c:654 msgid "enclosing class templates are not explicitly specialized" msgstr "" -#: cp/pt.c:741 cp/pt.c:782 -msgid "specializing `%#T' in different namespace" +#: cp/pt.c:738 +msgid "specialization of `%D' in different namespace" msgstr "" -#: cp/pt.c:742 cp/pt.c:783 +#: cp/pt.c:739 cp/pt.c:808 msgid " from definition of `%#D'" msgstr "" -#: cp/pt.c:750 +#: cp/pt.c:775 msgid "specialization of `%T' after instantiation" msgstr "" -#: cp/pt.c:797 +#: cp/pt.c:807 +msgid "specializing `%#T' in different namespace" +msgstr "" + +#: cp/pt.c:822 msgid "specialization `%T' after instantiation `%T'" msgstr "" -#: cp/pt.c:809 +#: cp/pt.c:834 msgid "explicit specialization of non-template `%T'" msgstr "" -#: cp/pt.c:1069 +#: cp/pt.c:1091 msgid "specialization of %D after instantiation" msgstr "" -#: cp/pt.c:1194 +#: cp/pt.c:1221 msgid "%s %+#D" msgstr "" -#: cp/pt.c:1243 +#: cp/pt.c:1277 msgid "`%D' is not a function template" msgstr "" -#: cp/pt.c:1391 +#: cp/pt.c:1462 msgid "template-id `%D' for `%+D' does not match any template declaration" msgstr "" -#: cp/pt.c:1399 +#: cp/pt.c:1470 msgid "ambiguous template specialization `%D' for `%+D'" msgstr "" #. This case handles bogus declarations like template <> #. template void f(); -#: cp/pt.c:1622 cp/pt.c:1696 +#: cp/pt.c:1693 cp/pt.c:1748 msgid "template-id `%D' in declaration of primary template" msgstr "" -#: cp/pt.c:1635 +#: cp/pt.c:1706 msgid "template parameter list used in explicit instantiation" msgstr "" -#: cp/pt.c:1641 +#: cp/pt.c:1712 msgid "definition provided for explicit instantiation" msgstr "" -#: cp/pt.c:1647 +#: cp/pt.c:1720 msgid "too many template parameter lists in declaration of `%D'" msgstr "" -#: cp/pt.c:1663 +#: cp/pt.c:1723 msgid "too few template parameter lists in declaration of `%D'" msgstr "" -#: cp/pt.c:1680 -msgid "explicit specialization not preceded by `template <>'" +#: cp/pt.c:1726 +msgid "explicit specialization of `%D' must be introduced by `template <>'" msgstr "" -#: cp/pt.c:1693 -msgid "partial specialization `%D' of function template" +#: cp/pt.c:1745 +msgid "function template partial specialization `%D' is not allowed" msgstr "" -#: cp/pt.c:1725 +#: cp/pt.c:1777 msgid "default argument specified in explicit specialization" msgstr "" -#: cp/pt.c:1729 +#: cp/pt.c:1781 msgid "template specialization with C linkage" msgstr "" @@ -15988,106 +15848,115 @@ msgstr "" #. program is ill-formed. #. #. Similar language is found in [temp.explicit]. -#: cp/pt.c:1813 +#: cp/pt.c:1865 msgid "specialization of implicitly-declared special member function" msgstr "" -#: cp/pt.c:1857 +#: cp/pt.c:1909 msgid "no member function `%D' declared in `%T'" msgstr "" #. There are two many template parameter lists. -#: cp/pt.c:2007 +#: cp/pt.c:2060 msgid "too many template parameter lists in declaration of `%T'" msgstr "" -#: cp/pt.c:2100 +#: cp/pt.c:2154 msgid " shadows template parm `%#D'" msgstr "" -#: cp/pt.c:2503 +#: cp/pt.c:2554 msgid "template parameters not used in partial specialization:" msgstr "" -#: cp/pt.c:2507 +#: cp/pt.c:2558 msgid " `%D'" msgstr "" -#: cp/pt.c:2519 +#: cp/pt.c:2570 msgid "partial specialization `%T' does not specialize any template arguments" msgstr "" -#: cp/pt.c:2544 +#: cp/pt.c:2595 #, c-format msgid "template argument `%E' involves template parameter(s)" msgstr "" -#: cp/pt.c:2588 +#: cp/pt.c:2639 msgid "type `%T' of template argument `%E' depends on template parameter(s)" msgstr "" -#: cp/pt.c:2673 +#: cp/pt.c:2724 msgid "no default argument for `%D'" msgstr "" -#: cp/pt.c:2825 +#: cp/pt.c:2876 msgid "template with C linkage" msgstr "" -#: cp/pt.c:2828 +#: cp/pt.c:2879 msgid "template class without a name" msgstr "" #. [temp.mem] #. #. A destructor shall not be a member template. -#: cp/pt.c:2835 +#: cp/pt.c:2887 msgid "destructor `%D' declared as member template" msgstr "" -#: cp/pt.c:2915 +#. [basic.stc.dynamic.allocation] +#. +#. An allocation function can be a function +#. template. ... Template allocation functions shall +#. have two or more parameters. +#: cp/pt.c:2902 +msgid "invalid template declaration of `%D'" +msgstr "" + +#: cp/pt.c:2982 msgid "`%D' does not declare a template type" msgstr "" -#: cp/pt.c:2921 +#: cp/pt.c:2988 msgid "template definition of non-template `%#D'" msgstr "" -#: cp/pt.c:2962 +#: cp/pt.c:3029 msgid "expected %d levels of template parms for `%#D', got %d" msgstr "" -#: cp/pt.c:2974 +#: cp/pt.c:3041 msgid "got %d template parameters for `%#D'" msgstr "" -#: cp/pt.c:2977 +#: cp/pt.c:3044 msgid "got %d template parameters for `%#T'" msgstr "" -#: cp/pt.c:2979 +#: cp/pt.c:3046 #, c-format msgid " but %d required" msgstr "" -#: cp/pt.c:3064 +#: cp/pt.c:3131 msgid "`%T' is not a template type" msgstr "" -#: cp/pt.c:3080 +#: cp/pt.c:3147 msgid "previous declaration `%D'" msgstr "" -#: cp/pt.c:3081 +#: cp/pt.c:3148 #, c-format msgid "used %d template parameter%s instead of %d" msgstr "" -#: cp/pt.c:3097 +#: cp/pt.c:3168 msgid "template parameter `%#D'" msgstr "" -#: cp/pt.c:3098 +#: cp/pt.c:3169 msgid "redeclared here as `%#D'" msgstr "" @@ -16095,495 +15964,505 @@ msgstr "" #. #. A template-parameter may not be given default arguments #. by two different declarations in the same scope. -#: cp/pt.c:3108 +#: cp/pt.c:3179 msgid "redefinition of default argument for `%#D'" msgstr "" -#: cp/pt.c:3109 +#: cp/pt.c:3180 msgid "%J original definition appeared here" msgstr "" -#: cp/pt.c:3257 +#: cp/pt.c:3326 #, c-format msgid "`%E' is not a valid template argument" msgstr "" -#: cp/pt.c:3261 +#: cp/pt.c:3330 msgid "it must be the address of a function with external linkage" msgstr "" -#: cp/pt.c:3263 +#: cp/pt.c:3332 msgid "it must be the address of an object with external linkage" msgstr "" -#: cp/pt.c:3266 +#: cp/pt.c:3335 msgid "it must be a pointer-to-member of the form `&X::Y'" msgstr "" -#: cp/pt.c:3277 +#: cp/pt.c:3346 #, 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:3292 +#: cp/pt.c:3361 #, c-format msgid "address of non-extern `%E' cannot be used as template argument" msgstr "" -#: cp/pt.c:3301 +#: cp/pt.c:3370 #, c-format msgid "non-constant `%E' cannot be used as template argument" msgstr "" -#: cp/pt.c:3309 +#: cp/pt.c:3378 msgid "type '%T' cannot be used as a value for a non-type template-parameter" msgstr "" -#: cp/pt.c:3312 +#: cp/pt.c:3381 msgid "invalid use of '%D' as a non-type template-argument" msgstr "" -#: cp/pt.c:3314 +#: cp/pt.c:3383 #, c-format msgid "invalid use of '%E' as a non-type template-argument" msgstr "" -#: cp/pt.c:3679 +#: cp/pt.c:3755 #, c-format msgid "to refer to a type member of a template parameter, use `typename %E'" msgstr "" -#: cp/pt.c:3692 cp/pt.c:3710 cp/pt.c:3749 +#: cp/pt.c:3768 cp/pt.c:3786 cp/pt.c:3825 msgid "type/value mismatch at argument %d in template parameter list for `%D'" msgstr "" -#: cp/pt.c:3695 +#: cp/pt.c:3771 msgid " expected a constant of type `%T', got `%T'" msgstr "" -#: cp/pt.c:3699 +#: cp/pt.c:3775 #, c-format msgid " expected a class template, got `%E'" msgstr "" -#: cp/pt.c:3701 +#: cp/pt.c:3777 #, c-format msgid " expected a type, got `%E'" msgstr "" -#: cp/pt.c:3713 +#: cp/pt.c:3789 msgid " expected a type, got `%T'" msgstr "" -#: cp/pt.c:3715 +#: cp/pt.c:3791 msgid " expected a class template, got `%T'" msgstr "" -#: cp/pt.c:3751 +#: cp/pt.c:3827 msgid " expected a template of type `%D', got `%D'" msgstr "" -#: cp/pt.c:3786 +#: cp/pt.c:3862 msgid "could not convert template argument `%E' to `%T'" msgstr "" -#: cp/pt.c:3826 +#: cp/pt.c:3902 #, c-format msgid "wrong number of template arguments (%d, should be %d)" msgstr "" -#: cp/pt.c:3830 +#: cp/pt.c:3906 msgid "provided for `%D'" msgstr "" -#: cp/pt.c:3858 +#: cp/pt.c:3934 #, c-format msgid "template argument %d is invalid" msgstr "" -#: cp/pt.c:4079 +#: cp/pt.c:4155 msgid "non-template used as template" msgstr "" -#: cp/pt.c:4219 +#: cp/pt.c:4290 msgid "non-template type `%T' used as a template" msgstr "" -#: cp/pt.c:4221 +#: cp/pt.c:4292 msgid "for template declaration `%D'" msgstr "" -#: cp/pt.c:4868 +#: cp/pt.c:4941 msgid "" "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN " "to increase the maximum) instantiating `%D'" msgstr "" -#: cp/pt.c:5308 +#: cp/pt.c:5379 msgid "ambiguous class template instantiation for `%#T'" msgstr "" -#: cp/pt.c:5314 +#: cp/pt.c:5385 msgid "%s %+#T" msgstr "" -#: cp/pt.c:6319 cp/pt.c:6439 +#: cp/pt.c:6412 cp/pt.c:6532 msgid "instantiation of `%D' as type `%T'" msgstr "" -#: cp/pt.c:6481 +#: cp/pt.c:6574 msgid "invalid parameter type `%T'" msgstr "" -#: cp/pt.c:6483 +#: cp/pt.c:6576 msgid "in declaration `%D'" msgstr "" -#: cp/pt.c:6557 +#: cp/pt.c:6650 msgid "creating pointer to member function of non-class type `%T'" msgstr "" -#: cp/pt.c:6696 +#: cp/pt.c:6787 msgid "creating array with size zero" msgstr "" -#: cp/pt.c:6710 +#: cp/pt.c:6801 #, c-format msgid "creating array with size zero (`%E')" msgstr "" -#: cp/pt.c:6949 +#: cp/pt.c:7017 msgid "forming reference to void" msgstr "" -#: cp/pt.c:6951 +#: cp/pt.c:7019 msgid "forming %s to reference type `%T'" msgstr "" -#: cp/pt.c:6988 +#: cp/pt.c:7056 msgid "creating pointer to member of non-class type `%T'" msgstr "" -#: cp/pt.c:6994 +#: cp/pt.c:7062 msgid "creating pointer to member reference type `%T'" msgstr "" -#: cp/pt.c:7080 +#: cp/pt.c:7148 msgid "creating array of `%T'" msgstr "" -#: cp/pt.c:7086 +#: cp/pt.c:7154 msgid "creating array of `%T', which is an abstract class type" msgstr "" -#: cp/pt.c:7130 +#: cp/pt.c:7198 msgid "`%T' is not a class, struct, or union type" msgstr "" -#: cp/pt.c:7243 +#: cp/pt.c:7285 #, c-format msgid "use of `%s' in template" msgstr "" -#: cp/pt.c:7356 +#: cp/pt.c:7398 #, c-format msgid "" "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:7358 +#: cp/pt.c:7400 #, c-format msgid "say `typename %E' if a type is meant" msgstr "" -#: cp/pt.c:8616 +#: cp/pt.c:8537 +msgid "`%T' is not a class or namespace" +msgstr "" + +#: cp/pt.c:8540 +msgid "`%D' is not a class or namespace" +msgstr "" + +#: cp/pt.c:8665 msgid "`%T' uses anonymous type" msgstr "" -#: cp/pt.c:8618 +#: cp/pt.c:8667 msgid "`%T' uses local type `%T'" msgstr "" -#: cp/pt.c:8626 +#: cp/pt.c:8675 msgid "`%T' is a variably modified type" msgstr "" -#: cp/pt.c:8637 +#: cp/pt.c:8686 #, c-format msgid "integral expression `%E' is not constant" msgstr "" -#: cp/pt.c:8642 +#: cp/pt.c:8691 msgid " trying to instantiate `%D'" msgstr "" -#: cp/pt.c:9155 +#: cp/pt.c:9205 msgid "incomplete type unification" msgstr "" -#: cp/pt.c:10111 -#, c-format -msgid "use of `%s' in template type unification" -msgstr "" - -#: cp/pt.c:10545 cp/pt.c:10617 +#: cp/pt.c:10577 cp/pt.c:10648 msgid "explicit instantiation of non-template `%#D'" msgstr "" -#: cp/pt.c:10561 cp/pt.c:10612 +#: cp/pt.c:10593 cp/pt.c:10643 msgid "no matching template for `%D' found" msgstr "" -#: cp/pt.c:10567 +#: cp/pt.c:10599 msgid "explicit instantiation of `%#D'" msgstr "" -#: cp/pt.c:10604 +#: cp/pt.c:10635 msgid "duplicate explicit instantiation of `%#D'" msgstr "" -#: cp/pt.c:10626 +#: cp/pt.c:10657 msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "" -#: cp/pt.c:10630 cp/pt.c:10712 +#: cp/pt.c:10661 cp/pt.c:10752 msgid "storage class `%D' applied to template instantiation" msgstr "" -#: cp/pt.c:10684 +#: cp/pt.c:10724 msgid "explicit instantiation of non-template type `%T'" msgstr "" -#: cp/pt.c:10693 +#: cp/pt.c:10733 msgid "explicit instantiation of `%#T' before definition of template" msgstr "" -#: cp/pt.c:10701 +#: cp/pt.c:10741 #, c-format -msgid "ISO C++ forbids the use of `%s' on explicit instantiations" +msgid "ISO C++ forbids the use of `%E' on explicit instantiations" msgstr "" -#: cp/pt.c:10750 +#: cp/pt.c:10786 msgid "duplicate explicit instantiation of `%#T'" msgstr "" -#: cp/pt.c:11152 +#: cp/pt.c:11149 msgid "explicit instantiation of `%D' but no definition available" msgstr "" -#: cp/pt.c:11585 +#: cp/pt.c:11293 +msgid "" +"template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN " +"to increase the maximum) instantiating `%+D', possibly from virtual table " +"generation" +msgstr "" + +#: cp/pt.c:11572 msgid "`%#T' is not a valid type for a template constant parameter" msgstr "" -#: cp/repo.c:259 +#: cp/repo.c:112 msgid "-frepo must be used with -c" msgstr "" -#: cp/repo.c:346 +#: cp/repo.c:200 #, c-format msgid "mysterious repository information in %s" msgstr "" -#: cp/repo.c:361 +#: cp/repo.c:214 #, c-format msgid "can't create repository information file `%s'" msgstr "" -#: cp/rtti.c:248 +#: cp/rtti.c:246 msgid "cannot use typeid with -fno-rtti" msgstr "" -#: cp/rtti.c:254 +#: cp/rtti.c:252 msgid "must #include before using typeid" msgstr "" -#: cp/rtti.c:326 +#: cp/rtti.c:324 msgid "" "cannot create type information for type `%T' because its size is variable" msgstr "" -#: cp/rtti.c:580 cp/rtti.c:594 +#: cp/rtti.c:577 cp/rtti.c:591 msgid "dynamic_cast of `%#D' to `%#T' can never succeed" msgstr "" -#: cp/rtti.c:674 +#: cp/rtti.c:670 msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)" msgstr "" -#: cp/search.c:311 +#: cp/search.c:251 msgid "`%T' is an ambiguous base of `%T'" msgstr "" -#: cp/search.c:329 +#: cp/search.c:269 msgid "`%T' is an inaccessible base of `%T'" msgstr "" -#: cp/search.c:1768 +#: cp/search.c:1734 msgid "invalid covariant return type for `%#D'" msgstr "" -#: cp/search.c:1769 cp/search.c:1775 +#: cp/search.c:1735 cp/search.c:1741 msgid " overriding `%#D'" msgstr "" -#: cp/search.c:1773 +#: cp/search.c:1739 msgid "conflicting return type specified for `%#D'" msgstr "" -#: cp/search.c:1784 +#: cp/search.c:1750 #, c-format msgid "looser throw specifier for `%#F'" msgstr "" -#: cp/search.c:1785 +#: cp/search.c:1751 #, c-format msgid " overriding `%#F'" msgstr "" #. A static member function cannot match an inherited #. virtual member function. -#: cp/search.c:1873 +#: cp/search.c:1844 msgid "`%#D' cannot be declared" msgstr "" -#: cp/search.c:1874 +#: cp/search.c:1845 msgid " since `%#D' declared in base class" msgstr "" -#: cp/search.c:1951 -msgid "`%#D' needs a final overrider" -msgstr "" - -#: cp/semantics.c:1017 +#: cp/semantics.c:1133 #, c-format msgid "type of asm operand `%E' could not be determined" msgstr "" -#: cp/semantics.c:1159 +#: cp/semantics.c:1265 msgid "invalid use of member `%D' in static member function" msgstr "" -#: cp/semantics.c:1163 cp/semantics.c:1202 +#: cp/semantics.c:1269 cp/semantics.c:1308 msgid "from this location" msgstr "" -#: cp/semantics.c:1201 +#: cp/semantics.c:1307 msgid "object missing in reference to `%D'" msgstr "" -#: cp/semantics.c:1647 +#: cp/semantics.c:1789 msgid "arguments to destructor are not allowed" msgstr "" -#: cp/semantics.c:1697 +#: cp/semantics.c:1839 msgid "`this' is unavailable for static member functions" msgstr "" -#: cp/semantics.c:1703 +#: cp/semantics.c:1845 msgid "invalid use of `this' in non-member function" msgstr "" -#: cp/semantics.c:1705 +#: cp/semantics.c:1847 msgid "invalid use of `this' at top level" msgstr "" -#: cp/semantics.c:1729 +#: cp/semantics.c:1871 msgid "invalid qualifying scope in pseudo-destructor name" msgstr "" -#: cp/semantics.c:1749 +#: cp/semantics.c:1891 msgid "`%E' is not of type `%T'" msgstr "" -#: cp/semantics.c:1860 +#: cp/semantics.c:1985 msgid "template type parameters must use the keyword `class' or `typename'" msgstr "" -#: cp/semantics.c:1904 +#: cp/semantics.c:2029 msgid "" "invalid use of type `%T' as a default value for a template template-parameter" msgstr "" -#: cp/semantics.c:1907 +#: cp/semantics.c:2032 msgid "" "invalid use of `%D' as a default value for a template template-parameter" msgstr "" -#: cp/semantics.c:1911 +#: cp/semantics.c:2036 msgid "invalid default argument for a template template parameter" msgstr "" -#: cp/semantics.c:1946 +#: cp/semantics.c:2053 msgid "definition of `%#T' inside template parameter list" msgstr "" -#: cp/semantics.c:1957 +#: cp/semantics.c:2064 msgid "invalid definition of qualified type `%T'" msgstr "" -#: cp/semantics.c:1972 +#: cp/semantics.c:2079 msgid "previous definition of `%#T'" msgstr "" -#: cp/semantics.c:2176 +#: cp/semantics.c:2255 msgid "invalid base-class specification" msgstr "" -#: cp/semantics.c:2185 +#: cp/semantics.c:2264 msgid "base class `%T' has cv qualifiers" msgstr "" -#: cp/semantics.c:2217 +#: cp/semantics.c:2297 msgid "multiple declarators in template declaration" msgstr "" -#: cp/semantics.c:2228 +#: cp/semantics.c:2309 msgid "incomplete type `%T' used in nested name specifier" msgstr "" -#: cp/semantics.c:2230 cp/typeck.c:1616 +#: cp/semantics.c:2312 +msgid "reference to `%T::%D' is ambiguous" +msgstr "" + +#: cp/semantics.c:2316 cp/typeck.c:1646 msgid "`%D' is not a member of `%T'" msgstr "" -#: cp/semantics.c:2233 +#: cp/semantics.c:2319 msgid "`%D' is not a member of `%D'" msgstr "" -#: cp/semantics.c:2358 +#: cp/semantics.c:2444 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:2511 +#: cp/semantics.c:2588 msgid "`%D' cannot appear in a constant-expression" msgstr "" -#: cp/semantics.c:2520 +#: cp/semantics.c:2596 msgid "use of namespace `%D' as expression" msgstr "" -#: cp/semantics.c:2525 +#: cp/semantics.c:2601 msgid "use of class template `%T' as expression" msgstr "" #. Ambiguous reference to base members. -#: cp/semantics.c:2531 +#: cp/semantics.c:2607 msgid "request for member `%D' is ambiguous in multiple inheritance lattice" msgstr "" -#: cp/semantics.c:2591 +#: cp/semantics.c:2667 #, c-format msgid "use of %s from containing function" msgstr "" -#: cp/semantics.c:2594 +#: cp/semantics.c:2670 msgid " `%#D' declared here" msgstr "" -#: cp/semantics.c:2645 +#: cp/semantics.c:2721 #, c-format msgid "type of `%E' is unknown" msgstr "" @@ -16593,237 +16472,241 @@ msgstr "" msgid "non-lvalue in %s" msgstr "" -#: cp/tree.c:534 +#: cp/tree.c:535 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "" -#: cp/tree.c:1814 +#: cp/tree.c:1763 #, c-format -msgid "`%s' attribute can only be applied to Java class definitions" +msgid "`%E' attribute can only be applied to Java class definitions" msgstr "" -#: cp/tree.c:1843 +#: cp/tree.c:1792 #, c-format -msgid "`%s' attribute can only be applied to class definitions" +msgid "`%E' attribute can only be applied to class definitions" msgstr "" -#: cp/tree.c:1849 +#: cp/tree.c:1798 #, c-format -msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default" +msgid "`%E' is obsolete; g++ vtables are now COM-compatible by default" msgstr "" -#: cp/tree.c:1873 +#: cp/tree.c:1822 msgid "requested init_priority is not an integer constant" msgstr "" -#: cp/tree.c:1894 +#: cp/tree.c:1843 #, c-format msgid "" -"can only use `%s' attribute on file-scope definitions of objects of class " +"can only use `%E' attribute on file-scope definitions of objects of class " "type" msgstr "" -#: cp/tree.c:1902 +#: cp/tree.c:1851 msgid "requested init_priority is out of range" msgstr "" -#: cp/tree.c:1912 +#: cp/tree.c:1861 msgid "requested init_priority is reserved for internal use" msgstr "" -#: cp/tree.c:1922 +#: cp/tree.c:1871 #, c-format -msgid "`%s' attribute is not supported on this platform" +msgid "`%E' attribute is not supported on this platform" msgstr "" -#: cp/tree.c:2514 -#, c-format -msgid "lang_* check: failed in %s, at %s:%d" -msgstr "" - -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:434 cp/typeck.c:448 cp/typeck.c:540 msgid "%s between distinct pointer types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:513 +#: cp/typeck.c:510 #, c-format msgid "" "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function" msgstr "" -#: cp/typeck.c:563 +#: cp/typeck.c:560 msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:1240 +#: cp/typeck.c:1247 #, c-format msgid "invalid application of `%s' to a member function" msgstr "" -#: cp/typeck.c:1273 +#: cp/typeck.c:1280 #, c-format msgid "invalid application of `%s' to a bit-field" msgstr "" -#: cp/typeck.c:1278 +#: cp/typeck.c:1285 #, c-format msgid "ISO C++ forbids applying `%s' to an expression of function type" msgstr "" -#: cp/typeck.c:1347 +#: cp/typeck.c:1321 msgid "invalid use of non-static member function" msgstr "" -#: cp/typeck.c:1475 +#: cp/typeck.c:1506 msgid "deprecated conversion from string constant to `%T'" msgstr "" -#: cp/typeck.c:1587 cp/typeck.c:1878 +#: cp/typeck.c:1617 cp/typeck.c:1914 msgid "request for member `%D' in `%E', which is of non-class type `%T'" msgstr "" -#: cp/typeck.c:1614 +#: cp/typeck.c:1644 #, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "" -#: cp/typeck.c:1666 cp/typeck.c:1688 +#: cp/typeck.c:1696 cp/typeck.c:1723 msgid "invalid access to non-static data member `%D' of NULL object" msgstr "" -#: cp/typeck.c:1668 cp/typeck.c:1690 +#: cp/typeck.c:1698 cp/typeck.c:1725 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "" -#: cp/typeck.c:1805 +#: cp/typeck.c:1841 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1928 +#: cp/typeck.c:1960 msgid "`%D::%D' is not a member of `%T'" msgstr "" -#: cp/typeck.c:1939 +#: cp/typeck.c:1971 msgid "`%T' is not a base of `%T'" msgstr "" -#: cp/typeck.c:1958 +#: cp/typeck.c:1990 msgid "'%D' has no member named '%E'" msgstr "" -#: cp/typeck.c:1973 +#: cp/typeck.c:2005 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:2079 +#: cp/typeck.c:2112 msgid "`%T' is not a pointer-to-object type" msgstr "" -#: cp/typeck.c:2104 +#: cp/typeck.c:2137 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "" -#: cp/typeck.c:2110 +#: cp/typeck.c:2141 +#, c-format +msgid "invalid type argument of `%s'" +msgstr "" + +#: cp/typeck.c:2143 msgid "invalid type argument" msgstr "" -#: cp/typeck.c:2215 +#: cp/typeck.c:2207 +msgid "array subscript has type `char'" +msgstr "" + +#: cp/typeck.c:2248 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "" -#: cp/typeck.c:2226 +#: cp/typeck.c:2259 msgid "subscripting array declared `register'" msgstr "" -#: cp/typeck.c:2309 +#: cp/typeck.c:2342 #, c-format msgid "object missing in use of `%E'" msgstr "" -#: cp/typeck.c:2411 +#: cp/typeck.c:2443 msgid "ISO C++ forbids calling `::main' from within program" msgstr "" -#: cp/typeck.c:2436 +#: cp/typeck.c:2468 #, c-format msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'" msgstr "" -#: cp/typeck.c:2449 +#: cp/typeck.c:2481 #, c-format msgid "`%E' cannot be used as a function" msgstr "" -#: cp/typeck.c:2542 +#: cp/typeck.c:2560 msgid "too many arguments to %s `%+#D'" msgstr "" -#: cp/typeck.c:2544 cp/typeck.c:2650 +#: cp/typeck.c:2562 cp/typeck.c:2668 msgid "at this point in file" msgstr "" -#: cp/typeck.c:2581 +#: cp/typeck.c:2599 msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "" -#: cp/typeck.c:2584 +#: cp/typeck.c:2602 msgid "parameter %P has incomplete type `%T'" msgstr "" -#: cp/typeck.c:2648 +#: cp/typeck.c:2666 msgid "too few arguments to %s `%+#D'" msgstr "" -#: cp/typeck.c:2795 cp/typeck.c:2805 +#: cp/typeck.c:2813 cp/typeck.c:2823 msgid "assuming cast to type `%T' from overloaded function" msgstr "" -#: cp/typeck.c:2866 +#: cp/typeck.c:2884 #, c-format msgid "division by zero in `%E / 0'" msgstr "" -#: cp/typeck.c:2868 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0.'" msgstr "" -#: cp/typeck.c:2897 +#: cp/typeck.c:2920 #, c-format msgid "division by zero in `%E %% 0'" msgstr "" -#: cp/typeck.c:2899 +#: cp/typeck.c:2922 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count is negative" msgstr "" -#: cp/typeck.c:2982 +#: cp/typeck.c:3005 #, c-format msgid "%s rotate count >= width of type" msgstr "" -#: cp/typeck.c:3016 cp/typeck.c:3021 cp/typeck.c:3112 cp/typeck.c:3117 +#: cp/typeck.c:3039 cp/typeck.c:3044 cp/typeck.c:3140 cp/typeck.c:3145 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "" -#: cp/typeck.c:3298 +#: cp/typeck.c:3326 msgid "comparison between types `%#T' and `%#T'" msgstr "" -#: cp/typeck.c:3334 +#: cp/typeck.c:3362 msgid "comparison between signed and unsigned integer expressions" msgstr "" -#: cp/typeck.c:3399 +#: cp/typeck.c:3427 msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "" @@ -16831,475 +16714,513 @@ 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:3421 +#: cp/typeck.c:3449 msgid "NULL used in arithmetic" msgstr "" -#: cp/typeck.c:3479 +#: cp/typeck.c:3507 msgid "ISO C++ forbids using pointer of type `void *' in subtraction" msgstr "" -#: cp/typeck.c:3481 +#: cp/typeck.c:3509 msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "" -#: cp/typeck.c:3483 +#: cp/typeck.c:3511 msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "" -#: cp/typeck.c:3495 +#: cp/typeck.c:3523 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "" -#: cp/typeck.c:3547 +#: cp/typeck.c:3599 #, c-format msgid "" "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-" "id." msgstr "" -#: cp/typeck.c:3553 +#: cp/typeck.c:3605 #, c-format msgid "" "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:3575 +#: cp/typeck.c:3627 msgid "taking address of temporary" msgstr "" -#: cp/typeck.c:3800 +#: cp/typeck.c:3852 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "" -#: cp/typeck.c:3811 +#: cp/typeck.c:3863 msgid "cannot %s a pointer to incomplete type `%T'" msgstr "" -#: cp/typeck.c:3817 +#: cp/typeck.c:3869 msgid "ISO C++ forbids %sing a pointer of type `%T'" msgstr "" -#: cp/typeck.c:3842 +#: cp/typeck.c:3894 msgid "cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:3876 +#: cp/typeck.c:3929 msgid "invalid use of `--' on bool variable `%D'" msgstr "" #. ARM $3.4 -#: cp/typeck.c:3905 +#: cp/typeck.c:3958 msgid "ISO C++ forbids taking address of function `::main'" msgstr "" #. An expression like &memfn. -#: cp/typeck.c:3974 +#: cp/typeck.c:4012 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:3979 +#: cp/typeck.c:4017 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:4007 +#: cp/typeck.c:4045 msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression" msgstr "" -#: cp/typeck.c:4027 +#: cp/typeck.c:4065 msgid "unary `&'" msgstr "" -#: cp/typeck.c:4056 +#: cp/typeck.c:4097 msgid "attempt to take address of bit-field structure member `%D'" msgstr "" -#: cp/typeck.c:4170 +#: cp/typeck.c:4209 msgid "taking address of destructor" msgstr "" -#: cp/typeck.c:4183 +#: cp/typeck.c:4222 msgid "taking address of bound pointer-to-member expression" msgstr "" -#: cp/typeck.c:4191 +#: cp/typeck.c:4230 msgid "cannot create pointer to reference member `%D'" msgstr "" -#: cp/typeck.c:4253 +#: cp/typeck.c:4293 msgid "cannot take the address of `this', which is an rvalue expression" msgstr "" -#: cp/typeck.c:4272 +#: cp/typeck.c:4312 msgid "address requested for `%D', which is declared `register'" msgstr "" -#: cp/typeck.c:4340 +#: cp/typeck.c:4378 #, c-format msgid "%s expression list treated as compound expression" msgstr "" -#: cp/typeck.c:4414 +#: cp/typeck.c:4452 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "" -#: cp/typeck.c:4606 +#: cp/typeck.c:4654 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4646 +#: cp/typeck.c:4694 msgid "" "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "" -#: cp/typeck.c:4685 +#: cp/typeck.c:4733 msgid "" "ISO C++ forbids casting between pointer-to-function and pointer-to-object" msgstr "" -#: cp/typeck.c:4691 +#: cp/typeck.c:4739 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4719 +#: cp/typeck.c:4767 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:4722 +#: cp/typeck.c:4770 msgid "" "invalid use of const_cast with type `%T', which is a pointer or reference to " "a function type" msgstr "" -#: cp/typeck.c:4745 +#: cp/typeck.c:4793 msgid "invalid const_cast of an rvalue of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4762 +#: cp/typeck.c:4810 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4802 cp/typeck.c:4807 +#: cp/typeck.c:4857 cp/typeck.c:4862 msgid "ISO C++ forbids casting to an array type `%T'" msgstr "" -#: cp/typeck.c:4815 +#: cp/typeck.c:4870 msgid "invalid cast to function type `%T'" msgstr "" -#: cp/typeck.c:4871 +#: cp/typeck.c:4926 msgid "cast from `%T' to `%T' discards qualifiers from pointer target type" msgstr "" -#: cp/typeck.c:4919 +#: cp/typeck.c:4974 msgid "cast from `%T' to `%T' increases required alignment of target type" msgstr "" -#: cp/typeck.c:5086 +#: cp/typeck.c:5140 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr "" -#: cp/typeck.c:5156 +#: cp/typeck.c:5209 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "" -#: cp/typeck.c:5163 +#: cp/typeck.c:5216 msgid "ISO C++ forbids assignment of arrays" msgstr "" -#: cp/typeck.c:5265 +#: cp/typeck.c:5323 msgid " in pointer to member function conversion" msgstr "" -#: cp/typeck.c:5271 +#: cp/typeck.c:5329 msgid " in pointer to member conversion" msgstr "" #. This is a reinterpret cast, we choose to do nothing. -#: cp/typeck.c:5281 cp/typeck.c:5297 +#: cp/typeck.c:5339 cp/typeck.c:5355 msgid "pointer to member cast via virtual base `%T'" msgstr "" -#: cp/typeck.c:5300 +#: cp/typeck.c:5358 msgid "pointer to member conversion via virtual base `%T'" msgstr "" -#: cp/typeck.c:5372 +#: cp/typeck.c:5430 msgid "invalid conversion to type `%T' from type `%T'" msgstr "" -#: cp/typeck.c:5528 +#: cp/typeck.c:5587 msgid "passing NULL used for non-pointer %s %P of `%D'" msgstr "" -#: cp/typeck.c:5531 +#: cp/typeck.c:5590 msgid "%s to non-pointer type `%T' from NULL" msgstr "" -#: cp/typeck.c:5539 +#: cp/typeck.c:5598 msgid "passing `%T' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5542 +#: cp/typeck.c:5601 msgid "%s to `%T' from `%T'" msgstr "" -#: cp/typeck.c:5551 +#: cp/typeck.c:5610 msgid "passing negative value `%E' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5554 +#: cp/typeck.c:5613 msgid "%s of negative value `%E' to `%T'" msgstr "" -#: cp/typeck.c:5641 +#: cp/typeck.c:5700 msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'" msgstr "" -#: cp/typeck.c:5644 +#: cp/typeck.c:5703 msgid "cannot convert `%T' to `%T' in %s" msgstr "" -#: cp/typeck.c:5721 cp/typeck.c:5723 +#: cp/typeck.c:5780 cp/typeck.c:5782 msgid "in passing argument %P of `%+D'" msgstr "" -#: cp/typeck.c:5830 +#: cp/typeck.c:5832 msgid "returning reference to temporary" msgstr "" -#: cp/typeck.c:5837 +#: cp/typeck.c:5839 msgid "reference to non-lvalue returned" msgstr "" -#: cp/typeck.c:5849 +#: cp/typeck.c:5851 msgid "reference to local variable `%D' returned" msgstr "" -#: cp/typeck.c:5852 +#: cp/typeck.c:5854 msgid "address of local variable `%D' returned" msgstr "" -#: cp/typeck.c:5882 +#: cp/typeck.c:5878 +msgid "function declared `noreturn' has a `return' statement" +msgstr "" + +#: cp/typeck.c:5884 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:5890 +#: cp/typeck.c:5892 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:5893 +#: cp/typeck.c:5895 msgid "returning a value from a constructor" msgstr "" -#: cp/typeck.c:5916 +#: cp/typeck.c:5918 msgid "return-statement with no value, in function returning '%T'" msgstr "" -#: cp/typeck.c:5933 +#: cp/typeck.c:5935 msgid "return-statement with a value, in function returning 'void'" msgstr "" -#: cp/typeck.c:5955 +#: cp/typeck.c:5957 msgid "" "`operator new' must not return NULL unless it is declared `throw()' (or -" "fcheck-new is in effect)" msgstr "" -#: cp/typeck2.c:56 +#: cp/typeck2.c:52 msgid "type `%T' is not a base type for type `%T'" msgstr "" -#: cp/typeck2.c:152 -msgid "cannot declare variable `%D' to be of type `%T'" +#: cp/typeck2.c:293 +msgid "cannot declare variable `%+D' to be of abstract type `%T'" +msgstr "" + +#: cp/typeck2.c:296 +msgid "cannot declare parameter `%+D' to be of abstract type `%T'" msgstr "" -#: cp/typeck2.c:155 -msgid "cannot declare parameter `%D' to be of type `%T'" +#: cp/typeck2.c:299 +msgid "cannot declare field `%+D' to be of abstract type `%T'" msgstr "" -#: cp/typeck2.c:158 -msgid "cannot declare field `%D' to be of type `%T'" +#: cp/typeck2.c:303 +msgid "invalid abstract return type for member function `%+#D'" msgstr "" -#: cp/typeck2.c:162 -msgid "invalid return type for member function `%#D'" +#: cp/typeck2.c:306 +msgid "invalid abstract return type for function `%+#D'" msgstr "" -#: cp/typeck2.c:164 -msgid "invalid return type for function `%#D'" +#. Here we do not have location information, so use error instead +#. of cp_error_at. +#: cp/typeck2.c:311 +msgid "invalid abstract type `%T' for `%E'" msgstr "" -#: cp/typeck2.c:167 -msgid "cannot allocate an object of type `%T'" +#: cp/typeck2.c:313 +msgid "invalid abstract type for `%+D'" msgstr "" -#: cp/typeck2.c:174 -msgid " because the following virtual functions are abstract:" +#: cp/typeck2.c:316 +msgid "cannot allocate an object of abstract type `%T'" msgstr "" -#: cp/typeck2.c:176 -msgid "\t%#D" +#: cp/typeck2.c:323 +msgid "%J because the following virtual functions are pure within `%T':" msgstr "" -#: cp/typeck2.c:179 -msgid " since type `%T' has abstract virtual functions" +#: cp/typeck2.c:327 +msgid "%J\t%#D" msgstr "" -#: cp/typeck2.c:428 +#: cp/typeck2.c:330 +msgid "%J since type `%T' has pure virtual functions" +msgstr "" + +#: cp/typeck2.c:576 msgid "constructor syntax used, but no constructor declared for type `%T'" msgstr "" -#: cp/typeck2.c:441 +#: cp/typeck2.c:589 msgid "cannot initialize arrays using this syntax" msgstr "" -#: cp/typeck2.c:541 +#: cp/typeck2.c:689 msgid "initializing array with parameter list" msgstr "" -#: cp/typeck2.c:596 +#: cp/typeck2.c:711 +msgid "int-array initialized from non-wide string" +msgstr "" + +#: cp/typeck2.c:744 msgid "initializer for scalar variable requires one element" msgstr "" -#: cp/typeck2.c:603 +#: cp/typeck2.c:751 msgid "braces around scalar initializer for `%T'" msgstr "" -#: cp/typeck2.c:606 +#: cp/typeck2.c:754 msgid "ignoring extra initializers for `%T'" msgstr "" -#: cp/typeck2.c:618 +#: cp/typeck2.c:766 msgid "variable-sized object of type `%T' may not be initialized" msgstr "" -#: cp/typeck2.c:629 +#: cp/typeck2.c:777 msgid "subobject of type `%T' must be initialized by constructor, not by `%E'" msgstr "" -#: cp/typeck2.c:694 +#: cp/typeck2.c:842 msgid "aggregate has a partly bracketed initializer" msgstr "" -#: cp/typeck2.c:732 cp/typeck2.c:837 +#: cp/typeck2.c:880 cp/typeck2.c:982 msgid "non-trivial labeled initializers" msgstr "" -#: cp/typeck2.c:749 +#: cp/typeck2.c:894 msgid "non-empty initializer for array of empty elements" msgstr "" -#: cp/typeck2.c:803 +#: cp/typeck2.c:948 msgid "initializer list for object of class with virtual base classes" msgstr "" -#: cp/typeck2.c:809 +#: cp/typeck2.c:954 msgid "initializer list for object of class with base classes" msgstr "" -#: cp/typeck2.c:815 +#: cp/typeck2.c:960 msgid "initializer list for object using virtual functions" msgstr "" -#: cp/typeck2.c:877 cp/typeck2.c:893 +#: cp/typeck2.c:1021 cp/typeck2.c:1037 msgid "missing initializer for member `%D'" msgstr "" -#: cp/typeck2.c:882 +#: cp/typeck2.c:1026 msgid "uninitialized const member `%D'" msgstr "" -#: cp/typeck2.c:884 +#: cp/typeck2.c:1028 msgid "member `%D' with uninitialized const fields" msgstr "" -#: cp/typeck2.c:887 +#: cp/typeck2.c:1031 msgid "member `%D' is uninitialized reference" msgstr "" -#: cp/typeck2.c:934 +#: cp/typeck2.c:1078 msgid "index value instead of field name in union initializer" msgstr "" -#: cp/typeck2.c:946 +#: cp/typeck2.c:1090 msgid "no field `%D' in union being initialized" msgstr "" -#: cp/typeck2.c:954 +#: cp/typeck2.c:1098 msgid "union `%T' with no named members cannot be initialized" msgstr "" -#: cp/typeck2.c:990 +#: cp/typeck2.c:1133 msgid "excess elements in aggregate initializer" msgstr "" -#: cp/typeck2.c:1104 +#: cp/typeck2.c:1247 msgid "circular pointer delegation detected" msgstr "" -#: cp/typeck2.c:1117 +#: cp/typeck2.c:1260 msgid "base operand of `->' has non-pointer type `%T'" msgstr "" -#: cp/typeck2.c:1141 +#: cp/typeck2.c:1284 msgid "result of `operator->()' yields non-pointer result" msgstr "" -#: cp/typeck2.c:1143 +#: cp/typeck2.c:1286 msgid "base operand of `->' is not a pointer" msgstr "" -#: cp/typeck2.c:1166 +#: cp/typeck2.c:1310 msgid "`%E' cannot be used as a member pointer, since it is of type `%T'" msgstr "" -#: cp/typeck2.c:1174 +#: cp/typeck2.c:1318 msgid "" "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'" msgstr "" -#: cp/typeck2.c:1184 -msgid "member type `%T::' incompatible with object type `%T'" +#: cp/typeck2.c:1339 +msgid "pointer to member type `%T' incompatible with object type `%T'" msgstr "" -#: cp/typeck2.c:1400 +#: cp/typeck2.c:1561 msgid "call to function `%D' which throws incomplete type `%#T'" msgstr "" -#: cp/typeck2.c:1403 +#: cp/typeck2.c:1564 msgid "call to function which throws incomplete type `%#T'" msgstr "" #. XXX Not i18n clean. -#: cp/cp-tree.h:3753 +#: cp/cp-tree.h:3839 #, c-format msgid "%s is deprecated, please see the documentation for details" msgstr "" -#: fortran/f95-lang.c:243 +#: fortran/f95-lang.c:242 msgid "Unexpected type in truthvalue_conversion" msgstr "" -#: fortran/f95-lang.c:291 +#: fortran/f95-lang.c:295 #, c-format msgid "can't open input file: %s" msgstr "" +#: fortran/f95-lang.c:622 treelang/treetree.c:860 +#, c-format +msgid "global register variable `%s' used in nested function" +msgstr "" + +#: fortran/f95-lang.c:626 treelang/treetree.c:864 +#, c-format +msgid "register variable `%s' used in nested function" +msgstr "" + +#: fortran/f95-lang.c:633 treelang/treetree.c:871 +#, c-format +msgid "address of global register variable `%s' requested" +msgstr "" + +#: fortran/f95-lang.c:651 treelang/treetree.c:876 +#, c-format +msgid "address of register variable `%s' requested" +msgstr "" + #: fortran/gfortranspec.c:231 #, c-format msgid "overflowed output arg list for `%s'" @@ -17314,296 +17235,270 @@ msgstr "" msgid "no input files; unwilling to write output files" msgstr "" -#: fortran/trans-array.c:2668 +#: fortran/trans-array.c:2890 msgid "Possible frontend bug: array constructor not expanded" msgstr "" -#: fortran/trans-array.c:3706 +#: fortran/trans-array.c:3971 msgid "" "Possible frontend bug: Deferred array size without pointer or allocatable " "attribute." msgstr "" -#: fortran/trans-array.c:3865 +#: fortran/trans-array.c:4131 msgid "scalar vector subscript???" msgstr "" -#: fortran/trans-array.c:4138 +#: fortran/trans-array.c:4405 #, c-format msgid "bad expression type during walk (%d)" msgstr "" -#: fortran/trans-const.c:342 +#: fortran/trans-const.c:322 #, c-format msgid "gfc_conv_constant_to_tree(): invalid type: %s" msgstr "" -#: fortran/trans-decl.c:759 +#: fortran/trans-decl.c:760 msgid "intrinsic variable which isn't a procedure" msgstr "" -#: fortran/trans-decl.c:1619 +#: fortran/trans-decl.c:1913 msgid "Function does not return a value" msgstr "" #. I don't think this should ever happen. -#: fortran/trans-decl.c:1720 +#: fortran/trans-decl.c:2012 #, c-format msgid "module symbol %s in wrong namespace" msgstr "" -#: fortran/trans-decl.c:1737 +#: fortran/trans-decl.c:2026 #, c-format msgid "backend decl for module variable %s already exists" msgstr "" -#: fortran/trans-decl.c:1856 +#: fortran/trans-decl.c:2110 #, c-format msgid "unused parameter `%s'" msgstr "" -#: fortran/trans-decl.c:1861 +#: fortran/trans-decl.c:2116 #, c-format msgid "unused variable `%s'" msgstr "" -#: fortran/trans-decl.c:2007 +#: fortran/trans-decl.c:2260 msgid "Function return value not set" msgstr "" -#: fortran/trans-expr.c:845 +#: fortran/trans-expr.c:903 msgid "Unknown intrinsic op" msgstr "" -#: fortran/trans-intrinsic.c:576 +#: fortran/trans-intrinsic.c:585 #, c-format msgid "Intrinsic function %s(%d) not recognized" msgstr "" -#: fortran/trans-io.c:910 -msgid "A format cannot be specified with a namelist" -msgstr "" - -#: fortran/trans-io.c:958 +#: fortran/trans-io.c:934 #, c-format msgid "Bad namelist IO basetype (%d)" msgstr "" -#: fortran/trans-io.c:1081 -#, c-format -msgid "Bad IO basetype (%d)" -msgstr "" - -#: fortran/trans-types.c:201 -#, c-format -msgid "integer kind=%d not available" -msgstr "" - -#: fortran/trans-types.c:220 -#, c-format -msgid "real kind=%d not available" +#: fortran/trans-io.c:1011 +msgid "A format cannot be specified with a namelist" msgstr "" -#: fortran/trans-types.c:239 +#: fortran/trans-io.c:1211 #, c-format -msgid "complex kind=%d not available" +msgid "Bad IO basetype (%d)" msgstr "" -#: fortran/trans-types.c:262 -#, c-format -msgid "logical kind=%d not available" +#: fortran/trans-types.c:189 +msgid "integer kind=8 not available for -i8 option" msgstr "" -#: fortran/trans-types.c:282 -#, c-format -msgid "character kind=%d not available" +#: fortran/trans-types.c:201 +msgid "real kind=8 not available for -r8 option" msgstr "" -#: fortran/trans-types.c:590 +#: fortran/trans-types.c:904 msgid "Array element size too big" msgstr "" -#: fortran/trans.c:590 +#: fortran/trans.c:625 msgid "gfc_trans_code(): Bad statement code" msgstr "" #. I changed this from sorry(...) because it should not return. #. TODO: Remove gfc_todo_error before releasing version 1.0. -#: fortran/trans.h:526 +#: fortran/trans.h:560 msgid "gfc_todo: Not Implemented: " msgstr "" -#: java/check-init.c:905 +#: java/check-init.c:892 #, c-format msgid "internal error in check-init: tree code not implemented: %s" msgstr "" -#: java/check-init.c:977 +#: java/check-init.c:964 msgid "%Jfinal field `%D' may not have been initialized" msgstr "" -#: java/class.c:636 java/class.c:660 -msgid "internal error - too many interface type" -msgstr "" - -#: java/class.c:759 +#: java/class.c:756 msgid "bad method signature" msgstr "" -#: java/class.c:803 +#: java/class.c:800 msgid "misplaced ConstantValue attribute (not in any field)" msgstr "" -#: java/class.c:805 +#: java/class.c:802 #, c-format msgid "duplicate ConstantValue attribute for field '%s'" msgstr "" -#: java/class.c:816 +#: java/class.c:813 #, c-format msgid "ConstantValue attribute of field '%s' has wrong type" msgstr "" -#: java/class.c:1111 +#: java/class.c:1110 #, c-format msgid "field '%s' not found in class" msgstr "" -#: java/class.c:1375 +#: java/class.c:1425 msgid "%Jabstract method in non-abstract class" msgstr "" -#: java/class.c:2219 +#: java/class.c:2284 msgid "%Jnon-static method '%D' overrides static method" msgstr "" -#: java/decl.c:1065 +#: java/decl.c:1156 msgid "%J'%D' used prior to declaration" msgstr "" -#: java/decl.c:1106 +#: java/decl.c:1197 #, c-format msgid "declaration of `%s' shadows a parameter" msgstr "" -#: java/decl.c:1109 +#: java/decl.c:1200 #, c-format msgid "declaration of `%s' shadows a symbol from the parameter list" msgstr "" -#: java/decl.c:1425 +#: java/decl.c:1528 msgid "%Jlabel '%D' used but not defined" msgstr "" -#: java/decl.c:1430 +#: java/decl.c:1533 msgid "%Jlabel '%D' defined but not used" msgstr "" -#: java/decl.c:1548 +#: java/decl.c:1655 msgid "%JIn %D: overlapped variable and exception ranges at %d" msgstr "" -#: java/decl.c:1626 +#: java/decl.c:1719 msgid "bad type in parameter debug info" msgstr "" -#: java/decl.c:1635 +#: java/decl.c:1728 msgid "%Jbad PC range for debug info for local '%D'" msgstr "" -#: java/expr.c:529 +#: java/expr.c:538 msgid "stack underflow - dup* operation" msgstr "" -#: java/expr.c:1479 +#: java/expr.c:1489 #, c-format msgid "" "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'" msgstr "" -#: java/expr.c:1507 +#: java/expr.c:1517 #, c-format msgid "field `%s' not found" msgstr "" -#: java/expr.c:1704 +#: java/expr.c:1714 msgid "ret instruction not implemented" msgstr "" -#: java/expr.c:1864 +#: java/expr.c:1875 #, c-format msgid "method '%s' not found in class" msgstr "" -#: java/expr.c:2052 +#: java/expr.c:2065 #, c-format msgid "failed to find class '%s'" msgstr "" -#: java/expr.c:2062 +#: java/expr.c:2075 #, c-format msgid "class '%s' has no method named '%s' matching signature '%s'" msgstr "" -#: java/expr.c:2072 +#: java/expr.c:2085 msgid "invokestatic on non static method" msgstr "" -#: java/expr.c:2077 +#: java/expr.c:2090 msgid "invokestatic on abstract method" msgstr "" -#: java/expr.c:2085 +#: java/expr.c:2098 msgid "invoke[non-static] on static method" msgstr "" -#: java/expr.c:2379 +#: java/expr.c:2398 #, c-format msgid "missing field '%s' in '%s'" msgstr "" -#: java/expr.c:2385 +#: java/expr.c:2404 #, c-format msgid "mismatching signature for field '%s' in '%s'" msgstr "" -#: java/expr.c:2407 +#: java/expr.c:2426 msgid "%Jassignment to final field '%D' not in field's class" msgstr "" -#: java/expr.c:2412 +#: java/expr.c:2431 msgid "%Jassignment to final static field `%D' not in class initializer" msgstr "" -#: java/expr.c:2421 +#: java/expr.c:2440 msgid "%Jassignment to final field '%D' not in constructor" msgstr "" -#: java/expr.c:2673 -#, c-format -msgid "can't expand %s" -msgstr "" - -#: java/expr.c:2845 +#: java/expr.c:2630 msgid "invalid PC in line number table" msgstr "" -#: java/expr.c:2891 +#: java/expr.c:2676 #, c-format msgid "unreachable bytecode from %d to before %d" msgstr "" -#: java/expr.c:2928 +#: java/expr.c:2713 #, c-format msgid "unreachable bytecode from %d to the end of the method" msgstr "" #. duplicate code from LOAD macro -#: java/expr.c:3221 +#: java/expr.c:3007 msgid "unrecogized wide sub-instruction" msgstr "" -#: java/gjavah.c:674 +#: java/gjavah.c:675 msgid "static field has same name as method" msgstr "" @@ -17638,7 +17533,7 @@ msgstr "" msgid "Not a valid Java .class file." msgstr "" -#: java/gjavah.c:1991 java/jcf-parse.c:618 +#: java/gjavah.c:1991 java/jcf-parse.c:625 msgid "error while parsing constant pool" msgstr "" @@ -17822,7 +17717,7 @@ msgstr "" msgid "error while parsing constant pool\n" msgstr "" -#: java/jcf-dump.c:826 java/jcf-parse.c:621 +#: java/jcf-dump.c:826 java/jcf-parse.c:628 #, c-format msgid "error in constant pool entry #%d\n" msgstr "" @@ -17907,44 +17802,44 @@ msgstr "" msgid "bad value constant type %d, index %d" msgstr "" -#: java/jcf-parse.c:514 +#: java/jcf-parse.c:518 #, c-format msgid "can't reopen %s: %m" msgstr "" -#: java/jcf-parse.c:519 +#: java/jcf-parse.c:525 #, c-format msgid "can't close %s: %m" msgstr "" -#: java/jcf-parse.c:604 +#: java/jcf-parse.c:611 #, c-format msgid "cannot find file for class %s" msgstr "" -#: java/jcf-parse.c:615 +#: java/jcf-parse.c:622 msgid "not a valid Java .class file" msgstr "" #. FIXME - where was first time -#: java/jcf-parse.c:633 +#: java/jcf-parse.c:640 #, c-format msgid "reading class %s for the second time from %s" msgstr "" -#: java/jcf-parse.c:651 +#: java/jcf-parse.c:658 msgid "error while parsing fields" msgstr "" -#: java/jcf-parse.c:654 +#: java/jcf-parse.c:661 msgid "error while parsing methods" msgstr "" -#: java/jcf-parse.c:657 +#: java/jcf-parse.c:664 msgid "error while parsing final attributes" msgstr "" -#: java/jcf-parse.c:671 +#: java/jcf-parse.c:678 #, c-format msgid "" "the `java.lang.Object' that was found in `%s' didn't have the special zero-" @@ -17953,49 +17848,54 @@ msgid "" "info page describing how to set the classpath" msgstr "" -#: java/jcf-parse.c:749 +#: java/jcf-parse.c:756 msgid "missing Code attribute" msgstr "" -#: java/jcf-parse.c:981 +#: java/jcf-parse.c:1015 msgid "%Hsource file seen twice on command line and will be compiled only once" msgstr "" -#: java/jcf-parse.c:996 +#: java/jcf-parse.c:1030 msgid "no input file specified" msgstr "" -#: java/jcf-parse.c:1025 +#: java/jcf-parse.c:1061 #, c-format msgid "can't close input file %s: %m" msgstr "" -#: java/jcf-parse.c:1063 +#: java/jcf-parse.c:1099 #, c-format msgid "bad zip/jar file %s" msgstr "" -#: java/jcf-parse.c:1238 +#: java/jcf-parse.c:1275 #, c-format msgid "error while reading %s from zip file" msgstr "" -#: java/jcf-write.c:2611 +#: java/jcf-write.c:2655 #, c-format msgid "" "internal error in generate_bytecode_insn - tree code not implemented: %s" msgstr "" -#: java/jcf-write.c:2943 +#: java/jcf-write.c:3027 msgid "field initializer type mismatch" msgstr "" -#: java/jcf-write.c:3400 +#: java/jcf-write.c:3484 #, c-format msgid "can't create directory %s: %m" msgstr "" -#: java/jcf-write.c:3453 +#: java/jcf-write.c:3517 +#, c-format +msgid "can't open %s for writing: %m" +msgstr "" + +#: java/jcf-write.c:3537 #, c-format msgid "can't create %s: %m" msgstr "" @@ -18122,15 +18022,15 @@ msgstr "" msgid "cannot specify `main' class when not linking" msgstr "" -#: java/lang.c:748 +#: java/lang.c:621 msgid "can't do dependency tracking with input from stdin" msgstr "" -#: java/lang.c:764 +#: java/lang.c:637 msgid "couldn't determine target name for dependency tracking" msgstr "" -#: java/lex.c:303 +#: java/lex.c:307 #, c-format msgid "" "unknown encoding: `%s'\n" @@ -18149,459 +18049,451 @@ msgstr "" msgid "internal error - invalid Utf8 name" msgstr "" -#: ../../gcc/java/parse-scan.y:880 ../../gcc/java/parse.y:951 -#: ../../gcc/java/parse.y:1292 ../../gcc/java/parse.y:1353 -#: ../../gcc/java/parse.y:1557 ../../gcc/java/parse.y:1779 -#: ../../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 ../../gcc/java/parse.y:1854 -#: ../../gcc/java/parse.y:1856 ../../gcc/java/parse.y:1937 -#: ../../gcc/java/parse.y:2108 ../../gcc/java/parse.y:2170 -#: ../../gcc/java/parse.y:2322 ../../gcc/java/parse.y:2334 -#: ../../gcc/java/parse.y:2341 ../../gcc/java/parse.y:2348 -#: ../../gcc/java/parse.y:2359 ../../gcc/java/parse.y:2361 -#: ../../gcc/java/parse.y:2399 ../../gcc/java/parse.y:2401 -#: ../../gcc/java/parse.y:2403 ../../gcc/java/parse.y:2424 -#: ../../gcc/java/parse.y:2426 ../../gcc/java/parse.y:2428 -#: ../../gcc/java/parse.y:2444 ../../gcc/java/parse.y:2446 -#: ../../gcc/java/parse.y:2467 ../../gcc/java/parse.y:2469 -#: ../../gcc/java/parse.y:2471 ../../gcc/java/parse.y:2499 -#: ../../gcc/java/parse.y:2501 ../../gcc/java/parse.y:2503 -#: ../../gcc/java/parse.y:2505 ../../gcc/java/parse.y:2523 -#: ../../gcc/java/parse.y:2525 ../../gcc/java/parse.y:2536 -#: ../../gcc/java/parse.y:2547 ../../gcc/java/parse.y:2558 -#: ../../gcc/java/parse.y:2569 ../../gcc/java/parse.y:2580 -#: ../../gcc/java/parse.y:2593 ../../gcc/java/parse.y:2597 -#: ../../gcc/java/parse.y:2599 ../../gcc/java/parse.y:2612 +#: ../../gcc-cvs/gcc/java/parse-scan.y:881 ../../gcc-cvs/gcc/java/parse.y:948 +#: ../../gcc-cvs/gcc/java/parse.y:1289 ../../gcc-cvs/gcc/java/parse.y:1350 +#: ../../gcc-cvs/gcc/java/parse.y:1554 ../../gcc-cvs/gcc/java/parse.y:1777 +#: ../../gcc-cvs/gcc/java/parse.y:1786 ../../gcc-cvs/gcc/java/parse.y:1797 +#: ../../gcc-cvs/gcc/java/parse.y:1808 ../../gcc-cvs/gcc/java/parse.y:1820 +#: ../../gcc-cvs/gcc/java/parse.y:1835 ../../gcc-cvs/gcc/java/parse.y:1852 +#: ../../gcc-cvs/gcc/java/parse.y:1854 ../../gcc-cvs/gcc/java/parse.y:1935 +#: ../../gcc-cvs/gcc/java/parse.y:2107 ../../gcc-cvs/gcc/java/parse.y:2176 +#: ../../gcc-cvs/gcc/java/parse.y:2340 ../../gcc-cvs/gcc/java/parse.y:2352 +#: ../../gcc-cvs/gcc/java/parse.y:2359 ../../gcc-cvs/gcc/java/parse.y:2366 +#: ../../gcc-cvs/gcc/java/parse.y:2377 ../../gcc-cvs/gcc/java/parse.y:2379 +#: ../../gcc-cvs/gcc/java/parse.y:2417 ../../gcc-cvs/gcc/java/parse.y:2419 +#: ../../gcc-cvs/gcc/java/parse.y:2421 ../../gcc-cvs/gcc/java/parse.y:2442 +#: ../../gcc-cvs/gcc/java/parse.y:2444 ../../gcc-cvs/gcc/java/parse.y:2446 +#: ../../gcc-cvs/gcc/java/parse.y:2462 ../../gcc-cvs/gcc/java/parse.y:2464 +#: ../../gcc-cvs/gcc/java/parse.y:2485 ../../gcc-cvs/gcc/java/parse.y:2487 +#: ../../gcc-cvs/gcc/java/parse.y:2489 ../../gcc-cvs/gcc/java/parse.y:2517 +#: ../../gcc-cvs/gcc/java/parse.y:2519 ../../gcc-cvs/gcc/java/parse.y:2521 +#: ../../gcc-cvs/gcc/java/parse.y:2523 ../../gcc-cvs/gcc/java/parse.y:2541 +#: ../../gcc-cvs/gcc/java/parse.y:2543 ../../gcc-cvs/gcc/java/parse.y:2554 +#: ../../gcc-cvs/gcc/java/parse.y:2565 ../../gcc-cvs/gcc/java/parse.y:2576 +#: ../../gcc-cvs/gcc/java/parse.y:2587 ../../gcc-cvs/gcc/java/parse.y:2598 +#: ../../gcc-cvs/gcc/java/parse.y:2611 ../../gcc-cvs/gcc/java/parse.y:2615 +#: ../../gcc-cvs/gcc/java/parse.y:2617 ../../gcc-cvs/gcc/java/parse.y:2630 msgid "Missing term" msgstr "" -#: ../../gcc/java/parse-scan.y:882 ../../gcc/java/parse.y:723 -#: ../../gcc/java/parse.y:761 ../../gcc/java/parse.y:786 -#: ../../gcc/java/parse.y:972 ../../gcc/java/parse.y:1327 -#: ../../gcc/java/parse.y:1533 ../../gcc/java/parse.y:1535 -#: ../../gcc/java/parse.y:1764 ../../gcc/java/parse.y:1790 -#: ../../gcc/java/parse.y:1801 ../../gcc/java/parse.y:1812 -#: ../../gcc/java/parse.y:1824 ../../gcc/java/parse.y:1839 +#: ../../gcc-cvs/gcc/java/parse-scan.y:883 ../../gcc-cvs/gcc/java/parse.y:720 +#: ../../gcc-cvs/gcc/java/parse.y:758 ../../gcc-cvs/gcc/java/parse.y:783 +#: ../../gcc-cvs/gcc/java/parse.y:969 ../../gcc-cvs/gcc/java/parse.y:1324 +#: ../../gcc-cvs/gcc/java/parse.y:1530 ../../gcc-cvs/gcc/java/parse.y:1532 +#: ../../gcc-cvs/gcc/java/parse.y:1762 ../../gcc-cvs/gcc/java/parse.y:1788 +#: ../../gcc-cvs/gcc/java/parse.y:1799 ../../gcc-cvs/gcc/java/parse.y:1810 +#: ../../gcc-cvs/gcc/java/parse.y:1822 ../../gcc-cvs/gcc/java/parse.y:1837 msgid "';' expected" msgstr "" -#: ../../gcc/java/parse.y:721 ../../gcc/java/parse.y:759 +#: ../../gcc-cvs/gcc/java/parse.y:718 ../../gcc-cvs/gcc/java/parse.y:756 msgid "Missing name" msgstr "" -#: ../../gcc/java/parse.y:784 +#: ../../gcc-cvs/gcc/java/parse.y:781 msgid "'*' expected" msgstr "" -#: ../../gcc/java/parse.y:798 +#: ../../gcc-cvs/gcc/java/parse.y:795 msgid "Class or interface declaration expected" msgstr "" -#: ../../gcc/java/parse.y:835 ../../gcc/java/parse.y:837 +#: ../../gcc-cvs/gcc/java/parse.y:832 ../../gcc-cvs/gcc/java/parse.y:834 msgid "Missing class name" msgstr "" -#: ../../gcc/java/parse.y:840 ../../gcc/java/parse.y:844 -#: ../../gcc/java/parse.y:852 ../../gcc/java/parse.y:1012 -#: ../../gcc/java/parse.y:1273 ../../gcc/java/parse.y:1275 -#: ../../gcc/java/parse.y:1599 ../../gcc/java/parse.y:1850 -#: ../../gcc/java/parse.y:1882 ../../gcc/java/parse.y:1944 +#: ../../gcc-cvs/gcc/java/parse.y:837 ../../gcc-cvs/gcc/java/parse.y:841 +#: ../../gcc-cvs/gcc/java/parse.y:849 ../../gcc-cvs/gcc/java/parse.y:1009 +#: ../../gcc-cvs/gcc/java/parse.y:1270 ../../gcc-cvs/gcc/java/parse.y:1272 +#: ../../gcc-cvs/gcc/java/parse.y:1597 ../../gcc-cvs/gcc/java/parse.y:1848 +#: ../../gcc-cvs/gcc/java/parse.y:1880 ../../gcc-cvs/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "" -#: ../../gcc/java/parse.y:854 +#: ../../gcc-cvs/gcc/java/parse.y:851 msgid "Missing super class name" msgstr "" -#: ../../gcc/java/parse.y:864 ../../gcc/java/parse.y:880 +#: ../../gcc-cvs/gcc/java/parse.y:861 ../../gcc-cvs/gcc/java/parse.y:877 msgid "Missing interface name" msgstr "" -#: ../../gcc/java/parse.y:966 +#: ../../gcc-cvs/gcc/java/parse.y:963 msgid "Missing variable initializer" msgstr "" -#: ../../gcc/java/parse.y:983 +#: ../../gcc-cvs/gcc/java/parse.y:980 msgid "Invalid declaration" msgstr "" -#: ../../gcc/java/parse.y:986 ../../gcc/java/parse.y:1071 -#: ../../gcc/java/parse.y:2145 ../../gcc/java/parse.y:2167 -#: ../../gcc/java/parse.y:2171 ../../gcc/java/parse.y:2206 -#: ../../gcc/java/parse.y:2283 ../../gcc/java/parse.y:2293 +#: ../../gcc-cvs/gcc/java/parse.y:983 ../../gcc-cvs/gcc/java/parse.y:1068 +#: ../../gcc-cvs/gcc/java/parse.y:2122 ../../gcc-cvs/gcc/java/parse.y:2151 +#: ../../gcc-cvs/gcc/java/parse.y:2173 ../../gcc-cvs/gcc/java/parse.y:2177 +#: ../../gcc-cvs/gcc/java/parse.y:2212 ../../gcc-cvs/gcc/java/parse.y:2291 +#: ../../gcc-cvs/gcc/java/parse.y:2301 ../../gcc-cvs/gcc/java/parse.y:2311 msgid "']' expected" msgstr "" -#: ../../gcc/java/parse.y:990 +#: ../../gcc-cvs/gcc/java/parse.y:987 msgid "Unbalanced ']'" msgstr "" -#: ../../gcc/java/parse.y:1026 +#: ../../gcc-cvs/gcc/java/parse.y:1023 msgid "Invalid method declaration, method name required" msgstr "" -#: ../../gcc/java/parse.y:1031 ../../gcc/java/parse.y:1036 -#: ../../gcc/java/parse.y:1041 ../../gcc/java/parse.y:2028 +#: ../../gcc-cvs/gcc/java/parse.y:1028 ../../gcc-cvs/gcc/java/parse.y:1033 +#: ../../gcc-cvs/gcc/java/parse.y:1038 ../../gcc-cvs/gcc/java/parse.y:2027 msgid "Identifier expected" msgstr "" -#: ../../gcc/java/parse.y:1046 +#: ../../gcc-cvs/gcc/java/parse.y:1043 msgid "Invalid method declaration, return type required" msgstr "" -#: ../../gcc/java/parse.y:1069 ../../gcc/java/parse.y:1513 -#: ../../gcc/java/parse.y:1520 ../../gcc/java/parse.y:1529 -#: ../../gcc/java/parse.y:1531 ../../gcc/java/parse.y:1559 -#: ../../gcc/java/parse.y:1667 ../../gcc/java/parse.y:1973 -#: ../../gcc/java/parse.y:2026 +#: ../../gcc-cvs/gcc/java/parse.y:1066 ../../gcc-cvs/gcc/java/parse.y:1510 +#: ../../gcc-cvs/gcc/java/parse.y:1517 ../../gcc-cvs/gcc/java/parse.y:1526 +#: ../../gcc-cvs/gcc/java/parse.y:1528 ../../gcc-cvs/gcc/java/parse.y:1556 +#: ../../gcc-cvs/gcc/java/parse.y:1665 ../../gcc-cvs/gcc/java/parse.y:1972 +#: ../../gcc-cvs/gcc/java/parse.y:2025 msgid "')' expected" msgstr "" -#: ../../gcc/java/parse.y:1085 +#: ../../gcc-cvs/gcc/java/parse.y:1082 msgid "Missing formal parameter term" msgstr "" -#: ../../gcc/java/parse.y:1100 ../../gcc/java/parse.y:1105 +#: ../../gcc-cvs/gcc/java/parse.y:1097 ../../gcc-cvs/gcc/java/parse.y:1102 msgid "Missing identifier" msgstr "" -#: ../../gcc/java/parse.y:1125 ../../gcc/java/parse.y:1134 +#: ../../gcc-cvs/gcc/java/parse.y:1122 ../../gcc-cvs/gcc/java/parse.y:1131 msgid "Missing class type term" msgstr "" -#: ../../gcc/java/parse.y:1290 +#: ../../gcc-cvs/gcc/java/parse.y:1287 msgid "Invalid interface type" msgstr "" -#: ../../gcc/java/parse.y:1477 ../../gcc/java/parse.y:1646 -#: ../../gcc/java/parse.y:1648 +#: ../../gcc-cvs/gcc/java/parse.y:1474 ../../gcc-cvs/gcc/java/parse.y:1644 +#: ../../gcc-cvs/gcc/java/parse.y:1646 msgid "':' expected" msgstr "" -#: ../../gcc/java/parse.y:1499 ../../gcc/java/parse.y:1504 -#: ../../gcc/java/parse.y:1509 +#: ../../gcc-cvs/gcc/java/parse.y:1496 ../../gcc-cvs/gcc/java/parse.y:1501 +#: ../../gcc-cvs/gcc/java/parse.y:1506 msgid "Invalid expression statement" msgstr "" -#: ../../gcc/java/parse.y:1527 ../../gcc/java/parse.y:1555 -#: ../../gcc/java/parse.y:1595 ../../gcc/java/parse.y:1663 -#: ../../gcc/java/parse.y:1731 ../../gcc/java/parse.y:1852 -#: ../../gcc/java/parse.y:1930 ../../gcc/java/parse.y:2020 -#: ../../gcc/java/parse.y:2022 ../../gcc/java/parse.y:2030 -#: ../../gcc/java/parse.y:2266 ../../gcc/java/parse.y:2268 +#: ../../gcc-cvs/gcc/java/parse.y:1524 ../../gcc-cvs/gcc/java/parse.y:1552 +#: ../../gcc-cvs/gcc/java/parse.y:1593 ../../gcc-cvs/gcc/java/parse.y:1661 +#: ../../gcc-cvs/gcc/java/parse.y:1729 ../../gcc-cvs/gcc/java/parse.y:1850 +#: ../../gcc-cvs/gcc/java/parse.y:1928 ../../gcc-cvs/gcc/java/parse.y:2019 +#: ../../gcc-cvs/gcc/java/parse.y:2021 ../../gcc-cvs/gcc/java/parse.y:2029 +#: ../../gcc-cvs/gcc/java/parse.y:2272 ../../gcc-cvs/gcc/java/parse.y:2274 msgid "'(' expected" msgstr "" -#: ../../gcc/java/parse.y:1597 +#: ../../gcc-cvs/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "" -#: ../../gcc/java/parse.y:1644 +#: ../../gcc-cvs/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "" -#: ../../gcc/java/parse.y:1665 +#: ../../gcc-cvs/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1704 +#: ../../gcc-cvs/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "" -#: ../../gcc/java/parse.y:1706 ../../gcc/java/parse.y:1708 +#: ../../gcc-cvs/gcc/java/parse.y:1704 ../../gcc-cvs/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "" -#: ../../gcc/java/parse.y:1733 +#: ../../gcc-cvs/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "" -#: ../../gcc/java/parse.y:1933 +#: ../../gcc-cvs/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1975 +#: ../../gcc-cvs/gcc/java/parse.y:1974 msgid "'class' or 'this' expected" msgstr "" -#: ../../gcc/java/parse.y:1977 ../../gcc/java/parse.y:1979 +#: ../../gcc-cvs/gcc/java/parse.y:1976 ../../gcc-cvs/gcc/java/parse.y:1978 msgid "'class' expected" msgstr "" -#: ../../gcc/java/parse.y:2024 +#: ../../gcc-cvs/gcc/java/parse.y:2023 msgid "')' or term expected" msgstr "" -#: ../../gcc/java/parse.y:2143 +#: ../../gcc-cvs/gcc/java/parse.y:2120 ../../gcc-cvs/gcc/java/parse.y:2149 msgid "'[' expected" msgstr "" -#: ../../gcc/java/parse.y:2221 +#: ../../gcc-cvs/gcc/java/parse.y:2227 msgid "Field expected" msgstr "" -#: ../../gcc/java/parse.y:2278 ../../gcc/java/parse.y:2288 +#: ../../gcc-cvs/gcc/java/parse.y:2286 ../../gcc-cvs/gcc/java/parse.y:2296 +#: ../../gcc-cvs/gcc/java/parse.y:2306 msgid "Missing term and ']' expected" msgstr "" -#: ../../gcc/java/parse.y:2392 +#: ../../gcc-cvs/gcc/java/parse.y:2410 msgid "']' expected, invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2395 +#: ../../gcc-cvs/gcc/java/parse.y:2413 msgid "Invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2507 +#: ../../gcc-cvs/gcc/java/parse.y:2525 msgid "Invalid reference type" msgstr "" -#: ../../gcc/java/parse.y:2979 +#: ../../gcc-cvs/gcc/java/parse.y:2993 msgid "Constructor invocation must be first thing in a constructor" msgstr "" -#: ../../gcc/java/parse.y:2981 +#: ../../gcc-cvs/gcc/java/parse.y:2995 msgid "Only constructors can invoke constructors" msgstr "" -#: ../../gcc/java/parse.y:2989 +#: ../../gcc-cvs/gcc/java/parse.y:3003 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr "" -#: ../../gcc/java/parse.y:3048 ../../gcc/java/parse.y:3050 +#: ../../gcc-cvs/gcc/java/parse.y:3062 ../../gcc-cvs/gcc/java/parse.y:3064 #, c-format msgid "" "%s.\n" "%s" msgstr "" -#: ../../gcc/java/parse.y:6932 +#: ../../gcc-cvs/gcc/java/parse.y:6921 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "" -#: ../../gcc/java/parse.y:7003 +#: ../../gcc-cvs/gcc/java/parse.y:6992 #, 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:12155 +#: ../../gcc-cvs/gcc/java/parse.y:12090 #, c-format msgid "missing static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12160 +#: ../../gcc-cvs/gcc/java/parse.y:12095 #, c-format msgid "not a static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12203 +#: ../../gcc-cvs/gcc/java/parse.y:12138 #, c-format msgid "No case for %s" msgstr "" -#: ../../gcc/java/parse.y:13135 +#: ../../gcc-cvs/gcc/java/parse.y:13075 #, c-format msgid "unregistered operator %s" msgstr "" -#: java/typeck.c:537 +#: java/typeck.c:547 msgid "junk at end of signature string" msgstr "" -#: java/verify.c:471 +#: java/verify.c:479 msgid "bad pc in exception_table" msgstr "" -#: java/verify.c:1384 +#: java/verify.c:1475 #, c-format msgid "unknown opcode %d@pc=%d during verification" msgstr "" -#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471 +#: java/verify.c:1550 java/verify.c:1566 java/verify.c:1571 #, c-format msgid "verification error at PC=%d" msgstr "" -#: objc/objc-act.c:687 -#, c-format -msgid "object does not conform to the `%s' protocol" +#: objc/objc-act.c:751 +msgid "`@end' must appear in an @implementation context" msgstr "" -#: objc/objc-act.c:773 objc/objc-act.c:846 -#, c-format -msgid "class `%s' does not implement the `%s' protocol" +#: objc/objc-act.c:778 +msgid "method declaration not in @interface context" +msgstr "" + +#: objc/objc-act.c:789 +msgid "method definition not in @implementation context" msgstr "" -#: objc/objc-act.c:954 +#: objc/objc-act.c:894 #, c-format -msgid "statically allocated instance of Objective-C class `%s'" +msgid "object does not conform to the `%s' protocol" msgstr "" -#: objc/objc-act.c:1001 +#: objc/objc-act.c:980 objc/objc-act.c:1053 #, c-format -msgid "unexpected type for `id' (%s)" +msgid "class `%s' does not implement the `%s' protocol" msgstr "" -#: objc/objc-act.c:1006 -msgid "undefined type `id', please import " +#: objc/objc-act.c:1159 +#, c-format +msgid "statically allocated instance of Objective-C class `%s'" msgstr "" -#: objc/objc-act.c:1055 +#: objc/objc-act.c:1216 #, c-format msgid "protocol `%s' has circular dependency" msgstr "" -#: objc/objc-act.c:1077 objc/objc-act.c:5963 +#: objc/objc-act.c:1238 objc/objc-act.c:5792 #, c-format msgid "cannot find protocol declaration for `%s'" msgstr "" -#: objc/objc-act.c:1393 objc/objc-act.c:2620 objc/objc-act.c:6496 -#: objc/objc-act.c:6805 objc/objc-act.c:6858 objc/objc-act.c:6883 +#: objc/objc-act.c:1634 objc/objc-act.c:2767 objc/objc-act.c:6317 +#: objc/objc-act.c:6643 objc/objc-act.c:6696 objc/objc-act.c:6721 #, c-format msgid "cannot find interface declaration for `%s'" msgstr "" -#: objc/objc-act.c:1408 +#: objc/objc-act.c:1638 #, c-format msgid "interface `%s' does not have valid constant string layout" msgstr "" -#: objc/objc-act.c:1425 +#: objc/objc-act.c:1643 #, c-format msgid "cannot find reference tag for class `%s'" msgstr "" -#: objc/objc-act.c:2154 +#: objc/objc-act.c:2313 #, c-format msgid "creating selector for non existant method %s" msgstr "" -#: objc/objc-act.c:2364 +#: objc/objc-act.c:2503 #, c-format msgid "`%s' is not an Objective-C class name or alias" msgstr "" -#: objc/objc-act.c:2475 objc/objc-act.c:2493 objc/objc-act.c:6752 -#: objc/objc-act.c:7042 objc/objc-act.c:7071 +#: objc/objc-act.c:2618 objc/objc-act.c:2636 objc/objc-act.c:6580 +#: objc/objc-act.c:6894 objc/objc-act.c:6924 msgid "Objective-C declarations may only appear in global scope" msgstr "" -#: objc/objc-act.c:2480 +#: objc/objc-act.c:2623 #, c-format msgid "cannot find class `%s'" msgstr "" -#: objc/objc-act.c:2482 +#: objc/objc-act.c:2625 #, c-format msgid "class `%s' already exists" msgstr "" -#: objc/objc-act.c:2507 objc/objc-act.c:6774 +#: objc/objc-act.c:2650 objc/objc-act.c:6612 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "" -#: objc/objc-act.c:2509 objc/objc-act.c:6776 +#: objc/objc-act.c:2652 objc/objc-act.c:6614 msgid "%Jprevious declaration of '%D'" msgstr "" -#. fatal did not work with 2 args...should fix -#: objc/objc-act.c:2655 -#, c-format -msgid "cannot find interface declaration for `%s', superclass of `%s'" -msgstr "" - -#: objc/objc-act.c:2662 -#, c-format -msgid "circular inheritance in interface declaration for `%s'" -msgstr "" - -#: objc/objc-act.c:2755 objc/objc-act.c:2898 objc/objc-act.c:2998 -#: objc/objc-act.c:3173 objc/objc-act.c:3213 -msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax" +#: objc/objc-act.c:2877 +msgid "use %<-fobjc-exceptions%> to enable Objective-C exception syntax" msgstr "" -#: objc/objc-act.c:2762 -msgid "`@throw;' (rethrow) used outside of a `@catch' block" +#: objc/objc-act.c:3206 +msgid "@catch parameter is not a known Objective-C class type" msgstr "" -#: objc/objc-act.c:3001 -msgid "`@catch' parameter is not a known Objective-C class type" +#: objc/objc-act.c:3222 +msgid "exception of type %<%T%> will be caught" msgstr "" -#: objc/objc-act.c:3010 -msgid "Exception already handled by preceding `@catch(id)'" +#: objc/objc-act.c:3224 +msgid "%H by earlier handler for %<%T%>" msgstr "" -#: objc/objc-act.c:3015 -#, c-format -msgid "Exception of type `%s *' already handled by `@catch (%s *)'" +#: objc/objc-act.c:3277 +msgid "`@try' without `@catch' or `@finally'" msgstr "" -#: objc/objc-act.c:3179 -msgid "`@try' without `@catch' or `@finally'" +#: objc/objc-act.c:3324 +msgid "%<@throw%> (rethrow) used outside of a @catch block" msgstr "" -#: objc/objc-act.c:3620 +#: objc/objc-act.c:3700 msgid "%Jtype '%D' does not have a known size" msgstr "" -#: objc/objc-act.c:4229 +#: objc/objc-act.c:4218 msgid "%J%s `%s'" msgstr "" -#: objc/objc-act.c:4254 objc/objc-act.c:4273 +#: objc/objc-act.c:4241 objc/objc-act.c:4260 msgid "inconsistent instance variable specification" msgstr "" -#: objc/objc-act.c:5284 -msgid "can not use an object as parameter to a method\n" +#: objc/objc-act.c:5120 +msgid "can not use an object as parameter to a method" msgstr "" -#: objc/objc-act.c:5485 +#: objc/objc-act.c:5322 #, c-format msgid "multiple %s named `%c%s' found" msgstr "" -#: objc/objc-act.c:5702 +#: objc/objc-act.c:5547 #, c-format msgid "no super class declared in @interface for `%s'" msgstr "" -#: objc/objc-act.c:5790 +#: objc/objc-act.c:5637 #, c-format msgid "invalid receiver type `%s'" msgstr "" -#: objc/objc-act.c:5801 +#: objc/objc-act.c:5648 #, c-format msgid "`%s' may not respond to `%c%s'" msgstr "" -#: objc/objc-act.c:5806 +#: objc/objc-act.c:5653 #, c-format msgid "`%c%s' not implemented by protocol(s)" msgstr "" -#: objc/objc-act.c:5811 +#: objc/objc-act.c:5658 msgid "(Messages without a matching method signature" msgstr "" -#: objc/objc-act.c:5812 +#: objc/objc-act.c:5659 msgid "will be assumed to return `id' and accept" msgstr "" -#: objc/objc-act.c:5813 +#: objc/objc-act.c:5660 msgid "`...' as arguments.)" msgstr "" -#: objc/objc-act.c:6062 +#: objc/objc-act.c:5891 #, c-format msgid "undeclared selector `%s'" msgstr "" @@ -18615,1911 +18507,2063 @@ 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:6104 +#: objc/objc-act.c:5933 #, c-format msgid "instance variable `%s' accessed in class method" msgstr "" -#: objc/objc-act.c:6310 +#: objc/objc-act.c:6145 #, c-format msgid "duplicate declaration of method `%c%s'" msgstr "" -#: objc/objc-act.c:6351 +#: objc/objc-act.c:6187 #, c-format msgid "duplicate interface declaration for category `%s(%s)'" msgstr "" -#: objc/objc-act.c:6381 +#: objc/objc-act.c:6214 #, c-format msgid "illegal reference type specified for instance variable `%s'" msgstr "" -#: objc/objc-act.c:6397 +#: objc/objc-act.c:6225 #, 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:6411 +#: objc/objc-act.c:6239 #, c-format msgid "type `%s' has virtual member functions" msgstr "" -#: objc/objc-act.c:6412 +#: objc/objc-act.c:6240 #, c-format msgid "illegal aggregate type `%s' specified for instance variable `%s'" msgstr "" -#: objc/objc-act.c:6420 +#: objc/objc-act.c:6248 #, c-format msgid "type `%s' has a user-defined constructor" msgstr "" -#: objc/objc-act.c:6422 +#: objc/objc-act.c:6250 #, c-format msgid "type `%s' has a user-defined destructor" msgstr "" -#: objc/objc-act.c:6423 +#: objc/objc-act.c:6251 msgid "" "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6473 +#: objc/objc-act.c:6341 #, c-format msgid "instance variable `%s' is declared private" msgstr "" -#: objc/objc-act.c:6522 +#: objc/objc-act.c:6350 #, c-format msgid "instance variable `%s' is %s; this will be a hard error in the future" msgstr "" -#: objc/objc-act.c:6529 +#: objc/objc-act.c:6357 #, c-format msgid "instance variable `%s' is declared %s" msgstr "" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6367 msgid "static access to object of type `id'" msgstr "" -#: objc/objc-act.c:6561 objc/objc-act.c:6649 +#: objc/objc-act.c:6389 objc/objc-act.c:6477 #, c-format msgid "incomplete implementation of class `%s'" msgstr "" -#: objc/objc-act.c:6565 objc/objc-act.c:6654 +#: objc/objc-act.c:6393 objc/objc-act.c:6482 #, c-format msgid "incomplete implementation of category `%s'" msgstr "" -#: objc/objc-act.c:6570 objc/objc-act.c:6659 +#: objc/objc-act.c:6398 objc/objc-act.c:6487 #, c-format msgid "method definition for `%c%s' not found" msgstr "" -#: objc/objc-act.c:6700 +#: objc/objc-act.c:6528 #, c-format msgid "%s `%s' does not fully implement the `%s' protocol" msgstr "" -#: objc/objc-act.c:6758 objc/objc-act.c:8790 +#: objc/objc-act.c:6586 objc/objc-act.c:8124 msgid "`@end' missing in implementation context" msgstr "" -#: objc/objc-act.c:6788 +#: objc/objc-act.c:6599 +#, c-format +msgid "cannot find interface declaration for `%s', superclass of `%s'" +msgstr "" + +#: objc/objc-act.c:6626 #, c-format msgid "reimplementation of class `%s'" msgstr "" -#: objc/objc-act.c:6819 +#: objc/objc-act.c:6657 #, c-format msgid "conflicting super class name `%s'" msgstr "" -#: objc/objc-act.c:6821 +#: objc/objc-act.c:6659 #, c-format msgid "previous declaration of `%s'" msgstr "" -#: objc/objc-act.c:6835 objc/objc-act.c:6837 +#: objc/objc-act.c:6673 objc/objc-act.c:6675 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "" -#: objc/objc-act.c:7104 +#: objc/objc-act.c:6952 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "" #. Add a readable method name to the warning. -#: objc/objc-act.c:7595 +#: objc/objc-act.c:7468 msgid "%J%s `%c%s'" msgstr "" -#: objc/objc-act.c:7895 +#: objc/objc-act.c:7731 #, c-format msgid "no super class declared in interface for `%s'" msgstr "" -#: objc/objc-act.c:7943 +#: objc/objc-act.c:7779 msgid "[super ...] must appear in a method context" msgstr "" -#: objc/objc-parse.y:2687 -msgid "`@end' must appear in an implementation context" +#: objc/objc-parse.y:2704 +msgid "extra semicolon in method definition specified" msgstr "" -#: objc/objc-parse.y:2900 -msgid "method definition not in class context" -msgstr "" - -#: options.c:23 +#: /home/jsm28/src/gcc-build/gcc/options.c:931 msgid "Display this information" msgstr "" -#: options.c:29 +#: /home/jsm28/src/gcc-build/gcc/options.c:937 msgid "" "--param =\tSet paramter to value. See below for a " "complete list of parameters" msgstr "" -#: options.c:38 +#: /home/jsm28/src/gcc-build/gcc/options.c:946 msgid "" "-A=\tAssert the to . Putting '-' " "before disables the to " msgstr "" -#: options.c:41 +#: /home/jsm28/src/gcc-build/gcc/options.c:949 msgid "Do not discard comments" msgstr "" -#: options.c:44 +#: /home/jsm28/src/gcc-build/gcc/options.c:952 msgid "Do not discard comments in macro expansions" msgstr "" -#: options.c:47 +#: /home/jsm28/src/gcc-build/gcc/options.c:955 msgid "" "-D[=]\tDefine a with as its value. If just " " is given, is taken to be 1" msgstr "" -#: options.c:53 +#: /home/jsm28/src/gcc-build/gcc/options.c:961 msgid "-F \tAdd to the end of the main framework include path " msgstr "" -#: options.c:56 +#: /home/jsm28/src/gcc-build/gcc/options.c:964 msgid "" "-G\tPut global and static data smaller than bytes into a " "special section (on some targets)" msgstr "" -#: options.c:59 +#: /home/jsm28/src/gcc-build/gcc/options.c:967 msgid "Print the name of header files as they are used" msgstr "" -#: options.c:65 +#: /home/jsm28/src/gcc-build/gcc/options.c:973 msgid "-J\tPut MODULE files in 'directory'" msgstr "" -#: options.c:71 +#: /home/jsm28/src/gcc-build/gcc/options.c:979 msgid "Generate make dependencies and compile" msgstr "" -#: options.c:80 +#: /home/jsm28/src/gcc-build/gcc/options.c:988 msgid "Treat missing header files as generated files" msgstr "" -#: options.c:86 +#: /home/jsm28/src/gcc-build/gcc/options.c:994 msgid "Like -MD but ignore system header files" msgstr "" -#: options.c:95 +#: /home/jsm28/src/gcc-build/gcc/options.c:1003 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: options.c:101 +#: /home/jsm28/src/gcc-build/gcc/options.c:1009 msgid "-O\tSet optimization level to " msgstr "" -#: options.c:104 +#: /home/jsm28/src/gcc-build/gcc/options.c:1012 msgid "Optimize for space rather than speed" msgstr "" -#: options.c:107 +#: /home/jsm28/src/gcc-build/gcc/options.c:1015 msgid "Do not generate #line directives" msgstr "" -#: options.c:110 +#: /home/jsm28/src/gcc-build/gcc/options.c:1018 msgid "-U\tUndefine " msgstr "" -#: options.c:113 +#: /home/jsm28/src/gcc-build/gcc/options.c:1021 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: options.c:119 +#: /home/jsm28/src/gcc-build/gcc/options.c:1024 +msgid "" +"Warn about things that will change when compiling with an ABI-compliant " +"compiler" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1027 msgid "Warn about returning structures, unions or arrays" msgstr "" -#: options.c:122 +#: /home/jsm28/src/gcc-build/gcc/options.c:1030 msgid "Warn about possible aliasing of dummy arguments" msgstr "" -#: options.c:128 +#: /home/jsm28/src/gcc-build/gcc/options.c:1036 msgid "Warn about casting functions to incompatible types" msgstr "" -#: options.c:131 +#: /home/jsm28/src/gcc-build/gcc/options.c:1039 msgid "Warn about pointer casts which increase alignment" msgstr "" -#: options.c:134 +#: /home/jsm28/src/gcc-build/gcc/options.c:1042 msgid "Warn about casts which discard qualifiers" msgstr "" -#: options.c:137 +#: /home/jsm28/src/gcc-build/gcc/options.c:1045 msgid "Warn about subscripts whose type is \"char\"" msgstr "" -#: options.c:140 +#: /home/jsm28/src/gcc-build/gcc/options.c:1048 msgid "" "Warn about possibly nested block comments, and C++ comments spanning more " "than one physical line" msgstr "" -#: options.c:143 +#: /home/jsm28/src/gcc-build/gcc/options.c:1051 msgid "Synonym for -Wcomment" msgstr "" -#: options.c:146 +#: /home/jsm28/src/gcc-build/gcc/options.c:1054 msgid "Warn about implicit conversion" msgstr "" -#: options.c:149 +#: /home/jsm28/src/gcc-build/gcc/options.c:1057 msgid "Warn when all constructors and destructors are private" msgstr "" -#: options.c:152 +#: /home/jsm28/src/gcc-build/gcc/options.c:1060 msgid "Warn when a declaration is found after a statement" msgstr "" -#: options.c:155 -msgid "Warn if deprecated class, method, or field is used" +#: /home/jsm28/src/gcc-build/gcc/options.c:1063 +msgid "Warn if a deprecated compiler feature, class, method, or field is used" msgstr "" -#: options.c:158 +#: /home/jsm28/src/gcc-build/gcc/options.c:1066 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "" -#: options.c:161 +#: /home/jsm28/src/gcc-build/gcc/options.c:1069 msgid "Warn when an optimization pass is disabled" msgstr "" -#: options.c:164 +#: /home/jsm28/src/gcc-build/gcc/options.c:1072 msgid "Warn about compile-time integer division by zero" msgstr "" -#: options.c:167 +#: /home/jsm28/src/gcc-build/gcc/options.c:1075 msgid "Warn about violations of Effective C++ style rules" msgstr "" -#: options.c:170 +#: /home/jsm28/src/gcc-build/gcc/options.c:1078 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: options.c:173 +#: /home/jsm28/src/gcc-build/gcc/options.c:1081 msgid "Treat all warnings as errors" msgstr "" -#: options.c:176 +#: /home/jsm28/src/gcc-build/gcc/options.c:1084 msgid "Make implicit function declarations an error" msgstr "" -#: options.c:179 +#: /home/jsm28/src/gcc-build/gcc/options.c:1087 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: options.c:182 +#: /home/jsm28/src/gcc-build/gcc/options.c:1090 msgid "Warn if deprecated empty statements are found" msgstr "" -#: options.c:185 +#: /home/jsm28/src/gcc-build/gcc/options.c:1093 msgid "Exit on the first error occurred" msgstr "" -#: options.c:188 +#: /home/jsm28/src/gcc-build/gcc/options.c:1096 msgid "Warn if testing floating point numbers for equality" msgstr "" -#: options.c:191 +#: /home/jsm28/src/gcc-build/gcc/options.c:1099 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "" -#: options.c:194 +#: /home/jsm28/src/gcc-build/gcc/options.c:1102 msgid "Warn if passing too many arguments to a function for its format string" msgstr "" -#: options.c:197 +#: /home/jsm28/src/gcc-build/gcc/options.c:1105 msgid "Warn about format strings that are not literals" msgstr "" -#: options.c:200 +#: /home/jsm28/src/gcc-build/gcc/options.c:1108 msgid "Warn about possible security problems with format functions" msgstr "" -#: options.c:203 +#: /home/jsm28/src/gcc-build/gcc/options.c:1111 msgid "Warn about strftime formats yielding 2-digit years" msgstr "" -#: options.c:215 +#: /home/jsm28/src/gcc-build/gcc/options.c:1114 +msgid "Warn about zero-length formats" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1123 msgid "Warn about implicit function declarations" msgstr "" -#: options.c:218 +#: /home/jsm28/src/gcc-build/gcc/options.c:1126 msgid "Warn when a declaration does not specify a type" msgstr "" -#: options.c:221 +#: /home/jsm28/src/gcc-build/gcc/options.c:1129 msgid "Warn about calls with implicit interface" msgstr "" -#: options.c:224 +#: /home/jsm28/src/gcc-build/gcc/options.c:1132 msgid "Deprecated. This switch has no effect." msgstr "" -#: options.c:227 +#: /home/jsm28/src/gcc-build/gcc/options.c:1135 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: options.c:230 +#: /home/jsm28/src/gcc-build/gcc/options.c:1138 msgid "Warn when an inlined function cannot be inlined" msgstr "" -#: options.c:233 +#: /home/jsm28/src/gcc-build/gcc/options.c:1141 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "" -#: options.c:236 +#: /home/jsm28/src/gcc-build/gcc/options.c:1144 msgid "Warn about PCH files that are found but not used" msgstr "" -#: options.c:239 +#: /home/jsm28/src/gcc-build/gcc/options.c:1147 msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr "" -#: options.c:242 +#: /home/jsm28/src/gcc-build/gcc/options.c:1150 msgid "Warn about truncated source lines" msgstr "" -#: options.c:245 +#: /home/jsm28/src/gcc-build/gcc/options.c:1153 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "" -#: options.c:248 +#: /home/jsm28/src/gcc-build/gcc/options.c:1156 msgid "Warn about suspicious declarations of \"main\"" msgstr "" -#: options.c:251 +#: /home/jsm28/src/gcc-build/gcc/options.c:1159 msgid "Warn about possibly missing braces around initializers" msgstr "" -#: options.c:254 +#: /home/jsm28/src/gcc-build/gcc/options.c:1162 msgid "Warn about global functions without previous declarations" msgstr "" -#: options.c:257 +#: /home/jsm28/src/gcc-build/gcc/options.c:1165 +msgid "Warn about missing fields in struct initializers" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1168 msgid "Warn about functions which might be candidates for format attributes" msgstr "" -#: options.c:260 +#: /home/jsm28/src/gcc-build/gcc/options.c:1171 +msgid "Warn about user-specified include directories that do not exist" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1174 msgid "" "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "" -#: options.c:263 +#: /home/jsm28/src/gcc-build/gcc/options.c:1177 msgid "Warn about global functions without prototypes" msgstr "" -#: options.c:266 +#: /home/jsm28/src/gcc-build/gcc/options.c:1180 msgid "Warn about use of multi-character character constants" msgstr "" -#: options.c:269 +#: /home/jsm28/src/gcc-build/gcc/options.c:1183 msgid "Warn about \"extern\" declarations not at file scope" msgstr "" -#: options.c:272 +#: /home/jsm28/src/gcc-build/gcc/options.c:1186 msgid "" "Warn when non-templatized friend functions are declared within a template" msgstr "" -#: options.c:275 +#: /home/jsm28/src/gcc-build/gcc/options.c:1189 msgid "Warn about non-virtual destructors" msgstr "" -#: options.c:281 +#: /home/jsm28/src/gcc-build/gcc/options.c:1192 +msgid "" +"Warn about NULL being passed to argument slots marked as requiring non-NULL" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1195 msgid "Warn if a C-style cast is used in a program" msgstr "" -#: options.c:284 +#: /home/jsm28/src/gcc-build/gcc/options.c:1198 msgid "Warn if an old-style parameter definition is used" msgstr "" -#: options.c:287 +#: /home/jsm28/src/gcc-build/gcc/options.c:1201 msgid "Warn if .class files are out of date" msgstr "" -#: options.c:290 +#: /home/jsm28/src/gcc-build/gcc/options.c:1204 msgid "Warn about overloaded virtual function names" msgstr "" -#: options.c:293 +#: /home/jsm28/src/gcc-build/gcc/options.c:1207 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "" -#: options.c:296 +#: /home/jsm28/src/gcc-build/gcc/options.c:1210 msgid "Warn when padding is required to align structure members" msgstr "" -#: options.c:299 +#: /home/jsm28/src/gcc-build/gcc/options.c:1213 msgid "Warn about possibly missing parentheses" msgstr "" -#: options.c:302 +#: /home/jsm28/src/gcc-build/gcc/options.c:1216 msgid "Warn when converting the type of pointers to member functions" msgstr "" -#: options.c:305 +#: /home/jsm28/src/gcc-build/gcc/options.c:1219 msgid "Warn about function pointer arithmetic" msgstr "" -#: options.c:308 +#: /home/jsm28/src/gcc-build/gcc/options.c:1222 msgid "Warn if inherited methods are unimplemented" msgstr "" -#: options.c:311 +#: /home/jsm28/src/gcc-build/gcc/options.c:1225 msgid "Warn about multiple declarations of the same object" msgstr "" -#: options.c:314 +#: /home/jsm28/src/gcc-build/gcc/options.c:1228 msgid "Warn if modifiers are specified when not necessary" msgstr "" -#: options.c:317 +#: /home/jsm28/src/gcc-build/gcc/options.c:1231 msgid "Warn when the compiler reorders code" msgstr "" -#: options.c:320 +#: /home/jsm28/src/gcc-build/gcc/options.c:1234 msgid "" "Warn whenever a function's return type defaults to \"int\" (C), or about " "inconsistent return types (C++)" msgstr "" -#: options.c:323 +#: /home/jsm28/src/gcc-build/gcc/options.c:1237 msgid "Warn if a selector has multiple methods" msgstr "" -#: options.c:326 +#: /home/jsm28/src/gcc-build/gcc/options.c:1240 msgid "Warn about possible violations of sequence point rules" msgstr "" -#: options.c:329 +#: /home/jsm28/src/gcc-build/gcc/options.c:1243 msgid "Warn when one local variable shadows another" msgstr "" -#: options.c:332 +#: /home/jsm28/src/gcc-build/gcc/options.c:1246 msgid "Warn about signed-unsigned comparisons" msgstr "" -#: options.c:335 +#: /home/jsm28/src/gcc-build/gcc/options.c:1249 msgid "Warn when overload promotes from unsigned to signed" msgstr "" -#: options.c:338 -#: options.c:341 +#: /home/jsm28/src/gcc-build/gcc/options.c:1252 +#: /home/jsm28/src/gcc-build/gcc/options.c:1255 msgid "Warn about code which might break strict aliasing rules" msgstr "" -#: options.c:344 +#: /home/jsm28/src/gcc-build/gcc/options.c:1258 msgid "Warn about unprototyped function declarations" msgstr "" -#: options.c:347 +#: /home/jsm28/src/gcc-build/gcc/options.c:1261 msgid "Warn about \"suspicious\" constructs" msgstr "" -#: options.c:350 +#: /home/jsm28/src/gcc-build/gcc/options.c:1264 msgid "Warn about enumerated switches, with no default, missing a case" msgstr "" -#: options.c:353 +#: /home/jsm28/src/gcc-build/gcc/options.c:1267 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "" -#: options.c:356 +#: /home/jsm28/src/gcc-build/gcc/options.c:1270 msgid "Warn about all enumerated switches missing a specific case" msgstr "" -#: options.c:359 +#: /home/jsm28/src/gcc-build/gcc/options.c:1273 msgid "Warn when synthesis behavior differs from Cfront" msgstr "" -#: options.c:362 +#: /home/jsm28/src/gcc-build/gcc/options.c:1276 msgid "Do not suppress warnings from system headers" msgstr "" -#: options.c:365 +#: /home/jsm28/src/gcc-build/gcc/options.c:1279 msgid "Warn about features not present in traditional C" msgstr "" -#: options.c:368 +#: /home/jsm28/src/gcc-build/gcc/options.c:1282 msgid "" "Warn if trigraphs are encountered that might affect the meaning of the " "program" msgstr "" -#: options.c:374 +#: /home/jsm28/src/gcc-build/gcc/options.c:1285 +msgid "Warn about @selector()s without previously declared methods" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1288 msgid "Warn if an undefined macro is used in an #if directive" msgstr "" -#: options.c:377 +#: /home/jsm28/src/gcc-build/gcc/options.c:1291 +msgid "Warn about underflow of numerical constant expressions" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1294 msgid "Warn about uninitialized automatic variables" msgstr "" -#: options.c:380 +#: /home/jsm28/src/gcc-build/gcc/options.c:1297 msgid "Warn about unrecognized pragmas" msgstr "" -#: options.c:383 +#: /home/jsm28/src/gcc-build/gcc/options.c:1300 msgid "Warn about code that will never be executed" msgstr "" -#: options.c:386 +#: /home/jsm28/src/gcc-build/gcc/options.c:1303 msgid "Enable all -Wunused- warnings" msgstr "" -#: options.c:389 +#: /home/jsm28/src/gcc-build/gcc/options.c:1306 msgid "Warn when a function is unused" msgstr "" -#: options.c:392 -#: options.c:395 +#: /home/jsm28/src/gcc-build/gcc/options.c:1309 +#: /home/jsm28/src/gcc-build/gcc/options.c:1312 msgid "Warn when a label is unused" msgstr "" -#: options.c:398 +#: /home/jsm28/src/gcc-build/gcc/options.c:1315 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: options.c:401 +#: /home/jsm28/src/gcc-build/gcc/options.c:1318 msgid "Warn when a function parameter is unused" msgstr "" -#: options.c:404 +#: /home/jsm28/src/gcc-build/gcc/options.c:1321 msgid "Warn when an expression value is unused" msgstr "" -#: options.c:407 +#: /home/jsm28/src/gcc-build/gcc/options.c:1324 msgid "Warn when a variable is unused" msgstr "" -#: options.c:410 +#: /home/jsm28/src/gcc-build/gcc/options.c:1327 msgid "Do not warn about using variadic macros when -pedantic" msgstr "" -#: options.c:413 +#: /home/jsm28/src/gcc-build/gcc/options.c:1330 msgid "Give strings the type \"array of char\"" msgstr "" -#: options.c:416 +#: /home/jsm28/src/gcc-build/gcc/options.c:1333 msgid "" "A synonym for -std=c89. In a future version of GCC it will become " "synonymous with -std=c99 instead" msgstr "" -#: options.c:419 +#: /home/jsm28/src/gcc-build/gcc/options.c:1336 msgid "-aux-info \tEmit declaration information into " msgstr "" -#: options.c:431 +#: /home/jsm28/src/gcc-build/gcc/options.c:1348 msgid "-d\tEnable dumps from specific passes of the compiler" msgstr "" -#: options.c:434 +#: /home/jsm28/src/gcc-build/gcc/options.c:1351 msgid "Set the default real and integer kinds to double precision" msgstr "" -#: options.c:437 +#: /home/jsm28/src/gcc-build/gcc/options.c:1354 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "" -#: options.c:440 +#: /home/jsm28/src/gcc-build/gcc/options.c:1357 msgid "--CLASSPATH\tDeprecated; use --classpath instead" msgstr "" -#: options.c:452 +#: /home/jsm28/src/gcc-build/gcc/options.c:1360 +msgid "Generate position-independent code if possible (large mode)" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1363 +msgid "" +"Generate position-independent code for executables if possible (large mode)" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1369 msgid "Enforce class member access control semantics" msgstr "" -#: options.c:455 +#: /home/jsm28/src/gcc-build/gcc/options.c:1372 msgid "Align the start of functions" msgstr "" -#: options.c:461 +#: /home/jsm28/src/gcc-build/gcc/options.c:1378 msgid "Align labels which are only reached by jumping" msgstr "" -#: options.c:467 +#: /home/jsm28/src/gcc-build/gcc/options.c:1384 msgid "Align all labels" msgstr "" -#: options.c:473 +#: /home/jsm28/src/gcc-build/gcc/options.c:1390 msgid "Align the start of loops" msgstr "" -#: options.c:482 +#: /home/jsm28/src/gcc-build/gcc/options.c:1399 msgid "Change when template instances are emitted" msgstr "" -#: options.c:485 +#: /home/jsm28/src/gcc-build/gcc/options.c:1402 msgid "Specify that arguments may alias each other and globals" msgstr "" -#: options.c:488 +#: /home/jsm28/src/gcc-build/gcc/options.c:1405 msgid "Assume arguments may alias globals but not each other" msgstr "" -#: options.c:491 +#: /home/jsm28/src/gcc-build/gcc/options.c:1408 msgid "Assume arguments alias neither each other nor globals" msgstr "" -#: options.c:494 +#: /home/jsm28/src/gcc-build/gcc/options.c:1411 msgid "Recognize the \"asm\" keyword" msgstr "" -#: options.c:506 +#: /home/jsm28/src/gcc-build/gcc/options.c:1414 +msgid "Permit the use of the assert keyword" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1423 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "" -#: options.c:509 +#: /home/jsm28/src/gcc-build/gcc/options.c:1426 msgid "--bootclasspath=\tReplace system path" msgstr "" -#: options.c:512 +#: /home/jsm28/src/gcc-build/gcc/options.c:1429 msgid "Generate code to check bounds before indexing arrays" msgstr "" -#: options.c:515 +#: /home/jsm28/src/gcc-build/gcc/options.c:1432 msgid "Replace add, compare, branch with branch on count register" msgstr "" -#: options.c:518 +#: /home/jsm28/src/gcc-build/gcc/options.c:1435 msgid "Use profiling information for branch probabilities" msgstr "" -#: options.c:521 +#: /home/jsm28/src/gcc-build/gcc/options.c:1438 msgid "" "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: options.c:524 +#: /home/jsm28/src/gcc-build/gcc/options.c:1441 msgid "" "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: options.c:527 +#: /home/jsm28/src/gcc-build/gcc/options.c:1444 msgid "" "Restrict target load migration not to re-use registers in any basic block" msgstr "" -#: options.c:530 +#: /home/jsm28/src/gcc-build/gcc/options.c:1447 msgid "Recognize built-in functions" msgstr "" -#: options.c:536 +#: /home/jsm28/src/gcc-build/gcc/options.c:1453 msgid "" "-fcall-saved-\tMark as being preserved across functions" msgstr "" -#: options.c:539 +#: /home/jsm28/src/gcc-build/gcc/options.c:1456 msgid "" "-fcall-used-\tMark as being corrupted by function calls" msgstr "" -#: options.c:542 +#: /home/jsm28/src/gcc-build/gcc/options.c:1459 msgid "Save registers around function calls" msgstr "" -#: options.c:545 +#: /home/jsm28/src/gcc-build/gcc/options.c:1462 msgid "Check the return value of new" msgstr "" -#: options.c:551 +#: /home/jsm28/src/gcc-build/gcc/options.c:1465 +msgid "Generate checks for references to NULL" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1468 msgid "--classpath=\tSet class path" msgstr "" -#: options.c:554 +#: /home/jsm28/src/gcc-build/gcc/options.c:1471 msgid "Do not put uninitialized globals in the common section" msgstr "" -#: options.c:560 +#: /home/jsm28/src/gcc-build/gcc/options.c:1477 msgid "Allow the arguments of the '?' operator to have different types" msgstr "" -#: options.c:563 +#: /home/jsm28/src/gcc-build/gcc/options.c:1480 msgid "Reduce the size of object files" msgstr "" -#: options.c:566 +#: /home/jsm28/src/gcc-build/gcc/options.c:1483 msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "" -#: options.c:569 +#: /home/jsm28/src/gcc-build/gcc/options.c:1486 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: options.c:572 +#: /home/jsm28/src/gcc-build/gcc/options.c:1489 msgid "Perform a register copy-propagation optimization pass" msgstr "" -#: options.c:575 +#: /home/jsm28/src/gcc-build/gcc/options.c:1492 msgid "Perform cross-jumping optimization" msgstr "" -#: options.c:578 +#: /home/jsm28/src/gcc-build/gcc/options.c:1495 msgid "When running CSE, follow jumps to their targets" msgstr "" -#: options.c:581 +#: /home/jsm28/src/gcc-build/gcc/options.c:1498 msgid "When running CSE, follow conditional jumps" msgstr "" -#: options.c:584 +#: /home/jsm28/src/gcc-build/gcc/options.c:1501 msgid "Place data items into their own section" msgstr "" -#: options.c:587 +#: /home/jsm28/src/gcc-build/gcc/options.c:1504 msgid "Inline member functions by default" msgstr "" -#: options.c:590 +#: /home/jsm28/src/gcc-build/gcc/options.c:1507 msgid "Defer popping functions args from stack until later" msgstr "" -#: options.c:593 +#: /home/jsm28/src/gcc-build/gcc/options.c:1510 msgid "Attempt to fill delay slots of branch instructions" msgstr "" -#: options.c:596 +#: /home/jsm28/src/gcc-build/gcc/options.c:1513 msgid "Delete useless null pointer checks" msgstr "" -#: options.c:599 +#: /home/jsm28/src/gcc-build/gcc/options.c:1516 msgid "" "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source " "location at the beginning of line-wrapped diagnostics" msgstr "" -#: options.c:608 +#: /home/jsm28/src/gcc-build/gcc/options.c:1525 msgid "Allow dollar signs in entity names" msgstr "" -#: options.c:611 +#: /home/jsm28/src/gcc-build/gcc/options.c:1528 msgid "Permit '$' as an identifier character" msgstr "" -#: options.c:614 +#: /home/jsm28/src/gcc-build/gcc/options.c:1531 msgid "-fdump-\tDump various compiler internals to a file" msgstr "" -#: options.c:617 +#: /home/jsm28/src/gcc-build/gcc/options.c:1534 msgid "Display the code tree after parsing." msgstr "" -#: options.c:620 +#: /home/jsm28/src/gcc-build/gcc/options.c:1537 msgid "" "Suppress output of instruction numbers and line number notes in debugging " "dumps" msgstr "" -#: options.c:626 +#: /home/jsm28/src/gcc-build/gcc/options.c:1543 msgid "Perform DWARF2 duplicate elimination" msgstr "" -#: options.c:629 -#: options.c:632 +#: /home/jsm28/src/gcc-build/gcc/options.c:1546 +#: /home/jsm28/src/gcc-build/gcc/options.c:1549 msgid "Perform unused type elimination in debug info" msgstr "" -#: options.c:647 +#: /home/jsm28/src/gcc-build/gcc/options.c:1552 +msgid "Output a class file" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1555 +msgid "Alias for -femit-class-file" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1564 msgid "" "--encoding=\tChoose input encoding (defaults from your locale)" msgstr "" -#: options.c:650 +#: /home/jsm28/src/gcc-build/gcc/options.c:1567 msgid "Generate code to check exception specifications" msgstr "" -#: options.c:656 +#: /home/jsm28/src/gcc-build/gcc/options.c:1573 msgid "Enable exception handling" msgstr "" -#: options.c:659 +#: /home/jsm28/src/gcc-build/gcc/options.c:1576 msgid "" "-fexec-charset=\tConvert all strings and character constants to " "character set " msgstr "" -#: options.c:662 +#: /home/jsm28/src/gcc-build/gcc/options.c:1579 msgid "Perform a number of minor, expensive optimizations" msgstr "" -#: options.c:677 +#: /home/jsm28/src/gcc-build/gcc/options.c:1591 +msgid "Input file is a file with a list of filenames to compile" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1594 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: options.c:680 +#: /home/jsm28/src/gcc-build/gcc/options.c:1597 msgid "" "-ffixed-\tMark as being unavailable to the compiler" msgstr "" -#: options.c:683 +#: /home/jsm28/src/gcc-build/gcc/options.c:1600 msgid "Assume that the source file is fixed form" msgstr "" -#: options.c:689 -msgid "Use 132 character line width in fixed mode" +#: /home/jsm28/src/gcc-build/gcc/options.c:1603 +msgid "-ffixed-line-length-\t\tUse n as character line width in fixed mode" msgstr "" -#: options.c:692 -msgid "Use 80 character line width in fixed mode" +#: /home/jsm28/src/gcc-build/gcc/options.c:1606 +msgid "Allow arbitrary character line width in fixed mode" msgstr "" -#: options.c:695 -msgid "Do not store floats in registers" +#: /home/jsm28/src/gcc-build/gcc/options.c:1609 +msgid "Don't allocate floats and doubles in extended-precision registers" msgstr "" -#: options.c:698 +#: /home/jsm28/src/gcc-build/gcc/options.c:1612 msgid "Scope of for-init-statement variables is local to the loop" msgstr "" -#: options.c:701 +#: /home/jsm28/src/gcc-build/gcc/options.c:1615 msgid "Copy memory address constants into registers before use" msgstr "" -#: options.c:704 +#: /home/jsm28/src/gcc-build/gcc/options.c:1618 msgid "Always check for non gcj generated classes archives" msgstr "" -#: options.c:707 +#: /home/jsm28/src/gcc-build/gcc/options.c:1621 msgid "Copy memory operands into registers before use" msgstr "" -#: options.c:710 +#: /home/jsm28/src/gcc-build/gcc/options.c:1624 msgid "Assume that the source file is free form" msgstr "" -#: options.c:713 +#: /home/jsm28/src/gcc-build/gcc/options.c:1627 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "" -#: options.c:716 +#: /home/jsm28/src/gcc-build/gcc/options.c:1630 msgid "Allow function addresses to be held in registers" msgstr "" -#: options.c:719 +#: /home/jsm28/src/gcc-build/gcc/options.c:1633 msgid "Place each function into its own section" msgstr "" -#: options.c:722 +#: /home/jsm28/src/gcc-build/gcc/options.c:1636 msgid "Perform global common subexpression elimination" msgstr "" -#: options.c:725 +#: /home/jsm28/src/gcc-build/gcc/options.c:1639 msgid "" "Perform global common subexpression elimination after register allocation" msgstr "" -#: options.c:728 +#: /home/jsm28/src/gcc-build/gcc/options.c:1642 msgid "" "Perform redundant load after store elimination in global common subexpression" msgstr "" -#: options.c:731 +#: /home/jsm28/src/gcc-build/gcc/options.c:1645 msgid "" "Perform enhanced load motion during global common subexpression elimination" msgstr "" -#: options.c:734 +#: /home/jsm28/src/gcc-build/gcc/options.c:1648 msgid "Perform store motion after global common subexpression elimination" msgstr "" -#: options.c:737 +#: /home/jsm28/src/gcc-build/gcc/options.c:1651 msgid "Recognize GNU-defined keywords" msgstr "" -#: options.c:740 +#: /home/jsm28/src/gcc-build/gcc/options.c:1654 msgid "Generate code for GNU runtime environment" msgstr "" -#: options.c:743 +#: /home/jsm28/src/gcc-build/gcc/options.c:1657 msgid "Enable guessing of branch probabilities" msgstr "" -#: options.c:758 +#: /home/jsm28/src/gcc-build/gcc/options.c:1666 +msgid "" +"Assume the runtime uses a hash table to map an object to its synchronization " +"structure" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1672 msgid "Assume normal C execution environment" msgstr "" -#: options.c:761 +#: /home/jsm28/src/gcc-build/gcc/options.c:1675 msgid "Enable support for huge objects" msgstr "" -#: options.c:764 +#: /home/jsm28/src/gcc-build/gcc/options.c:1678 msgid "Process #ident directives" msgstr "" -#: options.c:767 +#: /home/jsm28/src/gcc-build/gcc/options.c:1681 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: options.c:770 +#: /home/jsm28/src/gcc-build/gcc/options.c:1684 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "" -#: options.c:773 +#: /home/jsm28/src/gcc-build/gcc/options.c:1687 msgid "Export functions even if they can be inlined" msgstr "" -#: options.c:776 +#: /home/jsm28/src/gcc-build/gcc/options.c:1690 msgid "Emit implicit instantiations of inline templates" msgstr "" -#: options.c:779 +#: /home/jsm28/src/gcc-build/gcc/options.c:1693 msgid "" "Specify that no implicit typing is allowed, unless overridden by explicit " "IMPLICIT statements" msgstr "" -#: options.c:782 +#: /home/jsm28/src/gcc-build/gcc/options.c:1696 msgid "Emit implicit instantiations of templates" msgstr "" -#: options.c:785 +#: /home/jsm28/src/gcc-build/gcc/options.c:1699 msgid "Use offset tables for virtual method calls" msgstr "" -#: options.c:788 +#: /home/jsm28/src/gcc-build/gcc/options.c:1702 msgid "Do not generate .size directives" msgstr "" -#: options.c:791 +#: /home/jsm28/src/gcc-build/gcc/options.c:1705 msgid "Pay attention to the \"inline\" keyword" msgstr "" -#: options.c:800 +#: /home/jsm28/src/gcc-build/gcc/options.c:1714 msgid "" "-finline-limit=\tLimit the size of inlined functions to " msgstr "" -#: options.c:803 +#: /home/jsm28/src/gcc-build/gcc/options.c:1717 msgid "" "-finput-charset= Specify the default character set for source " "files." msgstr "" -#: options.c:806 +#: /home/jsm28/src/gcc-build/gcc/options.c:1720 msgid "Instrument function entry and exit with profiling calls" msgstr "" -#: options.c:809 +#: /home/jsm28/src/gcc-build/gcc/options.c:1723 +msgid "Optimize induction variables on trees" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1726 msgid "Assume native functions are implemented using JNI" msgstr "" -#: options.c:812 +#: /home/jsm28/src/gcc-build/gcc/options.c:1729 msgid "Generate code for functions even if they are fully inlined" msgstr "" -#: options.c:815 +#: /home/jsm28/src/gcc-build/gcc/options.c:1732 msgid "Emit static const variables even if they are not used" msgstr "" -#: options.c:821 +#: /home/jsm28/src/gcc-build/gcc/options.c:1738 msgid "Give external symbols a leading underscore" msgstr "" -#: options.c:824 +#: /home/jsm28/src/gcc-build/gcc/options.c:1741 msgid "Perform loop optimizations" msgstr "" -#: options.c:827 +#: /home/jsm28/src/gcc-build/gcc/options.c:1744 +msgid "Perform loop optimizations using the new loop optimizer" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1747 msgid "Set errno after built-in math functions" msgstr "" -#: options.c:830 +#: /home/jsm28/src/gcc-build/gcc/options.c:1750 msgid "-fmax-identifier-length=\tMaximum identifier length." msgstr "" -#: options.c:833 +#: /home/jsm28/src/gcc-build/gcc/options.c:1753 msgid "" "-fmax-stack-var-size=\tSize in bytes of the largest array that will be " "put on the stack" msgstr "" -#: options.c:836 +#: /home/jsm28/src/gcc-build/gcc/options.c:1756 msgid "Report on permanent memory allocation" msgstr "" -#: options.c:839 +#: /home/jsm28/src/gcc-build/gcc/options.c:1759 msgid "Attempt to merge identical constants and constant variables" msgstr "" -#: options.c:842 +#: /home/jsm28/src/gcc-build/gcc/options.c:1762 msgid "Attempt to merge identical constants across compilation units" msgstr "" -#: options.c:845 +#: /home/jsm28/src/gcc-build/gcc/options.c:1765 msgid "" "-fmessage-length=\tLimit diagnostics to characters per " "line. 0 suppresses line-wrapping" msgstr "" -#: options.c:848 +#: /home/jsm28/src/gcc-build/gcc/options.c:1768 msgid "Set default accessibility of module entities to PRIVATE" msgstr "" -#: options.c:851 -msgid "Force all loop invariant computations out of loops" +#: /home/jsm28/src/gcc-build/gcc/options.c:1771 +msgid "Perform SMS based modulo scheduling before the first scheduling pass" msgstr "" -#: options.c:854 +#: /home/jsm28/src/gcc-build/gcc/options.c:1774 +msgid "Move loop invariant computations out of loops" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1777 msgid "Don't warn about uses of Microsoft extensions" msgstr "" -#: options.c:857 +#: /home/jsm28/src/gcc-build/gcc/options.c:1780 msgid "" "Add mudflap bounds-checking instrumentation for single-threaded program." msgstr "" -#: options.c:860 +#: /home/jsm28/src/gcc-build/gcc/options.c:1783 msgid "Ignore read operations when inserting mudflap instrumentation." msgstr "" -#: options.c:863 +#: /home/jsm28/src/gcc-build/gcc/options.c:1786 msgid "Add mudflap bounds-checking instrumentation for multi-threaded program." msgstr "" -#: options.c:872 +#: /home/jsm28/src/gcc-build/gcc/options.c:1795 msgid "Use graph-coloring register allocation" msgstr "" -#: options.c:875 +#: /home/jsm28/src/gcc-build/gcc/options.c:1798 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "" -#: options.c:878 +#: /home/jsm28/src/gcc-build/gcc/options.c:1801 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: options.c:881 +#: /home/jsm28/src/gcc-build/gcc/options.c:1804 msgid "Don't generate code, just do syntax and semantics checking" msgstr "" -#: options.c:884 +#: /home/jsm28/src/gcc-build/gcc/options.c:1807 msgid "Support synchronous non-call exceptions" msgstr "" -#: options.c:893 +#: /home/jsm28/src/gcc-build/gcc/options.c:1816 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: options.c:896 -#: options.c:1202 -msgid "Perform loop unrolling for all loops" -msgstr "" - -#: options.c:899 -#: options.c:1205 -msgid "Perform loop unrolling when iteration count is known" +#: /home/jsm28/src/gcc-build/gcc/options.c:1819 +msgid "Enable Objective-C setjmp exception handling runtime" msgstr "" -#: options.c:902 +#: /home/jsm28/src/gcc-build/gcc/options.c:1822 msgid "When possible do not generate stack frames" msgstr "" -#: options.c:905 +#: /home/jsm28/src/gcc-build/gcc/options.c:1825 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: options.c:908 +#: /home/jsm28/src/gcc-build/gcc/options.c:1828 msgid "Do the full register move optimization pass" msgstr "" -#: options.c:911 +#: /home/jsm28/src/gcc-build/gcc/options.c:1831 msgid "Optimize sibling and tail recursive calls" msgstr "" -#: options.c:914 +#: /home/jsm28/src/gcc-build/gcc/options.c:1834 msgid "Enable optimization of static class initialization code" msgstr "" -#: options.c:917 +#: /home/jsm28/src/gcc-build/gcc/options.c:1837 msgid "Enable optional diagnostics" msgstr "" -#: options.c:923 +#: /home/jsm28/src/gcc-build/gcc/options.c:1843 msgid "Try to layout derived types as compact as possible" msgstr "" -#: options.c:926 +#: /home/jsm28/src/gcc-build/gcc/options.c:1846 msgid "Pack structure members together without holes" msgstr "" -#: options.c:929 +#: /home/jsm28/src/gcc-build/gcc/options.c:1849 +msgid "-fpack-struct=\tSet initial maximum structure member alignment" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1852 msgid "Return small aggregates in memory, not registers" msgstr "" -#: options.c:935 +#: /home/jsm28/src/gcc-build/gcc/options.c:1858 +msgid "Look for and use PCH files even when preprocessing" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1861 msgid "Perform loop peeling" msgstr "" -#: options.c:938 +#: /home/jsm28/src/gcc-build/gcc/options.c:1864 msgid "Enable machine specific peephole optimizations" msgstr "" -#: options.c:941 +#: /home/jsm28/src/gcc-build/gcc/options.c:1867 msgid "Enable an RTL peephole pass before sched2" msgstr "" -#: options.c:944 +#: /home/jsm28/src/gcc-build/gcc/options.c:1870 msgid "Downgrade conformance errors to warnings" msgstr "" -#: options.c:947 -msgid "Generate position-independent code if possible" +#: /home/jsm28/src/gcc-build/gcc/options.c:1873 +msgid "Generate position-independent code if possible (small mode)" msgstr "" -#: options.c:950 -msgid "Generate position-independent code for executables if possible" +#: /home/jsm28/src/gcc-build/gcc/options.c:1876 +msgid "" +"Generate position-independent code for executables if possible (small mode)" msgstr "" -#: options.c:953 +#: /home/jsm28/src/gcc-build/gcc/options.c:1879 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "" -#: options.c:956 +#: /home/jsm28/src/gcc-build/gcc/options.c:1882 msgid "Treat the input file as already preprocessed" msgstr "" -#: options.c:959 +#: /home/jsm28/src/gcc-build/gcc/options.c:1885 msgid "Enable basic program profiling code" msgstr "" -#: options.c:962 +#: /home/jsm28/src/gcc-build/gcc/options.c:1888 msgid "Insert arc-based program profiling code" msgstr "" -#: options.c:965 +#: /home/jsm28/src/gcc-build/gcc/options.c:1891 msgid "" "Enable common options for generating profile info for profile feedback " "directed optimizations" msgstr "" -#: options.c:968 +#: /home/jsm28/src/gcc-build/gcc/options.c:1894 msgid "" "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: options.c:971 +#: /home/jsm28/src/gcc-build/gcc/options.c:1897 msgid "Insert code to profile values of expressions" msgstr "" -#: options.c:977 +#: /home/jsm28/src/gcc-build/gcc/options.c:1903 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: options.c:980 -msgid "Strength reduce all loop general induction variables" -msgstr "" - -#: options.c:983 +#: /home/jsm28/src/gcc-build/gcc/options.c:1906 msgid "Return small aggregates in registers" msgstr "" -#: options.c:986 +#: /home/jsm28/src/gcc-build/gcc/options.c:1909 msgid "Enables a register move optimization" msgstr "" -#: options.c:989 +#: /home/jsm28/src/gcc-build/gcc/options.c:1912 msgid "Perform a register renaming optimization pass" msgstr "" -#: options.c:992 +#: /home/jsm28/src/gcc-build/gcc/options.c:1915 msgid "Reorder basic blocks to improve code placement" msgstr "" -#: options.c:995 +#: /home/jsm28/src/gcc-build/gcc/options.c:1918 msgid "Reorder basic blocks and partition into hot and cold sections" msgstr "" -#: options.c:998 +#: /home/jsm28/src/gcc-build/gcc/options.c:1921 msgid "Reorder functions to improve code placement" msgstr "" -#: options.c:1001 +#: /home/jsm28/src/gcc-build/gcc/options.c:1924 msgid "Copy array sections into a contiguous block on procedure entry" msgstr "" -#: options.c:1004 +#: /home/jsm28/src/gcc-build/gcc/options.c:1927 msgid "" "Used in Fix-and-Continue mode to indicate that object files may be swapped " "in at runtime" msgstr "" -#: options.c:1007 +#: /home/jsm28/src/gcc-build/gcc/options.c:1930 msgid "Enable automatic template instantiation" msgstr "" -#: options.c:1010 +#: /home/jsm28/src/gcc-build/gcc/options.c:1933 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "" -#: options.c:1013 +#: /home/jsm28/src/gcc-build/gcc/options.c:1936 msgid "Run the loop optimizer twice" msgstr "" -#: options.c:1016 +#: /home/jsm28/src/gcc-build/gcc/options.c:1939 +msgid "" +"Enable/Disable the traditional scheduling in loops that already passed " +"modulo scheduling" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:1942 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: options.c:1019 +#: /home/jsm28/src/gcc-build/gcc/options.c:1945 msgid "Generate run time type descriptor information" msgstr "" -#: options.c:1022 +#: /home/jsm28/src/gcc-build/gcc/options.c:1948 msgid "Enable scheduling across basic blocks" msgstr "" -#: options.c:1025 +#: /home/jsm28/src/gcc-build/gcc/options.c:1951 msgid "Allow speculative motion of non-loads" msgstr "" -#: options.c:1028 +#: /home/jsm28/src/gcc-build/gcc/options.c:1954 msgid "Allow speculative motion of some loads" msgstr "" -#: options.c:1031 +#: /home/jsm28/src/gcc-build/gcc/options.c:1957 msgid "Allow speculative motion of more loads" msgstr "" -#: options.c:1034 +#: /home/jsm28/src/gcc-build/gcc/options.c:1960 msgid "Allow premature scheduling of queued insns" msgstr "" -#: options.c:1037 +#: /home/jsm28/src/gcc-build/gcc/options.c:1963 msgid "" "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: options.c:1040 +#: /home/jsm28/src/gcc-build/gcc/options.c:1966 msgid "" "-fsched-stalled-insns-dep= Set dependence distance checking in " "premature scheduling of queued insns" msgstr "" -#: options.c:1043 +#: /home/jsm28/src/gcc-build/gcc/options.c:1969 msgid "" "-fsched-stalled-insns= Set number of queued insns that can be " "prematurely scheduled" msgstr "" -#: options.c:1046 +#: /home/jsm28/src/gcc-build/gcc/options.c:1972 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "" -#: options.c:1049 +#: /home/jsm28/src/gcc-build/gcc/options.c:1975 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: options.c:1052 +#: /home/jsm28/src/gcc-build/gcc/options.c:1978 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: options.c:1055 +#: /home/jsm28/src/gcc-build/gcc/options.c:1981 msgid "Reschedule instructions before register allocation" msgstr "" -#: options.c:1058 +#: /home/jsm28/src/gcc-build/gcc/options.c:1984 msgid "Reschedule instructions after register allocation" msgstr "" -#: options.c:1061 +#: /home/jsm28/src/gcc-build/gcc/options.c:1987 msgid "Append a second underscore if the name already contains an underscore" msgstr "" -#: options.c:1064 +#: /home/jsm28/src/gcc-build/gcc/options.c:1990 msgid "Mark data as shared rather than private" msgstr "" -#: options.c:1067 +#: /home/jsm28/src/gcc-build/gcc/options.c:1993 msgid "Use the same size for double as for float" msgstr "" -#: options.c:1070 +#: /home/jsm28/src/gcc-build/gcc/options.c:1996 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: options.c:1073 +#: /home/jsm28/src/gcc-build/gcc/options.c:1999 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "" -#: options.c:1079 +#: /home/jsm28/src/gcc-build/gcc/options.c:2005 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: options.c:1082 +#: /home/jsm28/src/gcc-build/gcc/options.c:2008 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: options.c:1085 +#: /home/jsm28/src/gcc-build/gcc/options.c:2011 msgid "Make \"char\" signed by default" msgstr "" -#: options.c:1088 +#: /home/jsm28/src/gcc-build/gcc/options.c:2014 msgid "Convert floating point constants to single precision constants" msgstr "" -#: options.c:1094 +#: /home/jsm28/src/gcc-build/gcc/options.c:2017 +msgid "Use value profiling for speculative prefetching" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2020 +msgid "Split lifetimes of induction variables when loops are unrolled." +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2026 msgid "Insert stack checking code into the program" msgstr "" -#: options.c:1100 +#: /home/jsm28/src/gcc-build/gcc/options.c:2032 msgid "" "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: options.c:1103 +#: /home/jsm28/src/gcc-build/gcc/options.c:2035 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: options.c:1106 +#: /home/jsm28/src/gcc-build/gcc/options.c:2038 msgid "Display statistics accumulated during compilation" msgstr "" -#: options.c:1109 +#: /home/jsm28/src/gcc-build/gcc/options.c:2041 msgid "Enable assignability checks for stores into object arrays" msgstr "" -#: options.c:1112 +#: /home/jsm28/src/gcc-build/gcc/options.c:2044 msgid "Perform strength reduction optimizations" msgstr "" -#: options.c:1115 +#: /home/jsm28/src/gcc-build/gcc/options.c:2047 msgid "Assume strict aliasing rules apply" msgstr "" -#: options.c:1121 +#: /home/jsm28/src/gcc-build/gcc/options.c:2053 msgid "Check for syntax errors, then stop" msgstr "" -#: options.c:1124 +#: /home/jsm28/src/gcc-build/gcc/options.c:2056 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: options.c:1127 +#: /home/jsm28/src/gcc-build/gcc/options.c:2059 msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "" -#: options.c:1130 +#: /home/jsm28/src/gcc-build/gcc/options.c:2062 msgid "Create data files needed by \"gcov\"" msgstr "" -#: options.c:1136 +#: /home/jsm28/src/gcc-build/gcc/options.c:2068 msgid "Perform jump threading optimizations" msgstr "" -#: options.c:1139 +#: /home/jsm28/src/gcc-build/gcc/options.c:2071 +msgid "" +"-fno-threadsafe-statics\tDo not generate thread-safe code for initializing " +"local statics." +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2074 msgid "Report the time taken by each compiler pass" msgstr "" -#: options.c:1142 +#: /home/jsm28/src/gcc-build/gcc/options.c:2077 msgid "" "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the " "default thread-local storage code generation model" msgstr "" -#: options.c:1145 +#: /home/jsm28/src/gcc-build/gcc/options.c:2080 msgid "Perform superblock formation via tail duplication" msgstr "" -#: options.c:1148 +#: /home/jsm28/src/gcc-build/gcc/options.c:2083 msgid "Assume floating-point operations can trap" msgstr "" -#: options.c:1151 +#: /home/jsm28/src/gcc-build/gcc/options.c:2086 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "" -#: options.c:1154 +#: /home/jsm28/src/gcc-build/gcc/options.c:2089 msgid "Use tree-ssa based implementation of profiling" msgstr "" -#: options.c:1157 +#: /home/jsm28/src/gcc-build/gcc/options.c:2092 msgid "Enable SSA-CCP optimization on trees" msgstr "" -#: options.c:1160 +#: /home/jsm28/src/gcc-build/gcc/options.c:2095 msgid "Enable loop header copying on trees" msgstr "" -#: options.c:1163 +#: /home/jsm28/src/gcc-build/gcc/options.c:2098 msgid "Coalesce memory temporaries in the SSA->normal pass" msgstr "" -#: options.c:1166 +#: /home/jsm28/src/gcc-build/gcc/options.c:2101 msgid "Replace SSA temporaries with better names in copies." msgstr "" -#: options.c:1169 +#: /home/jsm28/src/gcc-build/gcc/options.c:2104 msgid "Enable SSA dead code elimination optimization on trees" msgstr "" -#: options.c:1172 +#: /home/jsm28/src/gcc-build/gcc/options.c:2107 msgid "Enable dominator optimizations" msgstr "" -#: options.c:1175 +#: /home/jsm28/src/gcc-build/gcc/options.c:2110 msgid "Enable dead store elimination" msgstr "" -#: options.c:1178 -msgid "Enable loop optimizations on trees" +#: /home/jsm28/src/gcc-build/gcc/options.c:2113 +msgid "Enable Full Redundancy Elimination (FRE) on trees" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2116 +msgid "Enable loop invariant motion on trees" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2119 +msgid "Create canonical induction variables in loops" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2122 +msgid "Enable linear loop transforms on trees" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2125 +msgid "Enable loop optimizations on tree level" msgstr "" -#: options.c:1181 +#: /home/jsm28/src/gcc-build/gcc/options.c:2128 msgid "Perform live range splitting during the SSA->normal pass." msgstr "" -#: options.c:1187 +#: /home/jsm28/src/gcc-build/gcc/options.c:2131 msgid "Enable SSA-PRE optimization on trees" msgstr "" -#: options.c:1190 +#: /home/jsm28/src/gcc-build/gcc/options.c:2134 msgid "Perform scalar replacement of aggregates" msgstr "" -#: options.c:1193 +#: /home/jsm28/src/gcc-build/gcc/options.c:2137 msgid "Replace temporary expressions in the SSA->normal pass" msgstr "" -#: options.c:1196 +#: /home/jsm28/src/gcc-build/gcc/options.c:2140 +msgid "Enable loop vectorization on trees" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2143 msgid "Append underscores to externally visible names" msgstr "" -#: options.c:1199 +#: /home/jsm28/src/gcc-build/gcc/options.c:2146 msgid "Compile whole compilation unit at a time" msgstr "" -#: options.c:1208 +#: /home/jsm28/src/gcc-build/gcc/options.c:2149 +msgid "Perform loop unrolling for all loops" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2152 +msgid "Perform loop unrolling when iteration count is known" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2155 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "" -#: options.c:1211 +#: /home/jsm28/src/gcc-build/gcc/options.c:2158 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: options.c:1214 +#: /home/jsm28/src/gcc-build/gcc/options.c:2161 msgid "Make \"char\" unsigned by default" msgstr "" -#: options.c:1217 +#: /home/jsm28/src/gcc-build/gcc/options.c:2164 msgid "Perform loop unswitching" msgstr "" -#: options.c:1220 +#: /home/jsm28/src/gcc-build/gcc/options.c:2167 msgid "Just generate unwind tables for exception handling" msgstr "" -#: options.c:1226 +#: /home/jsm28/src/gcc-build/gcc/options.c:2170 +msgid "Generate code for the Boehm GC" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2173 msgid "Use __cxa_atexit to register destructors" msgstr "" -#: options.c:1232 +#: /home/jsm28/src/gcc-build/gcc/options.c:2176 +msgid "Call a library routine to do integer divisions" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2179 msgid "Perform variable tracking" msgstr "" -#: options.c:1235 +#: /home/jsm28/src/gcc-build/gcc/options.c:2182 msgid "Add extra commentary to assembler output" msgstr "" -#: options.c:1238 +#: /home/jsm28/src/gcc-build/gcc/options.c:2185 +msgid "Marks all inlined methods as having hidden visibility" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2188 +msgid "" +"-fvisibility=[default|internal|hidden|protected]\tSet the default symbol " +"visibility" +msgstr "" + +#: /home/jsm28/src/gcc-build/gcc/options.c:2191 msgid "Use expression value profiles in optimizations" msgstr "" -#: options.c:1241 +#: /home/jsm28/src/gcc-build/gcc/options.c:2194 msgid "Discard unused virtual functions" msgstr "" -#: options.c:1244 +#: /home/jsm28/src/gcc-build/gcc/options.c:2197 msgid "Implement vtables using thunks" msgstr "" -#: options.c:1247 +#: /home/jsm28/src/gcc-build/gcc/options.c:2200 msgid "Emit common-like symbols as weak symbols" msgstr "" -#: options.c:1250 +#: /home/jsm28/src/gcc-build/gcc/options.c:2203 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: options.c:1253 +#: /home/jsm28/src/gcc-build/gcc/options.c:2206 msgid "" "-fwide-exec-charset=\tConvert all wide strings and character constants " "to character set " msgstr "" -#: options.c:1256 +#: /home/jsm28/src/gcc-build/gcc/options.c:2209 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: options.c:1259 +#: /home/jsm28/src/gcc-build/gcc/options.c:2212 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: options.c:1262 +#: /home/jsm28/src/gcc-build/gcc/options.c:2215 msgid "Emit cross referencing information" msgstr "" -#: options.c:1265 +#: /home/jsm28/src/gcc-build/gcc/options.c:2218 msgid "Put zero initialized data in the bss section" msgstr "" -#: options.c:1268 +#: /home/jsm28/src/gcc-build/gcc/options.c:2221 msgid "" "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: options.c:1271 +#: /home/jsm28/src/gcc-build/gcc/options.c:2224 msgid "Generate debug information in default format" msgstr "" -#: options.c:1274 +#: /home/jsm28/src/gcc-build/gcc/options.c:2227 msgid "Generate debug information in COFF format" msgstr "" -#: options.c:1277 +#: /home/jsm28/src/gcc-build/gcc/options.c:2230 msgid "Generate debug information in DWARF v2 format" msgstr "" -#: options.c:1280 +#: /home/jsm28/src/gcc-build/gcc/options.c:2233 msgid "Dump declarations to a .decl file" msgstr "" -#: options.c:1283 +#: /home/jsm28/src/gcc-build/gcc/options.c:2236 msgid "Generate debug information in default extended format" msgstr "" -#: options.c:1286 +#: /home/jsm28/src/gcc-build/gcc/options.c:2239 msgid "Generate debug information in STABS format" msgstr "" -#: options.c:1289 +#: /home/jsm28/src/gcc-build/gcc/options.c:2242 msgid "Generate debug information in extended STABS format" msgstr "" -#: options.c:1292 +#: /home/jsm28/src/gcc-build/gcc/options.c:2245 msgid "Generate debug information in VMS format" msgstr "" -#: options.c:1295 +#: /home/jsm28/src/gcc-build/gcc/options.c:2248 msgid "Generate debug information in XCOFF format" msgstr "" -#: options.c:1298 +#: /home/jsm28/src/gcc-build/gcc/options.c:2251 msgid "Generate debug information in extended XCOFF format" msgstr "" -#: options.c:1301 +#: /home/jsm28/src/gcc-build/gcc/options.c:2254 msgid "Set the default integer kind to double precision" msgstr "" -#: options.c:1304 +#: /home/jsm28/src/gcc-build/gcc/options.c:2257 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: options.c:1307 +#: /home/jsm28/src/gcc-build/gcc/options.c:2260 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: options.c:1310 +#: /home/jsm28/src/gcc-build/gcc/options.c:2263 msgid "-include \tInclude the contents of before other files" msgstr "" -#: options.c:1313 +#: /home/jsm28/src/gcc-build/gcc/options.c:2266 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: options.c:1316 +#: /home/jsm28/src/gcc-build/gcc/options.c:2269 msgid "-iquote \tAdd to the end of the quote include path" msgstr "" -#: options.c:1319 +#: /home/jsm28/src/gcc-build/gcc/options.c:2272 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: options.c:1322 +#: /home/jsm28/src/gcc-build/gcc/options.c:2275 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: options.c:1325 +#: /home/jsm28/src/gcc-build/gcc/options.c:2278 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: options.c:1328 +#: /home/jsm28/src/gcc-build/gcc/options.c:2281 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: options.c:1340 +#: /home/jsm28/src/gcc-build/gcc/options.c:2293 msgid "" "Do not search standard system include directories (those specified with -" "isystem will still be used)" msgstr "" -#: options.c:1343 +#: /home/jsm28/src/gcc-build/gcc/options.c:2296 msgid "Do not search standard system include directories for C++" msgstr "" -#: options.c:1346 +#: /home/jsm28/src/gcc-build/gcc/options.c:2299 msgid "-o \tPlace output into " msgstr "" -#: options.c:1349 +#: /home/jsm28/src/gcc-build/gcc/options.c:2302 msgid "Enable function profiling" msgstr "" -#: options.c:1352 +#: /home/jsm28/src/gcc-build/gcc/options.c:2305 msgid "Issue warnings needed for strict compliance to the standard" msgstr "" -#: options.c:1355 +#: /home/jsm28/src/gcc-build/gcc/options.c:2308 msgid "Like -pedantic but issue them as errors" msgstr "" -#: options.c:1358 +#: /home/jsm28/src/gcc-build/gcc/options.c:2311 msgid "Generate C header of platform-specific features" msgstr "" -#: options.c:1361 +#: /home/jsm28/src/gcc-build/gcc/options.c:2314 msgid "-qkind=\tSet the kind for a real with the 'q' exponent to 'n'" msgstr "" -#: options.c:1364 +#: /home/jsm28/src/gcc-build/gcc/options.c:2317 msgid "Do not display functions compiled or elapsed time" msgstr "" -#: options.c:1367 +#: /home/jsm28/src/gcc-build/gcc/options.c:2320 msgid "Set the default real kind to double precision" msgstr "" -#: options.c:1370 +#: /home/jsm28/src/gcc-build/gcc/options.c:2323 msgid "Remap file names when including files" msgstr "" -#: options.c:1373 +#: /home/jsm28/src/gcc-build/gcc/options.c:2326 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: options.c:1376 +#: /home/jsm28/src/gcc-build/gcc/options.c:2329 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: options.c:1379 +#: /home/jsm28/src/gcc-build/gcc/options.c:2332 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: options.c:1382 -#: options.c:1412 -#: options.c:1415 +#: /home/jsm28/src/gcc-build/gcc/options.c:2335 +#: /home/jsm28/src/gcc-build/gcc/options.c:2365 +#: /home/jsm28/src/gcc-build/gcc/options.c:2368 msgid "Deprecated in favor of -std=c99" msgstr "" -#: options.c:1385 +#: /home/jsm28/src/gcc-build/gcc/options.c:2338 msgid "Conform to the ISO Fortran 2003 standard." msgstr "" -#: options.c:1388 +#: /home/jsm28/src/gcc-build/gcc/options.c:2341 msgid "Conform to the ISO Fortran 95 standard." msgstr "" -#: options.c:1391 +#: /home/jsm28/src/gcc-build/gcc/options.c:2344 msgid "Conform nothing in particular." msgstr "" -#: options.c:1394 +#: /home/jsm28/src/gcc-build/gcc/options.c:2347 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: options.c:1397 +#: /home/jsm28/src/gcc-build/gcc/options.c:2350 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: options.c:1400 +#: /home/jsm28/src/gcc-build/gcc/options.c:2353 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: options.c:1403 +#: /home/jsm28/src/gcc-build/gcc/options.c:2356 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: options.c:1406 +#: /home/jsm28/src/gcc-build/gcc/options.c:2359 msgid "Deprecated in favor of -std=c89" msgstr "" -#: options.c:1409 +#: /home/jsm28/src/gcc-build/gcc/options.c:2362 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: options.c:1418 +#: /home/jsm28/src/gcc-build/gcc/options.c:2371 msgid "Enable traditional preprocessing" msgstr "" -#: options.c:1421 +#: /home/jsm28/src/gcc-build/gcc/options.c:2374 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: options.c:1424 +#: /home/jsm28/src/gcc-build/gcc/options.c:2377 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: options.c:1427 +#: /home/jsm28/src/gcc-build/gcc/options.c:2380 msgid "Enable verbose output" msgstr "" -#: options.c:1433 +#: /home/jsm28/src/gcc-build/gcc/options.c:2386 msgid "Suppress warnings" msgstr "" -#: treelang/lang-specs.h:52 -msgid "-pg or -p and -fomit-frame-pointer are incompatible" -msgstr "" - -#: config/rs6000/darwin.h:98 -msgid " conflicting code gen style switches are used" +#: config/mips/mips.h:1114 config/arc/arc.h:63 +msgid "may not use both -EB and -EL" msgstr "" -#: config/rs6000/sysv4.h:1089 -msgid "`-p' not supported; use `-pg' and gprof(1)" +#: config/mips/r3900.h:35 +msgid "-mhard-float not supported" msgstr "" -#: config/i386/sco5.h:191 -msgid "-pg not supported on this platform" +#: config/mips/r3900.h:37 +msgid "-msingle-float and -msoft-float cannot both be specified" msgstr "" -#: config/i386/sco5.h:192 -msgid "-p and -pp specified - pick one" +#: config/sh/sh.h:685 +msgid "SH2a does not support little-endian" msgstr "" -#: config/i386/sco5.h:266 -msgid "-G and -static are mutually exclusive" +#: config/arm/arm.h:151 +msgid "-msoft-float and -mhard_float may not be used together" msgstr "" -#: config/i386/cygwin.h:29 -msgid "mno-cygwin and mno-win32 are not compatible" +#: config/arm/arm.h:153 +msgid "-mbig-endian and -mlittle-endian may not be used together" msgstr "" -#: config/i386/cygwin.h:70 config/i386/mingw32.h:58 -msgid "shared and mdll are not compatible" +#: java/lang-specs.h:34 +msgid "-fjni and -femit-class-files are incompatible" msgstr "" -#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22 -#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172 -msgid "does not support multilib" +#: java/lang-specs.h:35 +msgid "-fjni and -femit-class-file are incompatible" msgstr "" -#: config/sparc/linux64.h:207 config/sparc/linux64.h:218 -#: config/sparc/netbsd-elf.h:136 config/sparc/netbsd-elf.h:155 -#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205 -msgid "may not use both -m32 and -m64" +#: java/lang-specs.h:36 java/lang-specs.h:37 +msgid "-femit-class-file should used along with -fsyntax-only" msgstr "" -#: config/vax/netbsd-elf.h:42 -msgid "The -shared option is not currently supported for VAX ELF." +#: config/i386/mingw32.h:58 config/i386/cygwin.h:70 +msgid "shared and mdll are not compatible" msgstr "" -#: config/darwin.h:226 +#: config/darwin.h:248 msgid "-current_version only allowed with -dynamiclib" msgstr "" -#: config/darwin.h:229 +#: config/darwin.h:251 msgid "-install_name only allowed with -dynamiclib" msgstr "" -#: config/darwin.h:234 +#: config/darwin.h:256 msgid "-bundle not allowed with -dynamiclib" msgstr "" -#: config/darwin.h:235 +#: config/darwin.h:257 msgid "-bundle_loader not allowed with -dynamiclib" msgstr "" -#: config/darwin.h:236 +#: config/darwin.h:258 msgid "-client_name not allowed with -dynamiclib" msgstr "" -#: config/darwin.h:239 +#: config/darwin.h:261 msgid "-force_cpusubtype_ALL not allowed with -dynamiclib" msgstr "" -#: config/darwin.h:240 +#: config/darwin.h:262 msgid "-force_flat_namespace not allowed with -dynamiclib" msgstr "" -#: config/darwin.h:242 +#: config/darwin.h:264 msgid "-keep_private_externs not allowed with -dynamiclib" msgstr "" -#: config/darwin.h:243 +#: config/darwin.h:265 msgid "-private_bundle not allowed with -dynamiclib" msgstr "" -#: config/vax/vax.h:50 config/vax/vax.h:51 -msgid "profiling not supported with -mg\n" +#: config/sparc/linux64.h:207 config/sparc/linux64.h:218 +#: config/sparc/netbsd-elf.h:136 config/sparc/netbsd-elf.h:155 +#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205 +msgid "may not use both -m32 and -m64" +msgstr "" + +#: treelang/lang-specs.h:52 +msgid "-pg or -p and -fomit-frame-pointer are incompatible" msgstr "" -#: java/jvspec.c:80 ada/lang-specs.h:34 gcc.c:792 +#: java/jvspec.c:80 ada/lang-specs.h:34 gcc.c:796 msgid "-pg and -fomit-frame-pointer are incompatible" msgstr "" -#: config/arc/arc.h:63 config/mips/mips.h:1192 -msgid "may not use both -EB and -EL" +#: config/vax/netbsd-elf.h:42 +msgid "The -shared option is not currently supported for VAX ELF." msgstr "" -#: java/lang-specs.h:34 -msgid "-fjni and -femit-class-files are incompatible" +#: config/vax/vax.h:50 config/vax/vax.h:51 +msgid "profiling not supported with -mg\n" msgstr "" -#: java/lang-specs.h:35 -msgid "-fjni and -femit-class-file are incompatible" +#: config/i386/nwld.h:34 +msgid "Static linking is not supported.\n" msgstr "" -#: java/lang-specs.h:36 java/lang-specs.h:37 -msgid "-femit-class-file should used along with -fsyntax-only" +#: config/mcore/mcore.h:57 +msgid "the m210 does not have little endian support" msgstr "" -#: ada/lang-specs.h:36 -msgid "one of -c, -S, -gnatc or -gnats is required for 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 "" -#: config/mips/mips.h:1037 -msgid "-pipe is not supported" +#: ada/lang-specs.h:35 +msgid "-c or -S required for Ada" msgstr "" -#: config/mips/r3900.h:35 -msgid "-mhard-float not supported" +#: config/i386/sco5.h:189 +msgid "-pg not supported on this platform" msgstr "" -#: config/mips/r3900.h:37 -msgid "-msingle-float and -msoft-float can not both be specified" +#: config/i386/sco5.h:190 +msgid "-p and -pp specified - pick one" msgstr "" -#: config/mcore/mcore.h:65 -msgid "the m210 does not have little endian support" +#: config/i386/sco5.h:264 +msgid "-G and -static are mutually exclusive" msgstr "" -#: config/arm/arm.h:149 -msgid "-msoft-float and -mhard_float may not be used together" +#: config/i386/cygwin.h:29 +msgid "mno-cygwin and mno-win32 are not compatible" msgstr "" -#: config/arm/arm.h:151 -msgid "-mbig-endian and -mlittle-endian may not be used together" +#: config/lynx.h:71 +msgid "Cannot use mthreads and mlegacy-threads together." +msgstr "" + +#: config/lynx.h:96 +msgid "Cannot use mshared and static together." msgstr "" -#: gcc.c:766 +#: gcc.c:769 msgid "GCC does not support -C or -CC without -E" msgstr "" -#: gcc.c:957 +#: gcc.c:963 msgid "-E required when input is from standard input" msgstr "" + +#: config/rs6000/darwin.h:132 +msgid " conflicting code gen style switches are used" +msgstr "" diff --git a/gcc/po/ja.po b/gcc/po/ja.po index fad103fd896..744a4394f81 100644 --- a/gcc/po/ja.po +++ b/gcc/po/ja.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.0\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2001-12-05 22:47+0900\n" "Last-Translator: Daisuke Yamashita \n" "Language-Team: Japanese \n" @@ -36,15 +36,15 @@ msgstr "`%s' ° msgid "`%s' attribute only applies to function types" msgstr "`%s' °À­¤Ï´Ø¿ô¤ËÂФ·¤Æ¤Î¤ßŬÍѤµ¤ì¤Þ¤¹" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -123,7 +123,7 @@ msgstr "( #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "" @@ -293,277 +293,277 @@ msgid "invalid application of `%s' to a void type" msgstr "¥¤¥ó¥¹¥¿¥ó¥¹²½¤µ¤ì¤Ê¤¤·¿¤ËÂФ¹¤ë̵¸ú¤ÊÁàºî¤Ç¤¹" #: c-common.c:2951 -#, fuzzy, c-format -msgid "invalid application of `%s' to an incomplete type" -msgstr "__alignof__ ¤¬ÉÔ´°Á´¤Ê·¿¤ËŬÍѤµ¤ì¤Þ¤·¤¿" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " +msgstr "ÉÔ´°Á´¤Ê typedef `%s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Ë `__alignof' ¤¬Å¬ÍѤµ¤ì¤Þ¤·¤¿" -#: c-common.c:3483 +#: c-common.c:3484 #, fuzzy, c-format msgid "cannot disable built-in function `%s'" msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤òʤ¤¤±£¤·¤Þ¤¹" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "´Ø¿ô `%s' ¤Ø¤Î°ú¿ô¤¬¾¯¤Ê¤¹¤®¤Þ¤¹" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹" -#: c-common.c:3669 +#: c-common.c:3670 #, fuzzy, c-format msgid "non-floating-point argument to function `%s'" msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹" -#: c-common.c:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "case ¤ÎÃͤȤ·¤Æ¤Î¥Ý¥¤¥ó¥¿¤Ïµö¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" -#: c-common.c:3900 +#: c-common.c:3901 #, fuzzy msgid "range expressions in switch statements are non-standard" msgstr "ISO C ¤Ç¤Ï switch ʸ¤Ç¤ÎÈϰϼ°¤Ï¶Ø¤¸¤é¤ì¤Æ¤¤¤Þ¤¹" -#: c-common.c:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "¶õ¤ÎÈϰϤ¬»ØÄꤵ¤ì¤Þ¤·¤¿" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "Æó½Å¤Î(¤¢¤ë¤¤¤Ï½ÅÊ£¤·¤Æ¤¤¤ë) case ¤ÎÃÍ" -#: c-common.c:3981 +#: c-common.c:3982 #, fuzzy msgid "%Jthis is the first entry overlapping that value" msgstr "¤³¤ì¤¬¤½¤ÎÃͤȽÅÊ£¤·¤¿ºÇ½é¤Î¹àÌܤǤ¹" -#: c-common.c:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "½ÅÊ£¤·¤¿ case ¤ÎÃÍ" -#: c-common.c:3986 +#: c-common.c:3987 #, fuzzy msgid "%Jpreviously used here" msgstr "Á°¤Ë¤³¤³¤Ç»È¤ï¤ì¤Þ¤·¤¿" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "°ì¤Ä¤Î switch ¤ËÊ£¿ô¤Î default ¥é¥Ù¥ë¤¬¤¢¤ê¤Þ¤¹" -#: c-common.c:3991 +#: c-common.c:3992 #, fuzzy msgid "%Jthis is the first default label" msgstr "¤³¤ì¤¬ºÇ½é¤Î default ¥é¥Ù¥ë¤Ç¤¹" -#: c-common.c:4016 +#: c-common.c:4017 #, fuzzy msgid "taking the address of a label is non-standard" msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: c-common.c:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "ÉÔÌÀ¤Ê¥Þ¥·¥ó¥â¡¼¥É `%s'" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "¥â¡¼¥É `%s' ¤ËÂФ¹¤ë¥Ç¡¼¥¿·¿¤¬¤¢¤ê¤Þ¤»¤ó" -#: c-common.c:4655 +#: c-common.c:4656 #, fuzzy, c-format msgid "invalid pointer mode `%s'" msgstr "̵¸ú¤Ê¼±ÊÌ»Ò `%s'" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, fuzzy, c-format msgid "unable to emulate '%s'" msgstr "¥Õ¥¡¥¤¥ë '%s' ¤ò open ¤Ç¤­¤Þ¤»¤ó" -#: c-common.c:4706 +#: c-common.c:4707 #, fuzzy msgid "%Jsection attribute cannot be specified for local variables" msgstr "section °À­¤Ï¥í¡¼¥«¥ëÊÑ¿ô¤ËÂФ·¤Æ¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó" -#: c-common.c:4717 +#: c-common.c:4718 #, fuzzy msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹" -#: c-common.c:4726 +#: c-common.c:4727 #, fuzzy msgid "%Jsection attribute not allowed for '%D'" msgstr "¥»¥¯¥·¥ç¥ó°À­¤Ï `%s' ¤Ë¤Ï»È¤¨¤Þ¤»¤ó" -#: c-common.c:4732 +#: c-common.c:4733 #, fuzzy msgid "%Jsection attributes are not supported for this target" msgstr "¥»¥¯¥·¥ç¥ó°À­¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "Í׵ᤵ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "Í׵ᤵ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤¬ 2 ¤Î¤Ù¤­¾è¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "Í׵ᤵ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤¬Â礭¤¹¤®¤Þ¤¹" -#: c-common.c:4806 +#: c-common.c:4807 #, fuzzy msgid "%Jalignment may not be specified for '%D'" msgstr "`%s' ¤ËÂФ·¤Æ¤Î¥¢¥é¥¤¥ó¥á¥ó¥È¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó" -#: c-common.c:4844 +#: c-common.c:4845 #, fuzzy msgid "%J'%D' defined both normally and as an alias" msgstr "`%s' ¤¬Ä̾ï¤Î¤â¤Î¤È¥¨¥¤¥ê¥¢¥¹¤È¤ÎξÊý¤ÇÄêµÁ¤µ¤ì¤Þ¤·¤¿" -#: c-common.c:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "alias °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤Ê¤¤" -#: c-common.c:4897 +#: c-common.c:4898 #, fuzzy msgid "visibility arg not a string" msgstr "alias °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤Ê¤¤" -#: c-common.c:4910 +#: c-common.c:4911 msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\"" msgstr "" -#: c-common.c:4936 +#: c-common.c:4937 #, fuzzy msgid "tls_model arg not a string" msgstr "alias °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤Ê¤¤" -#: c-common.c:4945 +#: c-common.c:4946 msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\"" msgstr "" -#: c-common.c:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 #, fuzzy msgid "%J'%E' attribute applies only to functions" msgstr "`%s' °À­¤Ï´Ø¿ô¤ËÂФ·¤Æ¤Î¤ßŬÍѤµ¤ì¤Þ¤¹" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 #, fuzzy msgid "%Jcan't set '%E' attribute after definition" msgstr "ÄêµÁ¤Î¸å¤Ç `%s' °À­¤ò¥»¥Ã¥È¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó" -#: c-common.c:5094 +#: c-common.c:5095 #, fuzzy, c-format msgid "`%s' attribute ignored for `%s'" msgstr "`%s' °À­¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿" -#: c-common.c:5157 +#: c-common.c:5158 #, fuzzy, c-format msgid "invalid vector type for attribute `%s'" msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 msgid "no vector mode with the size and type specified could be found" msgstr "" -#: c-common.c:5315 +#: c-common.c:5316 #, fuzzy msgid "nonnull attribute without arguments on a non-prototype" msgstr "²¾°ú¿ô¤Î¿ô¤¬¥×¥í¥È¥¿¥¤¥×¤È°ìÃפ·¤Þ¤»¤ó" -#: c-common.c:5330 +#: c-common.c:5331 #, fuzzy, c-format msgid "nonnull argument has invalid operand number (arg %lu)" msgstr "¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó¤ËÉÔŬÀڤʥª¥Ú¥é¥ó¥É¿ô¤¬¤¢¤ê¤Þ¤¹" -#: c-common.c:5349 +#: c-common.c:5350 #, c-format msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5357 +#: c-common.c:5358 #, c-format msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "" -#: c-common.c:5508 +#: c-common.c:5509 #, fuzzy msgid "cleanup arg not an identifier" msgstr "¼±Ê̻ҤΤʤ¤ 'defined'" -#: c-common.c:5515 +#: c-common.c:5516 #, fuzzy msgid "cleanup arg not a function" msgstr "¸Æ¤Ó½Ð¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Ï´Ø¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "ÆþÎϤκǸå¤Ë %s" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s ¤¬ %s'%c' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s ¤¬ %s'\\x%x' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "ʸ»úÎóÄê¿ô¤ÎÁ°¤Ë %s" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "¿ôÃÍÄê¿ô¤ÎÁ°¤Ë %s" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s ¤¬ \"%s\" ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s ¤¬ '%s' ¥È¡¼¥¯¥ó¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 treelang/tree-convert.c:79 msgid "void value not ignored as it ought to be" msgstr "void ¤ÎÃͤ¬ËÜÍè¤Î°ÕÌ£Ä̤ê¤Ë̵»ë¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿" @@ -782,8 +782,8 @@ msgstr "`%s' msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "`%s' ¤ÎÀë¸À¤ÏÁ°Êý¤Î¥í¡¼¥«¥ë¥·¥ó¥Ü¥ë¤òʤ¤¤±£¤·¤Þ¤¹" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 msgid "%Jshadowed declaration is here" msgstr "" @@ -792,7 +792,7 @@ msgstr "" msgid "nested extern declaration of `%s'" msgstr "`%s' ¤Î extern Àë¸À¤¬¥Í¥¹¥È¤·¤Æ¤¤¤Þ¤¹" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 #, fuzzy msgid "%Jprevious declaration of '%D'" msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À" @@ -872,7 +872,7 @@ msgid "two types specified in one empty declaration" msgstr "°ì¤Ä¤Î¶õ¤ÎÀë¸ÀÃæ¤Ë¡¢Æó¤Ä¤Î·¿¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "¶õ¤ÎÀë¸À¤Ç¤¹" @@ -915,7 +915,7 @@ msgstr " msgid "parameter `%s' is initialized" msgstr "²¾°ú¿ô `%s' ¤¬½é´ü²½¤µ¤ì¤Þ¤·¤¿" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "²ÄÊÑĹ¥ª¥Ö¥¸¥§¥¯¥È¤Ï½é´ü²½¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦" @@ -929,7 +929,7 @@ msgstr " msgid "elements of array `%s' have incomplete type" msgstr "ÇÛÎó `%s' ¤ÎÍ×ÁǤËÉÔ´°Á´·¿¤¬¤¢¤ê¤Þ¤¹" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 msgid "%Jinline function '%D' given attribute noinline" msgstr "" @@ -1217,7 +1217,7 @@ msgstr "ISO C89 msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO C89 ¤Ï²ÄÊÑĹ¥µ¥¤¥º¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤¬Â礭¤¹¤®¤Þ¤¹" @@ -1261,7 +1261,7 @@ msgstr " msgid "ISO C forbids const or volatile function types" msgstr "ISO C ¤Ï const ¤ä volatile ¤Î´Ø¿ô·¿¤ò¶Ø¤¸¤Þ¤¹" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "ÊÑ¿ô¤Þ¤¿¤ÏÎΰè `%s' ¤Ï void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹" @@ -1589,7 +1589,7 @@ msgstr " msgid "argument \"%D\" doesn't match prototype" msgstr "²¾°ú¿ô `%s' ¤Ï¥×¥í¥È¥¿¥¤¥×¤Ë°ìÃפ·¤Þ¤»¤ó" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 #, fuzzy msgid "no return statement in function returning non-void" msgstr "Ìá¤ê·¿¤¬´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤»¤ó" @@ -2389,7 +2389,7 @@ msgstr "ʸˡ msgid "ISO C forbids an empty source file" msgstr "ISO C ¤Ï¶õ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ò¶Ø¤¸¤Þ¤¹" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "`asm' ¤Î°ú¿ô¤¬Äê¿ôʸ»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó " @@ -2488,7 +2488,7 @@ msgstr "ISO C msgid "ISO C forbids forward references to `enum' types" msgstr "ISO C ¤Ï `enum' ·¿¤ÎÁ°Êý»²¾È¤ò¶Ø¤¸¤Þ¤¹" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "Îóµó»Ò¥ê¥¹¥È¤ÎºÇ¸å¤Ë¥«¥ó¥Þ¤¬¤¢¤ê¤Þ¤¹" @@ -2496,7 +2496,7 @@ msgstr " msgid "no semicolon at end of struct or union" msgstr "struct ¤ä union ¤ÎºÇ¸å¤Ë¥»¥ß¥³¥í¥ó¤¬¤¢¤ê¤Þ¤»¤ó" -#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "struct ¤ä union ¤ÎÃæ¤Ç;ʬ¤Ê¥»¥ß¥³¥í¥ó¤¬»ØÄꤵ¤ì¤Þ¤·¤¿" @@ -2526,24 +2526,24 @@ msgstr "ISO C msgid "braced-group within expression allowed only inside a function" msgstr "¥Ö¥ì¡¼¥¹¤Ç¤Þ¤È¤á¤é¤ì¤¿¼°¤Ï´Ø¿ô¤ÎÆ⦤ǤΤߵö¤µ¤ì¤Þ¤¹" -#: c-parse.y:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "else ʸ¤ÎÃæ¿È¤¬¶õ¤Ç¤¹" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 #, fuzzy msgid "%Hempty body in an if-statement" msgstr "else ʸ¤ÎÃæ¿È¤¬¶õ¤Ç¤¹" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 msgid "break statement not within loop or switch" msgstr "break ʸ¤¬ loop ¤Þ¤¿¤Ï switch ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: c-parse.y:2281 cp/parser.c:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 msgid "continue statement not within a loop" msgstr "continue ʸ¤¬ loop ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: c-parse.y:2323 objc/objc-parse.y:2380 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO C `goto *¼°;' ¤Î½ñ¤­Êý¤ò¶Ø¤¸¤Þ¤¹" @@ -2553,11 +2553,11 @@ msgstr "ISO C `goto * #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "ISO C ¤Ï `...' ¤ÎÁ°¤Ë̾Á°¤ò¤Ä¤±¤é¤ì¤¿°ú¿ô¤òÍ׵ᤷ¤Þ¤¹" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "¸Å¤¤¥¹¥¿¥¤¥ë¤Î¼±Ê̻ҥꥹ¥È¤Ç¤Î `...'" @@ -2574,7 +2574,7 @@ msgstr " msgid "parser stack overflow" msgstr "¹½Ê¸²òÀÏ´ï¤Î¥¹¥¿¥Ã¥¯¤¬°î¤ì¤Þ¤·¤¿" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "'%s' ¥È¡¼¥¯¥ó¤Î½ê¤Çʸˡ¥¨¥é¡¼" @@ -2747,22 +2747,22 @@ msgstr " msgid "junk at end of #pragma redefine_extname" msgstr "#pragma weak ¤ÎËöÈø¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 #, fuzzy msgid "#pragma redefine_extname conflicts with declaration" msgstr "¥Ç¡¼¥¿Îΰè '%s' ¤ÏÁ°¤ÎÀë¸À¤ÈÌ·½â¤·¤Þ¤¹" -#: c-pragma.c:413 +#: c-pragma.c:414 #, fuzzy msgid "malformed #pragma extern_prefix, ignored" msgstr "¤ª¤«¤·¤Ê #pragma map¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿" -#: c-pragma.c:418 +#: c-pragma.c:419 #, fuzzy msgid "junk at end of #pragma extern_prefix" msgstr "#pragma map ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹" -#: c-pragma.c:449 +#: c-pragma.c:450 #, fuzzy msgid "asm declaration conflicts with previous rename" msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹" @@ -2780,7 +2780,7 @@ msgstr "case msgid "(enclose actions of previous case statements requiring destructors in their own scope.)" msgstr "(Á°¤Î case ʸ¤Î°Ï¤¤¹þ¤Þ¤ì¤¿Æ°ºî¤Ï¤½¤ì¼«¿È¤Î¥¹¥³¡¼¥×¤Ç¥Ç¥¹¥È¥é¥¯¥¿¤òÍ׵ᤷ¤Þ¤¹)" -#: c-semantics.c:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "asm ¤Ç¤Ï %s ½¤¾þ»Ò¤¬Ìµ»ë¤µ¤ì¤Þ¤¹" @@ -2790,808 +2790,808 @@ msgstr "asm msgid "will never be executed" msgstr "¸Æ¤Ó½Ð¤· %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤»¤º\n" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "`%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "void ¼°¤ÎÉÔŬÀڤʻÈÍÑ" -#: c-typeck.c:150 +#: c-typeck.c:153 #, fuzzy msgid "invalid use of flexible array member" msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "¶­³¦¤¬»ØÄꤵ¤ì¤Ê¤¤ÇÛÎó¤ÎÉÔŬÀÚ¤ÊÍøÍÑ" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "ÉÔ´°Á´¤Ê typedef `%s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 msgid "function types not truly compatible in ISO C" msgstr "´Ø¿ô·¿¤¬ ISO C ¤È´°Á´¸ß´¹¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "·¿¤ÏÁ´¤¯¸ß´¹¤¬¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:824 +#: c-typeck.c:838 #, fuzzy msgid "function return types not compatible due to `volatile'" msgstr "´Ø¿ô¤ÎÊÖ¤¹·¿¤¬´Ø¿ô¤Ç¤¢¤Ã¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "ÉÔ´°Á´·¿¤Ø¤Î¥Ý¥¤¥ó¥¿¤ËÂФ¹¤ë±é»»" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, c-format msgid "request for member `%s' in something not a structure or union" msgstr "¹½Â¤ÂΤǤⶦÍÑÂΤǤâ¤Ê¤¤²¿¤«¤Ç¡¢¥á¥ó¥Ð `%s' ¤òÍ׵ᤵ¤ì¤Þ¤·¤¿" -#: c-typeck.c:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "ÉÔ´°Á´·¿¤Î¥Ý¥¤¥ó¥¿¤Ø¤Î´ÖÀÜ»²¾È" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "`void *' ¥Ý¥¤¥ó¥¿¤Ø¤Î´ÖÀÜ»²¾È¤Ç¤¹" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "ÇÛÎ󻲾ȤǤÎź»ú¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "ÇÛÎó¤Îź»ú¤¬ `char' ·¿¤Ç¤¹" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "ÇÛÎó¤Îź»ú¤¬À°¿ô·¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "ISO C ¤Ï `register' ÇÛÎó¤Ø¤Îź»ú¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:1511 +#: c-typeck.c:1525 #, fuzzy msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C89 Èóº¸ÊÕÃÍÇÛÎó¤Ø¤Îź»ú¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "ź»ú¤¬ `char' ·¿¤ò¤â¤Á¤Þ¤¹" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "ź»ú¤ò¤Ä¤±¤é¤ì¤¿Ãͤ¬ÇÛÎó¤Ç¤â¥Ý¥¤¥ó¥¿¤Ç¤â¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, c-format msgid "local declaration of `%s' hides instance variable" msgstr "`%s' ¤Î¥í¡¼¥«¥ëÀë¸À¤Ç¡¢¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤¬±£¤µ¤ì¤Þ¤¹" -#: c-typeck.c:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "¸Æ¤Ó½Ð¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Ï´Ø¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" #. 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 +#: c-typeck.c:1729 #, fuzzy msgid "function called through a non-compatible type" msgstr "sizeof ¤¬ÉÔ´°Á´¤Ê·¿¤ËŬÍѤµ¤ì¤Þ¤·¤¿" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "½é´ü²½»Ò¤ÎÍ×ÁǤ¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "´Ø¿ô¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "Àµ¼°¤Ê²¾°ú¿ô %d ¤Î·¿¤¬ÉÔ´°Á´¤Ç¤¹" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, c-format msgid "%s as integer rather than floating due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÉâÆ°¾®¿ô·¿¤Ç¤Ï¤Ê¤¯À°¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1850 +#: c-typeck.c:1875 #, c-format msgid "%s as integer rather than complex due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÊ£ÁÇ¿ô¤Ç¤Ï¤Ê¤¯À°¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1853 +#: c-typeck.c:1878 #, c-format msgid "%s as complex rather than floating due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÉâÆ°¾®¿ô·¿¤Ç¤Ï¤Ê¤¯Ê£ÁÇ¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1856 +#: c-typeck.c:1881 #, c-format msgid "%s as floating rather than integer due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÀ°¿ô·¿¤Ç¤Ï¤Ê¤¯ÉâÆ°¾®¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1859 +#: c-typeck.c:1884 #, c-format msgid "%s as complex rather than integer due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÀ°¿ô·¿¤Ç¤Ï¤Ê¤¯Ê£ÁÇ¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1862 +#: c-typeck.c:1887 #, c-format msgid "%s as floating rather than complex due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÊ£ÁÇ¿ô¤Ç¤Ï¤Ê¤¯ÉâÆ°¾®¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1872 +#: c-typeck.c:1897 #, c-format msgid "%s as `float' rather than `double' due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤Ï `double' ¤Ç¤Ê¤¯ `float' ¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "%s ¤Ï¥×¥í¥È¥¿¥¤¥×¤Ç¤Î·¿¤ÎÉý¤È¤Ï°Û¤Ê¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ê %s ¤ÏÉä¹ç¤Ê¤·¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ê %s ¤ÏÉä¹çÉÕ¤­¤È¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "´Ø¿ô¤Ø¤Î°ú¿ô¤¬¾¯¤Ê¤¹¤®¤Þ¤¹" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "¥·¥Õ¥ÈÃæ¤Î + ¤ä - ¤Î¼þ¤ê¤Ç¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "|| ¤È¶¦¤Ë»È¤ï¤ì¤ë && ¤Î¼þ¤ê¤Ç¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "·×»»¤¬ | ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "Èæ³Ó¤¬ | ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "·×»»¤¬ ^ ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "·×»»¤¬ ^ ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "& ±é»»»Ò¤Î¼þ¤ê¤Î + ¤ä - ¤Î¼þ¤ê¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "Èæ³Ó¤¬ & ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹" -#: c-typeck.c:2040 +#: c-typeck.c:2065 msgid "comparisons like X<=Y<=Z do not have their mathematical meaning" msgstr "X<=Y<=Z ¤ÎÍͤÊÈæ³Ó¤Ï¿ô³ØŪ¤Ê°ÕÌ£¤Ç¤Î·ë²Ì¤ò¤â¤¿¤é¤·¤Þ¤»¤ó" -#: c-typeck.c:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "`void *' ·¿¤Î¥Ý¥¤¥ó¥¿¤Îº¹¤òµá¤á¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤Îº¹¤òµá¤á¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "ñ¹à¥×¥é¥¹¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "ñ¹à¥Þ¥¤¥Ê¥¹¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "ISO C ¤ÏÊ£ÁǶ¦ÌòÍѤΠ`~' ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "¥Ó¥Ã¥Èȿž¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "abs ¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "Ê£ÁǶ¦Ìò(~)¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "ñ¹à´¶Ã²Éä(!)¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2312 +#: c-typeck.c:2337 msgid "ISO C does not support `++' and `--' on complex types" msgstr "ISO C ¤Ï complex ·¿¤Ç¤Î `++' ¤È `--' ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó" -#: c-typeck.c:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 #, fuzzy msgid "wrong type argument to increment" msgstr "¥Ó¥Ã¥Èȿž¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 #, fuzzy msgid "wrong type argument to decrement" msgstr "¥Ó¥Ã¥Èȿž¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2350 +#: c-typeck.c:2375 #, fuzzy msgid "increment of pointer to unknown structure" msgstr "ÉÔÌÀ¤Ê¹½Â¤ÂΤËÂФ¹¤ë¥Ý¥¤¥ó¥¿¤Î%s" -#: c-typeck.c:2352 +#: c-typeck.c:2377 #, fuzzy msgid "decrement of pointer to unknown structure" msgstr "ÉÔÌÀ¤Ê¹½Â¤ÂΤËÂФ¹¤ë¥Ý¥¤¥ó¥¿¤Î%s" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "ñ¹à¤Î `&' ¤Ç¤Îº¸ÊÕÃͤ¬Ìµ¸ú¤Ç¤¹" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, c-format msgid "attempt to take address of bit-field structure member `%s'" msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð `%s' ¤Î¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Î¥¢¥É¥ì¥¹¤ò¼èÆÀ¤·¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2642 +#: c-typeck.c:2668 #, fuzzy msgid "use of conditional expressions as lvalues is deprecated" msgstr "ISO C ¤Ïº¸ÊÕÃͤȤ·¤Æ¤Î¾ò·ï¼°¤ÎÍøÍѤò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:2645 +#: c-typeck.c:2671 #, fuzzy msgid "use of compound expressions as lvalues is deprecated" msgstr "ISO C ¤Ïº¸ÊÕÃͤȤ·¤Æ¤ÎÊ£¹ç¼°¤ÎÍøÍѤò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:2648 +#: c-typeck.c:2674 #, fuzzy msgid "use of cast expressions as lvalues is deprecated" msgstr "ISO C ¤Ïº¸ÊÕÃͤȤ·¤Æ¤Î¥­¥ã¥¹¥È¼°¤ÎÍøÍѤò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "%s¤¬Æɤ߹þ¤ßÀìÍÑ¥á¥ó¥Ð `%s' ¤Ë¹Ô¤ï¤ì¤Þ¤·¤¿" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "%s¤¬Æɤ߹þ¤ßÀìÍÑÊÑ¿ô `%s' ¤Ë¹Ô¤ï¤ì¤Þ¤·¤¿" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "%s¤¬Æɤ߹þ¤ßÀìÍÑÎΰè¤Ç¹Ô¤ï¤ì¤Þ¤·¤¿" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, fuzzy, c-format msgid "cannot take address of bit-field `%s'" msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤Î¥¢¥É¥ì¥¹¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 treelang/treetree.c:946 #, c-format msgid "global register variable `%s' used in nested function" msgstr "Âç°è¥ì¥¸¥¹¥¿ÊÑ¿ô `%s' ¤¬Æþ¤ì»Ò´Ø¿ô¤ÎÃæ¤Ç»È¤ï¤ì¤Þ¤·¤¿" -#: c-typeck.c:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 treelang/treetree.c:950 #, c-format msgid "register variable `%s' used in nested function" msgstr "¥ì¥¸¥¹¥¿ÊÑ¿ô `%s' ¤¬Æþ¤ì»Ò´Ø¿ô¤ÎÃæ¤Ç»È¤ï¤ì¤Þ¤·¤¿" -#: c-typeck.c:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 treelang/treetree.c:957 #, c-format msgid "address of global register variable `%s' requested" msgstr "Í׵ᤵ¤ì¤¿Âç°è¥ì¥¸¥¹¥¿ÊÑ¿ô `%s' ¤Î¥¢¥É¥ì¥¹" -#: c-typeck.c:2739 +#: c-typeck.c:2765 msgid "cannot put object with volatile field into register" msgstr "volatile ¥Õ¥£¡¼¥ë¥É¤ò¥ì¥¸¥¹¥¿¤Ë»ý¤Ã¤Æ¤¤¤ë¤è¤¦¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤òÃÖ¤±¤Þ¤»¤ó" -#: c-typeck.c:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, c-format msgid "address of register variable `%s' requested" msgstr "register ÊÑ¿ô `%s' ¤Î¥¢¥É¥ì¥¹¤¬Í׵ᤵ¤ì¤Þ¤·¤¿" -#: c-typeck.c:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "¾ò·ï¼°¤ËÉä¹çÉÕ¤­·¿¤ÈÉä¹ç̵¤··¿¤È¤¬¤¢¤ê¤Þ¤¹" -#: c-typeck.c:2835 +#: c-typeck.c:2861 msgid "ISO C forbids conditional expr with only one void side" msgstr "ISO C ¤ÏÊÒ¦¤À¤±¤¬ void ¤È¤Ê¤ë¾ò·ï¼°¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 msgid "ISO C forbids conditional expr between `void *' and function pointer" msgstr "ISO C ¤Ï `void *' ¤È´Ø¿ô¥Ý¥¤¥ó¥¿¤È¤ò¾ò·ï¼°¤È¤¹¤ë¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "¾ò·ï¼°¤Ç¤Î¥Ý¥¤¥ó¥¿¤Î·¿¤¬Å¬¹ç¤·¤Þ¤»¤ó" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "¾ò·ï¼°¤Ç¥Ý¥¤¥ó¥¿·¿¤ÈÀ°¿ô·¿¤¬Å¬¹ç¤·¤Þ¤»¤ó" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "¾ò·ï¼°¤Ç¤Î·¿¤ÎÁȹç¤ï¤»¤¬Å¬¹ç¤·¤Þ¤»¤ó" -#: c-typeck.c:2955 +#: c-typeck.c:2981 msgid "left-hand operand of comma expression has no effect" msgstr "¥«¥ó¥Þ±é»»»Ò¤Îº¸Â¦¤Î¼°¤Ë¸úÎϤ¬¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "¥­¥ã¥¹¥È¤¬ÇÛÎ󷿤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "¥­¥ã¥¹¥È¤Ï´Ø¿ô·¿¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:3002 +#: c-typeck.c:3028 msgid "ISO C forbids casting nonscalar to the same type" msgstr "ISO C ¤ÏÈó¥¹¥«¥é¡¼¤«¤éƱ¤¸·¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "ISO C ¤Ï¶¦ÍÑÂη¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:3028 +#: c-typeck.c:3054 msgid "cast to union type from type not present in union" msgstr "¶¦ÍÑÂΤÎÃæ¤Ë¤Ê¤¤·¿¤«¤é¶¦ÍÑÂη¿¤Ø¥­¥ã¥¹¥È¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:3079 +#: c-typeck.c:3105 #, 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤¬¼¨¤¹·¿¤«¤é½¤¾þ»Ò¤¬ÀÚ¤ê¼Î¤Æ¤é¤ì¤Þ¤¹" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤¬¼¨¤¹·¿¤ÎÍ׵ᥢ¥é¥¤¥ó¥á¥ó¥È¤¬Áý²Ã¤·¤Þ¤¹" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤«¤é°Û¤Ê¤ë¥µ¥¤¥º¤ÎÀ°¿ô¤È¤Ê¤ê¤Þ¤¹" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "¥­¥ã¥¹¥È¤Ë¤è¤ë´Ø¿ô¤Î·¿¤¬Å¬¹ç¤·¤Þ¤»¤ó" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "°Û¤Ê¤ë¥µ¥¤¥º¤ÎÀ°¿ô¤«¤é¥Ý¥¤¥ó¥¿¤Ë¥­¥ã¥¹¥È¤µ¤ì¤Þ¤·¤¿" -#: c-typeck.c:3129 +#: c-typeck.c:3155 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "" -#: c-typeck.c:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "" -#: c-typeck.c:3144 +#: c-typeck.c:3170 #, fuzzy msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "ISO C++ ¤Ï¥Ý¥¤¥ó¥¿·×»»¤Ë¥á¥ó¥Ð´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:3153 +#: c-typeck.c:3179 #, 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:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "ÂåÆþ¤È¤·¤Æ̵¸ú¤Êº¸ÊÕÃͤǤ¹" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "ÂåÆþ" -#: c-typeck.c:3429 +#: c-typeck.c:3455 #, fuzzy msgid "cannot pass rvalue to reference parameter" msgstr "»²¾È·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "%s¤Ë¤è¤ê¡¢½¤¾þ¤µ¤ì¤Ê¤¤´Ø¿ô¥Ý¥¤¥ó¥¿¤«¤é¡¢½¤¾þ¤µ¤ì¤¿´Ø¿ô¥Ý¥¤¥ó¥¿¤òºî¤ê¤Þ¤¹" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "%s¤Ë¤è¤ê¡¢¥Ý¥¤¥ó¥¿¤Î¼¨¤¹·¿¤«¤é¤Î½¤¾þ»Ò¤¬ÀÚ¤ê¼Î¤Æ¤é¤ì¤Þ¤¹" -#: c-typeck.c:3548 +#: c-typeck.c:3574 msgid "ISO C prohibits argument conversion to union type" msgstr "ISO C ¤Ç¤Ï°ú¿ô¤«¤é¶¦ÍÑÂΤؤÎÊÑ´¹¤ò¶Ø»ß¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, c-format msgid "ISO C forbids %s between function pointer and `void *'" msgstr "ISO C ¤Ï´Ø¿ô¥Ý¥¤¥ó¥¿¤È `void *' ¤È¤Î%s¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "%s ¤Ç¥Ý¥¤¥ó¥¿¤Î¼¨¤¹ÂоݤÎÉä¹æ¤Î̵ͭ¤¬°Û¤Ê¤ê¤Þ¤¹" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "¸ß´¹À­¤Î¤Ê¤¤¥Ý¥¤¥ó¥¿·¿¤«¤é¤Î%s¤Ç¤¹" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "Èóº¸ÊÕÃÍÇÛÎó¤Î̵¸ú¤ÊÍøÍÑ" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, c-format msgid "%s makes pointer from integer without a cast" msgstr "%s¤Ë¤è¤ê¡¢¥­¥ã¥¹¥È¤Ê¤·¤ÇÀ°¿ô¤«¤é¥Ý¥¤¥ó¥¿¤òºî¤ê¤Þ¤·¤¿" -#: c-typeck.c:3646 +#: c-typeck.c:3672 #, c-format msgid "%s makes integer from pointer without a cast" msgstr "%s¤Ë¤è¤ê¡¢¥­¥ã¥¹¥È¤Ê¤·¤Ç¥Ý¥¤¥ó¥¿¤«¤éÀ°¿ô¤òºî¤ê¤Þ¤·¤¿" -#: c-typeck.c:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "%d ÈÖÌܤΰú¿ô¤¬ `%s' ¤Î·¿¤È¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, c-format msgid "incompatible type for argument %d of indirect function call" msgstr "´ÖÀÜŪ¤Ê´Ø¿ô¸Æ¤Ó½Ð¤·¤ÎÂè %d °ú¿ô¤ËÂФ·¤Æ¸ß´¹À­¤Î¤Ê¤¤·¿¤Ç¤¹" -#: c-typeck.c:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "%s ¤Ë¸ß´¹À­¤Î¤Ê¤¤·¿" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, fuzzy, c-format msgid "passing arg of `%s'" msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 #, fuzzy msgid "passing arg of pointer to function" msgstr "°ú¿ô %d ¸Ä¤Î´Ø¿ô¥Ý¥¤¥ó¥¿¤òÅϤ·¤Þ¤¹" #. Function name is known; supply it. -#: c-typeck.c:3744 +#: c-typeck.c:3770 #, c-format msgid "passing arg %d of `%s'" msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹" #. Function name unknown (call through ptr); just give arg number. -#: c-typeck.c:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "°ú¿ô %d ¸Ä¤Î´Ø¿ô¥Ý¥¤¥ó¥¿¤òÅϤ·¤Þ¤¹" -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "¸Å¤¤ C ¤Ç¤Ï¼«Æ°Åª¤Ê½¸¹çÂΤνé´ü²½¤òµñÀ䤷¤Þ¤¹" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "(`%s' ¤Î½é´ü²½¤ÏÉÔ´°Á´¤Ç¤¹)" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "¥ï¥¤¥Éʸ»úÎ󤫤é char ¤ÎÇÛÎ󤬽é´ü²½¤µ¤ì¤Þ¤·¤¿" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "Èó¥ï¥¤¥Éʸ»úÎ󤫤é int ¤ÎÇÛÎ󤬽é´ü²½¤µ¤ì¤Þ¤·¤¿" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 msgid "initializer-string for array of chars is too long" msgstr "char ¤ÎÇÛÎó¤Ë¤È¤Ã¤Æ½é´ü²½»Òʸ»úÎó¤¬Ä¹¤¹¤®¤Þ¤¹" -#: c-typeck.c:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "ÈóÄê¿ôÇÛÎó¼°¤«¤éÇÛÎ󤬽é´ü²½¤µ¤ì¤Þ¤·¤¿" -#: 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:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "½é´ü²½" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "½é´ü²½»Ò¤ÎÍ×ÁÇ¤Ï¥í¡¼¥É»þ¤Ë·×»»¤µ¤ìÆÀ¤Þ¤»¤ó" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "̵¸ú¤Ê½é´ü²½»Ò" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 #, fuzzy msgid "opaque vector types cannot be initialized" msgstr "²ÄÊÑĹ¥ª¥Ö¥¸¥§¥¯¥È¤Ï½é´ü²½¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "½é´ü²½»Ò¤Î½ª¤ï¤ê¤Ë;ʬ¤Ê¥Ö¥ì¡¼¥¹¤Î¥°¥ë¡¼¥×" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "½é´ü²½»Ò¤Î¤Þ¤ï¤ê¤Î¥Ö¥ì¡¼¥¹¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "¥¹¥«¥é¡¼½é´ü²½»Ò¤¬¥Ö¥ì¡¼¥¹¤Ç°Ï¤Þ¤ì¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:4842 +#: c-typeck.c:4865 msgid "initialization of flexible array member in a nested context" msgstr "¥Í¥¹¥È¤·¤¿Ê¸Ì®¤Ç²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "½é´ü²½»Ò¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "¶õ¤Î¥¹¥«¥é¡¼½é´ü²½»Ò" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "¥¹¥«¥é¡¼½é´ü²½»Ò¤Ë;ʬ¤ÊÍ×ÁÇ" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "½é´ü²½»Ø̾»Ò¤Ç¤Ï¥Í¥¹¥È¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "ÈóÇÛÎó¤Î½é´ü²½»Ò¤ËÇÛÎ󥤥ó¥Ç¥Ã¥¯¥¹¤¬»È¤ï¤ì¤Þ¤·¤¿" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 msgid "field name not in record or union initializer" msgstr "¥ì¥³¡¼¥É¤ä¶¦ÍÑÂΤ˥ե£¡¼¥ë¥É̾¤¬¤Ê¤¤½é´ü²½»Ò¤Ç¤¹" -#: c-typeck.c:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "½é´ü²½»ÒÆâ¤ËÈóÄê¿ô¤ÎÇÛÎ󥤥ó¥Ç¥Ã¥¯¥¹¤¬¤¢¤ê¤Þ¤¹" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 msgid "array index in initializer exceeds array bounds" msgstr "½é´ü²½»ÒÆâ¤ÎÇÛÎ󥤥ó¥Ç¥Ã¥¯¥¹¤¬ÇÛÎó¤Î¶­³¦¤òĶ¤¨¤Þ¤·¤¿" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "½é´ü²½»ÒÆâ¤Ë¶õ¤ÎÈÏ°Ï¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬¤¢¤ê¤Þ¤¹" -#: c-typeck.c:5101 +#: c-typeck.c:5124 msgid "array index range in initializer exceeds array bounds" msgstr "½é´ü²½»Ò¤ÎÈÏ°Ï¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬ÇÛÎó¤Î¶­³¦¤òĶ¤¨¤Þ¤·¤¿" -#: c-typeck.c:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "ÉÔÌÀ¤Ê¥Õ¥£¡¼¥ë¥É `%s' ¤¬½é´ü²½»Ò¤Ç»ØÄꤵ¤ì¤Þ¤·¤¿" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "½é´ü²½¤µ¤ì¤¿¥Õ¥£¡¼¥ë¥É¤¬ÉûºîÍѤǾå½ñ¤­¤µ¤ì¤Þ¤¹" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "char ÇÛÎó½é´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "¹½Â¤Âνé´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹" -#: c-typeck.c:5936 +#: c-typeck.c:5959 #, fuzzy msgid "non-static initialization of a flexible array member" msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "¶¦ÍÑÂνé´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "¸Å¤¤ C ¤Ï¶¦ÍÑÂΤνé´ü¤òµñÀ䤷¤Þ¤¹" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "ÇÛÎó½é´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹" -#: c-typeck.c:6116 +#: c-typeck.c:6139 #, fuzzy msgid "excess elements in vector initializer" msgstr "¥¹¥«¥é¡¼½é´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "¥¹¥«¥é¡¼½é´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "asm ¥Æ¥ó¥×¥ì¡¼¥È¤¬Ê¸»úÎóÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "asm ʸ¤ÎÃæ¤Ë̵¸ú¤Êº¸ÊÕÃÍ" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "`asm' ¤Ë¤è¤ë½¤Àµ" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "`noreturn' ¤ÎÀë¸À¤µ¤ì¤¿´Ø¿ô¤Ë `return' ʸ¤¬¤¢¤ê¤Þ¤¹" -#: c-typeck.c:6369 +#: c-typeck.c:6392 msgid "`return' with no value, in function returning non-void" msgstr "Ìá¤ê·¿¤¬´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "Ìá¤ê·¿¤¬ void ¤Î´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤¹" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "return" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "´Ø¿ô¤¬¥í¡¼¥«¥ëÊÑ¿ô¤Î¥¢¥É¥ì¥¹¤òÊÖ¤·¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "switch ¤ÎÆâÍƤ¬À°¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:6496 +#: c-typeck.c:6519 msgid "`long' switch expression not converted to `int' in ISO C" msgstr "ISO C ¤Ç¤Ï `long' ¤Î switch ¼°¤Ï `int' ¤ËÊÑ´¹¤µ¤ì¤Þ¤»¤ó" -#: c-typeck.c:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "case ¥é¥Ù¥ë¤¬ switch ʸ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "`default' ¥é¥Ù¥ë¤¬ switch ʸ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 #, fuzzy msgid "division by zero" msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "±¦¥·¥Õ¥È²ó¿ô¤¬Éé¤Î¿ô¤Ç¤¹" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "±¦¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "º¸¥·¥Õ¥È²ó¿ô¤¬Éé¤Î¿ô¤Ç¤¹" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "º¸¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "¥·¥Õ¥È²ó¿ô¤¬Éé¤ÎÃͤǤ¹" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "ÉâÆ°¾®¿ôÅÀ¤ÎÈæ³Ó¤Ç == ¤ä != ¤ò»È¤¦¤Î¤Ï°ÂÁ´¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 msgid "ISO C forbids comparison of `void *' with function pointer" msgstr "ISO C ¤Ï `void *' ¤È´Ø¿ô¥Ý¥¤¥ó¥¿¤È¤ÎÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 msgid "comparison of distinct pointer types lacks a cast" msgstr "·¿¤¬Á´¤¯°Û¤Ê¤ë¥Ý¥¤¥ó¥¿¤ÎÈæ³Ó¤Ç¥­¥ã¥¹¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "¥Ý¥¤¥ó¥¿¤ÈÀ°¿ô¤È¤ÎÈæ³Ó¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤Þ¤¹" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "ISO C ´Ø¿ô¥Ý¥¤¥ó¥¿¤Î½ç½øÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹" -#: c-typeck.c:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "´°Á´¤Ê¥Ý¥¤¥ó¥¿¤ÈÉÔ´°Á´¤Ê¥Ý¥¤¥ó¥¿¤È¤ÎÈæ³Ó¤Ç¤¹" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "À°¿ô 0 ¤È¥Ý¥¤¥ó¥¿¤È¤Î½ç½øÈæ³Ó¤Ç¤¹" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 msgid "unordered comparison on non-floating point argument" msgstr "ÈóÉâÆ°¾®¿ôÅÀ°ú¿ô¤Ç¤Î½ç½øÉÕ¤±¤é¤ì¤Ê¤¤Èæ³Ó¤Ç¤¹" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "Éä¹çÉÕ¤­¤ÈÉä¹ç̵¤·¤È¤ÎÈæ³Ó¤Ç¤¹" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "~¤Çȿž¤µ¤ì¤¿³Ê¾å¤²Éä¹ç̵¤··¿¤ÈÄê¿ô¤È¤ÎÈæ³Ó¤Ç¤¹" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "~¤Çȿž¤µ¤ì¤¿Éä¹ç̵¤··¿¤ÈÉä¹ç̵¤··¿¤È¤ÎÈæ³Ó¤Ç¤¹" @@ -3862,46 +3862,46 @@ msgstr "̿ msgid "function body not available" msgstr "´Ø¿ô¤ò inline ¤Ë¤Ç¤­¤Þ¤»¤ó" -#: cgraph.c:163 cgraphunit.c:340 +#: cgraph.c:163 cgraphunit.c:341 #, fuzzy msgid "redefined extern inline functions are not considered for inlining" msgstr "¥¤¥ó¥é¥¤¥ó´Ø¿ô¤ò¥¤¥ó¥é¥¤¥ó²½¤Ç¤­¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: cgraph.c:166 cgraphunit.c:345 +#: cgraph.c:166 cgraphunit.c:346 #, fuzzy msgid "function not considered for inlining" msgstr "´Ø¿ô¤ò inline ¤Ë¤Ç¤­¤Þ¤»¤ó" -#: cgraph.c:168 cgraphunit.c:343 +#: cgraph.c:168 cgraphunit.c:344 #, fuzzy msgid "function not inlinable" msgstr "´Ø¿ô¤ò inline ¤Ë¤Ç¤­¤Þ¤»¤ó" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "" @@ -4089,7 +4089,7 @@ msgstr "%s: COFF msgid "library lib%s not found" msgstr "¥é¥¤¥Ö¥é¥ê lib%s ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -4099,7 +4099,7 @@ msgstr "" ";; ·ë¹çÅý·×: %d »î¹Ô, %d ÂåÂØ (%d ¿·¤¿¤Ê¶õ´Ö¤òÍ×µá),\n" ";; %d À®¸ù¡£\n" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -4957,7 +4957,7 @@ msgstr " msgid "syntax error in macro parameter list" msgstr "\"%s\" ¤Ï¥Þ¥¯¥í²¾°ú¿ô¥ê¥¹¥È¤Ë¸½¤ì¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr ";; %d ¤«¤é %d ¤Þ¤Ç¤Î½èÍý¥Ö¥í¥Ã¥¯¡¢%d ¥»¥Ã¥È¡£\n" @@ -5036,17 +5036,17 @@ msgstr " msgid "function using short complex types cannot be inline" msgstr "short complex ·¿¤ò»È¤¦´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó" -#: expr.c:6385 +#: expr.c:6386 #, fuzzy msgid "%Jprior parameter's size depends on '%D'" msgstr "Í¥À褹¤ë²¾°ú¿ô¤Î¥µ¥¤¥º¤Ï `%s' ¼¡Âè¤Ç¤¹" -#: expr.c:6752 +#: expr.c:6753 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:8895 +#: expr.c:8894 #, fuzzy msgid "cannot take the address of an unaligned member" msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤Î¥¢¥É¥ì¥¹¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó" @@ -5093,12 +5093,12 @@ msgstr "`%l' #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "ÉâÆ°¾®¿ôÄê¿ô¤ò»È¤¤Â»¤Í¤Þ¤·¤¿" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "¥ª¥Ú¥é¥ó¥É¤È¤·¤Æ̵¸ú¤Ê¼°" @@ -5151,26 +5151,26 @@ msgstr " msgid "impossible constraint in `asm'" msgstr "`asm' Æâ¤Ç¤Ï¥ì¥¸¥¹¥¿À©Ìó¤ò¹Ô¤Ê¤¨¤Þ¤»¤ó" -#: function.c:5723 +#: function.c:5733 #, fuzzy msgid "%J'%D' might be used uninitialized in this function" msgstr "`%s' ¤Ï¤³¤Î´Ø¿ôÆâ¤Ç½é´ü²½¤µ¤ì¤º¤Ë»ÈÍѤµ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹" -#: function.c:5730 +#: function.c:5740 #, fuzzy msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "ÊÑ¿ô `%s' ¤Ï `longjmp' ¤ä `vfork' ¤Ë¤è¤Ã¤Æ¹ó¤¤¤³¤È¤Ë¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹" -#: function.c:5749 +#: function.c:5759 #, fuzzy msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "°ú¿ô `%s' ¤Ï `longjmp' ¤ä `vfork' ¤Ë¤è¤Ã¤Æ¹ó¤¤¤³¤È¤Ë¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "´Ø¿ô¤¬½¸¹çÂΤòÊÖ¤·¤Æ¤¤¤Þ¤¹" -#: function.c:7006 +#: function.c:6929 #, fuzzy msgid "%Junused parameter '%D'" msgstr "°ú¿ô `%s' ¤¬Ì¤»ÈÍѤǤ¹" @@ -6646,7 +6646,7 @@ msgstr " msgid "can't use '%s' as a %s register" msgstr "'%s' ¤ò %s ¤Î¥ì¥¸¥¹¥¿¤È¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "ÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾¤Ç¤¹: %s" @@ -6704,49 +6704,49 @@ msgstr " msgid "inconsistent operand constraints in an `asm'" msgstr "`asm' Æâ¤Ç¤Î¥ª¥Ú¥é¥ó¥ÉÀ©Ìó¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹" -#: reload1.c:1212 +#: reload1.c:1222 msgid "frame size too large for reliable stack checking" msgstr "¥Õ¥ì¡¼¥à¥µ¥¤¥º¤¬Â礭¤¹¤®¤Æ¡¢¥¹¥¿¥Ã¥¯¸¡ºº¤¬¿®Íê¤Ç¤­¤Ê¤¯¤Ê¤ê¤Þ¤¹" -#: reload1.c:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤Î¿ô¤òºï¸º¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤" -#: reload1.c:1868 +#: reload1.c:1878 #, fuzzy, c-format msgid "can't find a register in class `%s' while reloading `asm'" msgstr "¥¯¥é¥¹ `%s' Æâ¤Î¥ì¥¸¥¹¥¿¤ò `asm' ºÆ¥í¡¼¥ÉÃæ¤Ë¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó" -#: reload1.c:1872 +#: reload1.c:1882 #, fuzzy, c-format msgid "unable to find a register to spill in class `%s'" msgstr "¥¯¥é¥¹ `%s' Æâ¤Ç¤Õ¤ë¤¤Íî¤È¤¹¥ì¥¸¥¹¥¿¤ò¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó" -#: reload1.c:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "`asm' ¥ª¥Ú¥é¥ó¥É¤ÏºÆ¥í¡¼¥É¤Ç¤­¤Ê¤¤»ö¤¬Í׵ᤵ¤ì¤Þ¤¹" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 #, fuzzy msgid "could not find a spill register" msgstr "spec ¥Õ¥¡¥¤¥ë %s ¤ò¸«¤Ä¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿\n" -#: reload1.c:4968 +#: reload1.c:4978 msgid "`asm' operand constraint incompatible with operand size" msgstr "`asm' ¥ª¥Ú¥é¥ó¥ÉÀ©Ì󤬥ª¥Ú¥é¥ó¥É¥µ¥¤¥º¤ÈÀ°¹ç¤·¤Þ¤»¤ó" #. It's the compiler's fault. -#: reload1.c:6590 +#: reload1.c:6600 #, fuzzy msgid "VOIDmode on an output" msgstr "½ÐÎÏÃæ¤Ë I/O ¥¨¥é¡¼¤¬È¯À¸" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥É¤¬ `asm' Æâ¤ÇÄê¿ô¤Ç¤¹" @@ -6800,7 +6800,7 @@ msgstr "RTL msgid "jump to `%s' invalidly jumps into binding contour" msgstr "`%s' ¤Ø¤Î¥¸¥ã¥ó¥×¤ÏÅ»¤á¤é¤ì¤¿¥Ö¥í¥Ã¥¯Æâ¤Ø¡¢Ìµ¸ú¤Ë¥¸¥ã¥ó¥×¤·¤Æ¤¤¤Þ¤¹" -#: stmt.c:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 #, fuzzy msgid "%Jlabel '%D' used before containing binding contour" msgstr "¥é¥Ù¥ë `%s' ¤¬Å»¤á¤é¤ì¤¿¥Ö¥í¥Ã¥¯¤ò¹½À®¤¹¤ëÁ°¤Ë»È¤ï¤ì¤Þ¤·¤¿" @@ -6819,7 +6819,7 @@ msgstr " msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "¥ª¥Ú¥é¥ó¥ÉÀ©ÌóÃæ¡¢ÉÔÀµ¤Ê°ÌÃÖ¤Ë '+' ¤ä '=' ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "`%%' À©Ì󤬺Ǹå¤Î¥ª¥Ú¥é¥ó¥É¤È¤È¤â¤Ë»È¤ï¤ì¤Þ¤·¤¿" @@ -6828,129 +6828,124 @@ msgstr "`%%' msgid "matching constraint not valid in output operand" msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥ÉÆâ¤ÎÀ©Ìó¤¬Àµ¤·¤¯¤¢¤ê¤Þ¤»¤ó" -#: stmt.c:1260 -#, fuzzy -msgid "read-write constraint does not allow a register" -msgstr "16 ¿Ê¿ôʸ»úÄê¿ô¤¬ 1 ¥Ð¥¤¥È¤Ë¼ý¤Þ¤ê¤Þ¤»¤ó" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "ÆþÎÏ¥ª¥Ú¥é¥ó¥ÉÀ©Ìó¤¬ `%c' ¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "À©Ìó¤ËŬ¹ç¤µ¤»¤ë»þ¤Ë¡¢Ìµ¸ú¤Ê¥ª¥Ú¥é¥ó¥ÉÈÖ¹æ¤ò»²¾È¤·¤Þ¤·¤¿" -#: stmt.c:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "̵¸ú¤Ê¶çÆÉÅÀ `%c' ¤¬À©ÌóÆâ¤Ë¤¢¤ê¤Þ¤¹" -#: stmt.c:1396 +#: stmt.c:1393 #, fuzzy msgid "matching constraint does not allow a register" msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥ÉÆâ¤ÎÀ©Ìó¤¬Àµ¤·¤¯¤¢¤ê¤Þ¤»¤ó" -#: stmt.c:1424 +#: stmt.c:1421 #, fuzzy, c-format msgid "asm-specifier for variable `%s' conflicts with asm clobber list" msgstr "`%s' ¤Î·¿½¤¾þ»Ò¤¬Á°Êý¤ÎÀë¸À¤ÈÌ·½â¤·¤Þ¤¹" -#: stmt.c:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "`asm' Ãæ¤ËÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾ `%s' ¤¬¤¢¤ê¤Þ¤¹" -#: stmt.c:1522 +#: stmt.c:1519 #, fuzzy, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "`asm' Ãæ¤ËÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾ `%s' ¤¬¤¢¤ê¤Þ¤¹" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "`asm' ¤ÎÃæ¤Ë %d ¤ò±Û¤¨¤ë¥ª¥Ú¥é¥ó¥É¤¬¤¢¤ê¤Þ¤¹" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "½ÐÎÏÈÖ¹æ %d ¤ÏľÀÜ¥¢¥É¥ì¥¹»ØÄê¤Ç¤­¤Þ¤»¤ó" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "asm ¥ª¥Ú¥é¥ó¥É %d ¤Ï¶²¤é¤¯À©Ìó¤ËŬ¹ç¤·¤Þ¤»¤ó" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "`asm' Ãæ¤ÎÂåÂØ¥­¡¼¥ï¡¼¥É¤¬Â¿¤¹¤®¤Þ¤¹" -#: stmt.c:1926 +#: stmt.c:1923 msgid "operand constraints for `asm' differ in number of alternatives" msgstr "`asm' ¤Î¥ª¥Ú¥é¥ó¥ÉÀ©Ìó¤¬ÂåÂØÈÖ¹æ¤È¤Ï°Û¤Ê¤ê¤Þ¤¹" -#: stmt.c:1978 +#: stmt.c:1975 #, fuzzy, c-format msgid "duplicate asm operand name '%s'" msgstr "½ÅÊ£¤·¤¿¥á¥ó¥Ð `%s'" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "" -#: stmt.c:2104 +#: stmt.c:2101 #, fuzzy, c-format msgid "undefined named operand '%s'" msgstr "ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤¤±é»»»Ò %s ¤Ç¤¹" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "" -#: stmt.c:2317 +#: stmt.c:2314 #, fuzzy msgid "%Hvalue computed is not used" msgstr ".da ¥Õ¥¡¥¤¥ë¤ÎÆâÍƤò»È¤¤ÀڤäƤ¤¤Þ¤»¤ó\n" -#: stmt.c:3733 +#: stmt.c:3730 #, fuzzy msgid "%Junused variable '%D'" msgstr "ÊÑ¿ô `%s' ¤Ï»È¤ï¤ì¤Þ¤»¤ó¤Ç¤·¤¿" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "ÎóµóÃÍ `%s' ¤Ï switch Æâ¤Ç°·¤ï¤ì¤Æ¤¤¤Þ¤»¤ó" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "case ÃÍ `%ld' ¤ÏÎóµó·¿¤Ë¤Ï¤¢¤ê¤Þ¤»¤ó" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, c-format msgid "case value `%ld' not in enumerated type `%s'" msgstr "case ÃÍ `%ld' ¤ÏÎóµó·¿ `%s' ¤Ë¤Ï¤¢¤ê¤Þ¤»¤ó" -#: stmt.c:5401 +#: stmt.c:5398 #, fuzzy msgid "switch missing default case" msgstr "¤³¤ì¤¬ºÇ½é¤Î default ¥é¥Ù¥ë¤Ç¤¹" @@ -6988,25 +6983,25 @@ msgstr "packed ° msgid "%Jpadding struct to align '%D'" msgstr "`%s' ¤ò¥¢¥é¥¤¥ó¤¹¤ë¤¿¤á¤Ë¹½Â¤ÂΤò¥Ñ¥Ç¥£¥ó¥°¤·¤Þ¤¹" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "¥¢¥é¥¤¥ó¥á¥ó¥È¶­³¦¤Î¥µ¥¤¥º¤Ë¹½Â¤ÂΤò¥Ñ¥Ç¥£¥ó¥°¤·¤Þ¤¹" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "packed °À­¤Ï `%s' ¤ËÂФ·¤ÆÉÔ¸úΨ¤Ê¥¢¥é¥¤¥ó¥á¥ó¥È¤ò°ú¤­µ¯¤³¤·¤Þ¤¹" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "packed °À­¤Ï `%s' ¤Ë¤ÏɬÍפ¢¤ê¤Þ¤»¤ó" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "packed °À­¤ÏÉÔ¸úΨ¤Ê¥¢¥é¥¤¥ó¥á¥ó¥È¤ò°ú¤­µ¯¤³¤·¤Þ¤¹" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "packed °À­¤ÏɬÍפ¢¤ê¤Þ¤»¤ó" @@ -7159,7 +7154,7 @@ msgstr " msgid "unrecognized gcc debugging option: %c" msgstr "ǧ¼±¤Ç¤­¤Ê¤¤ gcc ¥Ç¥Ð¥Ã¥°¥ª¥×¥·¥ç¥ó: %c" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, fuzzy, c-format msgid "invalid option `%s'" msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `%s'" @@ -7188,25 +7183,25 @@ msgstr " msgid "options enabled: " msgstr "Í­¸ú¥ª¥×¥·¥ç¥ó: " -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, fuzzy, c-format msgid "can't open %s for writing: %m" msgstr "%s ¤ò½ñ¤­¹þ¤ßÍѤ˳«¤±¤Þ¤»¤ó¤Ç¤·¤¿" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "" @@ -7268,7 +7263,7 @@ msgstr "-ffunction-sections msgid "error writing to %s: %m" msgstr "%s ¤Ø¤Î½ñ¤­¹þ¤ß¥¨¥é¡¼¤Ç¤¹" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, fuzzy, c-format msgid "error closing %s: %m" msgstr "¥¨¥é¡¼¤Ë¤è¤ê %s ¤òÊĤ¸¤Þ¤¹" @@ -7330,34 +7325,34 @@ msgstr "`%s' msgid "%Jsize of return value of '%D' is larger than %wd bytes" msgstr "`%s' ¤ÎÌá¤êÃͤΥµ¥¤¥º¤¬ %d ¥Ð¥¤¥È¤è¤ê¤âÂ礭¤¯¤Ê¤ê¤Þ¤¹" -#: tree.c:3800 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "´Ø¿ô¤ÎÇÛÎó¤Ï°ÕÌ£¤¬¤¢¤ê¤Þ¤»¤ó" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "´Ø¿ô¤ÎÊÖ¤¹·¿¤¬´Ø¿ô¤Ç¤¢¤Ã¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "̵¸ú¤Ê¥Ó¥Ã¥ÈÎó½é´ü²½»Ò¤Ç¤¹" -#: tree.c:4736 +#: tree.c:4737 #, fuzzy, c-format msgid "tree check: expected %s, have %s in %s, at %s:%d" msgstr "Tree ¸¡ºº: %s ¤¬¤¢¤ë¤Ù¤­½ê¤Ë %s ¤¬¤¢¤ê¤Þ¤¹(%s Æâ, %s:%d)" -#: tree.c:4749 +#: tree.c:4750 #, 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:4762 +#: tree.c:4763 #, 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)" -#: tree.c:4774 +#: tree.c:4775 #, 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)" @@ -7742,7 +7737,7 @@ msgstr "-mfp-rounding-mode msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "-mfp-trap-mode ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤Æ¤ÎÉÔÀµ¤ÊÃÍ `%s'" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, fuzzy, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "-mcpu ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤Æ¤ÎÉÔÀµ¤ÊÃÍ `%s'" @@ -7794,24 +7789,24 @@ msgstr "̵ msgid "invalid %%J value" msgstr "̵¸ú¤Ê %%W ÃͤǤ¹" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "̵¸ú¤Ê %%r ÃÍ" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "̵¸ú¤Ê %%R ÃÍ" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "̵¸ú¤Ê %%N ÃÍ" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "̵¸ú¤Ê %%P ÃÍ" @@ -7821,17 +7816,17 @@ msgstr "̵ msgid "invalid %%h value" msgstr "̵¸ú¤Ê %%h ÃÍ" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "̵¸ú¤Ê %%L ÃÍ" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "̵¸ú¤Ê %%m ÃÍ" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "̵¸ú¤Ê %%M ÃÍ" @@ -7842,7 +7837,7 @@ msgid "invalid %%U value" msgstr "̵¸ú¤Ê %%U ÃÍ" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "̵¸ú¤Ê %%s ÃÍ" @@ -7852,7 +7847,8 @@ msgstr "̵ msgid "invalid %%C value" msgstr "̵¸ú¤Ê %%C ÃÍ" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "̵¸ú¤Ê %%E ÃÍ" @@ -7862,7 +7858,7 @@ msgstr "̵ msgid "unknown relocation unspec" msgstr "ÉÔÌÀ¤ÊÀßÄêºÑ¥³¥ó¥¹¥È¥é¥¯¥¿·¿¤Ç¤¹" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "̵¸ú¤Ê %%xn ¥³¡¼¥É" @@ -8026,17 +8022,17 @@ msgstr "`asm' msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\"" msgstr "" -#: config/arc/arc.c:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, fuzzy, c-format msgid "invalid operand to %%R code" msgstr "%R ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, fuzzy, c-format msgid "invalid operand to %%H/%%L code" msgstr "%H/%L ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, fuzzy, c-format msgid "invalid operand to %%U code" msgstr "%U ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É" @@ -8047,7 +8043,7 @@ msgid "invalid operand to %%V code" msgstr "%V ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É½ÐÎÏ¥³¡¼¥É" @@ -8056,7 +8052,7 @@ msgstr "̵ msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "-mcpu=%s ¥¹¥¤¥Ã¥Á¤Ï -march= ¥¹¥¤¥Ã¥Á¤È¶¥¹ç¤·¤Þ¤¹" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "ÃÍ (%s) ¤Ï %s switch ¤Ë¤È¤Ã¤ÆÀµ¤·¤¯¤¢¤ê¤Þ¤»¤ó" @@ -8146,12 +8142,12 @@ msgid "unable to use '%s' for PIC register" msgstr "'%s' ¤ò PIC ¤Î¥ì¥¸¥¹¥¿¤È¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173 #, fuzzy, c-format msgid "`%s' attribute only applies to functions" msgstr "`%s' °À­¤Ï´Ø¿ô¤ËÂФ·¤Æ¤Î¤ßŬÍѤµ¤ì¤Þ¤¹" @@ -8167,7 +8163,7 @@ msgid "selector must be an immediate" msgstr "¥»¥ì¥¯¥¿¤Ï¨ÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "¥Þ¥¹¥¯¤Ï¨ÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" @@ -9607,189 +9603,189 @@ msgstr "ʸ msgid "Do not generate char instructions" msgstr "ʸ»úÌ¿Îá¤òÀ¸À®¤·¤Ê¤¤" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, fuzzy, c-format msgid "code model %s not supported in PIC mode" msgstr "-mcmodel= ¤Ï 32 bit ¥·¥¹¥Æ¥à¾å¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó" -#: config/i386/i386.c:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 config/sparc/sparc.c:387 #, c-format msgid "bad value (%s) for -mcmodel= switch" msgstr "-mcmodel= ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤ÆÉÔÀµ¤ÊÃÍ (%s)" -#: config/i386/i386.c:1195 +#: config/i386/i386.c:1204 #, fuzzy, c-format msgid "bad value (%s) for -masm= switch" msgstr "-mabi= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, fuzzy, c-format msgid "code model `%s' not supported in the %s bit mode" msgstr "-mcmodel= ¤Ï 32 bit ¥·¥¹¥Æ¥à¾å¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó" -#: config/i386/i386.c:1201 +#: config/i386/i386.c:1210 #, fuzzy msgid "code model `large' not supported yet" msgstr "`%s' ¤Ï %s ¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 #, fuzzy msgid "CPU you selected does not support x86-64 instruction set" msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Ï THUMB Ì¿Îá¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 config/iq2000/iq2000.c:1840 #, c-format msgid "bad value (%s) for -march= switch" msgstr "-march= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)" -#: config/i386/i386.c:1248 +#: config/i386/i386.c:1260 #, fuzzy, c-format msgid "bad value (%s) for -mtune= switch" msgstr "-mcpu= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "-mregparm=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 #, fuzzy msgid "-malign-loops is obsolete, use -falign-loops" msgstr "-malign-loops=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, c-format msgid "-malign-loops=%d is not between 0 and %d" msgstr "-malign-loops=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: config/i386/i386.c:1291 +#: config/i386/i386.c:1303 #, fuzzy msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "-malign-jumps=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 #, fuzzy msgid "-malign-functions is obsolete, use -falign-functions" msgstr "-malign-functions=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, 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:1354 +#: config/i386/i386.c:1366 #, c-format msgid "-mbranch-cost=%d is not between 0 and 5" msgstr "-mbranch-cost=%d ¤¬ 0 ¤«¤é 5 ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: config/i386/i386.c:1366 +#: config/i386/i386.c:1378 #, fuzzy, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "-msdata ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 #, fuzzy msgid "-mrtd calling convention not supported in the 64bit mode" msgstr "PIC ¥³¡¼¥ÉÀ¸À®¤Ï²Äȼ¹Իþ¥â¥Ç¥ë¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó\n" -#: config/i386/i386.c:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 #, fuzzy msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿" -#: config/i386/i386.c:1435 +#: config/i386/i386.c:1447 #, fuzzy msgid "387 instruction set disabled, using SSE arithmetics" msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿" -#: config/i386/i386.c:1442 +#: config/i386/i386.c:1454 #, fuzzy, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "-march= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 #, fuzzy msgid "fastcall and stdcall attributes are not compatible" msgstr "shared ¤È mdll ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 #, fuzzy msgid "fastcall and regparm attributes are not compatible" msgstr "shared ¤È mdll ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, fuzzy, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "3 ¤Ä¤Î 'l' ÀÜÈø¼­¤¬À°¿ôÄê¿ô¤Ë¤Ä¤¤¤Æ¤¤¤Þ¤¹" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, fuzzy, c-format msgid "argument to `%s' attribute larger than %d" msgstr "ÄêµÁ¤Î¸å¤Ç `%s' °À­¤ò¥»¥Ã¥È¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó" -#: config/i386/i386.c:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "¥ª¥Ú¥é¥ó¥É¤È¤·¤Æ̵¸ú¤Ê UNSPEC" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 msgid "operand is neither a constant nor a condition code, invalid operand code 'c'" msgstr "" -#: config/i386/i386.c:7457 +#: config/i386/i386.c:7474 #, fuzzy, c-format msgid "invalid operand code `%c'" msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 #, fuzzy msgid "invalid constraints for operand" msgstr "¥ª¥Ú¥é¥ó¥É¤È¤·¤Æ̵¸ú¤Ê¼°" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 #, fuzzy msgid "unknown insn mode" msgstr "ÉÔÌÀ¤Ê¥Þ¥·¥ó¥â¡¼¥É `%s'" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 #, fuzzy msgid "shift must be an immediate" msgstr "¥Þ¥¹¥¯¤Ï¨ÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, fuzzy, c-format msgid "`%s' incompatible attribute ignored" msgstr "`%s' °À­¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿" @@ -9851,43 +9847,43 @@ msgstr "" msgid "%J'%D' causes a section type conflict" msgstr "%s ¤Ï¥»¥¯¥·¥ç¥ó¥¿¥¤¥×¤Î¶¥¹ç¤ò°ú¤­µ¯¤³¤·¤Þ¤¹" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "Cygwin ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "Mingw32 ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "GUI ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºî¤ë" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "Windows ¤Î define ¤òÀßÄꤷ¤Ê¤¤" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "Windows ¤Î define ¤òÀßÄꤹ¤ë" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "¥³¥ó¥½¡¼¥ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºî¤ë" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "DLL ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "´Ø¿ô¤Ø¤Î dllimport ¤ò̵»ë¤¹¤ë" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "Mingw ¸ÇÍ­¤Î¥¹¥ì¥Ã¥É¥µ¥Ý¡¼¥È¤ò»ÈÍѤ¹¤ë" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, c-format msgid "-f%s ignored for target (all code is position independent)" msgstr "-f%s ¤Ï¥¿¡¼¥²¥Ã¥È¤Ç̵»ë¤µ¤ì¤Þ¤¹ (Á´¤Æ¤Î¥³¡¼¥É¤Ï°ÌÃÖÈó°Í¸¤Ç¤¹)" @@ -10092,7 +10088,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "½êÍ¿¤Î CPU ÍѤΥ³¡¼¥É¤ò¥¹¥±¥¸¥å¡¼¥ë¤¹¤ë" @@ -10214,7 +10210,7 @@ msgstr " msgid "iC2.0 and iC3.0 are incompatible - using iC3.0" msgstr "iC2.0 ¤È iC3.0 ¤È¤Ï¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó - iC3.0 ¤ò»ÈÍѤ·¤Þ¤¹" -#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "¥¹¥¿¥Ã¥¯À©¸Â¼°¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó" @@ -10337,8 +10333,8 @@ msgstr "Intel msgid "Do not layout types like Intel's v1.3 gcc" msgstr "Intel v1.3 gcc ¤ÎÍͤʥ¿¥¤¥×¤ÎÇÛÃÖ¤ò¹Ô¤Ê¤ï¤Ê¤¤" -#: 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 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "64 ¥Ó¥Ã¥È long double ¤ò»ÈÍѤ¹¤ë" @@ -10375,44 +10371,44 @@ msgstr " msgid "%Jaddress area attribute cannot be specified for functions" msgstr "¥Ç¡¼¥¿Îΰè°À­¤ò¥í¡¼¥«¥ëÊÑ¿ô¤Ë¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "ia64_print_operand: ÉÔÌÀ¤Ê¥³¡¼¥É¤Ç¤¹" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 msgid "value of -mfixed-range must have form REG1-REG2" msgstr "-mfixed-range ¤ÎÃÍ¤Ï REG1-REG2 ·Á¼°¤ò»ý¤¿¤Í¤Ð¤Ê¤ê¤Þ¤»¤ó" -#: config/ia64/ia64.c:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "%s-%s ¤¬¶õ¤ÎÈϰϤǤ¹" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 #, fuzzy msgid "cannot optimize floating point division for both latency and throughput" msgstr "¥ì¥¤¥Æ¥ó¥·¤È¥¹¥ë¡¼¥×¥Ã¥ÈξÊý¤Îʬ³äºÇŬ²½¤Ï¹Ô¤Ê¤¨¤Þ¤»¤ó" -#: config/ia64/ia64.c:4726 +#: config/ia64/ia64.c:4729 #, fuzzy msgid "cannot optimize integer division for both latency and throughput" msgstr "¥ì¥¤¥Æ¥ó¥·¤È¥¹¥ë¡¼¥×¥Ã¥ÈξÊý¤Îʬ³äºÇŬ²½¤Ï¹Ô¤Ê¤¨¤Þ¤»¤ó" -#: config/ia64/ia64.c:4732 +#: config/ia64/ia64.c:4735 #, fuzzy msgid "cannot optimize square root for both latency and throughput" msgstr "¥ì¥¤¥Æ¥ó¥·¤È¥¹¥ë¡¼¥×¥Ã¥ÈξÊý¤Îʬ³äºÇŬ²½¤Ï¹Ô¤Ê¤¨¤Þ¤»¤ó" -#: config/ia64/ia64.c:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, fuzzy, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "-mabi= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, fuzzy, c-format msgid "bad value (%s) for -tune= switch" msgstr "-mcpu= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)" @@ -10557,7 +10553,7 @@ msgstr "gp_offset (%ld) msgid "argument `%d' is not a constant" msgstr "`asm' ¤Î°ú¿ô¤¬Äê¿ôʸ»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó " -#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "PRINT_OPERAND_ADDRESS, null ¥Ý¥¤¥ó¥¿" @@ -10567,7 +10563,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "PRINT_OPERAND: ÉÔÌÀ¤Ê¶çÆÉÅÀ '%c'" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "PRINT_OPERAND NULL ¥Ý¥¤¥ó¥¿" @@ -10576,7 +10572,7 @@ msgstr "PRINT_OPERAND NULL msgid "invalid %%P operand" msgstr "̵¸ú¤Ê %P ¥ª¥Ú¥é¥ó¥É¤Ç¤¹" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "̵¸ú¤Ê %%p ÃͤǤ¹" @@ -10638,94 +10634,94 @@ msgstr "-msdata msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 #, fuzzy msgid "typename type `%#T' declared `friend'" msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 #, fuzzy msgid "template parameter type `%T' declared `friend'" msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 #, fuzzy msgid "`%#T' is not a template" msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹" -#: cp/friend.c:277 +#: cp/friend.c:281 msgid "`%D' is already a friend of `%T'" msgstr "" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "" -#: cp/friend.c:409 +#: cp/friend.c:413 msgid "member `%D' declared as friend before type `%T' defined" msgstr "" -#: cp/friend.c:465 +#: cp/friend.c:469 #, fuzzy msgid "friend declaration `%#D' declares a non-template function" msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿" -#: cp/friend.c:468 +#: cp/friend.c:472 #, 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 ¤Ç¤³¤Î·Ù¹ðɽ¼¨¤ò̵¸ú¤Ë¤·¤Þ¤¹" @@ -15967,7 +15968,7 @@ msgstr " msgid "type `%T' is of non-aggregate type" msgstr "È󽸹çÂη¿¤ËÂФ·¤ÆŬÍѤµ¤ì¤¿ `sigof'" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "" @@ -16007,76 +16008,75 @@ msgstr " msgid "zero size array reserves no space" msgstr "¥µ¥¤¥º¥¼¥í¤ÎÇÛÎó¤Ï¶õ´Ö¤ò³ÎÊݤ·¤Þ¤»¤ó" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "»²¾È·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "´Ø¿ô·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "Java ¥³¥ó¥¹¥È¥é¥¯¥¿¤¬¸Æ¤Ð¤ì¤Þ¤·¤¿¤¬¡¢`jclass' ¤Ï̤ÄêµÁ¤Ç¤¹" -#: cp/init.c:1876 +#: cp/init.c:1877 #, fuzzy msgid "can't find class$" msgstr "class$ ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "new ¤ËÂФ·¤Æ̵¸ú¤Ê·¿¤Ç¤¢¤ë `void'" -#: cp/init.c:2013 +#: cp/init.c:2014 #, fuzzy msgid "uninitialized const in `new' of `%#T'" msgstr "½é´ü²½»Ò¤Ï `%s' ¤Î¥µ¥¤¥º¤ÎÆÃÄê¤Ë¼ºÇÔ¤·¤Þ¤·¤¿" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "Java ¥³¥ó¥¹¥È¥é¥¯¥¿¤¬¸Æ¤Ð¤ì¤Þ¤·¤¿¤¬¡¢`%s' ¤Ï̤ÄêµÁ¤Ç¤¹" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "" + +#: cp/init.c:2083 #, fuzzy msgid "request for member `%D' is ambiguous" msgstr "Í׵ᤵ¤ì¤¿¥á¥ó¥Ð `%s' ¤Ï¿½Å·Ñ¾µ¥°¥é¥Õ¤ÎÃæ¤ÇÛ£Ëæ¤Ç¤¹" -#: cp/init.c:2193 +#: cp/init.c:2203 #, fuzzy msgid "ISO C++ forbids initialization in array new" msgstr "ISO C++ ¤Ï new ¼°¤Î½é´ü²½¤Ç¤Î `=' ¤ò¶Ø¤¸¤Þ¤¹" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "½é´üÀßÄê»Ò¤ÎËöÈø¤¬ËÜÍè¤è¤êÁ᤯½Ð¸½¤·¤Þ¤·¤¿" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "¿¼¡¸µÇÛÎó¤Ï½é´ü²½»Ò¤Ç½é´ü²½¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó" -#: cp/init.c:2885 +#: cp/init.c:2895 msgid "possible problem detected in invocation of delete operator:" msgstr "" -#: cp/init.c:2888 -msgid "neither the destructor nor the class-specific " +#: cp/init.c:2898 +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: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 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "delete ¤Ç¤ÎÇÛÎó¥µ¥¤¥º¤¬ÉÔÌÀ¤Ç¤¹" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "¥Ù¥¯¥È¥ë·¿¤Î delete ¤Ç¤¹¤¬¡¢¥Ý¥¤¥ó¥¿¤Ç¤âÇÛÎ󷿤Ǥ⤢¤ê¤Þ¤»¤ó" @@ -16170,12 +16170,12 @@ msgstr "" msgid "non-static reference member `%#D', can't use default assignment operator" msgstr "" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 #, fuzzy msgid "`%#D' used prior to declaration" msgstr "`%s' ¤ÏÀë¸À¤è¤ê¤âÀè¤Ë»ÈÍѤµ¤ì¤Þ¤·¤¿" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 #, fuzzy msgid "redeclaration of `wchar_t' as `%T'" msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿" @@ -16186,261 +16186,261 @@ msgstr "`%s' #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 #, fuzzy msgid "invalid redeclaration of `%D'" msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 #, fuzzy msgid "type mismatch with previous external decl of `%#D'" msgstr "·¿¤¬Á°Êý¤Î³°ÉôÀë¸À¤È°ìÃפ·¤Þ¤»¤ó" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 #, fuzzy msgid "previous external decl of `%#D'" msgstr "Á°Êý¤Î `%s' ¤Î³°ÉôÀë¸À" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 #, fuzzy msgid "`%D' was previously implicitly declared to return `int'" msgstr "`%s' ¤ÏÁ°Êý¤Ç°ÅÌÛŪ¤Ë `int' ¤òÊÖ¤¹¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 #, fuzzy msgid "extern declaration of `%#D' doesn't match" msgstr "`%s' ¤Îextern Àë¸À¤Ï¥°¥í¡¼¥Ð¥ë¤Î¤½¤ì¤È°ìÃפ·¤Þ¤»¤ó" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 #, fuzzy msgid "global declaration `%#D'" msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 #, fuzzy msgid "declaration of '%#D' shadows a parameter" msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¤òʤ¤¤±£¤·¤Þ¤¹" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 #, fuzzy msgid "declaration of '%D' shadows a member of 'this'" msgstr "`%s' ¤ÎÀë¸À¤Ë¤è¤ê `this' ¤Î¥á¥ó¥Ð¤¬Ê¤¤¤±£¤µ¤ì¤Þ¤¹" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 #, fuzzy msgid "declaration of '%D' shadows a previous local" msgstr "`%s' ¤ÎÀë¸À¤ÏÁ°Êý¤Î¥í¡¼¥«¥ë¥·¥ó¥Ü¥ë¤òʤ¤¤±£¤·¤Þ¤¹" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 #, fuzzy msgid "declaration of '%D' shadows a global declaration" msgstr "`%s' ¤ÎÀë¸À¤Ï¥°¥í¡¼¥Ð¥ëÀë¸À¤òʤ¤¤±£¤·¤Þ¤¹" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 #, fuzzy msgid "name lookup of `%D' changed" msgstr "`%s' ¤Î̾Á°°ú¤­¤ÏÊѹ¹¤µ¤ì¤Þ¤·¤¿" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr "" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr "" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 #, fuzzy msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "`%s' ¤Î̾Á°°ú¤­¤Ï¿·¤¿¤Ê ISO `for' ¥¹¥³¡¼¥×¤ËÊѤï¤ê¤Þ¤·¤¿" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 msgid " cannot use obsolete binding at `%D' because it has a destructor" msgstr "" -#: cp/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr "" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, fuzzy, c-format msgid "%s %s %p %d\n" msgstr "%s: %s: " -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 #, fuzzy msgid "`%#D' hides constructor for `%#T'" msgstr "`%#D' ¤Î¤¿¤á¤Î¥Ç¥¹¥È¥é¥¯¥¿¤¬É¬ÍפǤ¹" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 #, fuzzy msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 #, fuzzy msgid "previous non-function declaration `%#D'" msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 #, 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:2101 +#: cp/name-lookup.c:2112 msgid "a using-declaration cannot specify a template-id. Try `using %D'" msgstr "" -#: cp/name-lookup.c:2107 +#: cp/name-lookup.c:2118 #, 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 #, fuzzy msgid "`%D' not declared" msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿" #. If the OLD_FN was really declared, the #. declarations don't match. -#: cp/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:2898 +#: cp/name-lookup.c:2909 #, fuzzy msgid "using-declaration cannot name destructor" msgstr "friend Àë¸À¤¬¥¯¥é¥¹ÄêµÁ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 #, fuzzy msgid "declaration of `%D' not in a namespace surrounding `%D'" msgstr "`%s' ¤ÎÀë¸À¤Ë¤è¤ê `this' ¤Î¥á¥ó¥Ð¤¬Ê¤¤¤±£¤µ¤ì¤Þ¤¹" -#: cp/name-lookup.c:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 #, fuzzy msgid "unknown namespace `%D'" msgstr "ÉÔÌÀ¤Ê #pragma namespace %s ¤Ç¤¹" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 #, fuzzy msgid "namespace `%T' undeclared" msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 #, fuzzy msgid "`%D' attribute directive ignored" msgstr "`%s' °À­¤Îµ¿»÷Ì¿Î᤬̵»ë¤µ¤ì¤Þ¤·¤¿" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 #, fuzzy msgid "use of `%D' is ambiguous" msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 #, fuzzy msgid "%J first type here" msgstr " ¤³¤³¤«¤é" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 #, fuzzy msgid "invalid use of `%D'" msgstr "`restrict' ¤ÎÍÑË¡¤¬ÉÔŬÀڤǤ¹" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 #, fuzzy msgid "`%D::%D' is not a template" msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 #, fuzzy msgid "`%D' is not a function," msgstr "`%s' ¤ÏÄ̾ï¤Ï´Ø¿ô¤Ç¤¹" -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 #, fuzzy msgid " conflict with `%D'" msgstr "`%s' ¤Ï `-g%s' ¤È¶¥¹ç¤¹¤ë¤¿¤á̵»ë¤µ¤ì¤Þ¤·¤¿" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -16532,183 +16532,191 @@ msgstr "" msgid "typedef-name `%D' used as destructor declarator" msgstr "" -#: cp/parser.c:3635 +#: cp/parser.c:3638 #, fuzzy msgid "ISO C++ forbids compound-literals" msgstr "ISO C++ ¤ÏÊ£¹ç¥ê¥Æ¥é¥ë¤ò¶Ø¤¸¤Þ¤¹" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4619 +#: cp/parser.c:4624 #, fuzzy msgid "expression in new-declarator must have integral or enumeration type" msgstr "ÇÛÎó new ¤Ç¤Î¥µ¥¤¥º¤Ï´°Á´¤Ê·¿¤ò»ý¤¿¤Í¤Ð¤Ê¤ê¤Þ¤»¤ó" -#: cp/parser.c:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "¸Å¤¤¥¹¥¿¥¤¥ë¤Î¥­¥ã¥¹¥È¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, fuzzy, c-format msgid "case label `%E' not within a switch statement" msgstr "case ¥é¥Ù¥ë¤¬ switch ʸ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: cp/parser.c:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "ISO C++ ¤Ï·×»»·¿ goto ¤ò¶Ø¤¸¤Þ¤¹" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6640 +#: cp/parser.c:6645 #, fuzzy msgid "duplicate `friend'" msgstr "`%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹" -#: cp/parser.c:6789 +#: cp/parser.c:6794 #, fuzzy msgid "class definition may not be declared a friend" msgstr "`%s' ¤Ï´Ø¿ô¤Ç¤â¥á¥ó¥Ð´Ø¿ô¤Ç¤â¤¢¤ê¤Þ¤»¤ó -- friend ¤È¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤·¤«´ðÄì½é´ü²½»Ò¥ê¥¹¥È¤ò¤È¤ê¤Þ¤»¤ó" -#: cp/parser.c:7155 +#: cp/parser.c:7160 #, fuzzy msgid "anachronistic old-style base class initializer" msgstr "Á°»þÂåŪ¤Ê¸Å¤¤¥¹¥¿¥¤¥ë¤Î´ðÄ쥯¥é¥¹½é´ü²½»Ò¤Ç¤¹" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 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:7908 +#: cp/parser.c:7923 msgid "`<::' cannot begin a template-argument list" msgstr "" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 #, fuzzy msgid "non-template `%D' used as template" msgstr "`::main' ¤ò template ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó" -#: cp/parser.c:8089 -msgid "(use `%T::template %D' to indicate that it is a template)" +#: cp/parser.c:8107 +msgid "use `%T::template %D' to indicate that it is a template" msgstr "" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "" -#: cp/parser.c:9148 +#: cp/parser.c:9180 msgid "expected type-name" msgstr "" -#: cp/parser.c:9207 +#: cp/parser.c:9239 msgid "type attributes are honored only at type definition" msgstr "" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 msgid "a template-id may not appear in a using-declaration" msgstr "" -#: cp/parser.c:9917 +#: cp/parser.c:9949 #, fuzzy msgid "an asm-specification is not allowed on a function-definition" msgstr "½é´ü²½»Ò¥ê¥¹¥È¤ÏÈó¥á¥ó¥Ð´Ø¿ô¤Ç¤Ï»È¤¨¤Þ¤»¤ó" -#: cp/parser.c:9919 +#: cp/parser.c:9951 #, fuzzy msgid "attributes are not allowed on a function-definition" msgstr "Âç°è register ÊÑ¿ô¤¬´Ø¿ôÄêµÁ¤Î¸å¤í¤Ë¤¢¤ê¤Þ¤¹" -#: cp/parser.c:10052 +#: cp/parser.c:10084 msgid "attributes after parenthesized initializer ignored" msgstr "" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +msgid "`%T::%D' is not a type" +msgstr "" + +#: cp/parser.c:11288 #, fuzzy msgid "file ends in default argument" msgstr "̵¸ú¤Ê¥Ç¥Õ¥©¥ë¥È¥Æ¥ó¥×¥ì¡¼¥È°ú¿ô" -#: cp/parser.c:11310 +#: cp/parser.c:11344 msgid "deprecated use of default argument for parameter of non-function" msgstr "" -#: cp/parser.c:11313 +#: cp/parser.c:11347 #, fuzzy msgid "default arguments are only permitted for function parameters" msgstr "¥á¥½¥Ã¥É¤Ï´Ø¿ô¥Ý¥¤¥ó¥¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó" -#: cp/parser.c:12043 +#: cp/parser.c:12078 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "" -#: cp/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "" -#: cp/parser.c:12067 +#: cp/parser.c:12102 msgid "an explicit specialization must be preceded by 'template <>'" msgstr "" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12399 +#: cp/parser.c:12434 #, fuzzy msgid "friend declaration does not name a class or function" msgstr "friend Àë¸À¤¬¥¯¥é¥¹ÄêµÁ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" msgstr "" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" msgstr "" -#: cp/parser.c:13665 +#: cp/parser.c:13700 #, fuzzy msgid "reference to `%D' is ambiguous" msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n" -#: cp/parser.c:13839 +#: cp/parser.c:13874 msgid "too few template-parameter-lists" msgstr "" @@ -16716,49 +16724,49 @@ msgstr "" #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 msgid "too many template-parameter-lists" msgstr "" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 #, fuzzy msgid "invalid function declaration" msgstr "̵¸ú¤ÊÀë¸À¤Ç¤¹" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 #, fuzzy msgid "named return values are no longer supported" msgstr "--driver ¤ÏºÇÁ᥵¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó" -#: cp/parser.c:14522 +#: cp/parser.c:14561 #, 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:14530 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14535 +#: cp/parser.c:14574 #, fuzzy msgid "missing `>' to terminate the template argument list" msgstr "¥Þ¥¯¥í²¾°ú¿ô¥ê¥¹¥È¤Ç¡¢')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "" -#: cp/parser.c:15043 +#: cp/parser.c:15082 #, fuzzy msgid "%D redeclared with different access" msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -17130,168 +17138,168 @@ msgstr " msgid "%s %+#T" msgstr "%s: %s" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 #, fuzzy msgid "instantiation of `%D' as type `%T'" msgstr "%s: `%s' ¤Î½é´ü²½:\n" -#: cp/pt.c:6469 +#: cp/pt.c:6470 #, fuzzy msgid "invalid parameter type `%T'" msgstr "²¾°ú¿ô `%s' ¤Ï̵¸ú¤Ç¤¹" -#: cp/pt.c:6471 +#: cp/pt.c:6472 #, fuzzy msgid "in declaration `%D'" msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿" -#: cp/pt.c:6545 +#: cp/pt.c:6546 #, fuzzy msgid "creating pointer to member function of non-class type `%T'" msgstr "¥á¥ó¥Ð´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤¬¸Æ¤Ð¤ì¤Þ¤·¤¿¤¬¡¢¥¯¥é¥¹¥¹¥³¡¼¥×Æâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: cp/pt.c:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "Â礭¤µ¥¼¥í¤ÎÇÛÎó¤òºî¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, fuzzy, c-format msgid "creating array with size zero (`%E')" msgstr "Â礭¤µ¥¼¥í¤ÎÇÛÎó¤òºî¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/pt.c:6937 +#: cp/pt.c:6938 #, fuzzy msgid "forming reference to void" msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤òÊÖ¤½¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "" -#: cp/pt.c:6976 +#: cp/pt.c:6977 #, fuzzy msgid "creating pointer to member of non-class type `%T'" msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç" -#: cp/pt.c:6982 +#: cp/pt.c:6983 #, fuzzy msgid "creating pointer to member reference type `%T'" msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç" -#: cp/pt.c:7068 +#: cp/pt.c:7069 #, fuzzy msgid "creating array of `%T'" msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹" -#: cp/pt.c:7074 +#: cp/pt.c:7075 msgid "creating array of `%T', which is an abstract class type" msgstr "" -#: cp/pt.c:7118 +#: cp/pt.c:7119 msgid "`%T' is not a class, struct, or union type" msgstr "" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr "" -#: cp/pt.c:8609 +#: cp/pt.c:8613 msgid "`%T' uses anonymous type" msgstr "" -#: cp/pt.c:8611 +#: cp/pt.c:8615 msgid "`%T' uses local type `%T'" msgstr "" -#: cp/pt.c:8619 +#: cp/pt.c:8623 msgid "`%T' is a variably modified type" msgstr "" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, fuzzy, c-format msgid "integral expression `%E' is not constant" msgstr "½é´ü²½»Ò¤ÎÍ×ÁǤ¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: cp/pt.c:8635 +#: cp/pt.c:8639 #, fuzzy msgid " trying to instantiate `%D'" msgstr "%s:%d: `%s' ¤«¤é¼ÂÂ⽤µ¤ì¤Þ¤·¤¿\n" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "ÉÔ´°Á´¤Ê·¿¤Îñ°ì²½" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "¥Æ¥ó¥×¥ì¡¼¥È·¿Åý°ìÃæ `%s' ¤¬»ÈÍѤµ¤ì¤Þ¤·¤¿" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 #, fuzzy msgid "explicit instantiation of non-template `%#D'" msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "" -#: cp/pt.c:10551 +#: cp/pt.c:10568 #, fuzzy msgid "explicit instantiation of `%#D'" msgstr "%s: `%s' ¤Î½é´ü²½:\n" -#: cp/pt.c:10588 +#: cp/pt.c:10605 #, fuzzy msgid "duplicate explicit instantiation of `%#D'" msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹" -#: cp/pt.c:10610 +#: cp/pt.c:10627 #, fuzzy msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "ISO C++ ¤Ï¸º»»¤Ë¥á¥½¥Ã¥É¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/pt.c:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 #, fuzzy msgid "storage class `%D' applied to template instantiation" msgstr "¼«Æ°¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂ⽤òÍ­¸ú¤Ë¤¹¤ë" -#: cp/pt.c:10667 +#: cp/pt.c:10684 #, fuzzy msgid "explicit instantiation of non-template type `%T'" msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë" -#: cp/pt.c:10676 +#: cp/pt.c:10693 #, fuzzy msgid "explicit instantiation of `%#T' before definition of template" msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, fuzzy, c-format msgid "ISO C++ forbids the use of `%s' on explicit instantiations" msgstr "ISO C++ ¤Ï¸º»»¤Ë´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/pt.c:10728 +#: cp/pt.c:10745 #, fuzzy msgid "duplicate explicit instantiation of `%#T'" msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹" -#: cp/pt.c:11109 +#: cp/pt.c:11126 #, fuzzy msgid "explicit instantiation of `%D' but no definition available" msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë" -#: cp/pt.c:11543 +#: cp/pt.c:11562 #, fuzzy msgid "`%#T' is not a valid type for a template constant parameter" msgstr "'#' ¤Ë¥Þ¥¯¥í²¾°ú¿ô̾¤¬Â³¤¤¤Æ¤¤¤Þ¤»¤ó" @@ -17472,7 +17480,7 @@ msgstr " msgid "incomplete type `%T' used in nested name specifier" msgstr "" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 #, fuzzy msgid "`%D' is not a member of `%T'" msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó" @@ -17520,253 +17528,253 @@ msgstr "`%s' msgid "type of `%E' is unknown" msgstr "¥ì¥¸¥¹¥¿ '%c' ¤¬ÉÔÌÀ¤Ç¤¹" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "%s ¤Ëº¸ÊÕÃͤǤϤʤ¤ÃÍ" -#: cp/tree.c:539 +#: cp/tree.c:532 #, fuzzy msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "`%s' ¤Ï `%s' ¤Ë±þÅú¤·¤Þ¤»¤ó" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, fuzzy, c-format msgid "`%s' attribute can only be applied to Java class definitions" msgstr "`java_interface' °À­¤Ï Java ¥¯¥é¥¹ÄêµÁ¤ËÂФ·¤Æ¤Î¤ßÍѤ¤¤ë»ö¤¬¤Ç¤­¤Þ¤¹" -#: cp/tree.c:1857 +#: cp/tree.c:1850 #, fuzzy, c-format msgid "`%s' attribute can only be applied to class definitions" msgstr "`com_interface' °À­¤Ï¥¯¥é¥¹ÄêµÁ¤Ë¤Î¤ßÍѤ¤¤ë»ö¤¬¤Ç¤­¤Þ¤¹" -#: cp/tree.c:1863 +#: cp/tree.c:1856 #, c-format msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default" msgstr "" -#: cp/tree.c:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "Í׵ᤵ¤ì¤¿ init_priority ¤ÏÀ°¿ô·¿¤ÎÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, fuzzy, c-format msgid "can only use `%s' attribute on file-scope definitions of objects of class type" msgstr "init_priority °À­¤Ï¥¯¥é¥¹·¿¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Õ¥¡¥¤¥ë¥¹¥³¡¼¥×ÄêµÁ¤Ç¤Î¤ß»È¤¨¤Þ¤¹" -#: cp/tree.c:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "Í׵ᤵ¤ì¤¿ init_priority ¤¬Èϰϳ°¤Ç¤¹" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "Í׵ᤵ¤ì¤¿ init_priority ¤ÏÆâÉô¤Ç»ÈÍѤ¹¤ë¤¿¤á¤ËͽÌ󤵤ì¤Æ¤¤¤Þ¤¹" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, fuzzy, c-format msgid "`%s' attribute is not supported on this platform" msgstr "init_priority °À­¤Ï¤³¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, fuzzy, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "Tree ¸¡ºº: %s ¤¬¤¢¤ë¤Ù¤­½ê¤Ë %s ¤¬¤¢¤ê¤Þ¤¹(%s Æâ, %s:%d)" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 #, fuzzy msgid "%s between distinct pointer types `%T' and `%T' lacks a cast" msgstr "·¿¤¬Á´¤¯°Û¤Ê¤ë¥Ý¥¤¥ó¥¿¤ÎÈæ³Ó¤Ç¥­¥ã¥¹¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:513 +#: cp/typeck.c:512 #, c-format msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function" msgstr "ISO C++ ¤Ï `void *' ·¿¥Ý¥¤¥ó¥¿¤È´Ø¿ô¥Ý¥¤¥ó¥¿¤È¤Î %s ¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:563 +#: cp/typeck.c:562 #, fuzzy msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast" msgstr "·¿¤¬Á´¤¯°Û¤Ê¤ë¥Ý¥¤¥ó¥¿¤ÎÈæ³Ó¤Ç¥­¥ã¥¹¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:1235 +#: cp/typeck.c:1234 #, fuzzy, c-format msgid "invalid application of `%s' to a member function" msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, fuzzy, c-format msgid "invalid application of `%s' to a bit-field" msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Ë `__alignof' ¤¬Å¬ÍѤµ¤ì¤Þ¤·¤¿" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, fuzzy, c-format msgid "ISO C++ forbids applying `%s' to an expression of function type" msgstr "ISO C++ ¤Ï´Ø¿ô·¿¤Î¼°¤Ø¤Î `sizeof' ¤ÎŬÍѤò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:1342 +#: cp/typeck.c:1308 #, fuzzy msgid "invalid use of non-static member function" msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 #, fuzzy msgid "deprecated conversion from string constant to `%T'" msgstr "ʸ»úÎóÄê¿ôÃæ¤Î \\r ¥¨¥¹¥±¡¼¥×" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 msgid "request for member `%D' in `%E', which is of non-class type `%T'" msgstr "" -#: cp/typeck.c:1610 +#: cp/typeck.c:1633 #, fuzzy, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 msgid "invalid access to non-static data member `%D' of NULL object" msgstr "" -#: cp/typeck.c:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 #, fuzzy msgid "`%D::%D' is not a member of `%T'" msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 #, fuzzy msgid "`%T' is not a base of `%T'" msgstr "`%s' ¤Ï `%s' ¤Ë±þÅú¤·¤Þ¤»¤ó" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 #, fuzzy msgid "'%D' has no member named '%E'" msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 #, 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:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "̵¸ú¤Ê·¿°ú¿ô¤Ç¤¹" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "ISO C++ ¤Ïº¸ÊÕÃͤǤϤʤ¤ÇÛÎó¤Îź»ú¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "`register' ¤ÈÀë¸À¤µ¤ì¤¿ÇÛÎó¤Ëź»ú¤ò¤Ä¤±¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, fuzzy, c-format msgid "object missing in use of `%E'" msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¹½ÃۤλÈÍѤǥª¥Ö¥¸¥§¥¯¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "ISO C++ ¤Ï¥×¥í¥°¥é¥à¤ÎÃ椫¤é `::main' ¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, fuzzy, c-format msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'" msgstr "¤³¤³¤Ç¤Ï¥á¥ó¥Ð´Ø¿ô¥Ý¥¤¥ó¥¿¸Æ¤Ó½Ð¤·¤¬¤Ç¤­¤Þ¤»¤ó" -#: cp/typeck.c:2446 +#: cp/typeck.c:2469 #, fuzzy, c-format msgid "`%E' cannot be used as a function" msgstr "\"%s\" ¤Ï¥Þ¥¯¥í̾¤È¤·¤Æ¤Ï»È¤¨¤Þ¤»¤ó" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 #, fuzzy msgid "too many arguments to %s `%+#D'" msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "¥Õ¥¡¥¤¥ë¤Î¤³¤Î°ÌÃÖ" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 #, fuzzy msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "²¾°ú¿ô `%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 #, fuzzy msgid "parameter %P has incomplete type `%T'" msgstr "²¾°ú¿ô¤¬ÉÔ´°Á´·¿¤Ç¤¹" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 #, fuzzy msgid "too few arguments to %s `%+#D'" msgstr "´Ø¿ô `%s' ¤Ø¤Î°ú¿ô¤¬¾¯¤Ê¤¹¤®¤Þ¤¹" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 msgid "assuming cast to type `%T' from overloaded function" msgstr "" -#: cp/typeck.c:2863 +#: cp/typeck.c:2886 #, fuzzy, c-format msgid "division by zero in `%E / 0'" msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, fuzzy, c-format msgid "division by zero in `%E / 0.'" msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, fuzzy, c-format msgid "division by zero in `%E %% 0'" msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, fuzzy, c-format msgid "division by zero in `%E %% 0.'" msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "%s ¥í¡¼¥Æ¡¼¥È²ó¿ô¤¬Éé¤ÎÃͤǤ¹" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "%s ¥í¡¼¥Æ¡¼¥È²ó¿ô >= ·¿¤ÎÉý¤Ç¤¹" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "ISO C++ ¤Ï¥Ý¥¤¥ó¥¿¤ÈÀ°¿ô¤È¤ÎÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 #, fuzzy msgid "comparison between types `%#T' and `%#T'" msgstr "¥Ý¥¤¥ó¥¿¤ÈÀ°¿ô¤È¤ÎÈæ³Ó¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "Éä¹çÉÕ¤­¤ÈÉä¹ç̵¤·¤ÎÀ°¿ô¼°Æ±»Î¤ÎÈæ³Ó¤Ç¤¹" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 #, fuzzy msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "Æó¹à±é»»»Ò %s ¤¬ÉÔŬÀڤǤ¹" @@ -17775,304 +17783,304 @@ 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:3418 +#: cp/typeck.c:3441 #, fuzzy msgid "NULL used in arithmetic" msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 msgid "ISO C++ forbids using pointer of type `void *' in subtraction" msgstr "ISO C++ ¤Ï¸º»»¤Ë `void *' ·¿¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:3483 +#: cp/typeck.c:3506 msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "ISO C++ ¤Ï¸º»»¤Ë´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:3485 +#: cp/typeck.c:3508 msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "ISO C++ ¤Ï¸º»»¤Ë¥á¥½¥Ã¥É¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:3497 +#: cp/typeck.c:3520 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "¥Ý¥¤¥ó¥¿±é»»¤ÇÉÔ´°Á´·¿¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤Ï̵¸ú¤Ç¤¹" -#: cp/typeck.c:3553 +#: cp/typeck.c:3582 #, c-format msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id." msgstr "" -#: cp/typeck.c:3559 +#: cp/typeck.c:3588 #, c-format msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "ISO C++ ¤Ï enum ¤Î %s ¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 #, fuzzy msgid "cannot %s a pointer to incomplete type `%T'" msgstr "²¾°ú¿ô `%s' ¤ÏÉÔ´°Á´·¿¤ò»Ø¤·¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 #, fuzzy msgid "ISO C++ forbids %sing a pointer of type `%T'" msgstr "ISO C++ ¤Ï¸º»»¤Ë `void *' ·¿¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:3858 +#: cp/typeck.c:3887 msgid "cast to non-reference type used as lvalue" msgstr "º¸ÊÕÃͤȤ·¤Æ»È¤ï¤ì¤ëÈ󻲾ȷ¿¤Ø¤Î¥­¥ã¥¹¥È¤Ç¤¹" -#: cp/typeck.c:3892 +#: cp/typeck.c:3921 #, fuzzy msgid "invalid use of `--' on bool variable `%D'" msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 msgid "ISO C++ forbids taking address of function `::main'" msgstr "ISO C++ ¤Ï `::main' ´Ø¿ô¤Î¥¢¥É¥ì¥¹¤ò¼è¤ë¤³¤È¤ò¶Ø¤¸¤Þ¤¹" #. An expression like &memfn. -#: cp/typeck.c:3994 +#: cp/typeck.c:4027 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:3999 +#: cp/typeck.c:4032 #, 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:4027 +#: cp/typeck.c:4060 msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression" msgstr "ISO C++ ¤ÏÈóº¸ÊÕÃͼ°¤Ø¤Î¥­¥ã¥¹¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤ë¤³¤È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "ñ¹à¤Î `&'" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 #, fuzzy msgid "attempt to take address of bit-field structure member `%D'" msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð `%s' ¤Î¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Î¥¢¥É¥ì¥¹¤ò¼èÆÀ¤·¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:4190 +#: cp/typeck.c:4227 #, fuzzy msgid "taking address of destructor" msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 #, fuzzy msgid "taking address of bound pointer-to-member expression" msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 #, fuzzy msgid "cannot create pointer to reference member `%D'" msgstr "¥Ý¥¤¥ó¥¿¤ò»²¾È¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 msgid "cannot take the address of `this', which is an rvalue expression" msgstr "`this' ¤Ï±¦ÊÕÃͼ°¤Ç¤¢¤ê¡¢¤½¤Î¥¢¥É¥ì¥¹¤ò¼è¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó" -#: cp/typeck.c:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "" -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, fuzzy, c-format msgid "%s expression list treated as compound expression" msgstr "½é´ü²½»Ò¥ê¥¹¥È¤ÏÊ£¹ç¼°¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤Þ¤·¤¿" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "" -#: cp/typeck.c:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object" msgstr "ISO C++ ¤Ï´Ø¿ô¥Ý¥¤¥ó¥¿¤È¥ª¥Ö¥¸¥§¥¯¥È¥Ý¥¤¥ó¥¿¤Î´Ö¤Ç¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type" msgstr "" -#: cp/typeck.c:4765 +#: cp/typeck.c:4813 msgid "invalid const_cast of an rvalue of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4782 +#: cp/typeck.c:4830 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 #, fuzzy msgid "ISO C++ forbids casting to an array type `%T'" msgstr "ISO C ¤Ï¶¦ÍÑÂη¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:4835 +#: cp/typeck.c:4883 #, fuzzy msgid "invalid cast to function type `%T'" msgstr "´Ø¿ô `%s' ¤ËÂФ·¤ÆÉÔŬÀÚ¤ÊÊݸ¥¯¥é¥¹" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 #, fuzzy msgid "cast from `%T' to `%T' discards qualifiers from pointer target type" msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤¬¼¨¤¹·¿¤«¤é½¤¾þ»Ò¤¬ÀÚ¤ê¼Î¤Æ¤é¤ì¤Þ¤¹" -#: cp/typeck.c:4937 +#: cp/typeck.c:4985 #, fuzzy msgid "cast from `%T' to `%T' increases required alignment of target type" msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤¬¼¨¤¹·¿¤ÎÍ׵ᥢ¥é¥¤¥ó¥á¥ó¥È¤¬Áý²Ã¤·¤Þ¤¹" -#: cp/typeck.c:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr "" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 msgid "ISO C++ forbids cast to non-reference type used as lvalue" msgstr "ISO C++ ¤Ïº¸ÊÕÃͤȤ·¤Æ»È¤ï¤ì¤ëÈ󻲾ȷ¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:5219 +#: cp/typeck.c:5267 #, fuzzy msgid "incompatible types in assignment of `%T' to `%T'" msgstr "%d ÈÖÌܤΰú¿ô¤¬ `%s' ¤Î·¿¤È¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "ISO C++ ¤ÏÇÛÎó¤ÎÂåÆþ¤ò¶Ø¤¸¤Þ¤¹" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð´Ø¿ô¤Ø¤ÎÊÑ´¹¤Ç" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 msgid " in pointer to member conversion" msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç" #. This is a reinterpret cast, we choose to do nothing. -#: cp/typeck.c:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 msgid "pointer to member cast via virtual base `%T'" msgstr "" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 #, fuzzy msgid "pointer to member conversion via virtual base `%T'" msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 #, fuzzy msgid "invalid conversion to type `%T' from type `%T'" msgstr "¥ì¥·¡¼¥Ð·¿ `%s' ¤¬Ìµ¸ú¤Ç¤¹" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 msgid "passing NULL used for non-pointer %s %P of `%D'" msgstr "" -#: cp/typeck.c:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 #, fuzzy msgid "passing `%T' for %s %P of `%D'" msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 msgid "passing negative value `%E' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'" msgstr "" -#: cp/typeck.c:5706 +#: cp/typeck.c:5754 #, fuzzy msgid "cannot convert `%T' to `%T' in %s" msgstr "¥Ý¥¤¥ó¥¿·¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 #, fuzzy msgid "in passing argument %P of `%+D'" msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤òÊÖ¤½¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "Èóº¸ÊÕÃͤؤλ²¾È¤¬ÊÖ¤µ¤ì¤Þ¤·¤¿" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 #, fuzzy msgid "reference to local variable `%D' returned" msgstr "Èóº¸ÊÕÃͤؤλ²¾È¤¬ÊÖ¤µ¤ì¤Þ¤·¤¿" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 #, fuzzy msgid "address of local variable `%D' returned" msgstr "Í׵ᤵ¤ì¤¿Âç°è¥ì¥¸¥¹¥¿ÊÑ¿ô `%s' ¤Î¥¢¥É¥ì¥¹" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤«¤éÃͤòÊÖ¤½¤¦¤È¤·¤Æ¤¤¤Þ¤¹" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 #, fuzzy msgid "return-statement with no value, in function returning '%T'" msgstr "Ìá¤ê·¿¤¬´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤»¤ó" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 #, fuzzy msgid "return-statement with a value, in function returning 'void'" msgstr "Ìá¤ê·¿¤¬ void ¤Î´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤¹" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)" msgstr "" @@ -19750,12 +19758,12 @@ msgstr "generate_bytecode_insn msgid "field initializer type mismatch" msgstr "¥Õ¥£¡¼¥ë¥É½é´üÀßÄê»Ò¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, fuzzy, c-format msgid "can't create directory %s: %m" msgstr "¥Ç¥£¥ì¥¯¥È¥ê %s ¤òºîÀ®¤Ç¤­¤Þ¤»¤ó" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, fuzzy, c-format msgid "can't create %s: %m" msgstr "%s ¤òºÆ open ¤Ç¤­¤Þ¤»¤ó" @@ -19841,228 +19849,291 @@ msgstr "%s msgid "internal error - invalid Utf8 name" msgstr "ÆâÉô¥¨¥é¡¼ - ̵¸ú¤Ê Utf8 ̾¤Ç¤¹" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "';' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "̾Á°¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "'*' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "¥¯¥é¥¹¤ä¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Àë¸À¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "'{' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "¥¹¡¼¥Ñ¡¼¥¯¥é¥¹Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "ÊÑ¿ô½é´ü²½»Ò¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "']' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "Âбþ¤Î¤Ê¤¤ ']' ¤Ç¤¹" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "¼±Ê̻Ҥ¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "')' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "Àµ¼°¤Ê²¾°ú¿ô¹à¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "¼±Ê̻Ҥò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "¥¯¥é¥¹¥¿¥¤¥×¹à¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "':' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "'(' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "¹à¤Þ¤¿¤Ï ')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "Äê¿ô¼°¤¬·ç¤±¤Æ¤¤¤ë¤«Ìµ¸ú¤Ç¤¹" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "¹à¤Èɬ¿Ü¤Î ')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "̵¸ú¤ÊÀ©¸æ¼°¤Ç¤¹" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "̵¸ú¤Ê¹¹¿·¼°¤Ç¤¹" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "̵¸ú¤Ê½é´ü²½¼°¤Ç¤¹" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "¹à¤Þ¤¿¤Ïɬ¿Ü¤Î ')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "'class' ¤Þ¤¿¤Ï 'this' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "'class' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "')' ¤Þ¤¿¤Ï¹à¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "'[' ¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "¥Õ¥£¡¼¥ë¥É¤¬É¬ÍפǤ¹" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "¹à¤Èɬ¿Ü¤Î ']' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "']' ¤¬É¬Íפǡ¢Ìµ¸ú¤Ê·¿É½¸½¤Ç¤¹" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "̵¸ú¤Ê·¿É½¸½¤Ç¤¹" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "̵¸ú¤Ê»²¾È·¿¤Ç¤¹" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2977 msgid "Constructor invocation must be first thing in a constructor" msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤Îµ¯Æ°¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿Æâ¤ÇºÇ½é¤Ë¹Ô¤Ê¤ï¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤À¤±¤¬¥³¥ó¥¹¥È¥é¥¯¥¿¤òµ¯Æ°¤Ç¤­¤Þ¤¹" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr ": `%s' ¤Ï JDK1.1(TM) ¤Îµ¡Ç½¤Ç¤¹" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" @@ -20071,32 +20142,32 @@ msgstr "" "%s.\n" "%s" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "CLASSPATH Æâ¤ËÊÑ¤Ê .zip ¥¢¡¼¥«¥¤¥Ö¤¬¤¢¤ê¤Þ¤¹: %s" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6980 #, fuzzy, c-format msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives" msgstr "¥Ç¥Õ¥©¥ë¥È¥Ñ¥Ã¥±¡¼¥¸ `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£CLASSPATH ´Ä¶­ÊÑ¿ô¤È¥¢¡¼¥«¥¤¥Ö¤Ø¤Î¥¢¥¯¥»¥¹¤ò³Î¤«¤á¤Æ¤¯¤À¤µ¤¤¡£" -#: ../../gcc/java/parse.y:12193 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "static ¥Õ¥£¡¼¥ë¥É `%s' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "static ¥Õ¥£¡¼¥ë¥É `%s' ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "%s ¤Î¤¿¤á¤Î case ¤¬¤¢¤ê¤Þ¤»¤ó" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤¤±é»»»Ò %s ¤Ç¤¹" @@ -20154,8 +20225,8 @@ msgstr "" msgid "cannot find protocol declaration for `%s'" msgstr "`%s' ¤ËÂФ¹¤ë¥×¥í¥È¥³¥ëÀë¸À¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, fuzzy, c-format msgid "cannot find interface declaration for `%s'" msgstr "`%s' ¤ËÂФ¹¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹Àë¸À¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó" @@ -20180,8 +20251,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:6769 -#: objc/objc-act.c:7059 objc/objc-act.c:7088 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "" @@ -20195,7 +20266,7 @@ msgstr " msgid "class `%s' already exists" msgstr "¥¯¥é¥¹ `%s' ¤Ï´û¤Ë¸ºß¤·¤Þ¤¹" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿" @@ -20356,1607 +20427,1959 @@ msgstr "" msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô `%s' ¤Ï private ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, 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 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô `%s' ¤Ï %s ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "`id' ·¿¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ËÂΤ¹¤ëÀÅŪ¥¢¥¯¥»¥¹¤Ç¤¹" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "¥¯¥é¥¹ `%s' ¤Î¼ÂÁõ¤¬ÉÔ´°Á´¤Ç¤¹" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "¥«¥Æ¥´¥ê `%s' ¤Î¼ÂÁõ¤¬ÉÔ´°Á´¤Ç¤¹" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "`%c%s' ¤Î¥á¥½¥Ã¥ÉÄêµÁ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, c-format msgid "%s `%s' does not fully implement the `%s' protocol" msgstr "%s `%s' ¤Ï `%s' ¥×¥í¥È¥³¥ë¤ò´°Á´¤Ë¤Ï¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó" -#: objc/objc-act.c:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 #, fuzzy msgid "`@end' missing in implementation context" msgstr "`@end' ¤Ï¼ÂÁõ¥³¥ó¥Æ¥¯¥¹¥È¤Ë¸½¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "¥¯¥é¥¹ `%s' ¤ÎºÆ¼ÂÁõ¤Ç¤¹" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "´ðÄ쥯¥é¥¹Ì¾ `%s' ¤¬¾×Æͤ·¤Æ¤¤¤Þ¤¹" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "¥¯¥é¥¹ `%s' ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Àë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "¥×¥í¥È¥³¥ë '%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 #, fuzzy msgid "%J%s `%c%s'" msgstr "%s Æâ¤Î `%s':" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, c-format msgid "no super class declared in interface for `%s'" msgstr "`%s' ¤Ø¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ë´ðÄ쥯¥é¥¹¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" -#: objc/objc-act.c:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "[super ...] ¤Ï¥á¥½¥Ã¥É¥³¥ó¥Æ¥­¥¹¥È¤Ë¸½¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "`@end' ¤Ï¼ÂÁõ¥³¥ó¥Æ¥¯¥¹¥È¤Ë¸½¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "¥á¥½¥Ã¥ÉÄêµÁ¤¬¥¯¥é¥¹¥³¥ó¥Æ¥­¥¹¥ÈÆâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 #, fuzzy msgid "Display this information" msgstr " --help ¤³¤Î¾ðÊó¤òɽ¼¨¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 #, fuzzy msgid "Do not discard comments" msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤¥³¥á¥ó¥È" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 #, fuzzy msgid "Do not discard comments in macro expansions" msgstr "¥Ó¥Ã¥È±é»»¤Ç¤Î¨ÃÍ¥µ¥¤¥º¤òÄ´Ä䤷¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 #, fuzzy msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "" " -G ¥Ð¥¤¥È¤è¤ê¾®¤µ¤ÊÂç°è¤ª¤è¤ÓÀÅŪ¥Ç¡¼¥¿¤ò\n" " ÆÃÊ̤ʥ»¥¯¥·¥ç¥ó¤ËÃÖ¤¯ (¥¿¡¼¥²¥Ã¥È¼¡Âè)\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 #, fuzzy msgid "Print the name of header files as they are used" msgstr "¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥×¥í¥°¥é¥àñ°Ì¤Î̾Á°¤òɽ¼¨¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd 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 -#, fuzzy -msgid "Generate make dependencies" -msgstr "ưŪ°Í¸´Ø·¸¡£\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 #, fuzzy msgid "Generate make dependencies and compile" msgstr "¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¤Î¥³¡¼¥É¤òÀ¸À®" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -#, fuzzy -msgid "Generate phony targets for all headers" -msgstr "Intel as ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 #, fuzzy msgid "-O\tSet optimization level to " msgstr " -O[number] ºÇŬ²½¥ì¥Ù¥ë¤ò [number] ¤ËÀßÄꤹ¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 #, fuzzy msgid "Optimize for space rather than speed" msgstr " -Os ®ÅÙ¤è¤ê¤â¥µ¥¤¥º¤ÎºÇŬ²½¤ò¹Ô¤Ê¤¦\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 #, fuzzy msgid "Do not generate #line directives" msgstr ".size µ¿»÷Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "¹½Â¤ÂΡ¢¶¦ÍÑÂÎËô¤ÏÇÛÎó¤òÊÖ¤¹¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "·¿¤Ë¸ß´¹À­¤Î¤Ê¤¤´Ø¿ô¤Î¥­¥ã¥¹¥È¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "¥Ý¥¤¥ó¥¿¤Î¥­¥ã¥¹¥È¤Ç¥¢¥é¥¤¥ó¥á¥ó¥È¤¬Áý²Ã¤¹¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "½¤¾þ»Ò¤ò¼è¤êµî¤ë¥­¥ã¥¹¥È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 #, fuzzy msgid "Warn about subscripts whose type is \"char\"" msgstr "ź»ú¤Î·¿¤¬ 'char' ¤Ç¤¢¤ì¤Ð·Ù¹ð¤¹¤ë" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "·¿ÊÑ´¹¤¬º®Í𤹤ë²ÄǽÀ­¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 #, fuzzy msgid "Warn when all constructors and destructors are private" msgstr "Á´¤Æ¤Î¥³¥ó¥¹¥È¥é¥¯¥¿/¥Ç¥¹¥È¥é¥¯¥¿¤¬ private ¤Ç¤â·Ù¹ð¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 #, fuzzy msgid "Warn when a declaration is found after a statement" msgstr "Àë¸À¤¬·¿¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 #, fuzzy -msgid "Warn about deprecated compiler features" -msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¥³¥ó¥Ñ¥¤¥é¤Îµ¡Ç½¤ò¹ðÃΤ·¤Ê¤¤" +msgid "Warn if deprecated class, method, or field is used" +msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¶õʸ¤¬¸«¤Ä¤«¤ì¤Ð·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "ºÇŬ²½²áÄø¤¬Ìµ¸ú²½¤µ¤ì¤¿¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 #, fuzzy msgid "Warn about compile-time integer division by zero" msgstr "À°¿ô¤Î¥¼¥í½ü»»¤ò¥È¥é¥Ã¥×¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "Effective C++ ¼°¤Î»Ø¿Ë¤«¤é¤Ï¤º¤ì¤ë¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "Á´¤Æ¤Î·Ù¹ð¤ò¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 #, fuzzy msgid "Make implicit function declarations an error" msgstr "°ÅÌۤδؿôÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¶õʸ¤¬¸«¤Ä¤«¤ì¤Ð·Ù¹ð¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 #, fuzzy msgid "Warn if testing floating point numbers for equality" msgstr "ÉâÆ°¾®¿ôÅÀ¿ô¤ÎÅù²Á¥Æ¥¹¥È¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 #, fuzzy msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "printf/scanf/strftime/strfmon ·Á¼°¤ÎÊѧŪ¤Ê¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 #, fuzzy msgid "Warn if passing too many arguments to a function for its format string" msgstr "`va_start' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 #, fuzzy msgid "Warn about format strings that are not literals" msgstr "Ê£¿ôʸ»ú¥ê¥Æ¥é¥ë¤Î»ÈÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "¥»¥­¥å¥ê¥Æ¥£Åª¤ÊÌäÂê¤È¤Ê¤ê¤¦¤ë format ´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 #, fuzzy msgid "Warn about strftime formats yielding 2-digit years" msgstr "strftime ·Á¼°¤¬Æó·å¤Çǯ¤òɽ¤·¤Æ¤¤¤ë»þ¤Î·Ù¹ð¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +#, fuzzy +msgid "Enable warnings about inter-procedural problems" +msgstr "inter-procedural ÌäÂê¤Ë¤Ä¤¤¤Æ¤Î·Ù¹ðɽ¼¨¤òɽ¼¨¤·¤Ê¤¤" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 msgid "Warn about implicit function declarations" msgstr "°ÅÌۤδؿôÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 msgid "Warn when a declaration does not specify a type" msgstr "Àë¸À¤¬·¿¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "¥¤¥ó¥é¥¤¥ó´Ø¿ô¤ò¥¤¥ó¥é¥¤¥ó²½¤Ç¤­¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 #, fuzzy msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "#import ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ÎÍøÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 #, fuzzy msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr " -Wlarger-than- ¥ª¥Ö¥¸¥§¥¯¥È¤¬ ¥Ð¥¤¥È¤è¤êÂ礭¤±¤ì¤Ð·Ù¹ð¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 #, fuzzy msgid "Do not warn about using \"long long\" when -pedantic" msgstr "-pedantic »ØÄê»þ¤Ç¤â 'long long' ¤Î»ÈÍѤˤĤ¤¤Æ¤Ï·Ù¹ð¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 #, fuzzy msgid "Warn about suspicious declarations of \"main\"" msgstr "µ¿¤ï¤·¤¤ main ¤ÎÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 #, fuzzy msgid "Warn about possibly missing braces around initializers" msgstr "½é´ü²½»Ò¤Î¼þ¤ê¤Ë¥Ö¥ì¡¼¥¹¤ò·ç¤¤¤Æ¤¤¤ëÍͤǤ¢¤ì¤Ð·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 #, fuzzy msgid "Warn about global functions without previous declarations" msgstr "»öÁ°¤ÎÀë¸À¤Ê¤·¤ÎÂç°è´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 msgid "Warn about functions which might be candidates for format attributes" msgstr "format °À­¤ò¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 #, fuzzy msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "noreturn °À­¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 #, fuzzy msgid "Warn about global functions without prototypes" msgstr "¥×¥í¥È¥¿¥¤¥×¤Ê¤·¤ÎÂç°è´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 #, fuzzy msgid "Warn about use of multi-character character constants" msgstr "Ê£¿ôʸ»ú¥ê¥Æ¥é¥ë¤Î»ÈÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 #, fuzzy msgid "Warn about \"extern\" declarations not at file scope" msgstr "¥Õ¥¡¥¤¥ë¥¹¥³¡¼¥×¥ì¥Ù¥ë¤Ç¤Ê¤¤ extern ¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 #, fuzzy msgid "Warn when non-templatized friend functions are declared within a template" msgstr "template Æâ¤ÇÈó template ¤Î friend ´Ø¿ô¤¬Àë¸À¤µ¤ì¤¿¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 #, fuzzy msgid "Warn about non-virtual destructors" msgstr "Èó²¾Áۥǥ¹¥È¥é¥¯¥¿¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 #, fuzzy msgid "Warn if a C-style cast is used in a program" msgstr "C ¼°¤Î¥­¥ã¥¹¥È¤¬¥×¥í¥°¥é¥à¤Ç»È¤ï¤ì¤¿¤é·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 #, fuzzy msgid "Warn if an old-style parameter definition is used" msgstr "´Ø¿ô¤Î²¾°ú¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr ".class ¥Õ¥¡¥¤¥ë¤¬¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤è¤ê¸Å¤±¤ì¤Ð·Ù¹ð¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "¥ª¡¼¥Ð¡¼¥í¡¼¥É¤µ¤ì¤¿²¾ÁÛ´Ø¿ô̾¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "packed °À­¤¬¹½Â¤ÂÎÇÛÃ֤˱ƶÁ¤·¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 #, fuzzy msgid "Warn when padding is required to align structure members" msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð¤Î¥¢¥é¥¤¥ó¤Ç¡¢¥Ñ¥Ç¥£¥ó¥°¤òÍפ¹¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 #, fuzzy msgid "Warn about possibly missing parentheses" msgstr "³ç¸Ì¤ò·ç¤¤¤Æ¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 #, fuzzy msgid "Warn when converting the type of pointers to member functions" msgstr "¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð´Ø¿ô¤Ø¤Î·¿ÊÑ´¹¤Î¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤Î·×»»¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 #, fuzzy msgid "Warn if inherited methods are unimplemented" msgstr "ÇÉÀ¸¥á¥½¥Ã¥É¤¬Ì¤¼ÂÁõ¤Î¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "Ʊ°ì¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀë¸À¤¬Ê£¿ô¤¢¤ì¤Ð·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "»ØÄꤵ¤ì¤¿½¤¾þ»Ò¤¬ÉÔÍפʤâ¤Î¤Ç¤¢¤ì¤Ð·Ù¹ð¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "¥³¥ó¥Ñ¥¤¥é¤¬¥³¡¼¥É¤òʤÙÂؤ¨¤ë¤È¤­¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "¥»¥ì¥¯¥¿¤¬Ê£¿ô¤Î¥á¥½¥Ã¥É¤ò»ý¤Ã¤Æ¤¤¤ì¤Ð·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "ÉûºîÍÑ´°Î»ÅÀµ¬Â§¤òÇˤë²ÄǽÀ­¤¬¤¢¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "¤¢¤ë¥í¡¼¥«¥ëÊÑ¿ô¤¬Â¾¤Î¤â¤Î¤òʤ¤¤±£¤¹¤È¤­¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 #, fuzzy msgid "Warn about signed-unsigned comparisons" msgstr "Éä¹çÉÕ¤­/Éä¹ç̵¤·¤ÎÈæ³Ó¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "¥ª¡¼¥Ð¡¼¥í¡¼¥É¤¬Éä¹ç̵¤·¤«¤éÉä¹çÉÕ¤­¤Ë³Ê¾å¤²¤È¤Ê¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 #, fuzzy msgid "Warn about code which might break strict aliasing rules" msgstr "format °À­¤ò¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 #, fuzzy msgid "Warn about unprototyped function declarations" msgstr "¥×¥í¥È¥¿¥¤¥×¤µ¤ì¤Æ¤¤¤Ê¤¤´Ø¿ôÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "²ò¼á¤Ë¸í²ò¤ò¾·¤¯¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 #, fuzzy msgid "Warn about enumerated switches, with no default, missing a case" msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 #, fuzzy msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 #, fuzzy msgid "Warn about all enumerated switches missing a specific case" msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 #, fuzzy msgid "Warn when synthesis behavior differs from Cfront" msgstr "¹çÀ®¤Î¿¶¤ëÉñ¤¤¤¬ Cfront ¤È°Û¤Ê¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "¥·¥¹¥Æ¥à¥Ø¥Ã¥À¤«¤é¤Î·Ù¹ð¤òÍÞÀ©¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 #, fuzzy msgid "Warn about features not present in traditional C" msgstr "¸Å¤¤ C ¤Ç¤Ï #elif ¤ò»È¤ï¤Ê¤¤Êý¤¬¤¤¤¤¤Ç¤¹" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 #, fuzzy msgid "Warn if an undefined macro is used in an #if directive" msgstr "̤ÄêµÁËô¤ÏÉÔÀµ¤Ê # ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤Ç¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 #, fuzzy msgid "Warn about uninitialized automatic variables" msgstr "½é´ü²½¤µ¤ì¤Ê¤¤¼«Æ°ÊÑ¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "ǧ¼±¤Ç¤­¤Ê¤¤ pragma ¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "¼Â¹Ô¤µ¤ì¤ë¤³¤È¤¬¤Ê¤¤¥³¡¼¥É¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "´Ø¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "¥é¥Ù¥ë¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "´Ø¿ô¤Î²¾°ú¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "¼°¤ÎÃͤ¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "ÊÑ¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 #, fuzzy msgid "-aux-info \tEmit declaration information into " msgstr " -aux-info Àë¸À¾ðÊó¤ò ¤Øȯ¹Ô¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 #, fuzzy msgid "-d\tEnable dumps from specific passes of the compiler" msgstr " -d[letters] ¥³¥ó¥Ñ¥¤¥é¤Î²áÄø¤«¤é¤Î¥À¥ó¥×¤òÍ­¸ú¤Ë¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 #, fuzzy msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr " -dumpbase ²áÄø¤«¤é¤Î¥À¥ó¥×¤Ë»È¤ï¤ì¤ë̾Á°¤Î¥Ù¡¼¥¹¤È¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 #, fuzzy msgid "Enforce class member access control semantics" msgstr "¥¢¥¯¥»¥¹À©¸æ¤Î°ÕÌ£¤Ë½¾¤ï¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "´Ø¿ô¤Î³«»Ï¤ò¥¢¥é¥¤¥ó¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "¥é¥Ù¥ë¤Î¤¦¤Á¥¸¥ã¥ó¥×ÅþãÀè¤È¤Ê¤ë¤â¤Î¤À¤±¤ò¥¢¥é¥¤¥ó¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "Á´¤Æ¤Î¥é¥Ù¥ë¤ò¥¢¥é¥¤¥ó¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "¥ë¡¼¥×¤Î³«»Ï¤ò¥¢¥é¥¤¥ó¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "¥Æ¥ó¥×¥ì¡¼¥È¥¤¥ó¥¹¥¿¥ó¥¹¤¬Á÷½Ð¤µ¤ì¤¿»þ¤ËÊѹ¹¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 #, fuzzy msgid "Specify that arguments may alias each other and globals" msgstr "°ú¿ô¤ÈÂç°è¥Ç¡¼¥¿¤ä¾¤Î°ú¿ô¤ÈÊÌ̾¤Ë¤Ê¤ê¤¦¤ë»ö¤ò»ØÄꤹ¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 msgid "Assume arguments may alias globals but not each other" msgstr "°ú¿ô¤ÈÂç°è¥Ç¡¼¥¿¤ÏÊÌ̾¤Ë¤Ê¤ê¤¦¤ë¤¬Â¾¤Î°ú¿ô¤È¤ÏÊÌ̾¤Ç¤Ï¤Ê¤¤¤È¤ß¤Ê¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 #, fuzzy msgid "Assume arguments alias neither each other nor globals" msgstr "°ú¿ô¤¬Âç°è¥Ç¡¼¥¿¤ä¾¤Î°ú¿ô¤ÈÊÌ̾¤Ë¤Ï¤Ê¤é¤Ê¤¤¤È¤ß¤Ê¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 #, fuzzy msgid "Recognize the \"asm\" keyword" msgstr "'asm' ͽÌó¸ì¤òǧ¼±¤µ¤»¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 #, fuzzy msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "´¬¤­Ìᤷ¤ò¹Ô¤Ê¤¦Îã³°Êä­Íѥơ¼¥Ö¥ë¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +#, fuzzy +msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements" +msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤È COMMON ¥Ö¥í¥Ã¥¯¤ò SAVE ʸ¤Ç̾Á°ÉÕ¤±¤é¤ì¤¿¤è¤¦¤Ë¼è¤ê°·¤¦" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +#, fuzzy +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "ʸ»ú/hollerith Äê¿ô¤Ç¤Î¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤òÆüì¤Ê¤â¤Î¤È¤·¤Ê¤¤ (C ¼°)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ëºï½ü¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +#, fuzzy +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë±£¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +#, fuzzy +msgid "--bootclasspath=\tReplace system path" +msgstr "¥¯¥é¥¹¥Ñ¥¹¤òÀßÄꤷ¤Æ¥·¥¹¥Æ¥à¥Ñ¥¹¤ò±£¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 #, fuzzy msgid "Generate code to check bounds before indexing arrays" msgstr "ÇÛÎó¤Îź»ú¤Èź»ú¶­³¦¤ò¸¡ºº¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 #, fuzzy msgid "Replace add, compare, branch with branch on count register" msgstr "²Ã»»¡¢Èæ³Ó¥Ö¥é¥ó¥Á¤ÎÂå¤ï¤ê¤Ë¥«¥¦¥ó¥È¥ì¥¸¥¹¥¿¤Î¥Ö¥é¥ó¥Á¤ò»È¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "ʬ´ô·ÐÏ©¿ä¬ÍѤΥץí¥Õ¥¡¥¤¥ë¾ðÊó¤òÍøÍѤ¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 #, fuzzy msgid "Recognize built-in functions" msgstr "¤¤¤¯¤Ä¤«¤ÎÁȤ߹þ¤ß´Ø¿ô¤òǧ¼±¤µ¤»¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 #, fuzzy msgid "-fcall-saved-\tMark as being preserved across functions" msgstr " -fcall-saved- ¤¬´Ø¿ô¤òÄ̤¸¤ÆÊÝ»ý¤µ¤ì¤ë¤È¥Þ¡¼¥¯¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 #, fuzzy msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr " -fcall-used- ´Ø¿ô¸Æ¤Ó½Ð¤·¤ÇÇ˲õ¤µ¤ì¤ë ¤È¤·¤Æ¥Þ¡¼¥¯¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 #, fuzzy msgid "Save registers around function calls" msgstr "´Ø¿ô¸Æ¤Ó½Ð¤·¤ÎÁ°¸å¤Ç¥ì¥¸¥¹¥¿¤ÎÊݸ¤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "¥×¥í¥°¥é¥à¤¬¸·Ì©¤Ë¥±¡¼¥¹º®ºß¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "¥×¥í¥°¥é¥à¤¬±Ñ¾®Ê¸»ú¤Ç½ñ¤«¤ì¤¿Íͤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +#, fuzzy +msgid "Preserve case used in program" +msgstr "¥×¥í¥°¥é¥à¤Ç»È¤ï¤ì¤¿ÄÖ¤ê(¤Î¥±¡¼¥¹)¤òÁ´¤ÆÊÝ»ý¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "¥×¥í¥°¥é¥à¤¬±Ñ¾®Ê¸»ú¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "¥×¥í¥°¥é¥à¤¬±ÑÂçʸ»ú¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "¥×¥í¥°¥é¥à¤¬±ÑÂçʸ»ú¤Ç½ñ¤«¤ì¤¿Íͤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "new ¤ÎÌá¤êÃͤò¸¡ºº¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 #, fuzzy msgid "Do not put uninitialized globals in the common section" msgstr "Âç°èÊÑ¿ôÅù¤ò½é´ü²½¤µ¤ì¤Ê¤¤¥³¥â¥ó¥»¥¯¥·¥ç¥ó¤ËÃÖ¤«¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 #, fuzzy msgid "Reduce the size of object files" msgstr "¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤ò¾®¤µ¤¯¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 #, fuzzy msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "ʸ»úÎó¥ê¥Æ¥é¥ë¤ò `const char[]' ¤ÎÂå¤ï¤ê¤Ë `char[]' ¤È¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 #, fuzzy msgid "Perform a register copy-propagation optimization pass" msgstr "ºÇŬ²½²áÄø¤Î¥ì¥¸¥¹¥¿¤Ä¤±ÊѤ¨¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 #, fuzzy msgid "Perform cross-jumping optimization" msgstr "¥¸¥ã¥ó¥×ʬ´ôºÇŬ²½¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "CSE ¤ÇÆ°ºî¤¹¤ë¤È¤­¡¢¤½¤ì¤é¤Î¥¿¡¼¥²¥Ã¥È¤Ø¤Î¥¸¥ã¥ó¥×¤ËÄɿ魯¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "CSE ¤ÇÆ°ºî¤¹¤ë¤È¤­¡¢¾ò·ï¥¸¥ã¥ó¥×¤ËÄɿ魯¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 #, fuzzy msgid "Place data items into their own section" msgstr "¥Ç¡¼¥¿¹àÌܤò¤½¤ì¤é¼«¿È¤Î¥»¥¯¥·¥ç¥ó¤ËÇÛÃÖ¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "COMMON ¤ä EQUIVALENCE ÍѤÎÆÃÊ̤ʥǥХå°¾ðÊó¤òȯ¹Ô¤¹¤ë¡Ê̵¸ú²½¤µ¤ì¤Æ¤¤¤ë¡Ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 #, fuzzy msgid "Inline member functions by default" msgstr "¥á¥ó¥Ð´Ø¿ô¤ò¥Ç¥Õ¥©¥ë¥È¤Ç¥¤¥ó¥é¥¤¥ó¤È¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "´Ø¿ô°ú¿ô¤ò¥¹¥¿¥Ã¥¯¤«¤é pop ¤¹¤ë¤Î¤ò¸Æ¤Ó½Ð¤·¸å¤Þ¤ÇÃ٤餻¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "ʬ´ôÌ¿Îá¤ÎÃٱ䥹¥í¥Ã¥È¤ò»È¤¦¤³¤È¤ò»î¤ß¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "̵°ÕÌ£¤Ê null ¥Ý¥¤¥ó¥¿¸¡ºº¤òºï½ü¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +#, fuzzy +msgid "Allow '$' in symbol names" +msgstr "$ ¤ò¥·¥ó¥Ü¥ë̾¤È¤·¤Æ»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 #, fuzzy msgid "Permit '$' as an identifier character" msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤¬¥ï¥¤¥Éʸ»úÎó¤Ç¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 msgid "Suppress output of instruction numbers and line number notes in debugging dumps" msgstr "¥Ç¥Ð¥Ã¥°¥À¥ó¥×¤ÇÌ¿ÎáÈÖ¹æ¤È¹ÔÈÖ¹æ¥Î¡¼¥È¤Î½ÐÎϤòÍÞÀ©¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 #, fuzzy msgid "Perform DWARF2 duplicate elimination" msgstr "ËöÈø¸Æ¤Ó½Ð¤·ºÇŬ²½¤ò¹Ô¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "COMPLEX ·×»»¤Î¥Ð¥°¤ò²óÈò¤ò¥¨¥ß¥å¥ì¡¼¥È¤¹¤ë¥Õ¥í¥ó¥È¥¨¥ó¥É¤ò»ý¤Ä" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 #, fuzzy msgid "Generate code to check exception specifications" msgstr "Îã³°»ÅÍͤθ¡ºº¤ò¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "Îã³°Ê᪤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 #, fuzzy msgid "Perform a number of minor, expensive optimizations" msgstr "ÌÜΩ¤¿¤Ê¤¤¡¢¥³¥¹¥È¤Î¤«¤«¤ëºÇŬ²½¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +#, fuzzy +msgid "f2c-compatible code can be generated" +msgstr "f2c ¸ß´¹¥³¡¼¥É¤òÀ¸À®¤¹¤ëɬÍפ¬¤Ê¤¤" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +#, fuzzy +msgid "Unsupported; generate libf2c-calling code" +msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -- libf2c-calling ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "¥×¥í¥°¥é¥à¤¬Åµ·¿Åª¤Ê FORTRAN 66 Êý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +#, fuzzy +msgid "Program is written in typical Unix-f77 dialect" +msgstr "¥×¥í¥°¥é¥à¤¬Åµ·¿Åª¤Ê Unix f77 Êý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "¥×¥í¥°¥é¥à¤¬ Fortran-90 ŪÊý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 #, fuzzy msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr " -ffixed- ¥³¥ó¥Ñ¥¤¥é¤ËÂФ· ¤ò»ÈÍÑÉԲĤȥޡ¼¥¯¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +#, fuzzy +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr " -finline-limit= ¥¤¥ó¥é¥¤¥ó´Ø¿ô¤Î¥µ¥¤¥º¤ò ¤ËÀ©¸Â¤¹¤ë\n" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +#, fuzzy +msgid "Unsupported; affects code generation of arrays" +msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -- ÇÛÎó¤Î¥³¡¼¥ÉÀ¸À®¤Ë±Æ¶Á¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "¥ì¥¸¥¹¥¿¤ËÉâÆ°¾®¿ô¤ò³ÊǼ¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 #, fuzzy msgid "Scope of for-init-statement variables is local to the loop" msgstr "for ½é´ü²½Ê¸¤ÎÊÑ¿ô¤ò¥¹¥³¡¼¥×³°¤Ë³ÈÂ礹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 #, fuzzy msgid "Copy memory address constants into registers before use" msgstr "¥á¥â¥ê¥¢¥É¥ì¥¹Äê¿ô¤òÍøÍѤ¹¤ëÁ°¤Ë¥ì¥¸¥¹¥¿¤Ø¥³¥Ô¡¼¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "gcj ¤¬À¸À®¤·¤Æ¤¤¤Ê¤¤¥¯¥é¥¹¥¢¡¼¥«¥¤¥Ö¤ò¾ï¤Ë¸¡ºº¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 #, fuzzy msgid "Copy memory operands into registers before use" msgstr "¥á¥â¥ê¥ª¥Ú¥é¥ó¥É¤òÍøÍѤ¹¤ëÁ°¤Ë¥ì¥¸¥¹¥¿¤Ø¥³¥Ô¡¼¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "ÇÛÎó¤Îź»ú¤Èź»ú¶­³¦¤ò¸¡ºº¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "¥×¥í¥°¥é¥à¤Ï Fortran-90 Ū¥Õ¥ê¡¼¥Õ¥©¡¼¥à¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 #, fuzzy msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "ɸ½à¥é¥¤¥Ö¥é¥ê¤ä main ¤¬Â¸ºß¤·¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ë¤â¤Î¤È¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "´Ø¿ô¥¢¥É¥ì¥¹¤ò¥ì¥¸¥¹¥¿¤Ë»ý¤¿¤»¤ë»ö¤òµö²Ä¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 #, fuzzy msgid "Place each function into its own section" msgstr "³Æ¡¹¤Î´Ø¿ô¤ò¤½¤ì¼«¿È¤Î¥»¥¯¥·¥ç¥ó¤ËÇÛÃÖ¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 #, fuzzy msgid "Perform global common subexpression elimination" msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 #, fuzzy msgid "Perform redundant load after store elimination in global common subexpression elimination" msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 #, fuzzy msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 #, fuzzy msgid "Perform store motion after global common subexpression elimination" msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +#, fuzzy +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "inter-procedural ÌäÂê¤Ë¤Ä¤¤¤Æ¤ÎÃ×̿Ū¤Ê¿ÇÃÇɽ¼¨¤òɽ¼¨¤·¤Ê¤¤" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +#, fuzzy +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 #, fuzzy msgid "Recognize GNU-defined keywords" msgstr "GNU ÄêµÁ¤ÎͽÌó¸ì¤òǧ¼±¤µ¤»¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "GNU ¼Â¹Ô´Ä¶­ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 #, fuzzy msgid "Enable guessing of branch probabilities" msgstr "ʬ´ô·ÐÏ©¿ä¬¤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "Ä̾ï¤Î C ¼Â¹Ô´Ä¶­¤òÁ°Äó¤È¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "Â礭¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¥µ¥Ý¡¼¥È" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "#ident ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ò½èÍý¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 #, fuzzy msgid "Perform conversion of conditional jumps to conditional execution" msgstr "¾ò·ïŪ¤Ê¼Â¹Ô¤Ø¤ÎÊѹ¹¤Î¤¿¤á¤ÎïçÃͤòÊѹ¹¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "¥¤¥ó¥é¥¤¥ó¤Ë¤Ç¤­¤ë´Ø¿ô¤Ç¤â export ¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 #, fuzzy msgid "Emit implicit instantiations of inline templates" msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 #, fuzzy msgid "Emit implicit instantiations of templates" msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr ".size µ¿»÷Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" +msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤äÇÛÎó¤ò¥¼¥í¤Ë½é´ü²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 #, fuzzy msgid "Pay attention to the \"inline\" keyword" msgstr "'inline' ¥­¡¼¥ï¡¼¥É¤ËÃí°Õ¤òʧ¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" -msgstr "ñ½ã¤Ê´Ø¿ô¤ò¸Æ¤Ó½Ð¤·Â¦¤ËÅý¹ç¤¹¤ë" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 #, fuzzy msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr " -finline-limit= ¥¤¥ó¥é¥¤¥ó´Ø¿ô¤Î¥µ¥¤¥º¤ò ¤ËÀ©¸Â¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 #, fuzzy msgid "Instrument function entry and exit with profiling calls" msgstr "´Ø¿ô¤ÎÆþ¤ê¸ý/½Ð¸ý¤Ç¥×¥í¥Õ¥¡¥¤¥ë¸Æ¤Ó½Ð¤·¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "intrinsic ʸ»ú¤ÏǤ°Õ¤Î¥±¡¼¥¹¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "intrinsic ¤¬Î㤨¤Ð SqRt ¤ÎÍѤËÄÖ¤é¤ì¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +#, fuzzy +msgid "Intrinsics in lowercase" +msgstr "intrinsic ¤ò±ÑÂçʸ»ú¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "intrinsic ¤ò±ÑÂçʸ»ú¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "native ´Ø¿ô¤¬ JNI ¤òÍøÍѤ·¤Æ¼ÂÁõ¤·¤Æ¤¤¤ë¤â¤Î¤È¤ß¤Ê¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 #, fuzzy msgid "Generate code for functions even if they are fully inlined" msgstr "Á´¤Æ¥¤¥ó¥é¥¤¥ó¤È¤µ¤ì¤¿¤È¤·¤Æ¤â´Ø¿ô¤Î¥³¡¼¥É¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "»ÈÍѤµ¤ì¤Ê¤¤ÀÅŪÄê¿ôÊÑ¿ô¤Ç¤¢¤Ã¤Æ¤â½ÐÎϤ¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 #, fuzzy msgid "Give external symbols a leading underscore" msgstr "³°Éô¥·¥ó¥Ü¥ë¤ËƬʸ»ú¥¢¥ó¥À¡¼¥¹¥³¥¢¤ò»ý¤¿¤»¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 #, fuzzy msgid "Perform loop optimizations" msgstr "ËöÈø¸Æ¤Ó½Ð¤·ºÇŬ²½¤ò¹Ô¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "¸À¸ìͽÌó¸ìʸ»ú¤ÏǤ°Õ¤Î¥±¡¼¥¹¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "¸À¸ìͽÌó¸ì¤¬Î㤨¤Ð IOStat ¤ÎÍѤËÄÖ¤é¤ì¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +#, fuzzy +msgid "Language keywords in lowercase" +msgstr "¸À¸ìͽÌó¸ì¤Ï±ÑÂçʸ»ú¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "¸À¸ìͽÌó¸ì¤Ï±ÑÂçʸ»ú¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "ÁȤ߹þ¤ß¿ô³Ø´Ø¿ô¤Î¸å¤Ë errno ¤ò¥»¥Ã¥È¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 #, fuzzy msgid "Report on permanent memory allocation" msgstr "¼Â¹Ô½ªÎ»»þ¤Ë±Ê³Ū¤Ë³ÎÊݤµ¤ì¤¿¥á¥â¥ê¤òÊó¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 #, fuzzy msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr " -fmessage-length= ¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤ÎŤµ¤ò°ì¹ÔÊÕ¤ê ʸ»ú¤ËÀ©¸Â¤¹¤ë¡£ 0 ¤À¤È²þ¹Ô¤òÍÞÀ©¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "MIL-STD 1753 intrinsic ¤òºï½ü¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "MIL-STD 1753 intrinsic ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +#, fuzzy +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "MIL-STD 1753 intrinsic ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "MIL-STD 1753 intrinsic ¤ò±£¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "¥ë¡¼¥×Ãæ¤ËÉÔÊѤʷ׻»¤ò¥ë¡¼¥×¤Î³°¤Ë°ÜÆ°¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 #, fuzzy msgid "Don't warn about uses of Microsoft extensions" msgstr "Microsoft ³ÈÄ¥¤ÎÍøÍѤ˴ؤ·¤Æ pedantic ·Ù¹ð¤ò¹Ô¤ï¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 #, fuzzy msgid "Use graph-coloring register allocation" msgstr "¥ì¥¸¥¹¥¿³ÎÊݤÎÁ°¤ËÌ¿Îá¤òÊ¤Ùľ¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 #, fuzzy msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "NeXT ¼Â¹Ô´Ä¶­ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "Ʊ´üÈó¸Æ¤Ó½Ð¤·Îã³°¤ò¥µ¥Ý¡¼¥È¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤Ç¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "È¿Éü²ó¿ô¤¬´ûÃΤΤȤ­¡¢¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "²Äǽ¤Ê¾ì¹ç¡¢¥¹¥¿¥Ã¥¯¥Õ¥ì¡¼¥à¤òÀ¸À®¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "ºÇÄã¤Ç¤â°ì²ó¤Ï³ÆÈ¿Éü DO ¥ë¡¼¥×¤¬½èÍý¤µ¤ì¤ë¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 #, fuzzy msgid "Do the full register move optimization pass" msgstr "ºÇŬ²½²áÄø¤ÇºÇÂç¸Â¤Î regmove ¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "sibling ¸Æ¤Ó½Ð¤·¤äËöÈøºÆµ¢¸Æ¤Ó½Ð¤·¤òºÇŬ²½¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +#, fuzzy +msgid "Enable optimization of static class initialization code" +msgstr "(¥¯¥é¥¹³°¤Ç¤Î½é´ü²½¤òɬÍפȤ·¤Þ¤¹)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 #, fuzzy msgid "Enable optional diagnostics" msgstr "¥ª¥×¥·¥ç¥ó¤Î¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð¤ò·ê¤¬³«¤«¤Ê¤¤¤è¤¦¤Ë¥Ñ¥Ã¥¯¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 #, fuzzy msgid "Return small aggregates in memory, not registers" msgstr "'¾®¤µ¤Ê' ½¸¹çÂΤò¥ì¥¸¥¹¥¿¤Ç¤Ï¤Ê¤¯¥á¥â¥ê¤Ë³ÊǼ¤·¤ÆÊÖ¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +msgid "Warn about use of (only a few for now) Fortran extensions" +msgstr "Fortran ³ÈÄ¥(º£¤Ï¾¯¤Ê¤¤¤¬)¤Î»ÈÍѤˤĤ¤¤Æ·Ù¹ð¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 #, fuzzy msgid "Perform loop peeling" msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤Ç¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 #, fuzzy msgid "Enable machine specific peephole optimizations" msgstr "µ¡¼ï¸ÇÍ­¤ÎÇÁ¤­·êºÇŬ²½¤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 #, fuzzy msgid "Enable an RTL peephole pass before sched2" msgstr "ÂèÆóÌ¿ÎáÇÛÃÖ¤ÎÁ°¤Ç rtl ÇÁ¤­·ê²áÄø¤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "µ¬³ÊŬ¹çÀ­¥¨¥é¡¼¤ò·Ù¹ð¤Ë³Ê²¼¤²¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 #, fuzzy msgid "Generate position-independent code if possible" msgstr "²Äǽ¤Ç¤¢¤ì¤Ð°ÌÃÖÆÈΩ¥³¡¼¥É¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 #, fuzzy msgid "Generate position-independent code for executables if possible" msgstr "²Äǽ¤Ç¤¢¤ì¤Ð°ÌÃÖÆÈΩ¥³¡¼¥É¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 #, fuzzy msgid "Enable basic program profiling code" msgstr "¥×¥í¥°¥é¥à¤¬¥³¡¼¥É¥×¥í¥Õ¥¡¥¤¥ë¤¹¤ë¸µ¤Ë¤Ê¤ë¸Ì¤òÁÞÆþ¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 #, fuzzy msgid "Insert arc-based program profiling code" msgstr "¥×¥í¥°¥é¥à¤¬¥³¡¼¥É¥×¥í¥Õ¥¡¥¤¥ë¤¹¤ë¸µ¤Ë¤Ê¤ë¸Ì¤òÁÞÆþ¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "¥ë¡¼¥×¤ÎÃæ¤ÎÁ´¤Æ¤Î°ìÈÌͶƳÊÑ¿ô¤ò¶¯Åٺ︺¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 #, fuzzy msgid "Return small aggregates in registers" msgstr "'¾®¤µ¤Ê' ½¸¹çÂΤò¥ì¥¸¥¹¥¿¤Ë³ÊǼ¤·¤ÆÊÖ¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 #, fuzzy msgid "Enables a register move optimization" msgstr "°ÜÆ°Ì¿ÎáºÇŬ²½¥ì¥¸¥¹¥¿¤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 #, fuzzy msgid "Perform a register renaming optimization pass" msgstr "ºÇŬ²½²áÄø¤Î¥ì¥¸¥¹¥¿¤Ä¤±ÊѤ¨¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "¥³¡¼¥ÉÇÛÃÖ¤ò²þÁ±¤¹¤ë¤¿¤á¤Ë´ðËÜ¥Ö¥í¥Ã¥¯¤òºÆÀ°Íý¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 #, fuzzy msgid "Reorder functions to improve code placement" msgstr "¥³¡¼¥ÉÇÛÃÖ¤ò²þÁ±¤¹¤ë¤¿¤á¤Ë´ðËÜ¥Ö¥í¥Ã¥¯¤òºÆÀ°Íý¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "¼«Æ°¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂ⽤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 #, fuzzy msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "¥ë¡¼¥×ºÇŬ²½¸å¤Ë¶¦ÄÌÉôʬ¼°½üµî²áÄø¤ò¼Â¹Ô" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 #, fuzzy msgid "Run the loop optimizer twice" msgstr "¥ë¡¼¥×ºÇŬ²½¤òÆó²ó¼Â¹Ô¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 #, fuzzy msgid "Generate run time type descriptor information" msgstr "¼Â¹Ô»þ·¿µ­½Ò¾ðÊó¤òÀ¸À®¤·¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "´ðËÜ¥Ö¥í¥Ã¥¯¤ò¸Ù¤°Ì¿ÎáÇÛÃÖ¤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "Èó¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "¤¤¤¯¤Ä¤«¤Î¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "¤è¤ê¿¤¯¤Î¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 #, fuzzy msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr " -fsched-verbose= ¥¹¥±¥¸¥å¡¼¥é¤ÎñÁÀå¥ì¥Ù¥ë¤òÀßÄꤹ¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "¥ì¥¸¥¹¥¿³ÎÊݤÎÁ°¤ËÌ¿Îá¤òÊ¤Ùľ¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "¥ì¥¸¥¹¥¿³ÎÊݤθå¤ÇÌ¿Îá¤òÊ¤Ùľ¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +#, fuzzy +msgid "Allow appending a second underscore to externals" +msgstr "³°ÉôÊÑ¿ô¤ËÆó¤ÄÌܤΥ¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "¥Ç¡¼¥¿¤ò¥×¥é¥¤¥Ù¡¼¥È¤Ç¤Ï¤Ê¤¯¶¦Í­¤µ¤ì¤ë¤è¤¦¥Þ¡¼¥¯¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "double ¤Î¥µ¥¤¥º¤ò float ¤ÈƱ¤¸¤È¤·¤Æ»ÈÍѤ¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 #, fuzzy msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "wchar_t ¤Îº¬ËÜŪ¤Ê·¿¤ò `unsigned short' ¤Èʤ¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 #, fuzzy msgid "Make \"char\" signed by default" msgstr "'char' ¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÉä¹çÉÕ¤­¤È¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +#, fuzzy +msgid "Do not print names of program units as they are compiled" +msgstr "¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥×¥í¥°¥é¥àñ°Ì¤Î̾Á°¤òɽ¼¨¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 #, fuzzy msgid "Convert floating point constants to single precision constants" msgstr "ÉâÆ°¾®¿ôÅÀÄê¿ô¤òñÀºÅÙÄê¿ô¤ËÊÑ´¹¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +#, fuzzy +msgid "Internally convert most source to lowercase" +msgstr "ÆâÉôŪ¤ÊÊÑ´¹¤Ç¤Ï¥½¡¼¥¹¤ÎËؤó¤É¤ò±ÑÂçʸ»ú¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "ÆâÉôŪ¤Ë¥½¡¼¥¹¤Î¥±¡¼¥¹¤òÊÝ»ý¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "ÆâÉôŪ¤ÊÊÑ´¹¤Ç¤Ï¥½¡¼¥¹¤ÎËؤó¤É¤ò±ÑÂçʸ»ú¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "¥×¥í¥°¥é¥à¤Ë¥¹¥¿¥Ã¥¯¶­³¦¸¡½Ð¥³¡¼¥É¤òÁÞÆþ¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "¥³¥ó¥Ñ¥¤¥ëÃæ¤ËÃßÀѤµ¤ì¤¿Åý·×¾ðÊó¤òɽ¼¨¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 #, fuzzy msgid "Perform strength reduction optimizations" msgstr "¶¯Åٺ︺ºÇŬ²½¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "¸·Ì©¤ÊÊÌ̾µ¬Â§¤ËŬ¹ç¤¹¤ë¤È¤ß¤Ê¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "¥·¥ó¥Ü¥ë̾¤Ï¥±¡¼¥¹º®ºß¤ÇÄÖ¤é¤ì¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "¥·¥ó¥Ü¥ë̾¤ò¾®Ê¸»ú¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "¥·¥ó¥Ü¥ë̾¤òÂçʸ»ú¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "ʸˡ¥¨¥é¡¼¤ò¸¡½Ð¤·¤Æ¡¢¤½¤³¤ÇÄä»ß¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 #, fuzzy msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂβ½¤Î¿¼¤µ¤ÎºÇÂçÃͤò»ØÄꤹ¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 #, fuzzy msgid "Create data files needed by \"gcov\"" msgstr "gcov ¤¬É¬ÍפȤ¹¤ë¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 #, fuzzy msgid "Perform jump threading optimizations" msgstr "¥¸¥ã¥ó¥×ʬ´ôºÇŬ²½¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 #, fuzzy msgid "Report the time taken by each compiler pass" msgstr "¼Â¹Ô½ªÎ»»þ¤Ë¥³¥ó¥Ñ¥¤¥é¤Î³Æ²áÄø¤ËÍפ·¤¿»þ´Ö¤òÊó¹ð¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 msgid "Assume floating-point operations can trap" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 #, fuzzy msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "Éä¹çÉÕ¤­¤Î²Ã»»/¸º»»/¾è»»¤Ç¤Î·å¤¢¤Õ¤ì¤ò¥È¥é¥Ã¥×¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "ÈóÀ°¿ôÄê¿ô¤ÎÀÜÈø´ð¿ô¤¬·¿¤Ê¤·¤Ç¤¢¤ë¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +#, fuzzy +msgid "Allow all ugly features" +msgstr "Á´¤Æ¤Î½¹¤¤µ¡Ç½¤òµö²Ä¤·¤Ê¤¤" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +#, fuzzy +msgid "Hollerith and typeless can be passed as arguments" +msgstr "Hollerith ¤ä·¿¤Ê¤·Äê¿ô¤ò°ú¿ô¤È¤·¤ÆÅϤµ¤Ê¤¤" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "ASSIGN ¤µ¤ì¤¿ÊÑ¿ô¤ÎÄ̾ï¤Î¥³¥Ô¡¼¤òµö²Ä¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "¥À¥ß¡¼ÇÛÎó¤Î¼¡¸µ¤ò (1) ¤È¤ß¤Ê¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "¥×¥í¥·¡¼¥¸¥ã¸Æ¤Ó½Ð¤·Ãæ¤ÎϢ³¥«¥ó¥Þ¤Ç null °ú¿ô¤òɽ¸½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "DOUBLE COMPLEX Z ¤Ç¤Î REAL(Z) ¤È AIMAG(Z) ¤òµö²Ä¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +#, fuzzy +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "DATA ¤ä PARAMETER ·Ðͳ¤Î½é´ü²½¤Ï·¿¸ß´¹¤Ç¤¢¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "INTEGER ¤È LOGICAL ¤ÏÁê¸ß¤ËÊѹ¹²Äǽ¤Ç¤¢¤ë¤È¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +#, fuzzy +msgid "Append underscores to externals" +msgstr "³°ÉôÊÑ¿ô¤ËÆó¤ÄÌܤΥ¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 #, fuzzy msgid "Compile whole compilation unit at a time" msgstr "ËÝÌõñ°ÌÁ´ÂΤò¥Õ¥¡¥¤¥ë¤Ë¥À¥ó¥×¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "libU77 intrinsic ¤òºï½ü¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "libU77 intrinsic ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +#, fuzzy +msgid "Enable libU77 intrinsics" +msgstr "libU77 intrinsic ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "libU77 intrinsic ¤ò±£¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 #, fuzzy msgid "Make \"char\" unsigned by default" msgstr "'char' ¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÉä¹ç̵¤·¤È¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 #, fuzzy msgid "Perform loop unswitching" msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤Ç¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "´¬¤­Ìᤷ¤ò¹Ô¤Ê¤¦Îã³°Êä­Íѥơ¼¥Ö¥ë¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 #, fuzzy msgid "Use __cxa_atexit to register destructors" msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤ÎÅÐÏ¿¤Ë __cxa_atexit ¤òÍøÍѤ¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 #, fuzzy msgid "Add extra commentary to assembler output" msgstr ";ʬ¤Ê¥³¥á¥ó¥È¤ò¥¢¥»¥ó¥Ö¥é½ÐÎϤËÄɲ乤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +#, fuzzy +msgid "Print g77-specific version information and run internal tests" +msgstr "g77 ¸ÇÍ­¤Î¥³¥ó¥Ñ¥¤¥é¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¡¢ÆâÉô¥Æ¥¹¥È¤Î¼Â¹Ô" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 msgid "Use expression value profiles in optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "»È¤ï¤ì¤Ê¤¤²¾ÁÛ´Ø¿ô¤òÀÚ¤ê¼Î¤Æ¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "thunk ¤ò»È¤Ã¤Æ vtable ¤ò¼ÂÁõ¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "¥×¥í¥°¥é¥à¤Ï VXT (Digital) FORTRAN ¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +#, fuzzy +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "¥³¥â¥ó¥·¥ó¥Ü¥ë¤ò¥¦¥£¡¼¥¯¥·¥ó¥Ü¥ë¤ÎÍͤËÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "ʸ»úÎó¤ò½ñ¤­¹þ¤ß²Äǽ¥Ç¡¼¥¿¥»¥¯¥·¥ç¥ó¤Ë³ÊǼ¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "Áê¸ß»²¾È¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +#, fuzzy +msgid "Print internal debugging-related information" +msgstr "ÆâÉô¥Ç¥Ð¥Ã¥°´ØÏ¢¾ðÊó¤òɽ¼¨¤¹¤ë" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 #, fuzzy msgid "Put zero initialized data in the bss section" msgstr "Âç°èÊÑ¿ôÅù¤ò½é´ü²½¤µ¤ì¤Ê¤¤¥³¥â¥ó¥»¥¯¥·¥ç¥ó¤ËÃÖ¤«¤Ê¤¤" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "0 ¤Î½é´ü²½ÃͤòÈó¥¼¥íÃͤȤ·¤Æ¼è¤ê°·¤¦" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 #, fuzzy msgid "Generate debug information in default format" msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 #, fuzzy msgid "Generate debug information in COFF format" msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 #, fuzzy msgid "Generate debug information in DWARF v2 format" msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 #, fuzzy msgid "Dump declarations to a .decl file" msgstr "Àë¸À¤ò .decl ¥Õ¥¡¥¤¥ë¤Ë¥À¥ó¥×¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 #, fuzzy msgid "Generate debug information in default extended format" msgstr "¥Ç¥Õ¥©¥ë¥È³ÈÄ¥·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 #, fuzzy msgid "Generate debug information in STABS format" msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 #, fuzzy msgid "Generate debug information in extended STABS format" msgstr "¥Ç¥Õ¥©¥ë¥È³ÈÄ¥·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 #, fuzzy msgid "Generate debug information in VMS format" msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 #, fuzzy msgid "Generate debug information in XCOFF format" msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 #, fuzzy msgid "Generate debug information in extended XCOFF format" msgstr "¥Ç¥Õ¥©¥ë¥È³ÈÄ¥·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 #, fuzzy msgid "-o \tPlace output into " msgstr " -o ½ÐÎϤò ¤Ë½ñ¤­¹þ¤à\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 #, fuzzy msgid "Enable function profiling" msgstr "mips16 ´Ø¿ô¥×¥í¥Õ¥¡¥¤¥ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 #, fuzzy msgid "Issue warnings needed for strict compliance to the standard" msgstr " -pedantic ¸·Ì©¤Ê ISO C ¤Ø¤ÎŬ¹ç¤ËÍפ¹¤ë·Ù¹ð¤òȯ¤¹¤ë\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 #, fuzzy msgid "Generate C header of platform-specific features" msgstr "¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤Îµ¡Ç½¤Î C ¥Ø¥Ã¥À¤òÀ¸À®¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 #, fuzzy msgid "Do not display functions compiled or elapsed time" msgstr " -quiet ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿´Ø¿ô¤ä·Ð²á»þ´Ö¤òɽ¼¨¤·¤Ê¤¤\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 #, fuzzy msgid "Remap file names when including files" msgstr "#%s ¤Ç¤Î¥Õ¥¡¥¤¥ë̾¤¬¶õ¤Ç¤¹" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 #, fuzzy msgid "Enable traditional preprocessing" msgstr "¥¹¥¿¥Ã¥¯Ãµº÷¤òÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 #, fuzzy msgid "Enable verbose output" msgstr "¥Ç¥Ð¥Ã¥°½ÐÎϤòÍ­¸ú¤Ë¤¹¤ë" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -#, fuzzy -msgid "Display the compiler's version" -msgstr " -version ¥³¥ó¥Ñ¥¤¥é¤Î¥Ð¡¼¥¸¥ç¥ó¤òɽ¼¨¤¹¤ë\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 #, fuzzy msgid "Suppress warnings" msgstr "%s: ·Ù¹ð: " -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "`-p' ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó. `-pg' ¤È gprof(1) ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤" @@ -21970,7 +22393,7 @@ msgstr "GNU C msgid "GCC does not support -CC without using -E" msgstr "GNU C ¤Ï -E ¤òȼ¤ï¤Ê¤¤ -C ¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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 @@ -22293,6 +22716,9 @@ msgstr "mno-cygwin #~ msgid "sizeof applied to a void type" #~ msgstr "sizeof ¤¬ void ·¿¤ËŬÍѤµ¤ì¤Þ¤·¤¿" +#~ msgid "__alignof__ applied to an incomplete type" +#~ msgstr "__alignof__ ¤¬ÉÔ´°Á´¤Ê·¿¤ËŬÍѤµ¤ì¤Þ¤·¤¿" + #~ msgid "wrong type argument to %s" #~ msgstr "%s ¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹" @@ -22888,6 +23314,9 @@ msgstr "mno-cygwin #~ 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 "`&' ¤ÎÁ°¤Ë·¿¤Î̾Á°¤¬¤¢¤ë¤Ù¤­¤Ç¤¹" @@ -23390,222 +23819,15 @@ msgstr "mno-cygwin #~ msgid "Directory name must immediately follow -I" #~ msgstr "¥Ç¥¤¥ì¥¯¥È¥ê̾¤Ï -I ¤Î¤¹¤°¸å¤í¤Ë¤Ä¤±¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" -#~ msgid "Print g77-specific compiler version info, run internal tests" -#~ msgstr "g77 ¸ÇÍ­¤Î¥³¥ó¥Ñ¥¤¥é¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¡¢ÆâÉô¥Æ¥¹¥È¤Î¼Â¹Ô" - -#~ msgid "Program is written in typical FORTRAN 66 dialect" -#~ msgstr "¥×¥í¥°¥é¥à¤¬Åµ·¿Åª¤Ê FORTRAN 66 Êý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" - -#~ msgid "Program is written in typical Unix f77 dialect" -#~ msgstr "¥×¥í¥°¥é¥à¤¬Åµ·¿Åª¤Ê Unix f77 Êý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" - #~ msgid "Program does not use Unix-f77 dialectal features" #~ msgstr "¥×¥í¥°¥é¥à¤¬ Unix-f77 Êý¸À¤Îµ¡Ç½¤ò»È¤Ã¤Æ¤¤¤Ê¤¤" -#~ msgid "Program is written in Fortran-90-ish dialect" -#~ msgstr "¥×¥í¥°¥é¥à¤¬ Fortran-90 ŪÊý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" - -#~ msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements" -#~ msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤È COMMON ¥Ö¥í¥Ã¥¯¤ò SAVE ʸ¤Ç̾Á°ÉÕ¤±¤é¤ì¤¿¤è¤¦¤Ë¼è¤ê°·¤¦" - -#~ msgid "Allow $ in symbol names" -#~ msgstr "$ ¤ò¥·¥ó¥Ü¥ë̾¤È¤·¤Æ»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë" - -#~ msgid "f2c-compatible code need not be generated" -#~ msgstr "f2c ¸ß´¹¥³¡¼¥É¤òÀ¸À®¤¹¤ëɬÍפ¬¤Ê¤¤" - -#~ msgid "Unsupported; do not generate libf2c-calling code" -#~ msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -- libf2c-calling ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤" - -#~ msgid "Unsupported; affects code-generation of arrays" -#~ msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -- ÇÛÎó¤Î¥³¡¼¥ÉÀ¸À®¤Ë±Æ¶Á¤¹¤ë" - -#~ msgid "Program is written in Fortran-90-ish free form" -#~ msgstr "¥×¥í¥°¥é¥à¤Ï Fortran-90 Ū¥Õ¥ê¡¼¥Õ¥©¡¼¥à¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" - -#~ msgid "Warn about use of (only a few for now) Fortran extensions" -#~ msgstr "Fortran ³ÈÄ¥(º£¤Ï¾¯¤Ê¤¤¤¬)¤Î»ÈÍѤˤĤ¤¤Æ·Ù¹ð¤¹¤ë" - -#~ msgid "Program is written in VXT (Digital-like) FORTRAN" -#~ msgstr "¥×¥í¥°¥é¥à¤Ï VXT (Digital) FORTRAN ¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" - -#~ msgid "Disallow all ugly features" -#~ msgstr "Á´¤Æ¤Î½¹¤¤µ¡Ç½¤òµö²Ä¤·¤Ê¤¤" - -#~ msgid "Hollerith and typeless constants not passed as arguments" -#~ msgstr "Hollerith ¤ä·¿¤Ê¤·Äê¿ô¤ò°ú¿ô¤È¤·¤ÆÅϤµ¤Ê¤¤" - -#~ msgid "Allow ordinary copying of ASSIGN'ed vars" -#~ msgstr "ASSIGN ¤µ¤ì¤¿ÊÑ¿ô¤ÎÄ̾ï¤Î¥³¥Ô¡¼¤òµö²Ä¤¹¤ë" - -#~ msgid "Dummy array dimensioned to (1) is assumed-size" -#~ msgstr "¥À¥ß¡¼ÇÛÎó¤Î¼¡¸µ¤ò (1) ¤È¤ß¤Ê¤¹" - -#~ msgid "Trailing comma in procedure call denotes null argument" -#~ msgstr "¥×¥í¥·¡¼¥¸¥ã¸Æ¤Ó½Ð¤·Ãæ¤ÎϢ³¥«¥ó¥Þ¤Ç null °ú¿ô¤òɽ¸½¤¹¤ë" - -#~ msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" -#~ msgstr "DOUBLE COMPLEX Z ¤Ç¤Î REAL(Z) ¤È AIMAG(Z) ¤òµö²Ä¤¹¤ë" - -#~ msgid "Initialization via DATA and PARAMETER is type-compatible" -#~ msgstr "DATA ¤ä PARAMETER ·Ðͳ¤Î½é´ü²½¤Ï·¿¸ß´¹¤Ç¤¢¤ë" - -#~ msgid "Allow INTEGER and LOGICAL interchangeability" -#~ msgstr "INTEGER ¤È LOGICAL ¤ÏÁê¸ß¤ËÊѹ¹²Äǽ¤Ç¤¢¤ë¤È¤¹¤ë" - -#~ msgid "Print internal debugging-related info" -#~ msgstr "ÆâÉô¥Ç¥Ð¥Ã¥°´ØÏ¢¾ðÊó¤òɽ¼¨¤¹¤ë" - -#~ msgid "Initialize local vars and arrays to zero" -#~ msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤äÇÛÎó¤ò¥¼¥í¤Ë½é´ü²½¤¹¤ë" - -#~ msgid "Backslashes in character/hollerith constants not special (C-style)" -#~ msgstr "ʸ»ú/hollerith Äê¿ô¤Ç¤Î¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤òÆüì¤Ê¤â¤Î¤È¤·¤Ê¤¤ (C ¼°)" - -#~ msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" -#~ msgstr "COMPLEX ·×»»¤Î¥Ð¥°¤ò²óÈò¤ò¥¨¥ß¥å¥ì¡¼¥È¤¹¤ë¥Õ¥í¥ó¥È¥¨¥ó¥É¤ò»ý¤Ä" - #~ msgid "Disable the appending of underscores to externals" #~ msgstr "³°ÉôÊÑ¿ô¤Ë¥¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤" -#~ msgid "Never append a second underscore to externals" -#~ msgstr "³°ÉôÊÑ¿ô¤ËÆó¤ÄÌܤΥ¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤" - -#~ msgid "Intrinsics spelled as e.g. SqRt" -#~ msgstr "intrinsic ¤¬Î㤨¤Ð SqRt ¤ÎÍѤËÄÖ¤é¤ì¤ë" - -#~ msgid "Intrinsics in uppercase" -#~ msgstr "intrinsic ¤ò±ÑÂçʸ»ú¤È¤¹¤ë" - -#~ msgid "Intrinsics letters in arbitrary cases" -#~ msgstr "intrinsic ʸ»ú¤ÏǤ°Õ¤Î¥±¡¼¥¹¤È¤¹¤ë" - -#~ msgid "Language keywords spelled as e.g. IOStat" -#~ msgstr "¸À¸ìͽÌó¸ì¤¬Î㤨¤Ð IOStat ¤ÎÍѤËÄÖ¤é¤ì¤ë" - -#~ msgid "Language keywords in uppercase" -#~ msgstr "¸À¸ìͽÌó¸ì¤Ï±ÑÂçʸ»ú¤È¤¹¤ë" - -#~ msgid "Language keyword letters in arbitrary cases" -#~ msgstr "¸À¸ìͽÌó¸ìʸ»ú¤ÏǤ°Õ¤Î¥±¡¼¥¹¤È¤¹¤ë" - -#~ msgid "Internally convert most source to uppercase" -#~ msgstr "ÆâÉôŪ¤ÊÊÑ´¹¤Ç¤Ï¥½¡¼¥¹¤ÎËؤó¤É¤ò±ÑÂçʸ»ú¤È¤¹¤ë" - -#~ msgid "Internally preserve source case" -#~ msgstr "ÆâÉôŪ¤Ë¥½¡¼¥¹¤Î¥±¡¼¥¹¤òÊÝ»ý¤¹¤ë" - -#~ msgid "Symbol names spelled in mixed case" -#~ msgstr "¥·¥ó¥Ü¥ë̾¤Ï¥±¡¼¥¹º®ºß¤ÇÄÖ¤é¤ì¤ë" - -#~ msgid "Symbol names in uppercase" -#~ msgstr "¥·¥ó¥Ü¥ë̾¤òÂçʸ»ú¤È¤¹¤ë" - -#~ msgid "Program written in uppercase" -#~ msgstr "¥×¥í¥°¥é¥à¤¬±ÑÂçʸ»ú¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" - -#~ msgid "Program written in lowercase" -#~ msgstr "¥×¥í¥°¥é¥à¤¬±Ñ¾®Ê¸»ú¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" - -#~ msgid "Program written in strict mixed-case" -#~ msgstr "¥×¥í¥°¥é¥à¤¬¸·Ì©¤Ë¥±¡¼¥¹º®ºß¤Ç½ñ¤«¤ì¤Æ¤¤¤ë" - -#~ msgid "Compile as if program written in uppercase" -#~ msgstr "¥×¥í¥°¥é¥à¤¬±ÑÂçʸ»ú¤Ç½ñ¤«¤ì¤¿Íͤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë" - -#~ msgid "Compile as if program written in lowercase" -#~ msgstr "¥×¥í¥°¥é¥à¤¬±Ñ¾®Ê¸»ú¤Ç½ñ¤«¤ì¤¿Íͤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë" - -#~ msgid "Preserve all spelling (case) used in program" -#~ msgstr "¥×¥í¥°¥é¥à¤Ç»È¤ï¤ì¤¿ÄÖ¤ê(¤Î¥±¡¼¥¹)¤òÁ´¤ÆÊÝ»ý¤¹¤ë" - -#~ msgid "Delete libU77 intrinsics with bad interfaces" -#~ msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ëºï½ü¤¹¤ë" - -#~ msgid "Disable libU77 intrinsics with bad interfaces" -#~ msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë̵¸ú²½¤¹¤ë" - -#~ msgid "Hide libU77 intrinsics with bad interfaces" -#~ msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë±£¤¹" - -#~ msgid "Delete non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë" - -#~ msgid "Disable non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" - -#~ msgid "Hide non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹" - -#~ msgid "Delete non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë" - -#~ msgid "Disable non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" - -#~ msgid "Hide non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹" - -#~ msgid "Delete non-FORTRAN-77 intrinsics g77 supports" -#~ msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë" - -#~ msgid "Disable non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" - -#~ msgid "Hide non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹" - -#~ msgid "Delete MIL-STD 1753 intrinsics" -#~ msgstr "MIL-STD 1753 intrinsic ¤òºï½ü¤¹¤ë" - -#~ msgid "Disable MIL-STD 1753 intrinsics" -#~ msgstr "MIL-STD 1753 intrinsic ¤ò̵¸ú²½¤¹¤ë" - -#~ msgid "Hide MIL-STD 1753 intrinsics" -#~ msgstr "MIL-STD 1753 intrinsic ¤ò±£¤¹" - -#~ msgid "Delete libU77 intrinsics" -#~ msgstr "libU77 intrinsic ¤òºï½ü¤¹¤ë" - -#~ msgid "Disable libU77 intrinsics" -#~ msgstr "libU77 intrinsic ¤ò̵¸ú²½¤¹¤ë" - -#~ msgid "Hide libU77 intrinsics" -#~ msgstr "libU77 intrinsic ¤ò±£¤¹" - -#~ msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë" - -#~ msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë" - -#~ msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹" - -#~ msgid "Treat initial values of 0 like non-zero values" -#~ msgstr "0 ¤Î½é´ü²½ÃͤòÈó¥¼¥íÃͤȤ·¤Æ¼è¤ê°·¤¦" - -#~ msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" -#~ msgstr "COMMON ¤ä EQUIVALENCE ÍѤÎÆÃÊ̤ʥǥХå°¾ðÊó¤òȯ¹Ô¤¹¤ë¡Ê̵¸ú²½¤µ¤ì¤Æ¤¤¤ë¡Ë" - -#~ msgid "Take at least one trip through each iterative DO loop" -#~ msgstr "ºÇÄã¤Ç¤â°ì²ó¤Ï³ÆÈ¿Éü DO ¥ë¡¼¥×¤¬½èÍý¤µ¤ì¤ë¤È¤¹¤ë" - -#~ msgid "Disable fatal diagnostics about inter-procedural problems" -#~ msgstr "inter-procedural ÌäÂê¤Ë¤Ä¤¤¤Æ¤ÎÃ×̿Ū¤Ê¿ÇÃÇɽ¼¨¤òɽ¼¨¤·¤Ê¤¤" - -#~ msgid "Make prefix-radix non-decimal constants be typeless" -#~ msgstr "ÈóÀ°¿ôÄê¿ô¤ÎÀÜÈø´ð¿ô¤¬·¿¤Ê¤·¤Ç¤¢¤ë¤È¤¹¤ë" - #~ msgid "Fortran-specific form of -fbounds-check" #~ msgstr "Fortran ¸ÇÍ­¤Î -fbounds-check ¤Î·Á¼°" -#~ msgid "Disable warnings about inter-procedural problems" -#~ msgstr "inter-procedural ÌäÂê¤Ë¤Ä¤¤¤Æ¤Î·Ù¹ðɽ¼¨¤òɽ¼¨¤·¤Ê¤¤" - -#~ msgid "Warn about constructs with surprising meanings" -#~ msgstr "²ò¼á¤Ë¸í²ò¤ò¾·¤¯¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë" - #~ msgid "Add a directory for INCLUDE searching" #~ msgstr "INCLUDE õº÷ÍѤΥǥ£¥ì¥¯¥È¥ê¤òÄɲ乤ë" @@ -23729,12 +23951,6 @@ msgstr "mno-cygwin #~ msgid "Don't put synchronization structure in each object" #~ msgstr "Ʊ´ü¹½Â¤ÂΤò³Æ¥ª¥Ö¥¸¥§¥¯¥È¤ËÁȤßÆþ¤ì¤Ê¤¤" -#~ msgid "Assume native functions are implemented using JNI" -#~ msgstr "native ´Ø¿ô¤¬ JNI ¤òÍøÍѤ·¤Æ¼ÂÁõ¤·¤Æ¤¤¤ë¤â¤Î¤È¤ß¤Ê¤¹" - -#~ msgid "Set class path and suppress system path" -#~ msgstr "¥¯¥é¥¹¥Ñ¥¹¤òÀßÄꤷ¤Æ¥·¥¹¥Æ¥à¥Ñ¥¹¤ò±£¤¹" - #~ msgid "Set class path" #~ msgstr "¥¯¥é¥¹¥Ñ¥¹¤òÀßÄꤹ¤ë" @@ -23750,18 +23966,6 @@ msgstr "mno-cygwin #~ msgid "Directory where class files should be written" #~ msgstr "¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤¬½ñ¤­¹þ¤Þ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê" -#~ msgid "Warn if modifiers are specified when not necessary" -#~ msgstr "»ØÄꤵ¤ì¤¿½¤¾þ»Ò¤¬ÉÔÍפʤâ¤Î¤Ç¤¢¤ì¤Ð·Ù¹ð¤¹¤ë" - -#~ msgid "Warn if deprecated empty statements are found" -#~ msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¶õʸ¤¬¸«¤Ä¤«¤ì¤Ð·Ù¹ð¤¹¤ë" - -#~ msgid "Warn if .class files are out of date" -#~ msgstr ".class ¥Õ¥¡¥¤¥ë¤¬¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤è¤ê¸Å¤±¤ì¤Ð·Ù¹ð¤¹¤ë" - -#~ msgid "Always check for non gcj generated classes archives" -#~ msgstr "gcj ¤¬À¸À®¤·¤Æ¤¤¤Ê¤¤¥¯¥é¥¹¥¢¡¼¥«¥¤¥Ö¤ò¾ï¤Ë¸¡ºº¤¹¤ë" - #~ msgid "Can't specify array dimension in a declaration" #~ msgstr "ÇÛÎó¤Î¼¡¸µ¤òÀë¸À¤Ç»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó" @@ -23876,6 +24080,9 @@ msgstr "mno-cygwin #~ 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 "¥Û¥¹¥È¤È¥¿¡¼¥²¥Ã¥È¤¬Æ±¤¸ÉâÆ°¾®¿ô·Á¼°¤ò»È¤¦¿¶¤ëÉñ¤¤¤ò¤µ¤»¤ë" @@ -23918,6 +24125,9 @@ msgstr "mno-cygwin #~ msgid "Use the smallest fitting integer to hold enums" #~ msgstr "Îóµó·¿¤¬ÊÝ»ý¤Ç¤­¤ëºÇ¾®¤ÎÀ°¿ô·¿¤ò»ÈÍѤ¹¤ë" +#~ msgid "Enable most warning messages" +#~ msgstr "Ëؤó¤É¤Î·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òÍ­¸ú¤Ë¤¹¤ë" + #~ msgid "Warn if nested comments are detected" #~ msgstr "Æþ¤ì»Ò¤Ë¤Ê¤Ã¤¿¥³¥á¥ó¥È¤ò¸¡½Ð¤·¤¿¤È¤­¤Ë·Ù¹ð¤¹¤ë" @@ -23966,6 +24176,9 @@ msgstr "mno-cygwin #~ 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" @@ -24038,6 +24251,9 @@ msgstr "mno-cygwin #~ 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 ¼°¤Ç¤¹" diff --git a/gcc/po/nl.po b/gcc/po/nl.po index cb673771305..02c5e872745 100644 --- a/gcc/po/nl.po +++ b/gcc/po/nl.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.3.2\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2003-10-26 10:40+0100\n" "Last-Translator: Tim Van Holder \n" "Language-Team: Dutch \n" @@ -38,15 +38,15 @@ msgstr "het `%s' attribuut heeft geen betekenis voor types" msgid "`%s' attribute only applies to function types" msgstr "het `%s' attribuut heeft enkel betekenis voor functie-types" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -122,7 +122,7 @@ msgstr "(dus U zou `%s' en niet `%s' moeten doorgeven aan `va_arg')" #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "" @@ -290,277 +290,277 @@ msgid "invalid application of `%s' to a void type" msgstr "ongeldige toepasing van `%s' op een void-type" #: c-common.c:2951 -#, c-format -msgid "invalid application of `%s' to an incomplete type" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " msgstr "ongeldige toepassing van `%s' op een onvolledig type" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "`__alignof' toegepast op bitveld" -#: c-common.c:3483 +#: c-common.c:3484 #, c-format msgid "cannot disable built-in function `%s'" msgstr "ingebouwde functie `%s' kan niet uitgeschakeld worden" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "te weinig argumenten voor functie `%s'" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "teveel argumenten voor functie `%s'" -#: c-common.c:3669 +#: c-common.c:3670 #, c-format msgid "non-floating-point argument to function `%s'" msgstr "niet-floating-point argument voor functie `%s'" -#: c-common.c:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "pointers zijn niet toegestaan als case-waarden" -#: c-common.c:3900 +#: c-common.c:3901 #, 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:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "leeg bereik opgegeven" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "herhaalde (of overlappende) case-waarde" -#: c-common.c:3981 +#: c-common.c:3982 #, fuzzy msgid "%Jthis is the first entry overlapping that value" msgstr "dit is de eerste waarde die die waarde overlapt" -#: c-common.c:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "herhaalde case-waarde" -#: c-common.c:3986 +#: c-common.c:3987 #, fuzzy msgid "%Jpreviously used here" msgstr "tevoren hier gebruikt" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "meerdere default-labels in één switch" -#: c-common.c:3991 +#: c-common.c:3992 #, fuzzy msgid "%Jthis is the first default label" msgstr "dit is het eerste default-label" -#: c-common.c:4016 +#: c-common.c:4017 #, 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:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "onbekende machine-modus `%s'" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "geen datatype voor modus `%s'" -#: c-common.c:4655 +#: c-common.c:4656 #, fuzzy, c-format msgid "invalid pointer mode `%s'" msgstr "ongeldige operand van %s" # Misschien beter 'emuleren' dan nabootsen? -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, c-format msgid "unable to emulate '%s'" msgstr "kan '%s' niet nabootsen" -#: c-common.c:4706 +#: c-common.c:4707 #, fuzzy msgid "%Jsection attribute cannot be specified for local variables" msgstr "sectie-attribuut kan niet opgegeven worden voor lokale variabelen" -#: c-common.c:4717 +#: c-common.c:4718 #, fuzzy msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie" -#: c-common.c:4726 +#: c-common.c:4727 #, fuzzy msgid "%Jsection attribute not allowed for '%D'" msgstr "sectie-attribuut niet toegestaan voor `%s'" -#: c-common.c:4732 +#: c-common.c:4733 #, fuzzy msgid "%Jsection attributes are not supported for this target" msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "gevraagd alignment is geen constante" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "gevraagd alignment is geen macht van 2" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "gevraagd alignment is te groot" -#: c-common.c:4806 +#: c-common.c:4807 #, fuzzy msgid "%Jalignment may not be specified for '%D'" msgstr "er kan geen alignment opgegeven worden voor `%s'" -#: c-common.c:4844 +#: c-common.c:4845 #, 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:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "alias-argument is geen string" # Of moet dit vertaald worden als 'zichtbaarheidsargument is ...'? -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "argument 'visibility' is geen string" -#: c-common.c:4910 +#: c-common.c:4911 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:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "argument 'tls_model' is geen string" -#: c-common.c:4945 +#: c-common.c:4946 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:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 #, fuzzy msgid "%J'%E' attribute applies only to functions" msgstr "het `%s' attribuut heeft enkel betekenis voor functies" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 #, fuzzy msgid "%Jcan't set '%E' attribute after definition" msgstr "kan het `%s' attribuut niet instellen na een definitie" -#: c-common.c:5094 +#: c-common.c:5095 #, 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:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "ongeldig vector-type voor attribuut `%s'" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 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:5315 +#: c-common.c:5316 msgid "nonnull attribute without arguments on a non-prototype" msgstr "nonnull attribuut zonder argumenten gebruikt voor een niet-prototype" -#: c-common.c:5330 +#: c-common.c:5331 #, fuzzy, c-format msgid "nonnull argument has invalid operand number (arg %lu)" msgstr "de formaatstring heeft een niet-constant operand-nummer" -#: c-common.c:5349 +#: c-common.c:5350 #, 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:5357 +#: c-common.c:5358 #, 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:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "null argument waar een niet-null argument vereist is (arg %lu)" -#: c-common.c:5508 +#: c-common.c:5509 #, fuzzy msgid "cleanup arg not an identifier" msgstr "`defined' zonder een naam" -#: c-common.c:5515 +#: c-common.c:5516 #, fuzzy msgid "cleanup arg not a function" msgstr "opgeroepen object is geen functie" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s aan einde van invoer" -#: c-common.c:5882 +#: c-common.c:5883 #, fuzzy, c-format msgid "%s before %s'%c'" msgstr "%s voor `%s'" -#: c-common.c:5884 +#: c-common.c:5885 #, fuzzy, c-format msgid "%s before %s'\\x%x'" msgstr "%s voor `%s'" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "%s voor stringconstante" -#: c-common.c:5890 +#: c-common.c:5891 #, fuzzy, c-format msgid "%s before numeric constant" msgstr "%s voor stringconstante" -#: c-common.c:5892 +#: c-common.c:5893 #, fuzzy, c-format msgid "%s before \"%s\"" msgstr "%s voor `%s'" -#: c-common.c:5894 +#: c-common.c:5895 #, fuzzy, c-format msgid "%s before '%s' token" msgstr "%s voor `%s'" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 treelang/tree-convert.c:79 msgid "void value not ignored as it ought to be" msgstr "void-waarde niet genegeerd zoals het hoort" @@ -778,8 +778,8 @@ msgstr "de declaratie van `%s' verbergt een parameter" msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "de declaratie van `%s' verbergt een parameter" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 #, fuzzy msgid "%Jshadowed declaration is here" msgstr "eerdere declaratie van `%s'" @@ -789,7 +789,7 @@ msgstr "eerdere declaratie van `%s'" msgid "nested extern declaration of `%s'" msgstr "geneste externe declaratie van `%s'" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 #, fuzzy msgid "%Jprevious declaration of '%D'" msgstr "eerdere declaratie van `%s'" @@ -869,7 +869,7 @@ msgid "two types specified in one empty declaration" msgstr "twee types opgegeven in één lege declaratie" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "lege declaratie" @@ -912,7 +912,7 @@ msgstr "typedef `%s' krijgt beginwaarde alsof het een variabele is" msgid "parameter `%s' is initialized" msgstr "parameter `%s' krijgt beginwaarde" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "object van variabele lengte mag geen beginwaarde krijgen" @@ -926,7 +926,7 @@ msgstr "variabele `%s' heeft beginwaarde, maar een onvolledig type" msgid "elements of array `%s' have incomplete type" msgstr "elementen van array `%s' hebben een onvolledig type" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 #, fuzzy msgid "%Jinline function '%D' given attribute noinline" msgstr "ingebouwde functie `%s' als niet-functie gedeclareerd" @@ -1217,7 +1217,7 @@ msgstr "ANSI C verbiedt array `%s', wiens grootte niet ge msgid "ISO C90 forbids variable-size array `%s'" msgstr "ANSI C verbiedt array `%s' van variabele lengte" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "omvang van array `%s' is te groot" @@ -1265,7 +1265,7 @@ msgstr "ongeldige type-modifier binnen pointer-declarator" msgid "ISO C forbids const or volatile function types" msgstr "ANSI C verbiedt 'const' of 'volatile' functietypes" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "variabele of veld `%s' als void gedeclareerd" @@ -1597,7 +1597,7 @@ msgstr "gepromoveerd argument `%s' komt niet overeen met prototype" msgid "argument \"%D\" doesn't match prototype" msgstr "argument `%s' komt niet overeen met prototype" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 #, fuzzy msgid "no return statement in function returning non-void" msgstr "`return' zonder waarde in een functie die een niet-void waarde teruggeeft" @@ -2409,7 +2409,7 @@ msgstr "" msgid "ISO C forbids an empty source file" msgstr "ANSI C verbiedt een leeg bronbestand" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "het argument van `asm' is geen constante string" @@ -2516,7 +2516,7 @@ msgstr "ANSI C verbiedt geneste functies" msgid "ISO C forbids forward references to `enum' types" msgstr "ANSI C verbiedt voorwaartse referenties naar `enum' types" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "komma aan het einde van enumerator-lijst" @@ -2524,7 +2524,7 @@ msgstr "komma aan het einde van enumerator-lijst" 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/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "extra puntkomma opgegeven in struct of union" @@ -2557,24 +2557,24 @@ msgstr "ANSI C verbiedt labeldeclaraties" msgid "braced-group within expression allowed only inside a function" msgstr "accolade-groep in expressie enkel toegestaan binnen een functie" -#: c-parse.y:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "leeg body in een else-statement" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 #, fuzzy msgid "%Hempty body in an if-statement" msgstr "leeg body in een else-statement" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 msgid "break statement not within loop or switch" msgstr "break-statement niet in een lus of switch" -#: c-parse.y:2281 cp/parser.c:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 msgid "continue statement not within a loop" msgstr "continue-statement niet in een lus" -#: c-parse.y:2323 objc/objc-parse.y:2380 +#: c-parse.y:2324 objc/objc-parse.y:2381 #, fuzzy msgid "ISO C forbids `goto *expr;'" msgstr "ANSI C verbiedt `goto *expr;'" @@ -2585,12 +2585,12 @@ msgstr "ANSI C verbiedt `goto *expr;'" #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 #, fuzzy msgid "ISO C requires a named argument before `...'" msgstr "ANSI C heeft een benoemd argument nodig vóór `...'" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "`...' in naamlijst in oude stijl" @@ -2608,7 +2608,7 @@ msgstr "parse-fout" msgid "parser stack overflow" msgstr "stack overflow in parser" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "" @@ -2783,22 +2783,22 @@ msgstr "misvormde #pragma weak" msgid "junk at end of #pragma redefine_extname" msgstr "misvormde #pragma weak" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "" -#: c-pragma.c:413 +#: c-pragma.c:414 #, fuzzy msgid "malformed #pragma extern_prefix, ignored" msgstr "misvormde #pragma pack(pop[,id])" # Moet 'signature-string' vertaald worden? -#: c-pragma.c:418 +#: c-pragma.c:419 #, fuzzy msgid "junk at end of #pragma extern_prefix" msgstr "Brol aan einde van signature-string." -#: c-pragma.c:449 +#: c-pragma.c:450 #, fuzzy msgid "asm declaration conflicts with previous rename" msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie" @@ -2816,7 +2816,7 @@ msgstr "" msgid "(enclose actions of previous case statements requiring destructors in their own scope.)" msgstr "" -#: c-semantics.c:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "" @@ -2825,829 +2825,829 @@ msgstr "" msgid "will never be executed" msgstr "" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "`%s' heeft een onvolledig type" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "ongeldig gebruik van een void-expressie" -#: c-typeck.c:150 +#: c-typeck.c:153 #, fuzzy msgid "invalid use of flexible array member" msgstr "ongeldig gebruik van array die geen lvalue is" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "ongeldig gebruik van een array zonder opgegeven grenzen" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "ongeldig gebruik van onvolledige typedef `%s'" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 #, fuzzy msgid "function types not truly compatible in ISO C" msgstr "functie-types zijn niet echt compatibel in ANSI C" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "types zijn niet helemaal compatibel" -#: c-typeck.c:824 +#: c-typeck.c:838 #, 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:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "rekensom met pointer naar onvolledig type" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, fuzzy, c-format msgid "%s has no member named `%s'" msgstr "union heeft geen lid dat `%s' heet" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, 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:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "dereferentie van pointer naar onvolledig type" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "`void *' pointer wordt gederefereerd" # Is the %s the argument, or is it 'of' the argument? -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "ongeldig type-argument `%s'" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "subscript ontbreekt in array-referentie" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "array subscript is van het type `char'" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "array subscript is geen integer" -#: c-typeck.c:1509 +#: c-typeck.c:1523 #, fuzzy msgid "ISO C forbids subscripting `register' array" msgstr "ANSI C verbiedt het gebruik van subscripts bij een `register' array" -#: c-typeck.c:1511 +#: c-typeck.c:1525 #, 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:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "subscript is van het type `char'" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "waarde met subscript is noch een array, noch een pointer" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, c-format msgid "local declaration of `%s' hides instance variable" msgstr "" -#: c-typeck.c:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "opgeroepen object is geen functie" #. 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 +#: c-typeck.c:1729 msgid "function called through a non-compatible type" msgstr "" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "beginwaarde-element is niet constant" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "teveel argumenten voor functie" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "het type van formele parameter %d is onvolledig" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, 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:1850 +#: c-typeck.c:1875 #, 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:1853 +#: c-typeck.c:1878 #, 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:1856 +#: c-typeck.c:1881 #, 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:1859 +#: c-typeck.c:1884 #, 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:1862 +#: c-typeck.c:1887 #, 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:1872 +#: c-typeck.c:1897 #, 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:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "%s met andere breedte ten gevolge van prototype" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "%s als unsigned ten gevolge van prototype" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "%s als signed ten gevolge van prototype" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "te weinig argument voor functie" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "gebruik liefst haakjes rond + of - binnen een shift" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "gebruik liefst haakjes rond && binnen ||" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "gebruik liefst haakjes rond een rekensom in een operand van |" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "gebruik liefst haakjes rond een vergelijking in een operand van |" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "gebruik liefst haakjes rond een rekensom in een operand van ^" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "gebruik liefst haakjes rond een vergelijking in een operand van ^" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "gebruik liefst haakjes rond + of - in een operand van &" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "gebruik liefst haakjes rond een vergelijking in een operand van &" -#: c-typeck.c:2040 +#: c-typeck.c:2065 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:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "pointer van type `void *' gebruikt in aftrekking" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "pointer naar functie gebruikt in aftrekking" # 'unary' = 'unair'? -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "argument van verkeerd type voor unaire plus" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "argument van verkeerd type voor unaire min" -#: c-typeck.c:2229 +#: c-typeck.c:2254 #, fuzzy msgid "ISO C does not support `~' for complex conjugation" msgstr "ANSI C ondersteunt het `%c' formaat niet" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "argument van verkeerd type voor bit-complement" -#: c-typeck.c:2243 +#: c-typeck.c:2268 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:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "argument van verkeerd type voor vervoeging" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "argument van verkeerd type voor unair uitroepingsteken" -#: c-typeck.c:2312 +#: c-typeck.c:2337 #, 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:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 msgid "wrong type argument to increment" msgstr "argument van verkeerd type voor incrementeren" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "argument van verkeerd type voor decrementeren" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "incrementeren van pointer naar onbekend structure" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "decrementeren van pointer naar onbekend structure" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "ongeldige lvalue bij unaire `&'" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, 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:2642 +#: c-typeck.c:2668 #, fuzzy msgid "use of conditional expressions as lvalues is deprecated" msgstr "ANSI C verbiedt het gebruikt van voorwaardelijke expressies als lvalues" -#: c-typeck.c:2645 +#: c-typeck.c:2671 #, fuzzy msgid "use of compound expressions as lvalues is deprecated" msgstr "ANSI C verbiedt het gebruik van samengestelde expressies als lvalues" -#: c-typeck.c:2648 +#: c-typeck.c:2674 #, fuzzy msgid "use of cast expressions as lvalues is deprecated" msgstr "ANSI C verbiedt het gebruik van cast-expressies als lvalues" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "%s van alleen-lezen lid `%s'" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "%s van alleen-lezen variabele `%s'" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "%s van alleen-lezen locatie" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, fuzzy, c-format msgid "cannot take address of bit-field `%s'" msgstr "kan adres van bitveld `%s' niet nemen" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 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:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 treelang/treetree.c:950 #, c-format msgid "register variable `%s' used in nested function" msgstr "registervariabele `%s' gebruikt in geneste functie" -#: c-typeck.c:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 treelang/treetree.c:957 #, c-format msgid "address of global register variable `%s' requested" msgstr "adres van globale registervariabele `%s' gevraagd" -#: c-typeck.c:2739 +#: c-typeck.c:2765 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:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 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:2828 +#: c-typeck.c:2854 #, fuzzy msgid "signed and unsigned type in conditional expression" msgstr "niet-boolean modus in voorwaardelijke expressie" -#: c-typeck.c:2835 +#: c-typeck.c:2861 #, 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:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 #, 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:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "pointertypes in voorwaardelijke expressie komen niet overeen" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "types in voorwaardelijke expressie komen niet overeen (pointer/integer)" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "types in voorwaardelijke expressie komen niet overeen" -#: c-typeck.c:2955 +#: c-typeck.c:2981 msgid "left-hand operand of comma expression has no effect" msgstr "linker operand van comma-expressie heeft geen effect" -#: c-typeck.c:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "cast geeft array-type op" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "cast geeft functie-type op" -#: c-typeck.c:3002 +#: c-typeck.c:3028 #, 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:3020 +#: c-typeck.c:3046 #, fuzzy msgid "ISO C forbids casts to union type" msgstr "ANSI C verbiedt casts naar een union-type" -#: c-typeck.c:3028 +#: c-typeck.c:3054 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:3079 +#: c-typeck.c:3105 #, 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "cast laat qualifiers van doeltype van pointer vallen" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "cast verhoogt het benodigde alignment van het doeltype" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 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:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "cast komt niet overeen met het functietype" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "cast naar pointer van integer met andere grootte" -#: c-typeck.c:3129 +#: c-typeck.c:3155 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "" -#: c-typeck.c:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "" -#: c-typeck.c:3144 +#: c-typeck.c:3170 #, 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:3153 +#: c-typeck.c:3179 #, 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:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "ongeldige lvalue in toewijzing" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "toewijzing" -#: c-typeck.c:3429 +#: c-typeck.c:3455 msgid "cannot pass rvalue to reference parameter" msgstr "" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "%s maakt gekwalificeerde functiepointer van een niet gekwalificeerde" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "%s laat qualifiers van doeltype van pointer vallen" -#: c-typeck.c:3548 +#: c-typeck.c:3574 #, fuzzy msgid "ISO C prohibits argument conversion to union type" msgstr "ANSI C verbiedt conversie van argumenten naar union type" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, 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:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "doelen van pointer in %s verschillen in signedness" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "%s van incompatibel pointertype" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "ongeldig gebruik van array die geen lvalue is" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, c-format msgid "%s makes pointer from integer without a cast" msgstr "%s maakt pointer van integer zonder een cast" -#: c-typeck.c:3646 +#: c-typeck.c:3672 #, c-format msgid "%s makes integer from pointer without a cast" msgstr "%s maakt integer van pointer zonder een cast" -#: c-typeck.c:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "incompatibel type voor argument %d van `%s'" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, 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:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "incompatibele types bij %s" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, fuzzy, c-format msgid "passing arg of `%s'" msgstr "doorgeven van argument %d van `%s'" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 #, 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:3744 +#: c-typeck.c:3770 #, 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:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "doorgeven van argument %d van pointer naar functie" -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "(dicht bij initialisatie van `%s')" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "char-array heeft wide string als beginwaarde" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "int-array heeft niet-wide string als beginwaarde" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 msgid "initializer-string for array of chars is too long" msgstr "beginwaarde-string voor array van chars is te lang" -#: c-typeck.c:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "array krijgt niet-constante array-expressie als beginwaarde" -#: 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 "beginwaarde-element is niet constant" - -#: c-typeck.c:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "initialisatie" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "beginwaarde-element kan niet berekend worden tijdens het laden" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "ongeldige beginwaarde" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 #, fuzzy msgid "opaque vector types cannot be initialized" msgstr "object van variabele lengte mag geen beginwaarde krijgen" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "extra accolade-groep aan einde van beginwaarde" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "accolades ontbreken rond beginwaarde" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "accolades rond scalaire beginwaarde" -#: c-typeck.c:4842 +#: c-typeck.c:4865 msgid "initialization of flexible array member in a nested context" msgstr "" -#: c-typeck.c:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "beginwaarde ontbreekt" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "lege scalaire beginwaarde" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "extra elementen in scalaire beginwaarde" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "array-index in beginwaarde van niet-array" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 #, fuzzy msgid "field name not in record or union initializer" msgstr "overtollige elementen in beginwaarde van union" -#: c-typeck.c:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "niet-constante array-index in beginwaarde" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 #, fuzzy msgid "array index in initializer exceeds array bounds" msgstr "array-index in beginwaarde van niet-array" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "leeg indexbereik in beginwaarde" -#: c-typeck.c:5101 +#: c-typeck.c:5124 #, fuzzy msgid "array index range in initializer exceeds array bounds" msgstr "leeg indexbereik in beginwaarde" -#: c-typeck.c:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "onbekend veld `%s' opgegeven in beginwaarde" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "" -#: c-typeck.c:5868 +#: c-typeck.c:5891 #, fuzzy msgid "excess elements in char array initializer" msgstr "overtollige elementen in beginwaarde van array" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "overtollige elementen in beginwaarde van struct" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "overtollige elementen in beginwaarde van union" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "overtollige elementen in beginwaarde van array" -#: c-typeck.c:6116 +#: c-typeck.c:6139 #, fuzzy msgid "excess elements in vector initializer" msgstr "overtollige elementen in beginwaarde van scalair" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "overtollige elementen in beginwaarde van scalair" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "asm-template is geen stringconstante" -#: c-typeck.c:6272 +#: c-typeck.c:6295 #, fuzzy msgid "invalid lvalue in asm statement" msgstr "ongeldige lvalue in toewijzing" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "aanpassing door `asm'" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "als `noreturn' gedeclareerde functie bevat een `return' statement" -#: c-typeck.c:6369 +#: c-typeck.c:6392 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:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "`return' met waarde in een functie die void teruggeeft" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "return" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "functie geeft adres van lokale variabele terug" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "switch-waarde is geen integer" -#: c-typeck.c:6496 +#: c-typeck.c:6519 #, 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:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "case-label niet in een switch-statement" -#: c-typeck.c:6539 +#: c-typeck.c:6562 #, fuzzy msgid "`default' label not within a switch statement" msgstr "default-label niet in een switch-statement" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "deling door nul" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "teller van rechtse shift is negatief" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "teller van rechtse shift is >= breedte van het type" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "teller van links shift is negatief" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "teller van links shift is >= breedte van het type" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "teller van shift is negatief" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "teller van shift is >= breedte van het type" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 #, 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:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 msgid "comparison of distinct pointer types lacks a cast" msgstr "een cast ontbreekt bij vergelijking van ongelijke pointer-types" -#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "vergelijking tussen pointer en integer" # 'ordered' -> 'bevolen' of 'geordend'? Waarschijnlijk het laatste. -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 #, fuzzy msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "ANSI C verbiedt geordende vergelijkingen tussen pointers naar functies" -#: c-typeck.c:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "vergelijking van volledige en onvolledige pointers" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "geordende vergelijking van een pointer met integer nul" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 #, fuzzy msgid "unordered comparison on non-floating point argument" msgstr "geordende vergelijking van een pointer met integer nul" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "vergelijking tussen signed en unsigned" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "vergelijking van gepromoveerde ~unsigned met constante" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "vergelijking van gepromoveerde ~unsigned met unsigned" @@ -3917,46 +3917,46 @@ msgstr "" msgid "function body not available" msgstr "de terugkeerwaarde van een functie kan geen funtie zijn" -#: cgraph.c:163 cgraphunit.c:340 +#: 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:345 +#: 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:343 +#: cgraph.c:168 cgraphunit.c:344 #, fuzzy msgid "function not inlinable" msgstr "de terugkeerwaarde van een functie kan geen funtie zijn" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "" @@ -4149,7 +4149,7 @@ msgstr "%s: kan niet openen als COFF-bestand" msgid "library lib%s not found" msgstr "Library lib%s niet gevonden" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -4160,7 +4160,7 @@ msgstr "" ";; nodig), %d successen.\n" "\n" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -5046,7 +5046,7 @@ msgstr "niet-be msgid "syntax error in macro parameter list" msgstr "ongeldig karakter in naam van macro-parameter" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr "" @@ -5129,16 +5129,16 @@ msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem" msgid "function using short complex types cannot be inline" msgstr "de terugkeerwaarde van een functie kan geen funtie zijn" -#: expr.c:6385 +#: expr.c:6386 msgid "%Jprior parameter's size depends on '%D'" msgstr "" -#: expr.c:6752 +#: expr.c:6753 msgid "returned value in block_exit_expr" msgstr "" #. We can't make a bitwise copy of this object, so fail. -#: expr.c:8895 +#: expr.c:8894 #, fuzzy msgid "cannot take the address of an unaligned member" msgstr "kan adres van bitveld `%s' niet nemen" @@ -5188,12 +5188,12 @@ msgstr "operand `%d' is geen register" #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "floating-point constante verkeerd gebruikt" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "ongeldige expressie als operand" @@ -5246,23 +5246,23 @@ msgstr "variabele `%s' is te groot" msgid "impossible constraint in `asm'" msgstr "incompatibele operands voor %s" -#: function.c:5723 +#: function.c:5733 msgid "%J'%D' might be used uninitialized in this function" msgstr "" -#: function.c:5730 +#: function.c:5740 msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "" -#: function.c:5749 +#: function.c:5759 msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "" -#: function.c:7006 +#: function.c:6929 #, fuzzy msgid "%Junused parameter '%D'" msgstr "ongeldige macronaam `%.*s'" @@ -6680,7 +6680,7 @@ msgstr "" msgid "can't use '%s' as a %s register" msgstr "" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "" @@ -6737,48 +6737,48 @@ msgstr "" msgid "inconsistent operand constraints in an `asm'" msgstr "" -#: reload1.c:1212 +#: reload1.c:1222 msgid "frame size too large for reliable stack checking" msgstr "" -#: reload1.c:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "" -#: reload1.c:1868 +#: reload1.c:1878 #, c-format msgid "can't find a register in class `%s' while reloading `asm'" msgstr "" -#: reload1.c:1872 +#: reload1.c:1882 #, c-format msgid "unable to find a register to spill in class `%s'" msgstr "" -#: reload1.c:1874 +#: reload1.c:1884 #, fuzzy msgid "this is the insn:" msgstr "dit is het eerste ELSE-label" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 msgid "could not find a spill register" msgstr "" -#: reload1.c:4968 +#: reload1.c:4978 msgid "`asm' operand constraint incompatible with operand size" msgstr "" #. It's the compiler's fault. -#: reload1.c:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "" @@ -6831,7 +6831,7 @@ msgstr "" msgid "jump to `%s' invalidly jumps into binding contour" msgstr "" -#: stmt.c:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 msgid "%Jlabel '%D' used before containing binding contour" msgstr "" @@ -6848,7 +6848,7 @@ msgstr "" msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "" @@ -6857,129 +6857,124 @@ msgstr "" msgid "matching constraint not valid in output operand" msgstr "" -#: stmt.c:1260 -#, fuzzy -msgid "read-write constraint does not allow a register" -msgstr "operand `%d' is geen register" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "" -#: stmt.c:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "" -#: stmt.c:1396 +#: stmt.c:1393 #, fuzzy msgid "matching constraint does not allow a register" msgstr "numerieke constante zonder cijfers" -#: stmt.c:1424 +#: stmt.c:1421 #, 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:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "" -#: stmt.c:1522 +#: stmt.c:1519 #, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "" -#: stmt.c:1926 +#: stmt.c:1923 msgid "operand constraints for `asm' differ in number of alternatives" msgstr "" -#: stmt.c:1978 +#: stmt.c:1975 #, fuzzy, c-format msgid "duplicate asm operand name '%s'" msgstr "herhaald lid `%s'" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "" -#: stmt.c:2104 +#: stmt.c:2101 #, fuzzy, c-format msgid "undefined named operand '%s'" msgstr "ongeldige operand van %s" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "" -#: stmt.c:2317 +#: stmt.c:2314 #, fuzzy msgid "%Hvalue computed is not used" msgstr "modus van `%s' is geen modus" -#: stmt.c:3733 +#: stmt.c:3730 #, fuzzy msgid "%Junused variable '%D'" msgstr "%s van alleen-lezen variabele `%s'" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, c-format msgid "case value `%ld' not in enumerated type `%s'" msgstr "" -#: stmt.c:5401 +#: stmt.c:5398 #, fuzzy msgid "switch missing default case" msgstr "dit is het eerste default-label" @@ -7015,25 +7010,25 @@ msgstr "het `%s' attribuut wordt genegeerd voor `%s'" msgid "%Jpadding struct to align '%D'" msgstr "" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "" @@ -7182,7 +7177,7 @@ msgstr "" msgid "unrecognized gcc debugging option: %c" msgstr "" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, fuzzy, c-format msgid "invalid option `%s'" msgstr "Ongeldige optie `%s'" @@ -7210,25 +7205,25 @@ msgstr "meegegeven opties: " msgid "options enabled: " msgstr "ingeschakelde opties: " -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, fuzzy, c-format msgid "can't open %s for writing: %m" msgstr "open %s" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" msgstr "" @@ -7288,7 +7283,7 @@ msgstr "" msgid "error writing to %s: %m" msgstr "kan bestand '%s' niet openen" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, fuzzy, c-format msgid "error closing %s: %m" msgstr "#error %s" @@ -7350,34 +7345,34 @@ msgstr "grootte van teruggeefwaarde van `%s' is %u bytes" msgid "%Jsize of return value of '%D' is larger than %wd bytes" msgstr "grootte van teruggeefwaarde van `%s' is %u bytes" -#: tree.c:3800 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "arrays van functies zijn niet betekenisvol" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "de terugkeerwaarde van een functie kan geen funtie zijn" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "ongeldige beginwaarde voor bit-string" -#: tree.c:4736 +#: tree.c:4737 #, c-format msgid "tree check: expected %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:4749 +#: tree.c:4750 #, c-format msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d" msgstr "" -#: tree.c:4762 +#: tree.c:4763 #, c-format msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "" -#: tree.c:4774 +#: tree.c:4775 #, c-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "" @@ -7762,7 +7757,7 @@ msgstr "slechte waarde `%s' voor optie -mfp-rounding-mode" msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "slechte waarde `%s' voor optie -mfp-trap-mode" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, fuzzy, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "slechte waarde `%s' voor optie -mcpu" @@ -7815,24 +7810,24 @@ msgstr "" msgid "invalid %%J value" msgstr "ongeldige waarde voor %%E" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "ongeldige waarde voor %%r" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "ongeldige waarde voor %%R" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "ongeldige waarde voor %%N" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "ongeldige waarde voor %%P" @@ -7842,17 +7837,17 @@ msgstr "ongeldige waarde voor %%P" msgid "invalid %%h value" msgstr "ongeldige waarde voor %%h" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "ongeldige waarde voor %%L" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "ongeldige waarde voor %%m" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "ongeldige waarde voor %%M" @@ -7863,7 +7858,7 @@ msgid "invalid %%U value" msgstr "ongeldige waarde voor %%U" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "ongeldige waarde voor %%s" @@ -7873,7 +7868,8 @@ msgstr "ongeldige waarde voor %%s" msgid "invalid %%C value" msgstr "ongeldige waarde voor %%C" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "ongeldige waarde voor %%E" @@ -7883,7 +7879,7 @@ msgstr "ongeldige waarde voor %%E" msgid "unknown relocation unspec" msgstr "onbekend type verzameling-constructor" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "ongeldige code voor %%xn" @@ -8045,17 +8041,17 @@ msgstr "het argument van `asm' is geen constante string" msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\"" msgstr "" -#: config/arc/arc.c:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, fuzzy, c-format msgid "invalid operand to %%R code" msgstr "ongeldige operand voor %R-code" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, fuzzy, c-format msgid "invalid operand to %%H/%%L code" msgstr "ongeldige operand voor %H/%L-code" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, fuzzy, c-format msgid "invalid operand to %%U code" msgstr "ongeldige operand voor %U-code" @@ -8068,7 +8064,7 @@ 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:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "ongeldige operand voor uitvoercode" @@ -8077,7 +8073,7 @@ msgstr "ongeldige operand voor uitvoercode" msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "optie -mcpu=%s geeft conflicten met optie -mtune=" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "slechte waarde (%s) foor optie %s" @@ -8165,12 +8161,12 @@ msgid "unable to use '%s' for PIC register" msgstr "" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 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" @@ -8185,7 +8181,7 @@ msgid "selector must be an immediate" msgstr "" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "" @@ -9603,188 +9599,188 @@ msgstr "" msgid "Do not generate char instructions" msgstr "" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, fuzzy, c-format msgid "code model %s not supported in PIC mode" msgstr "afrondingsmodus niet ondersteund voor VAX-floats" -#: config/i386/i386.c:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 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:1195 +#: config/i386/i386.c:1204 #, fuzzy, c-format msgid "bad value (%s) for -masm= switch" msgstr "slechte waarde (%s) voor optie -mabi=" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, 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:1201 +#: config/i386/i386.c:1210 msgid "code model `large' not supported yet" msgstr "" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 #, fuzzy msgid "CPU you selected does not support x86-64 instruction set" msgstr "doel-CPU ondersteunt geen interworking" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 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:1248 +#: config/i386/i386.c:1260 #, fuzzy, c-format msgid "bad value (%s) for -mtune= switch" msgstr "slechte waarde (%s) voor de -march= optie" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "-mregparm=%d ligt niet tussen 0 en %d" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 #, fuzzy msgid "-malign-loops is obsolete, use -falign-loops" msgstr "-malign-loops=%d ligt niet tussen 0 en %d" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, 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:1291 +#: config/i386/i386.c:1303 #, fuzzy msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "-malign-jumps=%d ligt niet tussen 0 en %d" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 #, fuzzy msgid "-malign-functions is obsolete, use -falign-functions" msgstr "-malign-functions=%d ligt niet tussen 0 en %d" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, 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:1354 +#: config/i386/i386.c:1366 #, 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:1366 +#: config/i386/i386.c:1378 #, fuzzy, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "slechte waarde (%s) voor optie -msdata" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 #, 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:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 #, fuzzy msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "pointer naar functie gebruikt in rekensom" -#: config/i386/i386.c:1435 +#: config/i386/i386.c:1447 #, fuzzy msgid "387 instruction set disabled, using SSE arithmetics" msgstr "pointer naar functie gebruikt in rekensom" -#: config/i386/i386.c:1442 +#: config/i386/i386.c:1454 #, fuzzy, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "slechte waarde (%s) voor de -march= optie" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 #, fuzzy msgid "fastcall and stdcall attributes are not compatible" msgstr "-pg en -fomit-frame-pointer zijn niet compatibel" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 #, fuzzy msgid "fastcall and regparm attributes are not compatible" msgstr "-pg en -fomit-frame-pointer zijn niet compatibel" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, 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:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "ongeldige UNSPEC als operand" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 msgid "operand is neither a constant nor a condition code, invalid operand code 'c'" msgstr "" -#: config/i386/i386.c:7457 +#: config/i386/i386.c:7474 #, fuzzy, c-format msgid "invalid operand code `%c'" msgstr "ongeldige operand van %s" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 #, fuzzy msgid "invalid constraints for operand" msgstr "ongeldige operand voor %P" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 #, fuzzy msgid "unknown insn mode" msgstr "onbekende machine-modus `%s'" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 #, fuzzy msgid "shift must be an immediate" msgstr "`defined' zonder een naam" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, fuzzy, c-format msgid "`%s' incompatible attribute ignored" msgstr "het `%s' attribuut wordt genegeerd" @@ -9847,43 +9843,43 @@ msgstr "" msgid "%J'%D' causes a section type conflict" msgstr "" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, c-format msgid "-f%s ignored for target (all code is position independent)" msgstr "" @@ -10088,7 +10084,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "" @@ -10211,7 +10207,7 @@ msgstr "" msgid "iC2.0 and iC3.0 are incompatible - using iC3.0" msgstr "" -#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 #, fuzzy msgid "stack limit expression is not supported" msgstr "-pipe wordt niet ondersteund" @@ -10338,8 +10334,8 @@ msgstr "" msgid "Do not layout types like Intel's v1.3 gcc" msgstr "" -#: 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 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "" @@ -10378,41 +10374,41 @@ msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie" msgid "%Jaddress area attribute cannot be specified for functions" msgstr "sectie-attribuut kan niet opgegeven worden voor lokale variabelen" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 msgid "value of -mfixed-range must have form REG1-REG2" msgstr "" -#: config/ia64/ia64.c:4672 +#: config/ia64/ia64.c:4675 #, fuzzy, c-format msgid "%s-%s is an empty range" msgstr "leeg bereik" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 msgid "cannot optimize floating point division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4726 +#: config/ia64/ia64.c:4729 msgid "cannot optimize integer division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4732 +#: config/ia64/ia64.c:4735 msgid "cannot optimize square root for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, fuzzy, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "slechte waarde (%s) voor de -march= optie" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, fuzzy, c-format msgid "bad value (%s) for -tune= switch" msgstr "slechte waarde (%s) voor de -march= optie" @@ -10550,7 +10546,7 @@ msgstr "" 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:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "" @@ -10560,7 +10556,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "" @@ -10569,7 +10565,7 @@ msgstr "" msgid "invalid %%P operand" msgstr "ongeldige operand voor %P" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "" @@ -10630,93 +10626,93 @@ msgstr "slechte waarde (%s) voor optie -msdata" msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 #, fuzzy msgid "typename type `%#T' declared `friend'" msgstr "parameter `%s' als void gedeclareerd" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 #, fuzzy msgid "template parameter type `%T' declared `friend'" msgstr "parameter `%s' als void gedeclareerd" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 #, fuzzy msgid "`%#T' is not a template" msgstr "`%s' is geen iterator" -#: cp/friend.c:277 +#: cp/friend.c:281 #, fuzzy msgid "`%D' is already a friend of `%T'" msgstr "kan klasse '%s' niet vinden" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "" -#: cp/friend.c:409 +#: cp/friend.c:413 msgid "member `%D' declared as friend before type `%T' defined" msgstr "" -#: cp/friend.c:465 +#: cp/friend.c:469 #, fuzzy msgid "friend declaration `%#D' declares a non-template function" msgstr "ingebouwde functie `%s' als niet-functie gedeclareerd" -#: cp/friend.c:468 +#: cp/friend.c:472 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 "" @@ -15851,7 +15852,7 @@ msgstr "`%s' is geen typedef of ingebouwd type" msgid "type `%T' is of non-aggregate type" msgstr "" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "" @@ -15891,76 +15892,75 @@ msgstr "" msgid "zero size array reserves no space" msgstr "" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "" -#: cp/init.c:1876 +#: cp/init.c:1877 #, fuzzy msgid "can't find class$" msgstr "kan %s niet vinden" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "" -#: cp/init.c:2013 +#: cp/init.c:2014 #, fuzzy msgid "uninitialized const in `new' of `%#T'" msgstr "beginwaarde legt grootte van `%s' niet vast" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "" + +#: cp/init.c:2083 #, fuzzy msgid "request for member `%D' is ambiguous" msgstr "grootte van `%s' is %u bytes" -#: cp/init.c:2193 +#: cp/init.c:2203 #, fuzzy msgid "ISO C++ forbids initialization in array new" msgstr "ANSI C verbiedt lege initialisatie-accolades" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "" -#: cp/init.c:2885 +#: cp/init.c:2895 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 " +#: cp/init.c:2898 +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:2890 -msgid "declared when the class is defined." -msgstr "" - -#: cp/init.c:2909 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "" @@ -16054,12 +16054,12 @@ msgstr "" msgid "non-static reference member `%#D', can't use default assignment operator" msgstr "" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 #, fuzzy msgid "`%#D' used prior to declaration" msgstr "`%s' gebruikt vóór declaratie" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 #, fuzzy msgid "redeclaration of `wchar_t' as `%T'" msgstr "herdeclaratie van `%s'" @@ -16070,261 +16070,261 @@ msgstr "herdeclaratie van `%s'" #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 #, fuzzy msgid "invalid redeclaration of `%D'" msgstr "herdeclaratie van `%s'" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 #, fuzzy msgid "as `%D'" msgstr "%s voor `%s'" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 #, fuzzy msgid "type mismatch with previous external decl of `%#D'" msgstr "type-conflict met eerdere externe declaratie" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 #, fuzzy msgid "previous external decl of `%#D'" msgstr "eerdere externe declaratie van `%s'" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 #, 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:913 +#: cp/name-lookup.c:924 #, 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:914 +#: cp/name-lookup.c:925 #, fuzzy msgid "global declaration `%#D'" msgstr "herhaalde label-declaratie `%s'" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 #, fuzzy msgid "declaration of '%#D' shadows a parameter" msgstr "de declaratie van `%s' verbergt een parameter" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 #, fuzzy msgid "declaration of '%D' shadows a member of 'this'" msgstr "de declaratie van `%s' verbergt een parameter" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 #, fuzzy msgid "declaration of '%D' shadows a previous local" msgstr "de declaratie van `%s' verbergt een parameter" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 #, fuzzy msgid "declaration of '%D' shadows a global declaration" msgstr "de declaratie van `%s' verbergt een parameter" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr "" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr "" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 msgid " cannot use obsolete binding at `%D' because it has a destructor" msgstr "" -#: cp/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr "" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, c-format msgid "%s %s %p %d\n" msgstr "" -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 msgid "`%#D' hides constructor for `%#T'" msgstr "" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 #, fuzzy msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 #, fuzzy msgid "previous non-function declaration `%#D'" msgstr "eerdere declaratie van `%s'" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 #, 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:2101 +#: cp/name-lookup.c:2112 msgid "a using-declaration cannot specify a template-id. Try `using %D'" msgstr "" -#: cp/name-lookup.c:2107 +#: cp/name-lookup.c:2118 #, 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 #, fuzzy msgid "`%T' is not a namespace" msgstr "`%s' is geen iterator" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 #, 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:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 #, fuzzy msgid "`%#D' redeclared as %C" msgstr "`%s' tevoren hier gedeclareerd" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:2898 +#: cp/name-lookup.c:2909 msgid "using-declaration cannot name destructor" msgstr "" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 #, fuzzy msgid "declaration of `%D' not in a namespace surrounding `%D'" msgstr "`%s' wordt gedeclareerd als een array van functies" -#: cp/name-lookup.c:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 #, fuzzy msgid "unknown namespace `%D'" msgstr "onbekende machine-modus `%s'" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 #, fuzzy msgid "namespace `%T' undeclared" msgstr "`%s' tevoren hier gedeclareerd" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 #, fuzzy msgid "`%D' attribute directive ignored" msgstr "attribuut-commando `%s' wordt genegeerd" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 #, fuzzy msgid "use of `%D' is ambiguous" msgstr "grootte van `%s' is %u bytes" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 #, fuzzy msgid "%J first type here" msgstr "van hieruit opgeroepen" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 #, fuzzy msgid "invalid use of `%D'" msgstr "ongeldig gebruik van `restrict'" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 #, fuzzy msgid "`%D::%D' is not a template" msgstr "`%s' is geen iterator" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 #, fuzzy msgid "`%D' undeclared in namespace `%D'" msgstr "ongeldige naam `%s'" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 #, fuzzy msgid "`%D' is not a function," msgstr "`%s' is meestal een functie" -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 #, fuzzy msgid " conflict with `%D'" msgstr "conflicterende types voor `%s'" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -16421,103 +16421,107 @@ msgstr "`%.*s' is niet gedefinieerd" msgid "typedef-name `%D' used as destructor declarator" msgstr "parameter `%s' heeft enkel een voorwaartse declaratie" -#: cp/parser.c:3635 +#: cp/parser.c:3638 #, fuzzy msgid "ISO C++ forbids compound-literals" msgstr "ANSI C verbiedt het gebruik van samengestelde expressies als lvalues" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4619 +#: cp/parser.c:4624 msgid "expression in new-declarator must have integral or enumeration type" msgstr "" -#: cp/parser.c:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, fuzzy, c-format msgid "case label `%E' not within a switch statement" msgstr "case-label niet in een switch-statement" -#: cp/parser.c:6087 +#: cp/parser.c:6092 #, fuzzy msgid "ISO C++ forbids computed gotos" msgstr "ANSI C verbiedt geneste functies" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6640 +#: cp/parser.c:6645 #, fuzzy msgid "duplicate `friend'" msgstr "herhaalde `%s'" -#: cp/parser.c:6789 +#: cp/parser.c:6794 #, fuzzy msgid "class definition may not be declared a friend" msgstr "`%s' mag niet als alleen-lezen gedeclareerd worden" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "" -#: cp/parser.c:7155 +#: cp/parser.c:7160 msgid "anachronistic old-style base class initializer" msgstr "" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 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:7908 +#: cp/parser.c:7923 #, fuzzy msgid "`<::' cannot begin a template-argument list" msgstr "`%s' is geen iterator" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 #, fuzzy msgid "non-template `%D' used as template" msgstr "parameter `%s' heeft enkel een voorwaartse declaratie" -#: cp/parser.c:8089 -msgid "(use `%T::template %D' to indicate that it is a template)" +#: cp/parser.c:8107 +msgid "use `%T::template %D' to indicate that it is a template" msgstr "" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "" -#: cp/parser.c:9148 +#: cp/parser.c:9180 #, fuzzy msgid "expected type-name" msgstr "ongeldige operand van %s" -#: cp/parser.c:9207 +#: cp/parser.c:9239 #, fuzzy msgid "type attributes are honored only at type definition" msgstr "het `%s' attribuut heeft enkel betekenis voor functies" @@ -16525,86 +16529,91 @@ msgstr "het `%s' attribuut heeft enkel betekenis voor functies" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 #, 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:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:9919 +#: cp/parser.c:9951 #, fuzzy msgid "attributes are not allowed on a function-definition" msgstr "globale registervariabele volgt op een functiedefinitie" -#: cp/parser.c:10052 +#: cp/parser.c:10084 #, fuzzy msgid "attributes after parenthesized initializer ignored" msgstr "attributen genegeerd in declarator van parameter-array" +#: cp/parser.c:10540 +#, fuzzy +msgid "`%T::%D' is not a type" +msgstr "`%s' is geen iterator" + # Is the %s the argument, or is it 'of' the argument? -#: cp/parser.c:11254 +#: cp/parser.c:11288 #, fuzzy msgid "file ends in default argument" msgstr "ongeldig type-argument `%s'" -#: cp/parser.c:11310 +#: cp/parser.c:11344 #, fuzzy msgid "deprecated use of default argument for parameter of non-function" msgstr "argumenten aan macro `%s' gegeven" -#: cp/parser.c:11313 +#: cp/parser.c:11347 #, fuzzy msgid "default arguments are only permitted for function parameters" msgstr "argumenten aan macro `%s' gegeven" -#: cp/parser.c:12043 +#: cp/parser.c:12078 #, fuzzy msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "`%s' wordt gedeclareerd als een array van functies" -#: cp/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "" -#: cp/parser.c:12067 +#: cp/parser.c:12102 #, fuzzy msgid "an explicit specialization must be preceded by 'template <>'" msgstr "impliciete declaratie van functie `%s'" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12399 +#: cp/parser.c:12434 #, fuzzy msgid "friend declaration does not name a class or function" msgstr "ingebouwde functie `%s' als niet-functie gedeclareerd" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" msgstr "" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" msgstr "" -#: cp/parser.c:13665 +#: cp/parser.c:13700 #, fuzzy msgid "reference to `%D' is ambiguous" msgstr "grootte van `%s' is %u bytes" -#: cp/parser.c:13839 +#: cp/parser.c:13874 #, fuzzy msgid "too few template-parameter-lists" msgstr "twee of meer data types in de declaratie van `%s'" @@ -16613,50 +16622,50 @@ msgstr "twee of meer data types in de declaratie van `%s'" #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 #, 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:14146 +#: cp/parser.c:14185 #, fuzzy msgid "invalid function declaration" msgstr "lege declaratie" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 #, fuzzy msgid "named return values are no longer supported" msgstr "-pipe wordt niet ondersteund" -#: cp/parser.c:14522 +#: cp/parser.c:14561 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 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14535 +#: cp/parser.c:14574 #, fuzzy msgid "missing `>' to terminate the template argument list" msgstr "parameternaam ontbreekt uit parameterlijst" -#: cp/parser.c:15023 +#: cp/parser.c:15062 #, fuzzy msgid "`%s' tag used in naming `%#T'" msgstr "Ongeldige optie `%s'" -#: cp/parser.c:15043 +#: cp/parser.c:15082 #, fuzzy msgid "%D redeclared with different access" msgstr "`%s' als ander soort symbool geherdeclareerd" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -17025,161 +17034,161 @@ msgstr "" msgid "%s %+#T" msgstr "" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "" -#: cp/pt.c:6469 +#: cp/pt.c:6470 #, fuzzy msgid "invalid parameter type `%T'" msgstr "ongeldige operand voor %p-code" -#: cp/pt.c:6471 +#: cp/pt.c:6472 #, fuzzy msgid "in declaration `%D'" msgstr "herdeclaratie van `%s'" -#: cp/pt.c:6545 +#: cp/pt.c:6546 msgid "creating pointer to member function of non-class type `%T'" msgstr "" -#: cp/pt.c:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "" -#: cp/pt.c:6976 +#: cp/pt.c:6977 msgid "creating pointer to member of non-class type `%T'" msgstr "" -#: cp/pt.c:6982 +#: cp/pt.c:6983 msgid "creating pointer to member reference type `%T'" msgstr "" -#: cp/pt.c:7068 +#: cp/pt.c:7069 #, fuzzy msgid "creating array of `%T'" msgstr "doorgeven van argument %d van `%s'" -#: cp/pt.c:7074 +#: cp/pt.c:7075 msgid "creating array of `%T', which is an abstract class type" msgstr "" -#: cp/pt.c:7118 +#: cp/pt.c:7119 #, fuzzy msgid "`%T' is not a class, struct, or union type" msgstr "`%s' is geen bestand, pipe of tty" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr "" -#: cp/pt.c:8609 +#: cp/pt.c:8613 #, fuzzy msgid "`%T' uses anonymous type" msgstr "`%s' is smaller dan waarden van zijn type" -#: cp/pt.c:8611 +#: cp/pt.c:8615 #, 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:8619 +#: cp/pt.c:8623 #, fuzzy msgid "`%T' is a variably modified type" msgstr "argument %d is alleen-lezen" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, fuzzy, c-format msgid "integral expression `%E' is not constant" msgstr "opslaggrootte van `%s' is niet constant" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr "" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "" -#: cp/pt.c:10551 +#: cp/pt.c:10568 #, fuzzy msgid "explicit instantiation of `%#D'" msgstr "eerdere impliciete declaratie van `%s'" -#: cp/pt.c:10588 +#: cp/pt.c:10605 #, fuzzy msgid "duplicate explicit instantiation of `%#D'" msgstr "herhaalde definitie `%s'" -#: cp/pt.c:10610 +#: cp/pt.c:10627 msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "" -#: cp/pt.c:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" msgstr "" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" msgstr "" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, c-format msgid "ISO C++ forbids the use of `%s' on explicit instantiations" msgstr "" -#: cp/pt.c:10728 +#: cp/pt.c:10745 #, fuzzy msgid "duplicate explicit instantiation of `%#T'" msgstr "herhaalde definitie `%s'" -#: cp/pt.c:11109 +#: cp/pt.c:11126 msgid "explicit instantiation of `%D' but no definition available" msgstr "" -#: cp/pt.c:11543 +#: cp/pt.c:11562 msgid "`%#T' is not a valid type for a template constant parameter" msgstr "" @@ -17359,7 +17368,7 @@ msgstr "meerdere opslagklassen in declaratie van `%s'" msgid "incomplete type `%T' used in nested name specifier" msgstr "" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 #, fuzzy msgid "`%D' is not a member of `%T'" msgstr "`%s' is geen bestand, pipe of tty" @@ -17407,256 +17416,256 @@ msgstr "`%s' tevoren hier gedeclareerd" msgid "type of `%E' is unknown" msgstr "opslaggrootte van `%s' is onbekend" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "" -#: cp/tree.c:539 +#: cp/tree.c:532 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, 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:1857 +#: cp/tree.c:1850 #, 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:1863 +#: cp/tree.c:1856 #, c-format msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default" msgstr "" -#: cp/tree.c:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, c-format msgid "can only use `%s' attribute on file-scope definitions of objects of class type" msgstr "" -#: cp/tree.c:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, fuzzy, c-format msgid "`%s' attribute is not supported on this platform" msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 #, 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 +#: cp/typeck.c:512 #, 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:563 +#: cp/typeck.c:562 #, fuzzy 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:1235 +#: cp/typeck.c:1234 #, fuzzy, c-format msgid "invalid application of `%s' to a member function" msgstr "`this' is niet beschikbaar in static member-funties" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, fuzzy, c-format msgid "invalid application of `%s' to a bit-field" msgstr "ongeldige toepasing van `%s' op een void-type" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, 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:1342 +#: cp/typeck.c:1308 #, fuzzy msgid "invalid use of non-static member function" msgstr "`this' is niet beschikbaar in static member-funties" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 msgid "request for member `%D' in `%E', which is of non-class type `%T'" msgstr "" -#: cp/typeck.c:1610 +#: cp/typeck.c:1633 #, fuzzy, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "ongeldig gebruik van onvolledige typedef `%s'" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 #, fuzzy msgid "invalid access to non-static data member `%D' of NULL object" msgstr "ongeldig gebruik van onvolledige typedef `%s'" -#: cp/typeck.c:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 #, fuzzy msgid "`%D::%D' is not a member of `%T'" msgstr "`%s' is geen bestand, pipe of tty" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 #, fuzzy msgid "`%T' is not a base of `%T'" msgstr "`%s' is geen bestand, pipe of tty" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 #, fuzzy msgid "'%D' has no member named '%E'" msgstr "union heeft geen lid dat `%s' heet" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 #, 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:2075 +#: cp/typeck.c:2098 #, fuzzy msgid "`%T' is not a pointer-to-object type" msgstr "`%s' is geen iterator" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 #, 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:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, fuzzy, c-format msgid "object missing in use of `%E'" msgstr "array-grootte ontbreekt in `%s'" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, c-format msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'" msgstr "" -#: cp/typeck.c:2446 +#: cp/typeck.c:2469 #, fuzzy, c-format msgid "`%E' cannot be used as a function" msgstr "veld `%s' als een functie gedeclareerd" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 #, fuzzy msgid "too many arguments to %s `%+#D'" msgstr "teveel argumenten voor functie `%s'" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 #, fuzzy msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "parameter `%s' heeft een onvolledig type" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 #, fuzzy msgid "parameter %P has incomplete type `%T'" msgstr "parameter heeft een onvolledig type" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 #, fuzzy msgid "too few arguments to %s `%+#D'" msgstr "te weinig argumenten voor functie `%s'" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 msgid "assuming cast to type `%T' from overloaded function" msgstr "" -#: cp/typeck.c:2863 +#: cp/typeck.c:2886 #, fuzzy, c-format msgid "division by zero in `%E / 0'" msgstr "deling door nul in `#if'" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, fuzzy, c-format msgid "division by zero in `%E / 0.'" msgstr "deling door nul in `#if'" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, fuzzy, c-format msgid "division by zero in `%E %% 0'" msgstr "deling door nul in `#if'" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, fuzzy, c-format msgid "division by zero in `%E %% 0.'" msgstr "deling door nul in `#if'" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 #, fuzzy msgid "ISO C++ forbids comparison between pointer and integer" msgstr "vergelijking tussen pointer en integer" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 #, fuzzy msgid "comparison between types `%#T' and `%#T'" msgstr "vergelijking tussen pointer en integer" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 #, fuzzy msgid "comparison between signed and unsigned integer expressions" msgstr "vergelijking tussen signed en unsigned" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 #, fuzzy msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "ongeldige operanden voor binaire %s-operator" @@ -17665,311 +17674,311 @@ 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:3418 +#: cp/typeck.c:3441 #, fuzzy msgid "NULL used in arithmetic" msgstr "pointer naar functie gebruikt in rekensom" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 #, fuzzy msgid "ISO C++ forbids using pointer of type `void *' in subtraction" msgstr "pointer van type `void *' gebruikt in aftrekking" -#: cp/typeck.c:3483 +#: cp/typeck.c:3506 #, fuzzy msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "pointer naar functie gebruikt in aftrekking" -#: cp/typeck.c:3485 +#: cp/typeck.c:3508 #, fuzzy msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "pointer naar functie gebruikt in aftrekking" # 'Arithmetic'?? 'rekensom' is wel correct, maar het klinkt zo stom. -#: cp/typeck.c:3497 +#: cp/typeck.c:3520 #, fuzzy msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "rekensom met pointer naar onvolledig type" -#: cp/typeck.c:3553 +#: cp/typeck.c:3582 #, c-format msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id." msgstr "" -#: cp/typeck.c:3559 +#: cp/typeck.c:3588 #, c-format msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, fuzzy, c-format msgid "ISO C++ forbids %sing an enum" msgstr "ANSI C verbiedt case-bereiken" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 #, fuzzy msgid "cannot %s a pointer to incomplete type `%T'" msgstr "parameter `%s' wijst naar een onvolledig type" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 #, 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:3858 +#: cp/typeck.c:3887 msgid "cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:3892 +#: cp/typeck.c:3921 #, fuzzy msgid "invalid use of `--' on bool variable `%D'" msgstr "ongeldig gebruik van array die geen lvalue is" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 #, 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:3994 +#: cp/typeck.c:4027 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:3999 +#: cp/typeck.c:4032 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:4027 +#: cp/typeck.c:4060 #, 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:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 #, 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:4190 +#: cp/typeck.c:4227 msgid "taking address of destructor" msgstr "" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 #, fuzzy msgid "taking address of bound pointer-to-member expression" msgstr "ongeldig gebruik van een void-expressie" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 msgid "cannot create pointer to reference member `%D'" msgstr "" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 msgid "cannot take the address of `this', which is an rvalue expression" msgstr "" -#: cp/typeck.c:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "" # vertaling voor 'statement'? -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, fuzzy, c-format msgid "%s expression list treated as compound expression" msgstr "expressie-statement heeft onvolledig type" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "" -#: cp/typeck.c:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 #, 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:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type" msgstr "" -#: cp/typeck.c:4765 +#: cp/typeck.c:4813 msgid "invalid const_cast of an rvalue of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4782 +#: cp/typeck.c:4830 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 #, fuzzy msgid "ISO C++ forbids casting to an array type `%T'" msgstr "ANSI C verbiedt casts naar een union-type" -#: cp/typeck.c:4835 +#: cp/typeck.c:4883 #, fuzzy msgid "invalid cast to function type `%T'" msgstr "ongeldige opslagklasse voor functie `%s'" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 #, 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:4937 +#: cp/typeck.c:4985 #, 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:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr "" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 #, 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:5219 +#: cp/typeck.c:5267 #, fuzzy msgid "incompatible types in assignment of `%T' to `%T'" msgstr "incompatibel type voor argument %d van `%s'" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 #, fuzzy msgid "ISO C++ forbids assignment of arrays" msgstr "ANSI C verbiedt array `%s' met lengte 0" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr "" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 msgid " in pointer to member conversion" msgstr "" #. This is a reinterpret cast, we choose to do nothing. -#: cp/typeck.c:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 #, fuzzy msgid "pointer to member cast via virtual base `%T'" msgstr "pointer naar een lid gebruikt in rekensom" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 #, fuzzy msgid "pointer to member conversion via virtual base `%T'" msgstr "pointer naar lid-functie gebruikt in rekensom" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 msgid "invalid conversion to type `%T' from type `%T'" msgstr "" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 msgid "passing NULL used for non-pointer %s %P of `%D'" msgstr "" -#: cp/typeck.c:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 #, fuzzy msgid "passing `%T' for %s %P of `%D'" msgstr "doorgeven van argument %d van `%s'" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 msgid "passing negative value `%E' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'" msgstr "" -#: cp/typeck.c:5706 +#: cp/typeck.c:5754 msgid "cannot convert `%T' to `%T' in %s" msgstr "" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 #, fuzzy msgid "in passing argument %P of `%+D'" msgstr "doorgeven van argument %d van `%s'" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 #, fuzzy msgid "reference to local variable `%D' returned" msgstr "adres van globale registervariabele `%s' gevraagd" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 #, fuzzy msgid "address of local variable `%D' returned" msgstr "adres van globale registervariabele `%s' gevraagd" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 #, fuzzy 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:5995 +#: cp/typeck.c:6043 #, fuzzy msgid "return-statement with a value, in function returning 'void'" msgstr "`return' met waarde in een functie die void teruggeeft" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)" msgstr "" @@ -19636,12 +19645,12 @@ msgstr "" msgid "field initializer type mismatch" msgstr "ongeldige beginwaarde voor bit-string" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, fuzzy, c-format msgid "can't create directory %s: %m" msgstr "dubbele folder `%s' wordt genegeerd\n" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, fuzzy, c-format msgid "can't create %s: %m" msgstr "open %s" @@ -19721,277 +19730,340 @@ msgstr "close %s" 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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2610 #, fuzzy msgid "Missing term" msgstr "beginwaarde ontbreekt" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 #, fuzzy msgid "Missing name" msgstr "beginwaarde ontbreekt" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 #, fuzzy msgid "Missing variable initializer" msgstr "beginwaarde ontbreekt" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:981 #, fuzzy msgid "Invalid declaration" msgstr "lege declaratie" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 #, fuzzy msgid "Unbalanced ']'" msgstr "niet-gebalanceerde `#endif'" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 #, fuzzy msgid "Missing formal parameter term" msgstr "parameternaam ontbreekt uit parameterlijst" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 #, fuzzy msgid "Missing identifier" msgstr "beginwaarde ontbreekt" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1288 #, fuzzy msgid "Invalid interface type" msgstr "Ongeldig register voor vergelijking" -#: ../../gcc/java/parse.y:1475 ../../gcc/java/parse.y:1644 -#: ../../gcc/java/parse.y:1646 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1507 #, fuzzy msgid "Invalid expression statement" msgstr "ongeldige expressie als operand" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 #, fuzzy msgid "Missing or invalid constant expression" msgstr "overflow in constante expressie" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 #, fuzzy msgid "Invalid control expression" msgstr "Ongeldig token in expressie" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 #, fuzzy msgid "Invalid update expression" msgstr "Ongeldig token in expressie" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 #, fuzzy msgid "Invalid init statement" msgstr "ongeldige beginwaarde" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 #, fuzzy msgid "']' expected, invalid type expression" msgstr "ongeldige waarheidsexpressie" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 #, fuzzy msgid "Invalid type expression" msgstr "Ongeldig token in expressie" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 #, fuzzy msgid "Invalid reference type" msgstr "Ongeldige modus voor gen_tst_reg" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2977 msgid "Constructor invocation must be first thing in a constructor" msgstr "" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr "" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" "%s" msgstr "" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 "" # 'whitespace' -> 'witruimte'? -#: ../../gcc/java/parse.y:12193 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, fuzzy, c-format msgid "missing static field `%s'" msgstr "ontbrekende witruimte na getal `%s'" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "`%s' is geen static veld" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, fuzzy, c-format msgid "unregistered operator %s" msgstr "registernaam niet opgegeven voor `%s'" @@ -20049,8 +20121,8 @@ msgstr "" msgid "cannot find protocol declaration for `%s'" msgstr "geen eerdere declaratie voor `%s'" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, fuzzy, c-format msgid "cannot find interface declaration for `%s'" msgstr "geen eerdere declaratie voor `%s'" @@ -20075,8 +20147,8 @@ msgstr "" 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "" @@ -20090,7 +20162,7 @@ msgstr "kan %s niet vinden" msgid "class `%s' already exists" msgstr "veld `%s' heeft al een beginwaarde gekregen" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "`%s' als ander soort symbool geherdeclareerd" @@ -20251,1507 +20323,1833 @@ msgstr "" msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, c-format msgid "instance variable `%s' is %s; this will be a hard error in the future" msgstr "" -#: objc/objc-act.c:6546 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, c-format msgid "%s `%s' does not fully implement the `%s' protocol" msgstr "" -#: objc/objc-act.c:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "eerdere declaratie van `%s'" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 #, fuzzy msgid "%J%s `%c%s'" msgstr "%s voor `%s'" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, c-format msgid "no super class declared in interface for `%s'" msgstr "" -#: objc/objc-act.c:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 msgid "Display this information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 #, fuzzy msgid "Do not discard comments" msgstr "niet-beëindigde commentaar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 msgid "Print the name of header files as they are used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd 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 -#, fuzzy -msgid "Generate make dependencies" -msgstr "dynamische dependencies.\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 #, fuzzy msgid "Generate make dependencies and compile" msgstr "Positie-onafhankelijke code wordt niet ondersteund. Genegeerd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 msgid "-O\tSet optimization level to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 msgid "Optimize for space rather than speed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 #, fuzzy msgid "Do not generate #line directives" msgstr "interne fout - slechte ingebouwde functie `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 #, fuzzy msgid "Warn about casting functions to incompatible types" msgstr "parameter wijst naar een onvolledig type" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 #, fuzzy msgid "Warn about subscripts whose type is \"char\"" msgstr "array subscript is van het type `char'" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 msgid "Warn when all constructors and destructors are private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 msgid "Warn when a declaration is found after a statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -msgid "Warn about deprecated compiler features" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 msgid "Warn about compile-time integer division by zero" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 #, fuzzy msgid "Make implicit function declarations an error" msgstr "parameternamen (zonder types) in functiedeclaratie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 msgid "Warn if testing floating point numbers for equality" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 #, fuzzy msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "formaatstring niet beëindigd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 #, fuzzy msgid "Warn if passing too many arguments to a function for its format string" msgstr "teveel argumenten voor functie `va_start'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 msgid "Warn about format strings that are not literals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 msgid "Warn about strftime formats yielding 2-digit years" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +msgid "Enable warnings about inter-procedural problems" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 #, fuzzy msgid "Warn about implicit function declarations" msgstr "parameternamen (zonder types) in functiedeclaratie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 msgid "Warn when a declaration does not specify a type" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 #, fuzzy msgid "Warn when an inlined function cannot be inlined" msgstr "kan functie `main' niet inline maken" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 #, fuzzy msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "lijnnummer buiten bereik in `#line'-commando" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 #, fuzzy msgid "Warn about suspicious declarations of \"main\"" msgstr "geen eerdere declaratie voor `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 #, fuzzy msgid "Warn about possibly missing braces around initializers" msgstr "accolades ontbreken rond beginwaarde" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 #, fuzzy msgid "Warn about global functions without previous declarations" msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 #, fuzzy msgid "Warn about functions which might be candidates for format attributes" msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 #, fuzzy msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 #, fuzzy msgid "Warn about global functions without prototypes" msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 #, fuzzy msgid "Warn about use of multi-character character constants" msgstr "karakterconstante met meer dan één karakter" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 #, fuzzy msgid "Warn about \"extern\" declarations not at file scope" msgstr "overbodige herdeclaratie van `%s' in zelfde bereik" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 #, fuzzy msgid "Warn when non-templatized friend functions are declared within a template" msgstr "geneste functie `%s' is als `extern' gedeclareerd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 #, fuzzy msgid "Warn about non-virtual destructors" msgstr "niet-prototype definitie hier" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 msgid "Warn if a C-style cast is used in a program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 msgid "Warn if an old-style parameter definition is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 msgid "Warn when padding is required to align structure members" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 #, fuzzy msgid "Warn about possibly missing parentheses" msgstr "accolades ontbreken rond beginwaarde" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 msgid "Warn when converting the type of pointers to member functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 #, fuzzy msgid "Warn about function pointer arithmetic" msgstr "pointer naar functie gebruikt in rekensom" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 msgid "Warn if inherited methods are unimplemented" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 #, fuzzy msgid "Warn about multiple declarations of the same object" msgstr "overbodige herdeclaratie van `%s' in zelfde bereik" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 #, fuzzy msgid "Warn when the compiler reorders code" msgstr "incompatibele record-modus" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 #, fuzzy msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)" msgstr "teruggeefwaarde krijgt standaardtype `int'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 #, fuzzy msgid "Warn when one local variable shadows another" msgstr "De locale variabele `insn' heeft de waarde:" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 #, fuzzy msgid "Warn about signed-unsigned comparisons" msgstr "formaatstring niet beëindigd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 #, fuzzy msgid "Warn when overload promotes from unsigned to signed" msgstr "vergelijking van gepromoveerde ~unsigned met unsigned" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 #, fuzzy msgid "Warn about code which might break strict aliasing rules" msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 #, fuzzy msgid "Warn about unprototyped function declarations" msgstr "niet-prototype definitie hier" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 msgid "Warn about enumerated switches, with no default, missing a case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 msgid "Warn about all enumerated switches missing a specific case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 msgid "Warn about features not present in traditional C" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 #, fuzzy msgid "Warn if an undefined macro is used in an #if directive" msgstr "ongedefinieerd of ongeldig #-commando" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 msgid "-aux-info \tEmit declaration information into " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 msgid "-d\tEnable dumps from specific passes of the compiler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 msgid "Enforce class member access control semantics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 #, fuzzy msgid "Align the start of functions" msgstr "impliciete declaratie van functie `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 msgid "Specify that arguments may alias each other and globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 msgid "Assume arguments may alias globals but not each other" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 msgid "Assume arguments alias neither each other nor globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 msgid "Recognize the \"asm\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 msgid "Generate code to check bounds before indexing arrays" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 msgid "Replace add, compare, branch with branch on count register" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 #, fuzzy msgid "Recognize built-in functions" msgstr "interne fout - slechte ingebouwde functie `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 msgid "-fcall-saved-\tMark as being preserved across functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 msgid "Save registers around function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +#, fuzzy +msgid "Preserve case used in program" +msgstr "misplaatste '\\' in programma" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 msgid "Reduce the size of object files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 #, fuzzy msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "slechte stringconstante" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 msgid "Perform a register copy-propagation optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 #, fuzzy msgid "Place data items into their own section" msgstr "keer vermeld voor elke functie waarin hij staat.)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 #, fuzzy msgid "Inline member functions by default" msgstr "kan functie `main' niet inline maken" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics" msgstr "" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +msgid "Allow '$' in symbol names" +msgstr "" + # "brede string"? "string met brede karakters/tekens"? -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 #, fuzzy msgid "Permit '$' as an identifier character" msgstr "formaat is een wide-character string" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 msgid "Suppress output of instruction numbers and line number notes in debugging dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 #, fuzzy msgid "Generate code to check exception specifications" msgstr "`%s' gedeclareerd als een functie die een functie teruggeeft" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +msgid "f2c-compatible code can be generated" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +msgid "Unsupported; generate libf2c-calling code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +msgid "Program is written in typical Unix-f77 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +msgid "Unsupported; affects code generation of arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 msgid "Scope of for-init-statement variables is local to the loop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 #, fuzzy msgid "Copy memory address constants into registers before use" msgstr "numerieke constante zonder cijfers" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 msgid "Copy memory operands into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 #, fuzzy msgid "Place each function into its own section" msgstr "keer vermeld voor elke functie waarin hij staat.)" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 msgid "Perform global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 msgid "Perform redundant load after store elimination in global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 msgid "Perform store motion after global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 msgid "Recognize GNU-defined keywords" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 msgid "Enable guessing of branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 #, fuzzy msgid "Process #ident directives" msgstr "ongeldig preprocessing-commando" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 #, fuzzy msgid "Perform conversion of conditional jumps to conditional execution" msgstr "types in voorwaardelijke expressie komen niet overeen" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 #, fuzzy msgid "Export functions even if they can be inlined" msgstr "de terugkeerwaarde van een functie kan geen funtie zijn" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 #, fuzzy msgid "Emit implicit instantiations of inline templates" msgstr "impliciete declaratie van functie `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 #, fuzzy msgid "Emit implicit instantiations of templates" msgstr "impliciete declaratie van functie `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 -msgid "Do not generate .size directives" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 -msgid "Pay attention to the \"inline\" keyword" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 +msgid "Do not generate .size directives" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" +# Is 'mode' enkel van toepassing op 'string', of ook op 'array'? +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +#, fuzzy +msgid "Initialize local vars and arrays to zero" +msgstr "beginwaarde is geen array of string-modus" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 +msgid "Pay attention to the \"inline\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 msgid "Instrument function entry and exit with profiling calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +msgid "Intrinsics in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 #, fuzzy msgid "Generate code for functions even if they are fully inlined" msgstr "de terugkeerwaarde van een functie kan geen funtie zijn" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 msgid "Give external symbols a leading underscore" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 #, fuzzy msgid "Perform loop optimizations" msgstr "lege declaratie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +msgid "Language keywords in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 #, fuzzy msgid "Set errno after built-in math functions" msgstr "interne fout - slechte ingebouwde functie `%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 msgid "Report on permanent memory allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 #, fuzzy msgid "Don't warn about uses of Microsoft extensions" msgstr "teveel argumenten voor functie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 msgid "Use graph-coloring register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 msgid "Do the full register move optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +msgid "Enable optimization of static class initialization code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 msgid "Enable optional diagnostics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 msgid "Return small aggregates in memory, not registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +msgid "Warn about use of (only a few for now) Fortran extensions" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 msgid "Perform loop peeling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 msgid "Enable an RTL peephole pass before sched2" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 #, fuzzy msgid "Generate position-independent code if possible" msgstr "Positie-onafhankelijke code wordt niet ondersteund. Genegeerd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 #, fuzzy msgid "Generate position-independent code for executables if possible" msgstr "Positie-onafhankelijke code wordt niet ondersteund. Genegeerd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 msgid "Insert arc-based program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 #, fuzzy msgid "Return small aggregates in registers" msgstr "te weinig argument voor functie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 msgid "Perform a register renaming optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 msgid "Generate run time type descriptor information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +msgid "Allow appending a second underscore to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 msgid "Make \"char\" signed by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +msgid "Do not print names of program units as they are compiled" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 #, fuzzy msgid "Convert floating point constants to single precision constants" msgstr "floating-point fout bij het uitschrijven van een constante" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +msgid "Internally convert most source to lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 msgid "Create data files needed by \"gcov\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 msgid "Report the time taken by each compiler pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 #, fuzzy msgid "Assume floating-point operations can trap" msgstr "floating-point constante buiten bereik" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +msgid "Allow all ugly features" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +msgid "Hollerith and typeless can be passed as arguments" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +msgid "Append underscores to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 msgid "Compile whole compilation unit at a time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +msgid "Enable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 msgid "Make \"char\" unsigned by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 msgid "Perform loop unswitching" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +msgid "Print g77-specific version information and run internal tests" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 #, fuzzy msgid "Use expression value profiles in optimizations" msgstr "lege declaratie" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +msgid "Print internal debugging-related information" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 msgid "Generate debug information in default format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 msgid "Generate debug information in COFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 msgid "Generate debug information in DWARF v2 format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 #, fuzzy msgid "Dump declarations to a .decl file" msgstr "declaratie declareert niets" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 msgid "Generate debug information in default extended format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 msgid "Generate debug information in STABS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 msgid "Generate debug information in extended STABS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 msgid "Generate debug information in VMS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 msgid "Generate debug information in XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 msgid "Generate debug information in extended XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 msgid "-o \tPlace output into " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 msgid "Enable function profiling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 msgid "Issue warnings needed for strict compliance to the standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 msgid "Generate C header of platform-specific features" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 msgid "Do not display functions compiled or elapsed time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 #, fuzzy msgid "Remap file names when including files" msgstr "lege bestandsnaam in `#%s'" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 msgid "Enable traditional preprocessing" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 msgid "Enable verbose output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -msgid "Display the compiler's version" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 msgid "Suppress warnings" msgstr "" -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "`-p' wordt niet ondersteund; gebruik `-pg' en gprof(1)" @@ -21765,7 +22163,7 @@ msgstr "GNU C ondersteunt -C niet wanneer -E niet gebruikt wordt" msgid "GCC does not support -CC without using -E" msgstr "GNU C ondersteunt -C niet wanneer -E niet gebruikt wordt" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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 @@ -22589,11 +22987,6 @@ msgstr "-pg en -fomit-frame-pointer zijn niet compatibel" #~ msgid "ignoring pragma: %s" #~ msgstr "pragma wordt genegeerd: %s" -# Is 'mode' enkel van toepassing op 'string', of ook op 'array'? -#, fuzzy -#~ msgid "Initialize local vars and arrays to zero" -#~ msgstr "beginwaarde is geen array of string-modus" - #~ msgid "`%s' cannot be statically allocated" #~ msgstr "`%s' kan niet statisch gealloceerd worden" diff --git a/gcc/po/sv.po b/gcc/po/sv.po index 122190dd559..ea7bcbfa31a 100644 --- a/gcc/po/sv.po +++ b/gcc/po/sv.po @@ -27,7 +27,7 @@ msgid "" msgstr "" "Project-Id-Version: gcc 3.2\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" "PO-Revision-Date: 2002-08-26 12:58+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" @@ -55,15 +55,15 @@ msgstr "attributet \"%s\" msgid "`%s' attribute only applies to function types" msgstr "attributet \"%s\" fungerar bara på funktionstyper" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -138,7 +138,7 @@ msgstr "(allts #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" msgstr "" @@ -307,277 +307,277 @@ msgid "invalid application of `%s' to a void type" msgstr "ogiltig operation på oinstansierad typ" #: c-common.c:2951 -#, fuzzy, c-format -msgid "invalid application of `%s' to an incomplete type" +#, fuzzy +msgid "invalid application of `%s' to incomplete type `%T' " msgstr "sizeof applicerat på en inkomplett typ" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "" -#: c-common.c:3483 +#: c-common.c:3484 #, fuzzy, c-format msgid "cannot disable built-in function `%s'" msgstr "döljer inbyggd funktion \"%s\"" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "för få argument till funktionen \"%s\"" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "för många argument till funktionen \"%s\"" -#: c-common.c:3669 +#: c-common.c:3670 #, fuzzy, c-format msgid "non-floating-point argument to function `%s'" msgstr "för många argument till funktionen \"%s\"" -#: c-common.c:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "pekare är inte tillåtna case-värden" -#: c-common.c:3900 +#: c-common.c:3901 #, fuzzy msgid "range expressions in switch statements are non-standard" msgstr "ISO C förbjuder intervalluttryck i switch-satser" -#: c-common.c:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "tomt intervall angivet" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "dubbla (eller överlappand) case-värden" -#: c-common.c:3981 +#: c-common.c:3982 #, 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:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "upprepat case-värde" -#: c-common.c:3986 +#: c-common.c:3987 #, fuzzy msgid "%Jpreviously used here" msgstr "tidigare använd här" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "flera default-etiketter i en switch" -#: c-common.c:3991 +#: c-common.c:3992 #, fuzzy msgid "%Jthis is the first default label" msgstr "detta är den första default-etiketten" -#: c-common.c:4016 +#: c-common.c:4017 #, fuzzy 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:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "okänt maskinläge `%s'" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "ingen datatyp för läge `%s'" -#: c-common.c:4655 +#: c-common.c:4656 #, fuzzy, c-format msgid "invalid pointer mode `%s'" msgstr "ogiltig operand för %V" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, fuzzy, c-format msgid "unable to emulate '%s'" msgstr "kan inte öppna fil \"%s\"" -#: c-common.c:4706 +#: c-common.c:4707 #, fuzzy msgid "%Jsection attribute cannot be specified for local variables" msgstr "attributet \"section\" kan inte anges för lokala variabler" -#: c-common.c:4717 +#: c-common.c:4718 #, fuzzy msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "sektion \"%s\" står i konflikt med tidigare deklaration" -#: c-common.c:4726 +#: c-common.c:4727 #, fuzzy msgid "%Jsection attribute not allowed for '%D'" msgstr "attributet \"section\" är inte tillåten för \"%s\"" -#: c-common.c:4732 +#: c-common.c:4733 #, fuzzy msgid "%Jsection attributes are not supported for this target" msgstr "attributet \"section\" stöds inte för denna målarkitektur" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "efterfrågad minnesjustering är inte konstant" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "efterrågad minnesjustering är inte en potens av 2" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "efterfrågad minnesjustering är för stor" -#: c-common.c:4806 +#: c-common.c:4807 #, fuzzy msgid "%Jalignment may not be specified for '%D'" msgstr "minnesjustering kan inte anges för \"%s\"" -#: c-common.c:4844 +#: c-common.c:4845 #, 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:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "aliasargumentet är inte en sträng" -#: c-common.c:4897 +#: c-common.c:4898 #, fuzzy msgid "visibility arg not a string" msgstr "aliasargumentet är inte en sträng" -#: c-common.c:4910 +#: c-common.c:4911 msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\"" msgstr "" -#: c-common.c:4936 +#: c-common.c:4937 #, fuzzy msgid "tls_model arg not a string" msgstr "aliasargumentet är inte en sträng" -#: c-common.c:4945 +#: c-common.c:4946 msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\"" msgstr "" -#: c-common.c:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 #, fuzzy msgid "%J'%E' attribute applies only to functions" msgstr "attributet \"%s\" fungerar bara på funktioner" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 #, fuzzy msgid "%Jcan't set '%E' attribute after definition" msgstr "kan inte sätta attributet \"%s\" efter definitionen" -#: c-common.c:5094 +#: c-common.c:5095 #, c-format msgid "`%s' attribute ignored for `%s'" msgstr "attributet `%s' ignorerat för \"%s\"" -#: c-common.c:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "ogiltigt vektortype för attribut \"%s\"" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 msgid "no vector mode with the size and type specified could be found" msgstr "" -#: c-common.c:5315 +#: c-common.c:5316 #, fuzzy msgid "nonnull attribute without arguments on a non-prototype" msgstr "antalet argument matchar inte prototypen" -#: c-common.c:5330 +#: c-common.c:5331 #, fuzzy, c-format msgid "nonnull argument has invalid operand number (arg %lu)" msgstr "formatsträng har ett ogiltigt antal operander" -#: c-common.c:5349 +#: c-common.c:5350 #, c-format msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5357 +#: c-common.c:5358 #, c-format msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)" msgstr "" -#: c-common.c:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "" -#: c-common.c:5508 +#: c-common.c:5509 #, fuzzy msgid "cleanup arg not an identifier" msgstr "predikat måste vara en identifierare" -#: c-common.c:5515 +#: c-common.c:5516 #, fuzzy msgid "cleanup arg not a function" msgstr "anropat objekt är inte en funktion" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s vid slutet av indatan" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%s före %s'%c'" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%s före %s'\\x%x'" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "%s före strängkonstant" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "%s före numerisk konstant" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "%s före \"%s\"" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "%s före symbolen '%s'" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 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" @@ -798,8 +798,8 @@ msgstr "deklaration av \"%s\" d msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "deklaration av \"%s\" döljer en tidigare lokal" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 #, fuzzy msgid "%Jshadowed declaration is here" msgstr "tidigare deklaration av \"%s\"" @@ -809,7 +809,7 @@ msgstr "tidigare deklaration av \"%s\"" msgid "nested extern declaration of `%s'" msgstr "nästlad extern deklaration av \"%s\"" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 #, fuzzy msgid "%Jprevious declaration of '%D'" msgstr "tidigare deklaration av \"%s\"" @@ -889,7 +889,7 @@ msgid "two types specified in one empty declaration" msgstr "två typer angivna i en tom deklaration" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "tom deklaration" @@ -932,7 +932,7 @@ msgstr "funktion \"%s\" msgid "parameter `%s' is initialized" msgstr "parameter \"%s\" är initierad" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "objekt med variabel storlek kan inte initieras" @@ -946,7 +946,7 @@ msgstr "variabel \"%s\" har initierare men msgid "elements of array `%s' have incomplete type" msgstr "elementen i fält \"%s\" har en ofullständig typ" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 #, fuzzy msgid "%Jinline function '%D' given attribute noinline" msgstr "inbyggd funktion \"%s\" deklarerad som icke-funktion" @@ -1235,7 +1235,7 @@ msgstr "ISO C89 f msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO C89 förbjuder fält \"%s\" med variabel storlek" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "fältet \"%s\" är för stort" @@ -1279,7 +1279,7 @@ msgstr "" msgid "ISO C forbids const or volatile function types" msgstr "" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "variabel eller fält \"%s\" deklarerad som void" @@ -1602,7 +1602,7 @@ msgstr "argument \"%s\" matchar inte prototypen" msgid "argument \"%D\" doesn't match prototype" msgstr "argument \"%s\" matchar inte prototypen" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 msgid "no return statement in function returning non-void" msgstr "ingen return i funktion som returnerar icke-void" @@ -2397,7 +2397,7 @@ msgstr "syntaxfel: kan inte backa tillbaka" msgid "ISO C forbids an empty source file" msgstr "ISO C förbjuder tomma källkodsfiler" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "argumentet till \"asm\" är inte en konstant sträng" @@ -2495,7 +2495,7 @@ msgstr "ISO C f msgid "ISO C forbids forward references to `enum' types" msgstr "" -#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "komma i slutet av uppräkningslista" @@ -2503,7 +2503,7 @@ msgstr "komma i slutet av uppr msgid "no semicolon at end of struct or union" msgstr "inget semikolon vid slutet av struktur eller union" -#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "extra semikolon i struktur eller union angivet" @@ -2532,24 +2532,24 @@ msgstr "" msgid "braced-group within expression allowed only inside a function" msgstr "" -#: c-parse.y:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "tom kropp i else-sats" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 #, fuzzy msgid "%Hempty body in an if-statement" msgstr "tom kropp i else-sats" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 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:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 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 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO C förbjuder \"goto *expr;\"" @@ -2559,11 +2559,11 @@ msgstr "ISO C f #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "ISO C kräver ett namnsatt argument före \"...\"" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "\"...\" i en gammaldags identifierarlista" @@ -2580,7 +2580,7 @@ msgstr "parsningsfel" msgid "parser stack overflow" msgstr "parsestack överfull" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "syntaxfel vid token \"%s\"" @@ -2749,20 +2749,20 @@ msgstr "" msgid "junk at end of #pragma redefine_extname" msgstr "skräp vid slutet av #pragma weak" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "" -#: c-pragma.c:413 +#: c-pragma.c:414 msgid "malformed #pragma extern_prefix, ignored" msgstr "" -#: c-pragma.c:418 +#: c-pragma.c:419 #, fuzzy msgid "junk at end of #pragma extern_prefix" msgstr "skräp vid slutet av #pragma weak" -#: c-pragma.c:449 +#: c-pragma.c:450 #, fuzzy msgid "asm declaration conflicts with previous rename" msgstr "sektion \"%s\" står i konflikt med tidigare deklaration" @@ -2780,7 +2780,7 @@ msgstr "" msgid "(enclose actions of previous case statements requiring destructors in their own scope.)" msgstr "" -#: c-semantics.c:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "" @@ -2790,801 +2790,801 @@ msgstr "" msgid "will never be executed" msgstr "anrop %d aldrig utfört\n" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "\"%s\" har en inkomplett typ" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "ogiltig användning av void-uttryck" -#: c-typeck.c:150 +#: c-typeck.c:153 #, fuzzy msgid "invalid use of flexible array member" msgstr "ISO C89 stöder inte flexibla fältmedlemmar" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 msgid "function types not truly compatible in ISO C" msgstr "funktionstyper inte riktigt kompatibla i ISO C" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "typerna är inte riktigt kompatibla" -#: c-typeck.c:824 +#: c-typeck.c:838 #, fuzzy msgid "function return types not compatible due to `volatile'" msgstr "funktionstyper inte riktigt kompatibla i ISO C" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "aritmetik på pekare till inkomplett typ" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "%s har ingen medlem med namn \"%s\"" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, 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:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "derefererar pekare till inkomplett typ" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "derefererar \"void *\"-pekare" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "ogiltigt typargument till \"%s\"" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "fältindex har typen \"char\"" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "fältindex är inte ett heltal" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "" -#: c-typeck.c:1511 +#: c-typeck.c:1525 #, fuzzy msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C++ förbjuder tilldelning av fält" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "index har typen \"char\"" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, c-format msgid "local declaration of `%s' hides instance variable" msgstr "" -#: c-typeck.c:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "anropat objekt är inte en funktion" #. 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 +#: c-typeck.c:1729 #, fuzzy msgid "function called through a non-compatible type" msgstr "sizeof applicerat på en inkomplett typ" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "för många argument till funktion" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, c-format msgid "%s as integer rather than floating due to prototype" msgstr "" -#: c-typeck.c:1850 +#: c-typeck.c:1875 #, c-format msgid "%s as integer rather than complex due to prototype" msgstr "" -#: c-typeck.c:1853 +#: c-typeck.c:1878 #, c-format msgid "%s as complex rather than floating due to prototype" msgstr "" -#: c-typeck.c:1856 +#: c-typeck.c:1881 #, c-format msgid "%s as floating rather than integer due to prototype" msgstr "" -#: c-typeck.c:1859 +#: c-typeck.c:1884 #, 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:1862 +#: c-typeck.c:1887 #, c-format msgid "%s as floating rather than complex due to prototype" msgstr "" -#: c-typeck.c:1872 +#: c-typeck.c:1897 #, c-format msgid "%s as `float' rather than `double' due to prototype" msgstr "" -#: c-typeck.c:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "%s som unsigned på grund av prototyp" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "%s som signed på grund av prototyp" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "för få argument till funktion" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "föreslår parenteser runt + eller - inuti skift" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "föreslår parenteser runt && inuti ||" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "föreslår parenteser runt aritmetik inuti operanden till |" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "föreslår parenteser runt jämförelse inuti operanden till |" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "föreslår parenteser runt aritmetik inuti operanden till ^" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "föreslår parenteser runt jämförelse inuti operanden till ^" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "föreslår parenteser runt + eller - inuti operanden till &" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "föreslår parenteser runt jämförelser inuti operanden till &" -#: c-typeck.c:2040 +#: c-typeck.c:2065 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:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "pekare av typ \"void *\" använd i subtraktion" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "pekare till funktion använd i subtraktion" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "" -#: c-typeck.c:2229 +#: c-typeck.c:2254 msgid "ISO C does not support `~' for complex conjugation" msgstr "ISO C stödjer inte ~ för komplex konjugering" -#: c-typeck.c:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "fel typ på argument till abs" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "" -#: c-typeck.c:2312 +#: c-typeck.c:2337 msgid "ISO C does not support `++' and `--' on complex types" msgstr "ISO C stöder inte \"++\" och \"--\" på komplexa typer" -#: c-typeck.c:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 #, fuzzy msgid "wrong type argument to increment" msgstr "fel typ på argument till %s" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 #, fuzzy msgid "wrong type argument to decrement" msgstr "fel typ på argument till %s" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, c-format msgid "attempt to take address of bit-field structure member `%s'" msgstr "" -#: c-typeck.c:2642 +#: c-typeck.c:2668 msgid "use of conditional expressions as lvalues is deprecated" msgstr "" -#: c-typeck.c:2645 +#: c-typeck.c:2671 msgid "use of compound expressions as lvalues is deprecated" msgstr "" -#: c-typeck.c:2648 +#: c-typeck.c:2674 msgid "use of cast expressions as lvalues is deprecated" msgstr "" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, fuzzy, c-format msgid "cannot take address of bit-field `%s'" msgstr "kan inte ta adressen till bitfält \"%s\"" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 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:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 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:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 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:2739 +#: c-typeck.c:2765 msgid "cannot put object with volatile field into register" msgstr "" -#: c-typeck.c:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, c-format msgid "address of register variable `%s' requested" msgstr "adress på register variabel \"%s\" efterfrågad" -#: c-typeck.c:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "typ signed och unsigned i villkorsuttryck" -#: c-typeck.c:2835 +#: c-typeck.c:2861 msgid "ISO C forbids conditional expr with only one void side" msgstr "" -#: c-typeck.c:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 msgid "ISO C forbids conditional expr between `void *' and function pointer" msgstr "" -#: c-typeck.c:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "typfel i villkorsuttryck" -#: c-typeck.c:2955 +#: c-typeck.c:2981 msgid "left-hand operand of comma expression has no effect" msgstr "" -#: c-typeck.c:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "" -#: c-typeck.c:3002 +#: c-typeck.c:3028 msgid "ISO C forbids casting nonscalar to the same type" msgstr "" -#: c-typeck.c:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "ISO C förbjuder typkonvertering till unionstyper" -#: c-typeck.c:3028 +#: c-typeck.c:3054 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:3079 +#: c-typeck.c:3105 #, 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:3084 +#: c-typeck.c:3110 msgid "cast discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:3099 +#: c-typeck.c:3125 msgid "cast increases required alignment of target type" msgstr "" -#: c-typeck.c:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "typkonvertering från pekare till heltal av annan storlek" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "typkonvertering matchar inte en funktionstyp" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "typkonvertering till pekare från heltal med annan storlek" -#: c-typeck.c:3129 +#: c-typeck.c:3155 msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "" -#: c-typeck.c:3133 +#: c-typeck.c:3159 msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "" -#: c-typeck.c:3144 +#: c-typeck.c:3170 #, 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:3153 +#: c-typeck.c:3179 #, 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:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "ogiltigt lvalue i tilldelning" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "tilldelning" -#: c-typeck.c:3429 +#: c-typeck.c:3455 #, fuzzy msgid "cannot pass rvalue to reference parameter" msgstr "kan inte deklarera pekare till referenser" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:3548 +#: c-typeck.c:3574 msgid "ISO C prohibits argument conversion to union type" msgstr "" -#: c-typeck.c:3586 +#: c-typeck.c:3612 #, 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:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "" # fixme: vad är %s -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, c-format msgid "%s makes pointer from integer without a cast" msgstr "%s skapar pekare från heltal utan typkonvertering" -#: c-typeck.c:3646 +#: c-typeck.c:3672 #, c-format msgid "%s makes integer from pointer without a cast" msgstr "" -#: c-typeck.c:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, c-format msgid "incompatible type for argument %d of `%s'" msgstr "" -#: c-typeck.c:3667 +#: c-typeck.c:3693 #, c-format msgid "incompatible type for argument %d of indirect function call" msgstr "" -#: c-typeck.c:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "inkompatibla typer i %s" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, fuzzy, c-format msgid "passing arg of `%s'" msgstr "Saknar argument till flaggan \"%s\"" #. Function name unknown (call through ptr). -#: c-typeck.c:3736 +#: c-typeck.c:3762 #, 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:3744 +#: c-typeck.c:3770 #, c-format msgid "passing arg %d of `%s'" msgstr "" #. Function name unknown (call through ptr); just give arg number. -#: c-typeck.c:3753 +#: c-typeck.c:3779 #, c-format msgid "passing arg %d of pointer to function" msgstr "" -#: c-typeck.c:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 msgid "initializer-string for array of chars is too long" msgstr "" -#: c-typeck.c:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "" -#: 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:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "initiering" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 #, fuzzy msgid "opaque vector types cannot be initialized" msgstr "objekt med variabel storlek kan inte initieras" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "" -#: c-typeck.c:4842 +#: c-typeck.c:4865 msgid "initialization of flexible array member in a nested context" msgstr "" -#: c-typeck.c:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 msgid "field name not in record or union initializer" msgstr "" -#: c-typeck.c:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 msgid "array index in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "" -#: c-typeck.c:5101 +#: c-typeck.c:5124 msgid "array index range in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "" -#: c-typeck.c:6369 +#: c-typeck.c:6392 msgid "`return' with no value, in function returning non-void" msgstr "" -#: c-typeck.c:6375 +#: c-typeck.c:6398 msgid "`return' with a value, in function returning void" msgstr "\"return\" med värde i funktion som returnerar void" -#: c-typeck.c:6379 +#: c-typeck.c:6402 msgid "return" msgstr "return" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "funktionen returnerar adress till en lokal variabel" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "switch-argument är inte ett heltal" -#: c-typeck.c:6496 +#: c-typeck.c:6519 msgid "`long' switch expression not converted to `int' in ISO C" msgstr "" -#: c-typeck.c:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "case-etikett är inte i en switch-sats" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "\"default\"-etikett är inte i en switch-sats" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "högershiftoperanden är negativ" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 msgid "right shift count >= width of type" msgstr "högershiftoperanden >= storleken på typen" -#: c-typeck.c:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "vänstershiftoperanden är negativ" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 msgid "left shift count >= width of type" msgstr "vänstershiftoperanden >= storleken på typen" -#: c-typeck.c:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "shiftoperanden är negativ" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "shiftoperanden >= storleken på typen" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 msgid "comparing floating point with == or != is unsafe" msgstr "jämföra flyttal med == eller != är osäkert" -#: c-typeck.c:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 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:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 msgid "comparison of distinct pointer types lacks a cast" msgstr "" -#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "jämförelse mellan pekare och heltal" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 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:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "jämförelse av kompletta och inkompletta pekare" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 msgid "ordered comparison of pointer with integer zero" msgstr "" -#: c-typeck.c:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 msgid "unordered comparison on non-floating point argument" msgstr "" -#: c-typeck.c:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "jämföreslse mellan signed och unsigned" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "" @@ -3852,45 +3852,45 @@ msgstr "" msgid "function body not available" msgstr "funktion \"%s\" kan inte deklareras som \"mutable\"" -#: cgraph.c:163 cgraphunit.c:340 +#: cgraph.c:163 cgraphunit.c:341 msgid "redefined extern inline functions are not considered for inlining" msgstr "" -#: cgraph.c:166 cgraphunit.c:345 +#: 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:343 +#: cgraph.c:168 cgraphunit.c:344 #, fuzzy msgid "function not inlinable" msgstr "funktion \"%s\" kan inte deklareras som \"mutable\"" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" msgstr "" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" msgstr "" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" msgstr "" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" msgstr "" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" msgstr "" @@ -4074,7 +4074,7 @@ msgstr "%s: kan inte msgid "library lib%s not found" msgstr "Hittade inte bibliotek lib%s" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -4082,7 +4082,7 @@ msgid "" "\n" msgstr "" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -4936,7 +4936,7 @@ msgstr "" msgid "syntax error in macro parameter list" msgstr "parameternamn saknas i parameterlista" -#: cse.c:7060 +#: cse.c:7064 #, c-format msgid ";; Processing block from %d to %d, %d sets.\n" msgstr "" @@ -5015,17 +5015,17 @@ msgstr "" msgid "function using short complex types cannot be inline" msgstr "" -#: expr.c:6385 +#: expr.c:6386 #, fuzzy msgid "%Jprior parameter's size depends on '%D'" msgstr "föregående parameterns storlek beror på \"%s\"" -#: expr.c:6752 +#: expr.c:6753 msgid "returned value in block_exit_expr" msgstr "" #. We can't make a bitwise copy of this object, so fail. -#: expr.c:8895 +#: expr.c:8894 #, fuzzy msgid "cannot take the address of an unaligned member" msgstr "Kan inte ta adressen till \"this\", som är ett rvalue-uttryck" @@ -5072,12 +5072,12 @@ msgstr "" #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "" @@ -5129,23 +5129,23 @@ msgstr "storleken p msgid "impossible constraint in `asm'" msgstr "" -#: function.c:5723 +#: function.c:5733 msgid "%J'%D' might be used uninitialized in this function" msgstr "" -#: function.c:5730 +#: function.c:5740 msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "" -#: function.c:5749 +#: function.c:5759 msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "" -#: function.c:7006 +#: function.c:6929 #, fuzzy msgid "%Junused parameter '%D'" msgstr "oanvänd parameter \"%s\"" @@ -6596,7 +6596,7 @@ msgstr "" msgid "can't use '%s' as a %s register" msgstr "" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "okänt registernamn: %s" @@ -6654,48 +6654,48 @@ msgstr "V msgid "inconsistent operand constraints in an `asm'" msgstr "" -#: reload1.c:1212 +#: reload1.c:1222 msgid "frame size too large for reliable stack checking" msgstr "" -#: reload1.c:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "" -#: reload1.c:1868 +#: reload1.c:1878 #, c-format msgid "can't find a register in class `%s' while reloading `asm'" msgstr "" -#: reload1.c:1872 +#: reload1.c:1882 #, c-format msgid "unable to find a register to spill in class `%s'" msgstr "" -#: reload1.c:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 msgid "could not find a spill register" msgstr "" -#: reload1.c:4968 +#: reload1.c:4978 msgid "`asm' operand constraint incompatible with operand size" msgstr "" #. It's the compiler's fault. -#: reload1.c:6590 +#: reload1.c:6600 #, fuzzy msgid "VOIDmode on an output" msgstr "I/O-fel vid utmatning" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "" @@ -6748,7 +6748,7 @@ msgstr "" msgid "jump to `%s' invalidly jumps into binding contour" msgstr "" -#: stmt.c:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 msgid "%Jlabel '%D' used before containing binding contour" msgstr "" @@ -6765,7 +6765,7 @@ msgstr "" msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "" @@ -6774,129 +6774,125 @@ msgstr "" msgid "matching constraint not valid in output operand" msgstr "" -#: stmt.c:1260 -msgid "read-write constraint does not allow a register" -msgstr "" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "" -#: stmt.c:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "" -#: stmt.c:1396 +#: stmt.c:1393 #, fuzzy msgid "matching constraint does not allow a register" msgstr "flyttalskonstant utanför sitt intervall" -#: stmt.c:1424 +#: stmt.c:1421 #, 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:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "" -#: stmt.c:1522 +#: stmt.c:1519 #, c-format msgid "PIC register `%s' clobbered in `asm'" msgstr "" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "" -#: stmt.c:1721 +#: stmt.c:1718 #, c-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1875 +#: stmt.c:1872 #, fuzzy msgid "asm clobber conflict with output operand" msgstr "sektion \"%s\" står i konflikt med tidigare deklaration" -#: stmt.c:1880 +#: stmt.c:1877 #, fuzzy msgid "asm clobber conflict with input operand" msgstr "sektion \"%s\" står i konflikt med tidigare deklaration" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "" -#: stmt.c:1926 +#: stmt.c:1923 msgid "operand constraints for `asm' differ in number of alternatives" msgstr "" -#: stmt.c:1978 +#: stmt.c:1975 #, fuzzy, c-format msgid "duplicate asm operand name '%s'" msgstr "upprepning av medlem \"%s\"" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "" -#: stmt.c:2104 +#: stmt.c:2101 #, c-format msgid "undefined named operand '%s'" msgstr "" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" msgstr "" -#: stmt.c:2317 +#: stmt.c:2314 msgid "%Hvalue computed is not used" msgstr "" -#: stmt.c:3733 +#: stmt.c:3730 #, fuzzy msgid "%Junused variable '%D'" msgstr "oanvänd variabel \"%s\"" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, c-format msgid "case value `%ld' not in enumerated type `%s'" msgstr "" -#: stmt.c:5401 +#: stmt.c:5398 #, fuzzy msgid "switch missing default case" msgstr "detta är den första default-etiketten" @@ -6932,25 +6928,25 @@ msgstr "attributet `%s' ignorerat f msgid "%Jpadding struct to align '%D'" msgstr "" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "" @@ -7103,7 +7099,7 @@ msgstr " De finns, men msgid "unrecognized gcc debugging option: %c" msgstr "ej igenkänd debuggningsflagga för gcc: %c" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, fuzzy, c-format msgid "invalid option `%s'" msgstr "Ogiltig flagga \"%s\"" @@ -7129,25 +7125,25 @@ msgstr "" msgid "options enabled: " msgstr "" -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, fuzzy, c-format msgid "can't open %s for writing: %m" msgstr "kan inte öppna fil %s för skrivning" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" msgstr "" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" msgstr "" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 #, fuzzy msgid "out of memory" msgstr "inget minne" @@ -7207,7 +7203,7 @@ msgstr "" msgid "error writing to %s: %m" msgstr "fel vid skrivning till %s" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, fuzzy, c-format msgid "error closing %s: %m" msgstr "fel vid stängning av %s" @@ -7269,34 +7265,34 @@ msgstr "storleken p 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 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "" -#: tree.c:4736 +#: tree.c:4737 #, c-format msgid "tree check: expected %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:4749 +#: tree.c:4750 #, c-format msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d" msgstr "" -#: tree.c:4762 +#: tree.c:4763 #, c-format msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "" -#: tree.c:4774 +#: tree.c:4775 #, c-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "" @@ -7674,7 +7670,7 @@ msgstr "" msgid "bad value `%s' for -mfp-trap-mode switch" msgstr "" -#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, fuzzy, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "ogiltigt värde (%s) till flagga -mcpu" @@ -7724,24 +7720,24 @@ msgstr "" msgid "invalid %%J value" msgstr "ogiltigt värde %%B" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "ogiltigt %%r-värde" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "ogiltigt %%R-värde" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "ogiltigt %%N-värde" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "ogiltigt %%P-värde" @@ -7751,17 +7747,17 @@ msgstr "ogiltigt %%P-v msgid "invalid %%h value" msgstr "ogiltigt %%h-värde" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "ogiltigt %%L-värde" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "ogiltigt %%m-värde" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "ogiltigt %%M-värde" @@ -7772,7 +7768,7 @@ msgid "invalid %%U value" msgstr "ogiltigt %%U-värde" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "ogiltigt %%s-värde" @@ -7782,7 +7778,8 @@ msgstr "ogiltigt %%s-v msgid "invalid %%C value" msgstr "ogiltigt %%C-värde" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "ogiltigt %%E-värde" @@ -7791,7 +7788,7 @@ msgstr "ogiltigt %%E-v msgid "unknown relocation unspec" msgstr "" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "" @@ -7955,17 +7952,17 @@ msgstr "argumentet till \"asm\" msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\"" msgstr "" -#: config/arc/arc.c:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, fuzzy, c-format msgid "invalid operand to %%R code" msgstr "ogiltig operand för %R" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, fuzzy, c-format msgid "invalid operand to %%H/%%L code" msgstr "ogiltig operand för %H/%L" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, fuzzy, c-format msgid "invalid operand to %%U code" msgstr "ogiltig operand för %U" @@ -7976,7 +7973,7 @@ msgid "invalid operand to %%V code" msgstr "ogiltig operand för %V" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "" @@ -7985,7 +7982,7 @@ msgstr "" msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "flagga -mcpu=%s står i konflikt med flagga -march=" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 config/sparc/sparc.c:424 #, c-format msgid "bad value (%s) for %s switch" msgstr "ogiltigt värde (%s) till flagga %s" @@ -8071,12 +8068,12 @@ msgid "unable to use '%s' for PIC register" msgstr "" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 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" @@ -8091,7 +8088,7 @@ msgid "selector must be an immediate" msgstr "" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "" @@ -9513,185 +9510,185 @@ msgstr "" msgid "Do not generate char instructions" msgstr "" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, c-format msgid "code model %s not supported in PIC mode" msgstr "" -#: config/i386/i386.c:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 config/sparc/sparc.c:387 #, c-format msgid "bad value (%s) for -mcmodel= switch" msgstr "" -#: config/i386/i386.c:1195 +#: config/i386/i386.c:1204 #, fuzzy, c-format msgid "bad value (%s) for -masm= switch" msgstr "ogiltigt värde (%s) till flagga %s" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, 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:1201 +#: config/i386/i386.c:1210 #, fuzzy msgid "code model `large' not supported yet" msgstr "\"%s\" stöds inte av %s" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 #, fuzzy msgid "CPU you selected does not support x86-64 instruction set" msgstr "målprocessorn stödjer inte THUMB-instruktioner" -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 config/iq2000/iq2000.c:1840 #, c-format msgid "bad value (%s) for -march= switch" msgstr "" -#: config/i386/i386.c:1248 +#: config/i386/i386.c:1260 #, fuzzy, c-format msgid "bad value (%s) for -mtune= switch" msgstr "ogiltigt värde (%s) till flagga -mcpu" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, c-format msgid "-mregparm=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1278 +#: config/i386/i386.c:1290 msgid "-malign-loops is obsolete, use -falign-loops" msgstr "" -#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, c-format msgid "-malign-loops=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 msgid "-malign-functions is obsolete, use -falign-functions" msgstr "" -#: config/i386/i386.c:1342 +#: config/i386/i386.c:1354 #, c-format msgid "-mpreferred-stack-boundary=%d is not between %d and 12" msgstr "" -#: config/i386/i386.c:1354 +#: config/i386/i386.c:1366 #, c-format msgid "-mbranch-cost=%d is not between 0 and 5" msgstr "" -#: config/i386/i386.c:1366 +#: config/i386/i386.c:1378 #, fuzzy, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "ogiltigt värde (%s) till flagga -mcpu" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 msgid "-mrtd calling convention not supported in the 64bit mode" msgstr "" -#: config/i386/i386.c:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 #, fuzzy msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "pekare till funktion använd med aritmetik" -#: config/i386/i386.c:1435 +#: config/i386/i386.c:1447 #, fuzzy msgid "387 instruction set disabled, using SSE arithmetics" msgstr "pekare till funktion använd med aritmetik" -#: config/i386/i386.c:1442 +#: config/i386/i386.c:1454 #, fuzzy, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "ogiltigt värde (%s) till flagga -mcpu" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 #, fuzzy msgid "fastcall and stdcall attributes are not compatible" msgstr "shared och mdll är inkompatibla" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 #, fuzzy msgid "fastcall and regparm attributes are not compatible" msgstr "shared och mdll är inkompatibla" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, fuzzy, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "tre \"l\"-suffix på heltalskonstant" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, fuzzy, c-format msgid "argument to `%s' attribute larger than %d" msgstr "kan inte sätta attributet \"%s\" efter definitionen" -#: config/i386/i386.c:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 msgid "operand is neither a constant nor a condition code, invalid operand code 'c'" msgstr "" -#: config/i386/i386.c:7457 +#: config/i386/i386.c:7474 #, fuzzy, c-format msgid "invalid operand code `%c'" msgstr "ogiltig operand för %V" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 #, fuzzy msgid "invalid constraints for operand" msgstr "ogiltig %%-kod" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 #, fuzzy msgid "unknown insn mode" msgstr "okänt maskinläge `%s'" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 #, fuzzy msgid "shift must be an immediate" msgstr "predikat måste vara en identifierare" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, fuzzy, c-format msgid "`%s' incompatible attribute ignored" msgstr "attributet `%s' ignorerat" @@ -9753,43 +9750,43 @@ msgstr "" msgid "%J'%D' causes a section type conflict" msgstr "" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "Använd Cygwin-interfacet" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "Använd Mingw32-interfacet" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "Skapa GUI-applikation" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "Skapa konsollapplikation" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "Generera kod för en DLL" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "Ignorera dllimport för funktioner" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, c-format msgid "-f%s ignored for target (all code is position independent)" msgstr "" @@ -9999,7 +9996,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "Schemalägg kod för en given CPU" @@ -10121,7 +10118,7 @@ msgstr "" 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:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "" @@ -10244,8 +10241,8 @@ msgstr "" msgid "Do not layout types like Intel's v1.3 gcc" msgstr "" -#: 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 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "Använd 64 bits long double" @@ -10281,41 +10278,41 @@ msgstr "sektion \"%s\" st msgid "%Jaddress area attribute cannot be specified for functions" msgstr "attributet \"section\" kan inte anges för lokala variabler" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 msgid "value of -mfixed-range must have form REG1-REG2" msgstr "" -#: config/ia64/ia64.c:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "%s-%s är ett tomt intervall" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 msgid "cannot optimize floating point division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4726 +#: config/ia64/ia64.c:4729 msgid "cannot optimize integer division for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4732 +#: config/ia64/ia64.c:4735 msgid "cannot optimize square root for both latency and throughput" msgstr "" -#: config/ia64/ia64.c:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, fuzzy, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "ogiltigt värde (%s) till flagga -mcpu" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, fuzzy, c-format msgid "bad value (%s) for -tune= switch" msgstr "ogiltigt värde (%s) till flagga -mcpu" @@ -10452,7 +10449,7 @@ msgstr "" 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:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "PRINT_OPERAND_ADDRESS, null-pekare" @@ -10462,7 +10459,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "" @@ -10471,7 +10468,7 @@ msgstr "" msgid "invalid %%P operand" msgstr "ogiltigt %%P-värde" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "" @@ -10532,92 +10529,92 @@ msgstr "" msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 #, fuzzy msgid "typename type `%#T' declared `friend'" msgstr "parameter \"%s\" deklarerad som void" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 #, fuzzy msgid "template parameter type `%T' declared `friend'" msgstr "parameter \"%s\" deklarerad som void" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 #, fuzzy msgid "`%#T' is not a template" msgstr "användning ab `%s' i mall" -#: cp/friend.c:277 +#: cp/friend.c:281 #, fuzzy msgid "`%D' is already a friend of `%T'" msgstr "kunde inte hitta klassen \"%s\"" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "" -#: cp/friend.c:409 +#: cp/friend.c:413 msgid "member `%D' declared as friend before type `%T' defined" msgstr "" -#: cp/friend.c:465 +#: cp/friend.c:469 #, fuzzy msgid "friend declaration `%#D' declares a non-template function" msgstr "inbyggd funktion \"%s\" deklarerad som icke-funktion" -#: cp/friend.c:468 +#: cp/friend.c:472 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 "" @@ -15780,7 +15782,7 @@ msgstr "" msgid "type `%T' is of non-aggregate type" msgstr "" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "" @@ -15820,76 +15822,75 @@ msgstr "" msgid "zero size array reserves no space" msgstr "" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "" -#: cp/init.c:1876 +#: cp/init.c:1877 #, fuzzy msgid "can't find class$" msgstr "Kan inte hitta class$" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "ogiltig typ \"void\" för new" -#: cp/init.c:2013 +#: cp/init.c:2014 #, fuzzy msgid "uninitialized const in `new' of `%#T'" msgstr "initierare misslyckas med att bestämma storlek på \"%s\"" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "" + +#: cp/init.c:2083 #, fuzzy msgid "request for member `%D' is ambiguous" msgstr "%s: flaggan \"%s\" är tvetydig\n" -#: cp/init.c:2193 +#: cp/init.c:2203 #, fuzzy msgid "ISO C++ forbids initialization in array new" msgstr "ISO C++ förbjuder initiering av new-uttryck med \"=\"" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "" -#: cp/init.c:2885 +#: cp/init.c:2895 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 " +#: cp/init.c:2898 +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:2890 -msgid "declared when the class is defined." -msgstr "" - -#: cp/init.c:2909 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "" -#: cp/init.c:3174 +#: cp/init.c:3184 msgid "type to vector delete is neither pointer or array type" msgstr "" @@ -15982,12 +15983,12 @@ msgstr "" msgid "non-static reference member `%#D', can't use default assignment operator" msgstr "" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 #, fuzzy msgid "`%#D' used prior to declaration" msgstr "\"%s\" är använd innan sin deklaration" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 #, fuzzy msgid "redeclaration of `wchar_t' as `%T'" msgstr "omdeklaration av \"%s\"" @@ -15998,261 +15999,261 @@ msgstr "omdeklaration av \"%s\"" #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 #, fuzzy msgid "invalid redeclaration of `%D'" msgstr "omdeklaration av \"%s\"" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 #, fuzzy msgid "type mismatch with previous external decl of `%#D'" msgstr "typ skiljer sig från tidigare extern deklaration" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 #, fuzzy msgid "previous external decl of `%#D'" msgstr "föregående externa dekl. av \"%s\"" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 #, fuzzy msgid "`%D' was previously implicitly declared to return `int'" msgstr "\"%s\" deklarerades tidigare implicit att returnera \"int\"" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 #, fuzzy msgid "extern declaration of `%#D' doesn't match" msgstr "extern deklaration av \"%s\" matchar inte den globala" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 #, fuzzy msgid "global declaration `%#D'" msgstr "dubbel deklaration av etikett \"%s\"" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 #, fuzzy msgid "declaration of '%#D' shadows a parameter" msgstr "deklaration av \"%s\" döljer en parameter" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 #, fuzzy msgid "declaration of '%D' shadows a member of 'this'" msgstr "deklaration av \"%s\" döljer en parameter" # local, det kan troligen vara både lokal variabel och lokal funktion?? -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 #, fuzzy msgid "declaration of '%D' shadows a previous local" msgstr "deklaration av \"%s\" döljer en tidigare lokal" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 #, fuzzy msgid "declaration of '%D' shadows a global declaration" msgstr "deklaration av \"%s\" döljer en parameter" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr "" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr "" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 msgid "name lookup of `%D' changed for new ISO `for' scoping" msgstr "" -#: cp/name-lookup.c:1176 +#: cp/name-lookup.c:1187 msgid " cannot use obsolete binding at `%D' because it has a destructor" msgstr "" -#: cp/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr "" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, fuzzy, c-format msgid "%s %s %p %d\n" msgstr "%s: %s: " -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 #, fuzzy msgid "`%#D' hides constructor for `%#T'" msgstr "destruerare behövs för \"%#D\"" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 #, fuzzy msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "sektion \"%s\" står i konflikt med tidigare deklaration" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 #, fuzzy msgid "previous non-function declaration `%#D'" msgstr "tidigare deklaration av \"%s\"" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 #, 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:2101 +#: cp/name-lookup.c:2112 msgid "a using-declaration cannot specify a template-id. Try `using %D'" msgstr "" -#: cp/name-lookup.c:2107 +#: cp/name-lookup.c:2118 #, 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 #, 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/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 msgid "using declaration `%D' introduced ambiguous type `%T'" msgstr "" #. Definition isn't the kind we were looking for. -#: cp/name-lookup.c:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:2898 +#: cp/name-lookup.c:2909 #, fuzzy msgid "using-declaration cannot name destructor" msgstr "multiple deklaration av metod \"%s\"" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 #, 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:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 #, fuzzy msgid "unknown namespace `%D'" msgstr "okänt #pragma namespace %s" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 #, fuzzy msgid "namespace `%T' undeclared" msgstr "parameter \"%s\" deklarerad som void" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" msgstr "" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 #, fuzzy msgid "`%D' attribute directive ignored" msgstr "attributet \"%s\" ignorerat" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 #, fuzzy msgid "use of `%D' is ambiguous" msgstr "%s: flaggan \"%s\" är tvetydig\n" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr "" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 #, fuzzy msgid "%J first type here" msgstr " från här" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 #, 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 #, fuzzy msgid "invalid use of `%D'" msgstr "ogiltigt användande av \"restrict\"" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 #, fuzzy msgid "`%D::%D' is not a template" msgstr "användning ab `%s' i mall" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 #, fuzzy msgid "`%D' is not a function," msgstr "\"%s\" är vanligtvis en funktion" -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 #, fuzzy msgid " conflict with `%D'" msgstr "\"%s\" ignorerad, i konflikt med \"-g%s\"" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -16346,102 +16347,106 @@ msgstr "\"%s\" odeklarerad (f msgid "typedef-name `%D' used as destructor declarator" msgstr "deklaration av \"%s\" döljer global deklaration" -#: cp/parser.c:3635 +#: cp/parser.c:3638 #, fuzzy msgid "ISO C++ forbids compound-literals" msgstr "ISO C++ förbjuder beräknade goto" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:4619 +#: cp/parser.c:4624 msgid "expression in new-declarator must have integral or enumeration type" msgstr "" -#: cp/parser.c:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "användning av gammaldags typkonvertering" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, fuzzy, c-format msgid "case label `%E' not within a switch statement" msgstr "case-etikett är inte i en switch-sats" -#: cp/parser.c:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "ISO C++ förbjuder beräknade goto" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:6640 +#: cp/parser.c:6645 #, fuzzy msgid "duplicate `friend'" msgstr "flera \"%s\"" -#: cp/parser.c:6789 +#: cp/parser.c:6794 #, fuzzy msgid "class definition may not be declared a friend" msgstr "funktion \"%s\" kan inte deklareras som \"mutable\"" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "" -#: cp/parser.c:7155 +#: cp/parser.c:7160 msgid "anachronistic old-style base class initializer" msgstr "" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 #, 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:7908 +#: cp/parser.c:7923 #, fuzzy msgid "`<::' cannot begin a template-argument list" msgstr "ogiltigt typargument" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 #, fuzzy msgid "non-template `%D' used as template" msgstr "deklaration av \"%s\" döljer global deklaration" -#: cp/parser.c:8089 -msgid "(use `%T::template %D' to indicate that it is a template)" +#: cp/parser.c:8107 +msgid "use `%T::template %D' to indicate that it is a template" msgstr "" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "" -#: cp/parser.c:9148 +#: cp/parser.c:9180 msgid "expected type-name" msgstr "" -#: cp/parser.c:9207 +#: cp/parser.c:9239 #, fuzzy msgid "type attributes are honored only at type definition" msgstr "attributet \"%s\" fungerar bara på funktioner" @@ -16449,83 +16454,88 @@ msgstr "attributet \"%s\" fungerar bara p #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 #, fuzzy msgid "a template-id may not appear in a using-declaration" msgstr "\"%s\" är inte i början av deklarationen" -#: cp/parser.c:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:9919 +#: cp/parser.c:9951 #, fuzzy msgid "attributes are not allowed on a function-definition" msgstr "attributet \"%s\" fungerar bara på funktioner" -#: cp/parser.c:10052 +#: cp/parser.c:10084 msgid "attributes after parenthesized initializer ignored" msgstr "" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +#, fuzzy +msgid "`%T::%D' is not a type" +msgstr "användning ab `%s' i mall" + +#: cp/parser.c:11288 #, fuzzy msgid "file ends in default argument" msgstr "ogiltigt typargument till \"%s\"" -#: cp/parser.c:11310 +#: cp/parser.c:11344 msgid "deprecated use of default argument for parameter of non-function" msgstr "" -#: cp/parser.c:11313 +#: cp/parser.c:11347 #, fuzzy msgid "default arguments are only permitted for function parameters" msgstr "metoder kan inte konverteras till funktionspekare" -#: cp/parser.c:12043 +#: cp/parser.c:12078 #, fuzzy msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "deklaration av \"%s\" som ett fält med funktioner" -#: cp/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "" -#: cp/parser.c:12067 +#: cp/parser.c:12102 #, fuzzy msgid "an explicit specialization must be preceded by 'template <>'" msgstr "implicit deklaration av funktion \"%s\"" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:12399 +#: cp/parser.c:12434 #, fuzzy msgid "friend declaration does not name a class or function" msgstr "inbyggd funktion \"%s\" deklarerad som icke-funktion" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" msgstr "" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" msgstr "" -#: cp/parser.c:13665 +#: cp/parser.c:13700 #, fuzzy msgid "reference to `%D' is ambiguous" msgstr "%s: flaggan \"%s\" är tvetydig\n" -#: cp/parser.c:13839 +#: cp/parser.c:13874 #, fuzzy msgid "too few template-parameter-lists" msgstr "två eller fler datatyper i deklaration av \"%s\"" @@ -16534,48 +16544,48 @@ msgstr "tv #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 #, 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:14146 +#: cp/parser.c:14185 #, fuzzy msgid "invalid function declaration" msgstr "ogiltig #indent" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 #, fuzzy msgid "named return values are no longer supported" msgstr "--driver stödjs inte längre" -#: cp/parser.c:14522 +#: cp/parser.c:14561 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 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "" -#: cp/parser.c:14535 +#: cp/parser.c:14574 msgid "missing `>' to terminate the template argument list" msgstr "" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "" -#: cp/parser.c:15043 +#: cp/parser.c:15082 #, fuzzy msgid "%D redeclared with different access" msgstr "\"%s\" omdeklarerad som en annan sorts symbol" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -16945,161 +16955,161 @@ msgstr "Sl msgid "%s %+#T" msgstr "%s: %s" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 #, fuzzy msgid "instantiation of `%D' as type `%T'" msgstr "%s: Vid instansiering av \"%s\":\n" -#: cp/pt.c:6469 +#: cp/pt.c:6470 #, fuzzy msgid "invalid parameter type `%T'" msgstr "ogiltigt parametervärde \"%s\"" -#: cp/pt.c:6471 +#: cp/pt.c:6472 #, fuzzy msgid "in declaration `%D'" msgstr "omdeklaration av \"%s\"" -#: cp/pt.c:6545 +#: cp/pt.c:6546 msgid "creating pointer to member function of non-class type `%T'" msgstr "" -#: cp/pt.c:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "skapar ett fält med storlek noll" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, fuzzy, c-format msgid "creating array with size zero (`%E')" msgstr "skapar ett fält med storlek noll" -#: cp/pt.c:6937 +#: cp/pt.c:6938 #, fuzzy msgid "forming reference to void" msgstr "returnerar referens till en temporär" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "" -#: cp/pt.c:6976 +#: cp/pt.c:6977 msgid "creating pointer to member of non-class type `%T'" msgstr "" -#: cp/pt.c:6982 +#: cp/pt.c:6983 msgid "creating pointer to member reference type `%T'" msgstr "" -#: cp/pt.c:7068 +#: cp/pt.c:7069 #, fuzzy msgid "creating array of `%T'" msgstr "skapar ett fält med storlek noll" -#: cp/pt.c:7074 +#: cp/pt.c:7075 msgid "creating array of `%T', which is an abstract class type" msgstr "" -#: cp/pt.c:7118 +#: cp/pt.c:7119 msgid "`%T' is not a class, struct, or union type" msgstr "" -#: cp/pt.c:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "användning ab `%s' i mall" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr "" -#: cp/pt.c:8609 +#: cp/pt.c:8613 msgid "`%T' uses anonymous type" msgstr "" -#: cp/pt.c:8611 +#: cp/pt.c:8615 #, fuzzy msgid "`%T' uses local type `%T'" msgstr "\"%s\" svarar inte på \"%s\"" -#: cp/pt.c:8619 +#: cp/pt.c:8623 #, fuzzy msgid "`%T' is a variably modified type" msgstr "\"%s\" har en inkomplett typ" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, fuzzy, c-format msgid "integral expression `%E' is not constant" msgstr "lagringsstorlek på \"%s\" är inte konstant" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr "" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "inkomplett typunifiering" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "" -#: cp/pt.c:10551 +#: cp/pt.c:10568 #, fuzzy msgid "explicit instantiation of `%#D'" msgstr "%s: Vid instansiering av \"%s\":\n" -#: cp/pt.c:10588 +#: cp/pt.c:10605 #, fuzzy msgid "duplicate explicit instantiation of `%#D'" msgstr "dubbel deklaration av etikett \"%s\"" -#: cp/pt.c:10610 +#: cp/pt.c:10627 msgid "ISO C++ forbids the use of `extern' on explicit instantiations" msgstr "" -#: cp/pt.c:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 #, fuzzy msgid "storage class `%D' applied to template instantiation" msgstr "Slå på automatisk mallinstansiering" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" msgstr "" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, c-format msgid "ISO C++ forbids the use of `%s' on explicit instantiations" msgstr "" -#: cp/pt.c:10728 +#: cp/pt.c:10745 #, fuzzy msgid "duplicate explicit instantiation of `%#T'" msgstr "dubbel deklaration av etikett \"%s\"" -#: cp/pt.c:11109 +#: cp/pt.c:11126 msgid "explicit instantiation of `%D' but no definition available" msgstr "" -#: cp/pt.c:11543 +#: cp/pt.c:11562 msgid "`%#T' is not a valid type for a template constant parameter" msgstr "" @@ -17282,7 +17292,7 @@ msgstr "flera lagringsklasser i deklaration av \"%s\"" msgid "incomplete type `%T' used in nested name specifier" msgstr "" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 #, fuzzy msgid "`%D' is not a member of `%T'" msgstr "%s har ingen medlem med namn \"%s\"" @@ -17329,251 +17339,251 @@ msgstr "\"%s\" msgid "type of `%E' is unknown" msgstr "Register '%c' är okänt" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "icke-lvalue i %s" -#: cp/tree.c:539 +#: cp/tree.c:532 #, fuzzy msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "\"%s\" svarar inte på \"%s\"" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, fuzzy, c-format msgid "`%s' attribute can only be applied to Java class definitions" msgstr "attributet \"%s\" fungerar bara på funktioner" -#: cp/tree.c:1857 +#: cp/tree.c:1850 #, fuzzy, c-format msgid "`%s' attribute can only be applied to class definitions" msgstr "attributet \"%s\" fungerar bara på funktioner" -#: cp/tree.c:1863 +#: cp/tree.c:1856 #, c-format msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default" msgstr "" -#: cp/tree.c:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, c-format msgid "can only use `%s' attribute on file-scope definitions of objects of class type" msgstr "" -#: cp/tree.c:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "" -#: cp/tree.c:1926 +#: cp/tree.c:1919 msgid "requested init_priority is reserved for internal use" msgstr "" -#: cp/tree.c:1936 +#: cp/tree.c:1929 #, 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:2531 +#: cp/tree.c:2524 #, c-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "" -#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 msgid "%s between distinct pointer types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:513 +#: cp/typeck.c:512 #, c-format msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function" msgstr "" -#: cp/typeck.c:563 +#: cp/typeck.c:562 msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast" msgstr "" -#: cp/typeck.c:1235 +#: cp/typeck.c:1234 #, fuzzy, c-format msgid "invalid application of `%s' to a member function" msgstr "destruerare kan inte vara en statisk medlemsfunktion" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, fuzzy, c-format msgid "invalid application of `%s' to a bit-field" msgstr "sizeof applicerat på ett bit-fält" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, 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:1342 +#: cp/typeck.c:1308 #, fuzzy msgid "invalid use of non-static member function" msgstr "destruerare kan inte vara en statisk medlemsfunktion" -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 msgid "request for member `%D' in `%E', which is of non-class type `%T'" msgstr "" -#: cp/typeck.c:1610 +#: cp/typeck.c:1633 #, fuzzy, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "ogiltigt användande av \"restrict\"" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 #, fuzzy msgid "invalid access to non-static data member `%D' of NULL object" msgstr "ogiltigt användande av \"restrict\"" -#: cp/typeck.c:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 #, fuzzy msgid "`%D::%D' is not a member of `%T'" msgstr "%s har ingen medlem med namn \"%s\"" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 #, fuzzy msgid "`%T' is not a base of `%T'" msgstr "%s har ingen medlem med namn \"%s\"" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 #, fuzzy msgid "'%D' has no member named '%E'" msgstr "%s har ingen medlem med namn \"%s\"" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 #, 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:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "ogiltigt typargument" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, fuzzy, c-format msgid "object missing in use of `%E'" msgstr "fältstorlek saknas i \"%s\"" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 msgid "ISO C++ forbids calling `::main' from within program" msgstr "ISO C++ förbjuder anrop av \"::main\" inifrån programmet" -#: cp/typeck.c:2433 +#: cp/typeck.c:2456 #, c-format msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'" msgstr "" -#: cp/typeck.c:2446 +#: cp/typeck.c:2469 #, fuzzy, c-format msgid "`%E' cannot be used as a function" msgstr "fält \"%s\" deklarerad som en funktion" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 #, fuzzy msgid "too many arguments to %s `%+#D'" msgstr "för många argument till funktionen \"%s\"" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 #, fuzzy msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "parameter \"%s\" har en inkomplett typ" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 #, fuzzy msgid "parameter %P has incomplete type `%T'" msgstr "parameter har en inkomplett typ" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 #, fuzzy msgid "too few arguments to %s `%+#D'" msgstr "för få argument till funktionen \"%s\"" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 msgid "assuming cast to type `%T' from overloaded function" msgstr "" -#: cp/typeck.c:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, c-format msgid "division by zero in `%E %% 0'" msgstr "" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 msgid "ISO C++ forbids comparison between pointer and integer" msgstr "ISO C++ förbjuder jämförelse mellan pekare och heltal" -#: cp/typeck.c:3295 +#: cp/typeck.c:3318 #, fuzzy msgid "comparison between types `%#T' and `%#T'" msgstr "jämförelse mellan pekare och heltal" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 msgid "comparison between signed and unsigned integer expressions" msgstr "" -#: cp/typeck.c:3396 +#: cp/typeck.c:3419 #, fuzzy msgid "invalid operands of types `%T' and `%T' to binary `%O'" msgstr "ogiltiga operander till binär %s" @@ -17582,301 +17592,301 @@ msgstr "ogiltiga operander till bin #. 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:3418 +#: cp/typeck.c:3441 #, fuzzy msgid "NULL used in arithmetic" msgstr "pekare till funktion använd med aritmetik" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 msgid "ISO C++ forbids using pointer of type `void *' in subtraction" msgstr "" -#: cp/typeck.c:3483 +#: cp/typeck.c:3506 msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "" -#: cp/typeck.c:3485 +#: cp/typeck.c:3508 msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "" -#: cp/typeck.c:3497 +#: cp/typeck.c:3520 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "" -#: cp/typeck.c:3553 +#: cp/typeck.c:3582 #, c-format msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id." msgstr "" -#: cp/typeck.c:3559 +#: cp/typeck.c:3588 #, c-format msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "tar adress till något temporärt" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 #, fuzzy msgid "cannot %s a pointer to incomplete type `%T'" msgstr "parameter \"%s\" pekar på inkomplett typ" -#: cp/typeck.c:3833 +#: cp/typeck.c:3862 #, 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:3858 +#: cp/typeck.c:3887 msgid "cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:3892 +#: cp/typeck.c:3921 msgid "invalid use of `--' on bool variable `%D'" msgstr "" #. ARM $3.4 -#: cp/typeck.c:3923 +#: cp/typeck.c:3952 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:3994 +#: cp/typeck.c:4027 #, 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:3999 +#: cp/typeck.c:4032 #, 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:4027 +#: cp/typeck.c:4060 msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression" msgstr "" -#: cp/typeck.c:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "unärt \"&\"" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 #, fuzzy msgid "attempt to take address of bit-field structure member `%D'" msgstr "kan inte ta adressen till bitfält \"%s\"" -#: cp/typeck.c:4190 +#: cp/typeck.c:4227 #, fuzzy msgid "taking address of destructor" msgstr "tar adress till något temporärt" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 msgid "taking address of bound pointer-to-member expression" msgstr "" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 #, fuzzy msgid "cannot create pointer to reference member `%D'" msgstr "kan inte deklarera pekare till referenser" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 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:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "" -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, fuzzy, c-format msgid "%s expression list treated as compound expression" msgstr "uttryckssats har inkomplett typ" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "" -#: cp/typeck.c:4626 +#: cp/typeck.c:4674 msgid "invalid static_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4666 +#: cp/typeck.c:4714 msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4686 +#: cp/typeck.c:4734 msgid "reinterpret_cast from `%T' to `%T' loses precision" msgstr "" -#: cp/typeck.c:4705 +#: cp/typeck.c:4753 msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object" msgstr "" -#: cp/typeck.c:4711 +#: cp/typeck.c:4759 msgid "invalid reinterpret_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type" msgstr "" -#: cp/typeck.c:4765 +#: cp/typeck.c:4813 msgid "invalid const_cast of an rvalue of type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4782 +#: cp/typeck.c:4830 msgid "invalid const_cast from type `%T' to type `%T'" msgstr "" -#: cp/typeck.c:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 #, fuzzy msgid "ISO C++ forbids casting to an array type `%T'" msgstr "ISO C förbjuder typkonvertering till unionstyper" -#: cp/typeck.c:4835 +#: cp/typeck.c:4883 #, fuzzy msgid "invalid cast to function type `%T'" msgstr "ogiltig lagringsklass för funktion \"%s\"" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 msgid "cast from `%T' to `%T' discards qualifiers from pointer target type" msgstr "" -#: cp/typeck.c:4937 +#: cp/typeck.c:4985 msgid "cast from `%T' to `%T' increases required alignment of target type" msgstr "" -#: cp/typeck.c:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr "" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 msgid "ISO C++ forbids cast to non-reference type used as lvalue" msgstr "" -#: cp/typeck.c:5219 +#: cp/typeck.c:5267 #, fuzzy msgid "incompatible types in assignment of `%T' to `%T'" msgstr "inkompatibla typer i %s" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "ISO C++ förbjuder tilldelning av fält" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr "" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 msgid " in pointer to member conversion" msgstr "" #. This is a reinterpret cast, we choose to do nothing. -#: cp/typeck.c:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 #, fuzzy msgid "pointer to member cast via virtual base `%T'" msgstr "pekare till en medlemsfunktion använd med aritmetik" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 #, fuzzy msgid "pointer to member conversion via virtual base `%T'" msgstr "pekare till medlemsfunktion använd med aritmetik" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 #, fuzzy msgid "invalid conversion to type `%T' from type `%T'" msgstr "ogiltig mottagartyp \"%s\"" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 msgid "passing NULL used for non-pointer %s %P of `%D'" msgstr "" -#: cp/typeck.c:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 msgid "passing `%T' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 msgid "passing negative value `%E' for %s %P of `%D'" msgstr "" -#: cp/typeck.c:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'" msgstr "" -#: cp/typeck.c:5706 +#: cp/typeck.c:5754 #, fuzzy msgid "cannot convert `%T' to `%T' in %s" msgstr "kan inte konvertera till en pekartyp" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 #, fuzzy msgid "in passing argument %P of `%+D'" msgstr "Saknar argument till flaggan \"%s\"" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "returnerar referens till en temporär" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 #, fuzzy msgid "reference to local variable `%D' returned" msgstr "adress på global registervariabel \"%s\" efterfrågad" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 #, fuzzy msgid "address of local variable `%D' returned" msgstr "adress på global registervariabel \"%s\" efterfrågad" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 #, fuzzy msgid "return-statement with no value, in function returning '%T'" msgstr "\"return\" med värde i funktion som returnerar void" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 #, fuzzy msgid "return-statement with a value, in function returning 'void'" msgstr "\"return\" med värde i funktion som returnerar void" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)" msgstr "" @@ -19534,12 +19544,12 @@ msgstr "" msgid "field initializer type mismatch" msgstr "fältinitierare är ej konstant" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, fuzzy, c-format msgid "can't create directory %s: %m" msgstr "kan inte skapa katalog %s" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, fuzzy, c-format msgid "can't create %s: %m" msgstr "kan inte stänga %s" @@ -19618,228 +19628,291 @@ msgstr "kan inte st msgid "internal error - invalid Utf8 name" msgstr "internt fel - ogiltigt Utf8-namn" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2977 msgid "Constructor invocation must be first thing in a constructor" msgstr "" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr "" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" @@ -19848,32 +19921,32 @@ msgstr "" "%s.\n" "%s" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "" @@ -19930,8 +20003,8 @@ msgstr "" msgid "cannot find protocol declaration for `%s'" msgstr "ingen tidigare deklaration av \"%s\"" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, fuzzy, c-format msgid "cannot find interface declaration for `%s'" msgstr "Cirkulärt arv i interfacedeklaration för \"%s\"" @@ -19956,8 +20029,8 @@ msgstr "" 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "" @@ -19971,7 +20044,7 @@ msgstr "Kan inte hitta klass \"%s\"" msgid "class `%s' already exists" msgstr "Klass \"%s\" finns redan" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "\"%s\" omdeklarerad som en annan sorts symbol" @@ -20132,1523 +20205,1846 @@ msgstr "" msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "instansvariabel \"%s\" är deklarerad som privat" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, 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 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "instansvariabel \"%s\" är deklarerad som %s" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "statisk access till objekt av typ \"id\"" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "inkomplett implementation av klass \"%s\"" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "inkomplett implementation av kategori \"%s\"" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "metoddefinition för \"%c%s\" kan inte hittas" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, c-format msgid "%s `%s' does not fully implement the `%s' protocol" msgstr "" -#: objc/objc-act.c:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "omimplementation av klass \"%s\"" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "tidigare deklaration av \"%s\"" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 #, fuzzy msgid "%J%s `%c%s'" msgstr "%s: %s" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, c-format msgid "no super class declared in interface for `%s'" msgstr "ingen superklass deklarerad i interface för \"%s\"" -#: objc/objc-act.c:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "[super ...] måste stå i metodkontext" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 #, fuzzy msgid "Display this information" msgstr " --help Visa den här informatationen\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 #, fuzzy msgid "Do not discard comments" msgstr "ej avslutad kommentar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 #, fuzzy msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "" " -G Placera global and statisk data mindre än \n" " bytes i en speciell sektion (vissa arkitekturer)\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 #, fuzzy msgid "Print the name of header files as they are used" msgstr "Kompilering av include-fil begärd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd 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 -#, fuzzy -msgid "Generate make dependencies" -msgstr "dynamiskt beroende.\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 #, fuzzy msgid "Generate make dependencies and compile" msgstr "Generera \"little endian\"-kod." -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78 -#, fuzzy -msgid "Generate phony targets for all headers" -msgstr "Generera kod för Intel as" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 #, fuzzy msgid "-O\tSet optimization level to " msgstr " -O[nummer] Sätt optimeringsnivå till [nummer]\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 #, fuzzy msgid "Optimize for space rather than speed" msgstr " -Os Optimera för storlek istället för hastighet\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 #, fuzzy msgid "Do not generate #line directives" msgstr "Generera inte .size-direktiv" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 #, fuzzy msgid "Warn about subscripts whose type is \"char\"" msgstr "Varna om index har typen \"char\"" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 #, fuzzy msgid "Warn when all constructors and destructors are private" msgstr "Varna när ett funktionsargument är en struktur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 #, fuzzy msgid "Warn when a declaration is found after a statement" msgstr "Varna när en funktion är oanvänd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -msgid "Warn about deprecated compiler features" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 #, fuzzy msgid "Warn about compile-time integer division by zero" msgstr "Fånga heltalsdivision med noll" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 #, fuzzy msgid "Make implicit function declarations an error" msgstr "motstridande deklarationer av \"%s\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 msgid "Warn if testing floating point numbers for equality" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 #, 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\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 msgid "Warn about format strings that are not literals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 msgid "Warn about strftime formats yielding 2-digit years" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 -msgid "Warn about implicit function declarations" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +msgid "Enable warnings about inter-procedural problems" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 -msgid "Warn when a declaration does not specify a type" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 +msgid "Warn about implicit function declarations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:198 -msgid "Deprecated. This switch has no effect." +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 +msgid "Warn when a declaration does not specify a type" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:201 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 #, fuzzy msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr " -Wlarger-than- Varna om objekt är större än bytes\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 #, fuzzy msgid "Warn about suspicious declarations of \"main\"" msgstr "Varna om tveksamma deklarationer av main" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 #, fuzzy msgid "Warn about possibly missing braces around initializers" msgstr "Varna om eventuellt saknade parenteser" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 #, fuzzy msgid "Warn about global functions without previous declarations" msgstr "sektion \"%s\" står i konflikt med tidigare deklaration" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 msgid "Warn about functions which might be candidates for format attributes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 #, fuzzy msgid "Warn about global functions without prototypes" msgstr "Varna om aritmetik med funktionspekare" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 #, fuzzy msgid "Warn about use of multi-character character constants" msgstr "flerteckens teckenkonstant" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 #, fuzzy msgid "Warn about \"extern\" declarations not at file scope" msgstr "Varna om multipla deklarationer av samma objekt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 msgid "Warn when non-templatized friend functions are declared within a template" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 msgid "Warn about non-virtual destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 msgid "Warn if a C-style cast is used in a program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 #, fuzzy msgid "Warn if an old-style parameter definition is used" msgstr "Varna när en funktionsparameter är oanvänd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 #, fuzzy msgid "Warn when padding is required to align structure members" msgstr "Varna när ett funktionsargument är en struktur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 #, fuzzy msgid "Warn about possibly missing parentheses" msgstr "Varna om eventuellt saknade parenteser" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 msgid "Warn when converting the type of pointers to member functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "Varna om aritmetik med funktionspekare" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 #, fuzzy msgid "Warn if inherited methods are unimplemented" msgstr "Varna om nästlade kommentarer upptäcks" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "Varna om multipla deklarationer av samma objekt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 #, fuzzy msgid "Warn about signed-unsigned comparisons" msgstr "Varna om jämförelser mellan signed/unsigned" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 #, fuzzy msgid "Warn about code which might break strict aliasing rules" msgstr "Varna om funktioner som är möjliga kandidater för attributet noreturn" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 #, fuzzy msgid "Warn about unprototyped function declarations" msgstr "Varna om tveksamma deklarationer av main" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 msgid "Warn about enumerated switches, with no default, missing a case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 msgid "Warn about all enumerated switches missing a specific case" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 msgid "Warn about features not present in traditional C" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 msgid "Warn if an undefined macro is used in an #if directive" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 #, fuzzy msgid "Warn about uninitialized automatic variables" msgstr "Varna om aritmetik med funktionspekare" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "Varna när en funktion är oanvänd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "Varna när en etikett är oanvänd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "Varna när en funktionsparameter är oanvänd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "Varna när ett uttrycksvärde är oanvänt" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "Varna när en variabel är oanvänd" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 #, fuzzy msgid "-aux-info \tEmit declaration information into " msgstr " -aux-info Generera deklarationsinfo till fil \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 #, fuzzy msgid "-d\tEnable dumps from specific passes of the compiler" msgstr " -d[bokstäver] Slå på dumpning från angivna delar av kompilatorn\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 msgid "Enforce class member access control semantics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 msgid "Specify that arguments may alias each other and globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 msgid "Assume arguments may alias globals but not each other" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 msgid "Assume arguments alias neither each other nor globals" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 msgid "Recognize the \"asm\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 #, fuzzy msgid "Generate code to check bounds before indexing arrays" msgstr "Generera kod för Intel as" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 msgid "Replace add, compare, branch with branch on count register" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 #, fuzzy msgid "Recognize built-in functions" msgstr "Känn inte igen några inbyggda funktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 #, fuzzy msgid "-fcall-saved-\tMark as being preserved across functions" msgstr " -fcall-saved- Ange att bevaras av funktioner\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 #, fuzzy msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr " -fcall-used- Ange att förstörs av funktionsanrop\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 msgid "Save registers around function calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +msgid "Preserve case used in program" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 msgid "Check the return value of new" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 msgid "Do not put uninitialized globals in the common section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 msgid "Reduce the size of object files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 #, fuzzy msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "Markera strängar som \"const char *\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 #, fuzzy msgid "Perform a register copy-propagation optimization pass" msgstr "Utför optimering för svansrekursion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 #, fuzzy msgid "Perform cross-jumping optimization" msgstr "Utför optimering för svansrekursion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 #, fuzzy msgid "Place data items into their own section" msgstr "placera varje funktion i sin egen sektion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 #, fuzzy msgid "Inline member functions by default" msgstr "I funktion `%s':" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 #, 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] Anger hur ofta källkodspositioner skall skrivas ut, som prefix, i början av utskrift vid radbrytning\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 -msgid "Permit '$' as an identifier character" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +msgid "Allow '$' in symbol names" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 +msgid "Permit '$' as an identifier character" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 msgid "Suppress output of instruction numbers and line number notes in debugging dumps" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 #, fuzzy msgid "Perform DWARF2 duplicate elimination" msgstr "Utför optimering för svansrekursion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 #, fuzzy msgid "Generate code to check exception specifications" msgstr "\"%s\" är deklarerad som en funktion som returnerar en funktion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 #, fuzzy msgid "Perform a number of minor, expensive optimizations" msgstr "Utför optimering för svansrekursion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +msgid "f2c-compatible code can be generated" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +msgid "Unsupported; generate libf2c-calling code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +msgid "Program is written in typical Unix-f77 dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 #, fuzzy msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr " -ffixed- Markera som ej tillgängligt för kompilatorn\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +#, fuzzy +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr " -finline-limit= Begränsa storlek på inline-funktioner till \n" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +msgid "Unsupported; affects code generation of arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 msgid "Scope of for-init-statement variables is local to the loop" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 msgid "Copy memory address constants into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 msgid "Copy memory operands into registers before use" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 #, fuzzy msgid "Place each function into its own section" msgstr "placera varje funktion i sin egen sektion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 msgid "Perform global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 msgid "Perform redundant load after store elimination in global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 msgid "Perform store motion after global common subexpression elimination" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 msgid "Recognize GNU-defined keywords" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 msgid "Enable guessing of branch probabilities" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "Hantera #ident-direktiv" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 #, fuzzy msgid "Perform conversion of conditional jumps to conditional execution" msgstr "Föredra hopp framför villkorlig körning" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 #, fuzzy msgid "Emit implicit instantiations of inline templates" msgstr "%s: Vid instansiering av \"%s\":\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 #, fuzzy msgid "Emit implicit instantiations of templates" msgstr "%s: Vid instansiering av \"%s\":\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr "Generera inte .size-direktiv" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 -msgid "Pay attention to the \"inline\" keyword" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 +msgid "Pay attention to the \"inline\" keyword" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 #, fuzzy msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr " -finline-limit= Begränsa storlek på inline-funktioner till \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 msgid "Instrument function entry and exit with profiling calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +msgid "Intrinsics in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 msgid "Generate code for functions even if they are fully inlined" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 #, fuzzy msgid "Give external symbols a leading underscore" msgstr "Externa symboler startar med en understrykning" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 #, fuzzy msgid "Perform loop optimizations" msgstr "Utför optimering för svansrekursion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +msgid "Language keywords in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "Sätt errno efter inbyggda matematikfunktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 msgid "Report on permanent memory allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 msgid "Attempt to merge identical constants and constant variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 #, fuzzy msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr " -fmessage-length= Begränsa felmeddelandens längd till tecken per rad. 0 stänger av radbrytning\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 msgid "Force all loop invariant computations out of loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 #, fuzzy msgid "Don't warn about uses of Microsoft extensions" msgstr "Varna inte om för många argument till format-funktioner" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 msgid "Use graph-coloring register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 msgid "Do the full register move optimization pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +msgid "Enable optimization of static class initialization code" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 msgid "Enable optional diagnostics" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 msgid "Return small aggregates in memory, not registers" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +msgid "Warn about use of (only a few for now) Fortran extensions" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 msgid "Perform loop peeling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 msgid "Enable an RTL peephole pass before sched2" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 #, fuzzy msgid "Generate position-independent code if possible" msgstr "decimalpunkt i exponent - omöjligt!" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 msgid "Generate position-independent code for executables if possible" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 msgid "Insert arc-based program profiling code" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 msgid "Strength reduce all loop general induction variables" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 #, fuzzy msgid "Return small aggregates in registers" msgstr "Skicka argument i register" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 #, fuzzy msgid "Perform a register renaming optimization pass" msgstr "Utför optimering för svansrekursion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "Slå på automatisk mallinstansiering" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 msgid "Generate run time type descriptor information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +msgid "Allow appending a second underscore to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 msgid "Use the same size for double as for float" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 msgid "Make \"char\" signed by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +msgid "Do not print names of program units as they are compiled" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 #, fuzzy msgid "Convert floating point constants to single precision constants" msgstr "Använd flyttalsinstruktioner i hårdvara" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +msgid "Internally convert most source to lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 #, fuzzy msgid "Perform strength reduction optimizations" msgstr "Utför optimering för svansrekursion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "Leta efter syntaxfel, stoppa sedan" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 #, fuzzy msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "Ange maximalt instansieringsdjup för mallar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 msgid "Create data files needed by \"gcov\"" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 #, fuzzy msgid "Perform jump threading optimizations" msgstr "Utför optimering för svansrekursion" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 msgid "Report the time taken by each compiler pass" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 msgid "Assume floating-point operations can trap" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +msgid "Allow all ugly features" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +msgid "Hollerith and typeless can be passed as arguments" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +msgid "Append underscores to externals" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 msgid "Compile whole compilation unit at a time" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +msgid "Enable libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 msgid "Make \"char\" unsigned by default" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 msgid "Perform loop unswitching" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +msgid "Print g77-specific version information and run internal tests" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 msgid "Use expression value profiles in optimizations" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +#, fuzzy +msgid "Print internal debugging-related information" +msgstr "inte tillräcklig typinformation" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +msgid "Treat initial values of 0 like non-zero values" +msgstr "" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 #, fuzzy msgid "Generate debug information in default format" msgstr "Generera kod för \"big endian\"" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 msgid "Generate debug information in COFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 msgid "Generate debug information in DWARF v2 format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 msgid "Dump declarations to a .decl file" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 msgid "Generate debug information in default extended format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 #, fuzzy msgid "Generate debug information in STABS format" msgstr "Generera kod för en DLL" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 msgid "Generate debug information in extended STABS format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 #, fuzzy msgid "Generate debug information in VMS format" msgstr "Generera kod för en DLL" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 msgid "Generate debug information in XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 msgid "Generate debug information in extended XCOFF format" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 #, fuzzy msgid "-o \tPlace output into " msgstr " -o Skriv utdata i \n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 #, fuzzy msgid "Enable function profiling" msgstr " -p Slå på funktionsprofilering\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 #, 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 msgid "Generate C header of platform-specific features" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 #, fuzzy msgid "Do not display functions compiled or elapsed time" msgstr " -quiet Visa inte kompilerade funktioner eller tiden som förbrukats\n" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 #, fuzzy msgid "Remap file names when including files" msgstr "tomt filnamn i #%s" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 msgid "Enable traditional preprocessing" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 msgid "Enable verbose output" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -#, fuzzy -msgid "Display the compiler's version" -msgstr " -version Visa kompilatorns version\n" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 #, fuzzy msgid "Suppress warnings" msgstr "%s: varning: " -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "\"-p\" stödjs inte; använd \"-pg\" och gprof(1)" @@ -21662,7 +22058,7 @@ msgstr "GNU C st msgid "GCC does not support -CC without using -E" msgstr "GNU C stödjer inte -C utan -E" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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 @@ -22447,6 +22843,9 @@ msgstr "mno-cygwin och mno-win32 #~ 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" @@ -22902,10 +23301,6 @@ msgstr "mno-cygwin och mno-win32 #~ msgstr "\"sizeof\" applicerat på ett bitfält" #, fuzzy -#~ msgid "`sizeof' applied to incomplete type `%T'" -#~ msgstr "sizeof applicerat på en inkomplett typ" - -#, fuzzy #~ msgid "invalid use of type decl `%#D' as expression" #~ msgstr "ogiltig användning av void-uttryck" diff --git a/gcc/po/tr.po b/gcc/po/tr.po index 56a4698a830..1df5706eece 100644 --- a/gcc/po/tr.po +++ b/gcc/po/tr.po @@ -1,14 +1,13 @@ -# # Turkish translations for gcc messages. # Copyright (C) 2004 Free Software Foundation, Inc. # Nilgün Belma Bugüner , 2001, ...,2004. # msgid "" msgstr "" -"Project-Id-Version: gcc 3.4.0\n" +"Project-Id-Version: gcc 3.4.2\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2004-04-18 18:00-0700\n" -"PO-Revision-Date: 2004-05-21 11:55+0300\n" +"POT-Creation-Date: 2004-07-01 11:41-0700\n" +"PO-Revision-Date: 2004-09-14 17:59+0300\n" "Last-Translator: Nilgün Belma Bugüner \n" "Language-Team: Turkish \n" "MIME-Version: 1.0\n" @@ -36,15 +35,15 @@ msgstr "`%s' özelliği veri türlerine uygulanmaz" msgid "`%s' attribute only applies to function types" msgstr "`%s' özelliği sadece işlev türlere uygulanır" -#: 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 +#: attribs.c:416 c-common.c:4307 c-common.c:4326 c-common.c:4344 +#: c-common.c:4371 c-common.c:4390 c-common.c:4413 c-common.c:4436 +#: c-common.c:4462 c-common.c:4496 c-common.c:4540 c-common.c:4568 +#: c-common.c:4596 c-common.c:4615 c-common.c:4870 c-common.c:4892 +#: c-common.c:4927 c-common.c:4994 c-common.c:5040 c-common.c:5098 +#: c-common.c:5129 c-common.c:5475 c-common.c:5498 c-common.c:5537 #: 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/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1620 +#: config/i386/i386.c:15397 config/i386/winnt.c:86 config/ia64/ia64.c:1057 #: config/ip2k/ip2k.c:3151 #, c-format msgid "`%s' attribute ignored" @@ -119,9 +118,9 @@ msgstr "(bu durumda `va_arg'a `%s' aktarılmalı, `%s' değil)" #. 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 +#: builtins.c:4134 c-typeck.c:1733 msgid "if this code is reached, the program will abort" -msgstr "" +msgstr "Bu kodun bitiminde uygulama çıkacak" #: builtins.c:4241 msgid "invalid arg to `__builtin_frame_address'" @@ -284,259 +283,258 @@ msgid "invalid application of `%s' to a void type" msgstr "bir void türe geçersiz `%s' uygulaması" #: c-common.c:2951 -#, c-format -msgid "invalid application of `%s' to an incomplete type" -msgstr "bir tamalanmamış türe geçersiz `%s' uygulaması" +msgid "invalid application of `%s' to incomplete type `%T' " +msgstr "`%s' `%T' tamamlanmamış türe uygulanırsa geçersizdir" -#: c-common.c:2991 +#: c-common.c:2992 msgid "`__alignof' applied to a bit-field" msgstr "`__alignof' bir bit-alanına uygulanmış" -#: c-common.c:3483 +#: c-common.c:3484 #, c-format msgid "cannot disable built-in function `%s'" msgstr "`%s' yerleşik işlev olduğundan iptal edilemez" -#: c-common.c:3644 c-typeck.c:1949 +#: c-common.c:3645 c-typeck.c:1974 #, c-format msgid "too few arguments to function `%s'" msgstr "`%s' işlevi için argümanlar çok az" -#: c-common.c:3650 c-typeck.c:1810 +#: c-common.c:3651 c-typeck.c:1835 #, c-format msgid "too many arguments to function `%s'" msgstr "`%s' işlevi için argümanlar çok fazla" -#: c-common.c:3669 +#: c-common.c:3670 #, c-format msgid "non-floating-point argument to function `%s'" msgstr "`%s' işlevine kayan noktalı olmayan argüman" -#: c-common.c:3896 +#: c-common.c:3897 msgid "pointers are not permitted as case values" msgstr "case değeri olarak göstericiler kullanılamaz" -#: c-common.c:3900 +#: c-common.c:3901 msgid "range expressions in switch statements are non-standard" msgstr "switch deyimlerinde aralık ifadeleri standartdışıdır" -#: c-common.c:3929 +#: c-common.c:3930 msgid "empty range specified" msgstr "boş aralık belirtilmiş" -#: c-common.c:3980 +#: c-common.c:3981 msgid "duplicate (or overlapping) case value" msgstr "yinelenmiş (ya da birbirini kapsayan) case değerleri" -#: c-common.c:3981 +#: c-common.c:3982 msgid "%Jthis is the first entry overlapping that value" msgstr "%J bu, aynı değeri kapsayan ilk girdi" -#: c-common.c:3985 +#: c-common.c:3986 msgid "duplicate case value" msgstr "yinelenmiş case değeri" -#: c-common.c:3986 +#: c-common.c:3987 msgid "%Jpreviously used here" msgstr "%J önce burada kullanılmış" -#: c-common.c:3990 +#: c-common.c:3991 msgid "multiple default labels in one switch" msgstr "tek switch'te çok sayıda öntanımlı etiket" -#: c-common.c:3991 +#: c-common.c:3992 msgid "%Jthis is the first default label" msgstr "%J bu, ilk öntanımlı etiket" -#: c-common.c:4016 +#: c-common.c:4017 msgid "taking the address of a label is non-standard" msgstr "bir etiket adresinin alınması standartdışıdır" -#: c-common.c:4062 +#: c-common.c:4063 msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result" msgstr "%H`%D' dönüş değeri yoksayılıyor, warn_unused_result özelliği ile bildirilmiş" -#: c-common.c:4067 +#: c-common.c:4068 msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "%Hwarn_unused_result özelliği ile bildirilen işlevin dönüş değeri yoksayılıyor" -#: c-common.c:4648 +#: c-common.c:4649 #, c-format msgid "unknown machine mode `%s'" msgstr "'%s makina kipi bilinmiyor" -#: c-common.c:4651 +#: c-common.c:4652 #, c-format msgid "no data type for mode `%s'" msgstr "'%s' kipi için bir veri türü yok" -#: c-common.c:4655 +#: c-common.c:4656 #, c-format msgid "invalid pointer mode `%s'" msgstr "gösterici kipi olarak `%s' geçersiz" -#: c-common.c:4662 c-common.c:5225 +#: c-common.c:4663 c-common.c:5226 #, c-format msgid "unable to emulate '%s'" msgstr "'%s' öykünümü yapılamıyor" -#: c-common.c:4706 +#: c-common.c:4707 msgid "%Jsection attribute cannot be specified for local variables" msgstr "%J bölge özelliği yerel değişkenler için belirtilmiş olamaz" -#: c-common.c:4717 +#: c-common.c:4718 msgid "%Jsection of '%D' conflicts with previous declaration" msgstr "%J `%D' bölgesi önceki bildirimle çelişiyor" -#: c-common.c:4726 +#: c-common.c:4727 msgid "%Jsection attribute not allowed for '%D'" msgstr "%J bölge özelliğine `%D' için izin verilmez" -#: c-common.c:4732 +#: c-common.c:4733 msgid "%Jsection attributes are not supported for this target" msgstr "%J bölge özellikleri bu hedef için desteklenmiyor" -#: c-common.c:4770 +#: c-common.c:4771 msgid "requested alignment is not a constant" msgstr "istenen ayarlama bir sabit değil" -#: c-common.c:4775 +#: c-common.c:4776 msgid "requested alignment is not a power of 2" msgstr "istenen ayarlama 2 nin kuvveti değil" -#: c-common.c:4780 +#: c-common.c:4781 msgid "requested alignment is too large" msgstr "istenen ayarlama çok büyük" -#: c-common.c:4806 +#: c-common.c:4807 msgid "%Jalignment may not be specified for '%D'" msgstr "%J hizalama `%D' için belirtilmiş olmayabilir" -#: c-common.c:4844 +#: c-common.c:4845 msgid "%J'%D' defined both normally and as an alias" msgstr "%J `%D' hem normal hem de bir rumuz olarak tanımlanmış" -#: c-common.c:4854 +#: c-common.c:4855 msgid "alias arg not a string" msgstr "rumuz argümanı bir dizge değil" -#: c-common.c:4897 +#: c-common.c:4898 msgid "visibility arg not a string" msgstr "görünürlük argümanı bir dizge değil" -#: c-common.c:4910 +#: c-common.c:4911 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:4936 +#: c-common.c:4937 msgid "tls_model arg not a string" msgstr "tls_model argümanı bir dizge değil" -#: c-common.c:4945 +#: c-common.c:4946 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:4967 c-common.c:5013 +#: c-common.c:4968 c-common.c:5014 msgid "%J'%E' attribute applies only to functions" msgstr "%J `%E' özelliği sadece işlevlere uygulanır" -#: c-common.c:4972 c-common.c:5018 +#: c-common.c:4973 c-common.c:5019 msgid "%Jcan't set '%E' attribute after definition" msgstr "%J `%E' özelliğine tanımlandıktan sonra değer atanamaz" -#: c-common.c:5094 +#: c-common.c:5095 #, c-format msgid "`%s' attribute ignored for `%s'" msgstr "`%s' özelliği `%s' için yoksayıldı" -#: c-common.c:5157 +#: c-common.c:5158 #, c-format msgid "invalid vector type for attribute `%s'" msgstr "`%s' özelliği vektör tür geçersiz" -#: c-common.c:5181 c-common.c:5213 +#: c-common.c:5182 c-common.c:5214 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:5315 +#: c-common.c:5316 msgid "nonnull attribute without arguments on a non-prototype" msgstr "bir prototip olmayanda argümansız null olmayan özellik" -#: c-common.c:5330 +#: c-common.c:5331 #, 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:5349 +#: c-common.c:5350 #, 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:5357 +#: c-common.c:5358 #, 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:5437 +#: c-common.c:5438 #, c-format msgid "null argument where non-null required (arg %lu)" msgstr "null olamayan gerekiren yerde null argüman (%lu. argüman)" -#: c-common.c:5508 +#: c-common.c:5509 msgid "cleanup arg not an identifier" msgstr "temizleme argümanı bir isim değil" -#: c-common.c:5515 +#: c-common.c:5516 msgid "cleanup arg not a function" msgstr "temizleme argümanı bir işlev değil" -#: c-common.c:5876 +#: c-common.c:5877 #, c-format msgid "%s at end of input" msgstr "%s girdinin sonunda" -#: c-common.c:5882 +#: c-common.c:5883 #, c-format msgid "%s before %s'%c'" msgstr "%2$s'%3$c'den önce %1$s" -#: c-common.c:5884 +#: c-common.c:5885 #, c-format msgid "%s before %s'\\x%x'" msgstr "%2$s'\\x%3$x'den önce %1$s" -#: c-common.c:5888 +#: c-common.c:5889 #, c-format msgid "%s before string constant" msgstr "%s dizge sabitten önce" -#: c-common.c:5890 +#: c-common.c:5891 #, c-format msgid "%s before numeric constant" msgstr "sayısal sabitten önce %s" -#: c-common.c:5892 +#: c-common.c:5893 #, c-format msgid "%s before \"%s\"" msgstr "\"%2$s\"den önce %1$s" -#: c-common.c:5894 +#: c-common.c:5895 #, c-format msgid "%s before '%s' token" msgstr "'%2$s' dizgeciğinden önce %1$s" #. 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 +#: c-common.c:5897 c-typeck.c:2612 c-typeck.c:4004 c-typeck.c:4019 +#: c-typeck.c:4034 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:4155 #: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472 #, c-format msgid "%s" msgstr "%s" -#: 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 +#: c-convert.c:82 c-typeck.c:1211 c-typeck.c:3444 cp/typeck.c:1363 +#: cp/typeck.c:5708 treelang/tree-convert.c:79 msgid "void value not ignored as it ought to be" msgstr "void değer yoksayılması gerekirken yoksayılmadı" @@ -718,8 +716,8 @@ msgstr "%J `%D'bildirimi bir parametreyi gölgeliyor" msgid "%Jdeclaration of '%D' shadows a previous local" msgstr "%J `%D' bildirimi bir önceki yerel bildirimi gölgeliyor" -#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981 -#: cp/name-lookup.c:989 +#: c-decl.c:1587 cp/name-lookup.c:969 cp/name-lookup.c:992 +#: cp/name-lookup.c:1000 msgid "%Jshadowed declaration is here" msgstr "%J: gölgeli bildirim burada" @@ -728,7 +726,7 @@ msgstr "%J: gölgeli bildirim burada" msgid "nested extern declaration of `%s'" msgstr "`%s'in iç içe 'extern' bildirimi" -#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793 +#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6794 msgid "%Jprevious declaration of '%D'" msgstr "%J `%D' için önceki bildirim" @@ -802,7 +800,7 @@ msgid "two types specified in one empty declaration" msgstr "bir boş bildirimde iki veri türü belirtilmiş" #: 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 +#: objc/objc-parse.y:778 objc/objc-parse.y:3017 msgid "empty declaration" msgstr "boş bildirim" @@ -842,7 +840,7 @@ msgstr "`%s' işlevi bir değişken gibi ilkdeğerli" msgid "parameter `%s' is initialized" msgstr "`%s' parametresi ilkdeğerli" -#: c-decl.c:2568 c-typeck.c:4228 +#: c-decl.c:2568 c-typeck.c:4254 msgid "variable-sized object may not be initialized" msgstr "değişken-uzunluklu nesne ilkdeğerli olmayabilir" @@ -856,7 +854,7 @@ msgstr "`%s' değişkeni, veri türü tamamlanmayan bir ilkdeğere sahip" msgid "elements of array `%s' have incomplete type" msgstr "`%s' dizisinin elemanları tamamlanmayan veri türüne sahip" -#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133 +#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10141 msgid "%Jinline function '%D' given attribute noinline" msgstr "%J inline `%D' işlevine inline olmayan özellik verilmiş" @@ -1132,7 +1130,7 @@ msgstr "ISO C90 değerlendirilemeyen boyutlu `%s' dizisini yasaklar" msgid "ISO C90 forbids variable-size array `%s'" msgstr "ISO C90 değişken boyutlu `%s' dizisini yasaklar" -#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754 +#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7755 #, c-format msgid "size of array `%s' is too large" msgstr "`%s' dizisinin boyutu çok büyük" @@ -1175,7 +1173,7 @@ msgstr "gösterici bildirimi içinde geçersiz tür değiştirici" msgid "ISO C forbids const or volatile function types" msgstr "ISO C 'const' ya da 'volatile' işlev türlerini yasaklar" -#: c-decl.c:4201 cp/decl.c:8035 +#: c-decl.c:4201 cp/decl.c:8036 #, c-format msgid "variable or field `%s' declared void" msgstr "`%s' değişkeni ya da alanı void olarak bildirilmiş" @@ -1420,7 +1418,7 @@ msgstr "%J `%D' normalde bir static olmayan işlev" #: c-decl.c:5658 msgid "%Jold-style parameter declarations in prototyped function definition" -msgstr "" +msgstr "%J prototipli işlev tanımında eski tarz parametre bildirimi" #: c-decl.c:5672 msgid "%Jparameter name omitted" @@ -1470,7 +1468,7 @@ msgstr "yükseltgenmiş argüman \"%D\" prototiple uyumsuz" msgid "argument \"%D\" doesn't match prototype" msgstr "\"%D\" argümanı prototiple uyumsuz" -#: c-decl.c:6094 cp/decl.c:10849 +#: c-decl.c:6094 cp/decl.c:10857 msgid "no return statement in function returning non-void" msgstr "void olmayan dönüşlü işlevde `return' deyimi yok" @@ -2105,23 +2103,23 @@ msgstr "geleneksel C dizge sabitlerin birleştirilmesine izin vermez" #: c-objc-common.c:82 msgid "%Jfunction '%F' can never be inlined because it is suppressed using -fno-inline" -msgstr "" +msgstr "%J '%F' işlevi -fno-inline kullanılarak engellendiğinden satır içine alınamaz" #: c-objc-common.c:92 msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation" -msgstr "" +msgstr "%J '%F' işlevi bu dönüşüm birimi içine alınamadığından satıriçine alınamaz" #: c-objc-common.c:100 msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining" -msgstr "" +msgstr "%J '%F' işlevinin öznitelikleri satıriçine alınma ile çeliştiğinden işlev satıriçine alınamaz" #: c-objc-common.c:115 msgid "%Jfunction '%F' can never be inlined because it has pending sizes" -msgstr "" +msgstr "%J '%F' işlevi belirsiz boyutlar içerdiğinden satıriçine alınamaz" #: c-objc-common.c:128 msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes" -msgstr "" +msgstr "%J '%F' iç işlevi kayıtlı belirsiz boyutlar içermesi olasılığından dolayı satıriçine alınamaz" #: c-opts.c:141 #, c-format @@ -2237,7 +2235,7 @@ msgstr "" #: c-opts.c:1503 msgid "too late for # directive to set debug directory" -msgstr "" +msgstr "hata ayıklama dizinini belirten # yönergesi için çok geç" #. Like YYERROR but do call yyerror. #: c-parse.y:54 objc/objc-parse.y:54 @@ -2252,7 +2250,7 @@ msgstr "sözdizimi hatası: yedeklenemiyor" msgid "ISO C forbids an empty source file" msgstr "ISO C boş kaynak dosyalarına izin vermez" -#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374 +#: c-parse.y:349 c-typeck.c:6248 objc/objc-parse.y:374 msgid "argument of `asm' is not a constant string" msgstr "`asm' argümanı bir sabit dizge değil" @@ -2345,7 +2343,7 @@ msgstr "ISO C iç içe işlevlere izin vermez" 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:1703 cp/parser.c:9307 objc/objc-parse.y:1755 +#: c-parse.y:1703 cp/parser.c:9339 objc/objc-parse.y:1755 msgid "comma at end of enumerator list" msgstr "sembolik sabitler listesinin sonunda virgül" @@ -2353,7 +2351,7 @@ msgstr "sembolik sabitler listesinin sonunda virgül" 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/objc-parse.y:1784 objc/objc-parse.y:2846 +#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2847 msgid "extra semicolon in struct or union specified" msgstr "struct ya da union'da fazladan ; var" @@ -2381,23 +2379,23 @@ msgstr "ISO C etiket bildirimlerine izin vermez" 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:2184 objc/objc-parse.y:2241 +#: c-parse.y:2185 objc/objc-parse.y:2242 msgid "empty body in an else-statement" msgstr "else ifadesinin gövdesi boş" -#: c-parse.y:2192 objc/objc-parse.y:2249 +#: c-parse.y:2193 objc/objc-parse.y:2250 msgid "%Hempty body in an if-statement" msgstr "%Hif deyiminin gövdesi boş" -#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329 +#: c-parse.y:2273 cp/parser.c:6050 objc/objc-parse.y:2330 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:6056 objc/objc-parse.y:2338 +#: c-parse.y:2282 cp/parser.c:6061 objc/objc-parse.y:2339 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 +#: c-parse.y:2324 objc/objc-parse.y:2381 msgid "ISO C forbids `goto *expr;'" msgstr "ISO C `goto *expr;' kullanımına izin vermez" @@ -2407,11 +2405,11 @@ msgstr "ISO C `goto *expr;' kullanımına izin vermez" #. 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 +#: c-parse.y:2441 objc/objc-parse.y:2549 msgid "ISO C requires a named argument before `...'" msgstr "ISO C `...'dan önce bir isimli argüman gerektirir" -#: c-parse.y:2538 objc/objc-parse.y:2646 +#: c-parse.y:2539 objc/objc-parse.y:2647 msgid "`...' in old-style identifier list" msgstr "eski-tarz tanıtıcı listesinde `...'" @@ -2427,7 +2425,7 @@ msgstr "ayrıştırma hatası:" msgid "parser stack overflow" msgstr "ayrıştırıcı yığın taşması" -#: c-parse.y:2968 objc/objc-parse.y:3663 +#: c-parse.y:2969 objc/objc-parse.y:3664 #, c-format msgid "syntax error at '%s' token" msgstr "'%s' dizgeciğinde sözdizimi hatası" @@ -2482,17 +2480,17 @@ msgstr "%s: bir PCH dosyası değil" #: c-pch.c:279 #, c-format msgid "%s: created on host `%.*s', but used on host `%s'" -msgstr "" +msgstr "%s: `%.*s' konağında oluşturuldu, ama `%s' konağında kullanıldı" #: c-pch.c:289 #, c-format msgid "%s: created for target `%.*s', but used for target `%s'" -msgstr "" +msgstr "%s: `%.*s' hedefi için oluşturuldu, ama `%s' hedefinde kullanıldı" #: c-pch.c:302 #, c-format msgid "%s: created by version `%.*s', but this is version `%s'" -msgstr "" +msgstr "%s: `%.*s' sürümü için oluşturuldu, ama bu `%s' sürümü" #: c-pch.c:313 #, c-format @@ -2502,12 +2500,12 @@ msgstr "%s: farklı semboller kullanılarak oluşturulmuş" #: c-pch.c:326 #, c-format msgid "%s: created with -g%s, but used with -g%s" -msgstr "" +msgstr "%s: -g%s ile oluşturuldu, ama -g%s ile kullanıldı" #: c-pch.c:340 #, c-format msgid "%s: had text segment at different address" -msgstr "" +msgstr "%s: farklı adreste bir metin segmanına sahip" #: c-pch.c:357 cpperror.c:176 gcc.c:6554 #, c-format @@ -2589,19 +2587,19 @@ msgstr "#pragma redefine_extname yönergesi bozuk - yoksayıldı" msgid "junk at end of #pragma redefine_extname" msgstr "#pragma redefine_extname sonunda döküntü" -#: c-pragma.c:384 c-pragma.c:462 +#: c-pragma.c:385 c-pragma.c:463 msgid "#pragma redefine_extname conflicts with declaration" msgstr "#pragma redefine_extname bildirimiyle çelişiyor" -#: c-pragma.c:413 +#: c-pragma.c:414 msgid "malformed #pragma extern_prefix, ignored" msgstr "#pragma extern_prefix bozuk, yoksayıldı" -#: c-pragma.c:418 +#: c-pragma.c:419 msgid "junk at end of #pragma extern_prefix" msgstr "'#pragma extern_prefix' sonunda karışıklık" -#: c-pragma.c:449 +#: c-pragma.c:450 msgid "asm declaration conflicts with previous rename" msgstr "asm bildirimi önceki isim değişikliği ile çelişiyor" @@ -2617,7 +2615,7 @@ msgstr "yıkıcı gerekli" 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:737 c-typeck.c:6247 cp/semantics.c:1070 +#: c-semantics.c:737 c-typeck.c:6270 cp/semantics.c:1070 #, c-format msgid "%s qualifier ignored on asm" msgstr "asm'de %s niteleyicisi yoksayıldı" @@ -2626,788 +2624,788 @@ msgstr "asm'de %s niteleyicisi yoksayıldı" msgid "will never be executed" msgstr "asla çalıştırılmayacak" -#: c-typeck.c:120 +#: c-typeck.c:123 #, c-format msgid "`%s' has an incomplete type" msgstr "`%s' tamamlanmamış türde" -#: c-typeck.c:142 cp/call.c:2532 +#: c-typeck.c:145 cp/call.c:2532 msgid "invalid use of void expression" msgstr "void deyiminin kullanımı geçersiz" -#: c-typeck.c:150 +#: c-typeck.c:153 msgid "invalid use of flexible array member" msgstr "esnek dizi üyesinin kullanımı geçersiz" -#: c-typeck.c:156 +#: c-typeck.c:159 msgid "invalid use of array with unspecified bounds" msgstr "sınırları belirtilmemiş dizi; kullanımı geçersiz" -#: c-typeck.c:164 +#: c-typeck.c:167 #, 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:168 +#: c-typeck.c:171 #, c-format msgid "invalid use of incomplete typedef `%s'" msgstr "tamamlanmamış typedef `%s'; kullanımı geçersiz" -#: c-typeck.c:415 c-typeck.c:430 +#: c-typeck.c:428 c-typeck.c:443 msgid "function types not truly compatible in ISO C" msgstr "işlev türleri ISO C'de tam uyumlu değil" -#: c-typeck.c:611 +#: c-typeck.c:625 msgid "types are not quite compatible" msgstr "türler tam uyumlu değil" -#: c-typeck.c:824 +#: c-typeck.c:838 msgid "function return types not compatible due to `volatile'" msgstr "işlevin dönen değer türü `volatile' den dolayı uyumsuz" -#: c-typeck.c:970 c-typeck.c:2151 +#: c-typeck.c:984 c-typeck.c:2176 msgid "arithmetic on pointer to an incomplete type" msgstr "bir içi boş tür gösterici üzerinde aritmetik" -#: c-typeck.c:1343 +#: c-typeck.c:1357 #, c-format msgid "%s has no member named `%s'" msgstr "%s'in `%s' isimli bir üyesi yok" -#: c-typeck.c:1379 +#: c-typeck.c:1393 #, 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:1408 +#: c-typeck.c:1422 msgid "dereferencing pointer to incomplete type" msgstr "içi boş türe gösterici ilişkilendirme" -#: c-typeck.c:1412 +#: c-typeck.c:1426 msgid "dereferencing `void *' pointer" msgstr "`void *' gösterici ilişkilendirmesi" -#: c-typeck.c:1429 cp/typeck.c:2104 +#: c-typeck.c:1443 cp/typeck.c:2127 #, c-format msgid "invalid type argument of `%s'" msgstr "`%s' için tür argümanı geçersiz" -#: c-typeck.c:1447 cp/typeck.c:2129 +#: c-typeck.c:1461 cp/typeck.c:2152 msgid "subscript missing in array reference" msgstr "dizi başvurusunda altindis yok" -#: c-typeck.c:1468 cp/typeck.c:2171 +#: c-typeck.c:1482 cp/typeck.c:2194 msgid "array subscript has type `char'" msgstr "dizi altindisi `char' türünde" -#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261 +#: c-typeck.c:1490 c-typeck.c:1579 cp/typeck.c:2198 cp/typeck.c:2284 msgid "array subscript is not an integer" msgstr "dizi altindisi bir tamsayı değil" -#: c-typeck.c:1509 +#: c-typeck.c:1523 msgid "ISO C forbids subscripting `register' array" msgstr "ISO C `register' dizisi altindislemesine izin vermez" -#: c-typeck.c:1511 +#: c-typeck.c:1525 msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C90 sol yansız dizi indislemesine izin vermez" -#: c-typeck.c:1544 +#: c-typeck.c:1558 msgid "subscript has type `char'" msgstr "alt indis `char' türünde" -#: c-typeck.c:1560 cp/typeck.c:2256 +#: c-typeck.c:1574 cp/typeck.c:2279 msgid "subscripted value is neither array nor pointer" msgstr "indisli değer ne dizi ne de bir gösterici" -#: c-typeck.c:1590 +#: c-typeck.c:1604 #, c-format msgid "local declaration of `%s' hides instance variable" msgstr "`%s' yerel bildirimi gerçekleme değişkenini gizliyor" -#: c-typeck.c:1683 +#: c-typeck.c:1697 msgid "called object is not a function" msgstr "çağrılan nesne bir işlev değil" #. 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 +#: c-typeck.c:1729 msgid "function called through a non-compatible type" msgstr "uyumlu olmayan türde işlev çağrısı" -#: c-typeck.c:1813 cp/typeck.c:2544 +#: c-typeck.c:1787 c-typeck.c:4198 c-typeck.c:4200 c-typeck.c:4216 +#: c-typeck.c:4237 c-typeck.c:5616 +msgid "initializer element is not constant" +msgstr "ilklendirici öğe bir sabit değil" + +#: c-typeck.c:1838 cp/typeck.c:2567 msgid "too many arguments to function" msgstr "işlev için çok fazla argüman belirtildi" -#: c-typeck.c:1834 +#: c-typeck.c:1859 #, c-format msgid "type of formal parameter %d is incomplete" msgstr "%d biçimsel parametre türü tamamlanmayan türde" -#: c-typeck.c:1847 +#: c-typeck.c:1872 #, 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:1850 +#: c-typeck.c:1875 #, 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:1853 +#: c-typeck.c:1878 #, 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:1856 +#: c-typeck.c:1881 #, 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:1859 +#: c-typeck.c:1884 #, 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:1862 +#: c-typeck.c:1887 #, 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:1872 +#: c-typeck.c:1897 #, 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:1890 +#: c-typeck.c:1915 #, c-format msgid "%s with different width due to prototype" msgstr "prototipten dolayı farklı genişlikle %sması" -#: c-typeck.c:1916 +#: c-typeck.c:1941 #, c-format msgid "%s as unsigned due to prototype" msgstr "%sması prototipten dolayı unsigned" -#: c-typeck.c:1918 +#: c-typeck.c:1943 #, c-format msgid "%s as signed due to prototype" msgstr "%sması prototipten dolayı signed" -#: c-typeck.c:1952 cp/typeck.c:2650 +#: c-typeck.c:1977 cp/typeck.c:2673 msgid "too few arguments to function" msgstr "işlev için çok az argüman belirtildi" -#: c-typeck.c:1992 +#: c-typeck.c:2017 msgid "suggest parentheses around + or - inside shift" msgstr "shift içindeki + ya da - çevresinde parantezler önerilir" -#: c-typeck.c:1999 +#: c-typeck.c:2024 msgid "suggest parentheses around && within ||" msgstr "|| içindeki && çevresinde parantezler önerilir" -#: c-typeck.c:2008 +#: c-typeck.c:2033 msgid "suggest parentheses around arithmetic in operand of |" msgstr "| işlemimindeki aritmetik çevresinde parantezler önerilir" -#: c-typeck.c:2011 +#: c-typeck.c:2036 msgid "suggest parentheses around comparison in operand of |" msgstr "| işlemimindeki karşılaştırma çevresinde parantezler önerilir" -#: c-typeck.c:2020 +#: c-typeck.c:2045 msgid "suggest parentheses around arithmetic in operand of ^" msgstr "^ işlemimindeki aritmetik çevresinde parantezler önerilir" -#: c-typeck.c:2023 +#: c-typeck.c:2048 msgid "suggest parentheses around comparison in operand of ^" msgstr "^ işlemimindeki karşılaştırma çevresinde parantezler önerilir" -#: c-typeck.c:2030 +#: c-typeck.c:2055 msgid "suggest parentheses around + or - in operand of &" msgstr "& işlemimindeki + veya - çevresinde parantezler önerilir" -#: c-typeck.c:2033 +#: c-typeck.c:2058 msgid "suggest parentheses around comparison in operand of &" msgstr "& işlemimindeki karşılaştırma çevresinde parantezler önerilir" -#: c-typeck.c:2040 +#: c-typeck.c:2065 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:2103 +#: c-typeck.c:2128 msgid "pointer of type `void *' used in subtraction" msgstr "çıkartmada `void *' türünde gösterici kullanılmış" -#: c-typeck.c:2105 +#: c-typeck.c:2130 msgid "pointer to a function used in subtraction" msgstr "çıkartmada işlev göstericisi kullanılmış" -#: c-typeck.c:2199 +#: c-typeck.c:2224 msgid "wrong type argument to unary plus" msgstr "tekil artı işleminde yanlış tür argümanı" -#: c-typeck.c:2212 +#: c-typeck.c:2237 msgid "wrong type argument to unary minus" msgstr "tekil eksi işleminde yanlış tür argümanı" -#: c-typeck.c:2229 +#: c-typeck.c:2254 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:2235 +#: c-typeck.c:2260 msgid "wrong type argument to bit-complement" msgstr "bit-tümler için yanlış tür argümanı" -#: c-typeck.c:2243 +#: c-typeck.c:2268 msgid "wrong type argument to abs" msgstr "mutlak değer için yanlış tür argümanı" -#: c-typeck.c:2255 +#: c-typeck.c:2280 msgid "wrong type argument to conjugation" msgstr "mantıksal çarpım için yanlış tür argümanı" -#: c-typeck.c:2269 +#: c-typeck.c:2294 msgid "wrong type argument to unary exclamation mark" msgstr "tekil tümleyen için yanlış tür argümanı" -#: c-typeck.c:2312 +#: c-typeck.c:2337 msgid "ISO C does not support `++' and `--' on complex types" msgstr "ISO C karmaşık sayı türlerinde `++' ve `--' desteklemez" -#: c-typeck.c:2327 c-typeck.c:2359 +#: c-typeck.c:2352 c-typeck.c:2384 msgid "wrong type argument to increment" msgstr "arttırımda yanlış türde argüman" -#: c-typeck.c:2329 c-typeck.c:2361 +#: c-typeck.c:2354 c-typeck.c:2386 msgid "wrong type argument to decrement" msgstr "eksiltmede yanlış türde argüman" -#: c-typeck.c:2350 +#: c-typeck.c:2375 msgid "increment of pointer to unknown structure" msgstr "bilinmeyen yapı göstericisinde arttırma" -#: c-typeck.c:2352 +#: c-typeck.c:2377 msgid "decrement of pointer to unknown structure" msgstr "bilinmeyen yapı göstericisinde eksiltme" -#: c-typeck.c:2477 +#: c-typeck.c:2502 msgid "invalid lvalue in unary `&'" msgstr "tekil `&' için geçersiz soldeğer" -#: c-typeck.c:2509 +#: c-typeck.c:2534 #, 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:2642 +#: c-typeck.c:2668 msgid "use of conditional expressions as lvalues is deprecated" msgstr "sol taraf değeri olarak koşullu ifadeler artık geçersiz" -#: c-typeck.c:2645 +#: c-typeck.c:2671 msgid "use of compound expressions as lvalues is deprecated" msgstr "sol taraf değeri olarak birleşik ifadeler artık geçersiz" -#: c-typeck.c:2648 +#: c-typeck.c:2674 msgid "use of cast expressions as lvalues is deprecated" msgstr "sol taraf değeri olarak tür dönüşüm ifadeleri artık geçersiz" -#: c-typeck.c:2663 +#: c-typeck.c:2689 #, c-format msgid "%s of read-only member `%s'" msgstr "salt-okunur üye `%2$s' için %1$s" -#: c-typeck.c:2667 +#: c-typeck.c:2693 #, c-format msgid "%s of read-only variable `%s'" msgstr "salt-okunur değişken `%2$s' için %1$s" -#: c-typeck.c:2670 +#: c-typeck.c:2696 #, c-format msgid "%s of read-only location" msgstr "salt-okunur konumun %s" -#: c-typeck.c:2688 +#: c-typeck.c:2714 #, c-format msgid "cannot take address of bit-field `%s'" msgstr "`%s' bit-alanının adresi alınamıyor" -#: c-typeck.c:2716 treelang/treetree.c:946 +#: c-typeck.c:2742 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:2720 treelang/treetree.c:950 +#: c-typeck.c:2746 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:2727 treelang/treetree.c:957 +#: c-typeck.c:2753 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:2739 +#: c-typeck.c:2765 msgid "cannot put object with volatile field into register" msgstr "gelgeç alanlı nesne yazmaça konulamaz" -#: c-typeck.c:2743 treelang/treetree.c:962 +#: c-typeck.c:2769 treelang/treetree.c:962 #, c-format msgid "address of register variable `%s' requested" msgstr "`%s' yazmaç değişkeninin adresi istendi" -#: c-typeck.c:2828 +#: c-typeck.c:2854 msgid "signed and unsigned type in conditional expression" msgstr "koşullu ifadede signed ve unsigned türler" -#: c-typeck.c:2835 +#: c-typeck.c:2861 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:2851 c-typeck.c:2858 +#: c-typeck.c:2877 c-typeck.c:2884 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:2864 +#: c-typeck.c:2890 msgid "pointer type mismatch in conditional expression" msgstr "koşullu ifade içinde gösterici türü uyumsuzluğu" -#: c-typeck.c:2871 c-typeck.c:2881 +#: c-typeck.c:2897 c-typeck.c:2907 msgid "pointer/integer type mismatch in conditional expression" msgstr "koşullu ifadede gösterici/tamsayı tür uyumsuzluğu" -#: c-typeck.c:2895 +#: c-typeck.c:2921 msgid "type mismatch in conditional expression" msgstr "şartlı ifade içinde tür uyumsuzluğu" -#: c-typeck.c:2955 +#: c-typeck.c:2981 msgid "left-hand operand of comma expression has no effect" msgstr "virgüllü ifadenin sol terimi etkisiz" -#: c-typeck.c:2986 +#: c-typeck.c:3012 msgid "cast specifies array type" msgstr "tür dönüşümü dizi belirtiyor" -#: c-typeck.c:2992 +#: c-typeck.c:3018 msgid "cast specifies function type" msgstr "tür dönüşümü işlev belirtiyor" -#: c-typeck.c:3002 +#: c-typeck.c:3028 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:3020 +#: c-typeck.c:3046 msgid "ISO C forbids casts to union type" msgstr "ISO C union türe dönüşüme izin vermez" -#: c-typeck.c:3028 +#: c-typeck.c:3054 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:3079 +#: c-typeck.c:3105 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:3084 +#: c-typeck.c:3110 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:3099 +#: c-typeck.c:3125 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:3105 cp/typeck.c:4897 +#: c-typeck.c:3131 cp/typeck.c:4945 msgid "cast from pointer to integer of different size" msgstr "göstericiden farklı tamsayı türlere dönüşüm" -#: c-typeck.c:3110 +#: c-typeck.c:3136 msgid "cast does not match function type" msgstr "tür dönüşümü işlev türüyle uyumsuz" -#: c-typeck.c:3117 cp/typeck.c:4904 +#: c-typeck.c:3143 cp/typeck.c:4952 msgid "cast to pointer from integer of different size" msgstr "farklı boyuttaki tamsayı türden göstericye dönüşüm" -#: c-typeck.c:3129 +#: c-typeck.c:3155 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:3133 +#: c-typeck.c:3159 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:3144 +#: c-typeck.c:3170 msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "ISO C işlev göstericisinin nesne göstericisine dönüştürülmesini yasaklar" -#: c-typeck.c:3153 +#: c-typeck.c:3179 msgid "ISO C forbids conversion of object pointer to function pointer type" msgstr "ISO C nesne göstericisinin işlev göstericisine dönüştürülmesini yasaklar" #. Now we have handled acceptable kinds of LHS that are not truly lvalues. #. Reject anything strange now. -#: c-typeck.c:3311 +#: c-typeck.c:3337 msgid "invalid lvalue in assignment" msgstr "atama içinde sol taraf geçersiz" #. Convert new value to destination type. -#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016 -#: cp/typeck.c:5163 cp/typeck.c:5178 +#: c-typeck.c:3346 c-typeck.c:3371 c-typeck.c:3388 cp/typeck.c:5064 +#: cp/typeck.c:5211 cp/typeck.c:5226 msgid "assignment" msgstr "atama" -#: c-typeck.c:3429 +#: c-typeck.c:3455 msgid "cannot pass rvalue to reference parameter" msgstr "sağdeğer, başvuru parametresine aktarılamaz" -#: c-typeck.c:3538 c-typeck.c:3614 +#: c-typeck.c:3564 c-typeck.c:3640 #, c-format msgid "%s makes qualified function pointer from unqualified" msgstr "%s nitelemeyenden niteleyen işlev göstericisi yapıyor" -#: c-typeck.c:3542 c-typeck.c:3594 +#: c-typeck.c:3568 c-typeck.c:3620 #, c-format msgid "%s discards qualifiers from pointer target type" msgstr "%s gösterici hedef türündeki niteleyicileri iptal ediyor" -#: c-typeck.c:3548 +#: c-typeck.c:3574 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:3586 +#: c-typeck.c:3612 #, 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:3603 +#: c-typeck.c:3629 #, c-format msgid "pointer targets in %s differ in signedness" msgstr "gösterici hedefleri %s içinde farklı signed'lıkta" -#: c-typeck.c:3619 +#: c-typeck.c:3645 #, c-format msgid "%s from incompatible pointer type" msgstr "%s uyumsuz gösterici türünde" -#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366 +#: c-typeck.c:3651 c-typeck.c:4158 cp/typeck.c:1389 msgid "invalid use of non-lvalue array" msgstr "soldeğersiz dizi kullanımı geçersiz" -#: c-typeck.c:3639 +#: c-typeck.c:3665 #, 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:3646 +#: c-typeck.c:3672 #, 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:3660 c-typeck.c:3663 +#: c-typeck.c:3686 c-typeck.c:3689 #, 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:3667 +#: c-typeck.c:3693 #, 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:3671 +#: c-typeck.c:3697 #, c-format msgid "incompatible types in %s" msgstr "%s içinde uyumsuz türler" #. Function name is known; supply it. -#: c-typeck.c:3727 +#: c-typeck.c:3753 #, 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:3736 +#: c-typeck.c:3762 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:3744 +#: c-typeck.c:3770 #, 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:3753 +#: c-typeck.c:3779 #, 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:3810 +#: c-typeck.c:3836 msgid "traditional C rejects automatic aggregate initialization" msgstr "geleneksel C otomatik küme ilklendirmesini reddeder" -#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011 +#: c-typeck.c:4007 c-typeck.c:4022 c-typeck.c:4037 #, c-format msgid "(near initialization for `%s')" msgstr "(%s için near ilklendirme)" -#: c-typeck.c:4060 cp/typeck2.c:560 +#: c-typeck.c:4086 cp/typeck2.c:560 msgid "char-array initialized from wide string" msgstr "karakter dizisinin ilklendiricisi olarak geniş dizge kullanılmış" -#: c-typeck.c:4067 cp/typeck2.c:567 +#: c-typeck.c:4093 cp/typeck2.c:567 msgid "int-array initialized from non-wide string" msgstr "tamsayı dizisinin ilklendiricisi olarak geniş-olmayan dizge kullanılmış" -#: c-typeck.c:4085 cp/typeck2.c:582 +#: c-typeck.c:4111 cp/typeck2.c:582 msgid "initializer-string for array of chars is too long" msgstr "karakter dizisi için dizge-ilklendirici çok uzun" -#: c-typeck.c:4155 +#: c-typeck.c:4181 msgid "array initialized from non-constant array expression" msgstr "dizinin ilklendiricisi olarak sabit olmayan dizi ifadesi kullanılmış" -#: 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 "ilklendirici öğe bir sabit değil" - -#: c-typeck.c:4206 +#: c-typeck.c:4232 msgid "initialization" msgstr "ilklendirme" -#: c-typeck.c:4217 c-typeck.c:5598 +#: c-typeck.c:4243 c-typeck.c:5621 msgid "initializer element is not computable at load time" msgstr "başlangıç öğesi yükleme sırasında hesaplanabilir değil" -#: c-typeck.c:4232 cp/typeck2.c:659 +#: c-typeck.c:4258 cp/typeck2.c:659 msgid "invalid initializer" msgstr "geçersiz ilklendirici" -#: c-typeck.c:4517 cp/decl.c:4484 +#: c-typeck.c:4540 cp/decl.c:4484 msgid "opaque vector types cannot be initialized" msgstr "opak vektör türleri ilklendirilemez" -#: c-typeck.c:4711 +#: c-typeck.c:4734 msgid "extra brace group at end of initializer" msgstr "ilklendiricinin sonunda fazladan parantezli grup" -#: c-typeck.c:4731 +#: c-typeck.c:4754 msgid "missing braces around initializer" msgstr "ilklendiriciyi çevreleyen parantezler yok" -#: c-typeck.c:4791 +#: c-typeck.c:4814 msgid "braces around scalar initializer" msgstr "skalar ilklendiriciyi kuşatan parantezler" -#: c-typeck.c:4842 +#: c-typeck.c:4865 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:4844 +#: c-typeck.c:4867 msgid "initialization of a flexible array member" msgstr "esnek dizi üyesi ilklendirmesi" -#: c-typeck.c:4875 +#: c-typeck.c:4898 msgid "missing initializer" msgstr "ilklendirici yok" -#: c-typeck.c:4897 +#: c-typeck.c:4920 msgid "empty scalar initializer" msgstr "skalar ilklendirici boş" -#: c-typeck.c:4902 +#: c-typeck.c:4925 msgid "extra elements in scalar initializer" msgstr "skalar ilklendiricide fazladan öğeler" -#: c-typeck.c:4987 +#: c-typeck.c:5010 msgid "initialization designators may not nest" msgstr "ilklendirme tasarlayıcılar yuvalanamayabilir" -#: c-typeck.c:5008 c-typeck.c:5076 +#: c-typeck.c:5031 c-typeck.c:5099 msgid "array index in non-array initializer" msgstr "dizi-olmayan ilklendiricide dizi indisi" -#: c-typeck.c:5013 c-typeck.c:5129 +#: c-typeck.c:5036 c-typeck.c:5152 msgid "field name not in record or union initializer" msgstr "alan ismi kayıt ya da union ilklendiricisinde kullanılmamış" -#: c-typeck.c:5072 c-typeck.c:5074 +#: c-typeck.c:5095 c-typeck.c:5097 msgid "nonconstant array index in initializer" msgstr "ilklendiricide sabit-olmayan dizi indeksi" -#: c-typeck.c:5078 c-typeck.c:5081 +#: c-typeck.c:5101 c-typeck.c:5104 msgid "array index in initializer exceeds array bounds" msgstr "ilklendiricideki dizi indeksi dizi sınırlarının dışında" -#: c-typeck.c:5092 +#: c-typeck.c:5115 msgid "empty index range in initializer" msgstr "ilklendiricide indeks aralığı boş" -#: c-typeck.c:5101 +#: c-typeck.c:5124 msgid "array index range in initializer exceeds array bounds" msgstr "ilklendiricideki dizi indeksi aralığı dizi sınırlarını aşıyor" -#: c-typeck.c:5141 +#: c-typeck.c:5164 #, c-format msgid "unknown field `%s' specified in initializer" msgstr "ilklendiricide bilinmeyen `%s' alanı belirtilmiş" -#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660 +#: c-typeck.c:5200 c-typeck.c:5221 c-typeck.c:5683 msgid "initialized field with side-effects overwritten" msgstr "yan-etkili ilklendirilmiş alanın üzerine yazıldı" -#: c-typeck.c:5868 +#: c-typeck.c:5891 msgid "excess elements in char array initializer" msgstr "karakter dizisi ilklendiricide gereğinden fazla öğe" -#: c-typeck.c:5875 c-typeck.c:5921 +#: c-typeck.c:5898 c-typeck.c:5944 msgid "excess elements in struct initializer" msgstr "struct ilklendiricide gereğinden fazla öğe" -#: c-typeck.c:5936 +#: c-typeck.c:5959 msgid "non-static initialization of a flexible array member" msgstr "esnek dizi üyesinin satatik olmayan ilklendirmesi" -#: c-typeck.c:6003 +#: c-typeck.c:6026 msgid "excess elements in union initializer" msgstr "union ilklendiricide gereğinden fazla öğe" -#: c-typeck.c:6024 +#: c-typeck.c:6047 msgid "traditional C rejects initialization of unions" msgstr "geleneksel C union ilklendirmesini reddeder" -#: c-typeck.c:6087 +#: c-typeck.c:6110 msgid "excess elements in array initializer" msgstr "dizi ilklendiricide gereğinden fazla öğe" -#: c-typeck.c:6116 +#: c-typeck.c:6139 msgid "excess elements in vector initializer" msgstr "vektör ilklendiricide gereğinden fazla öğe" -#: c-typeck.c:6138 +#: c-typeck.c:6161 msgid "excess elements in scalar initializer" msgstr "skalar ilklendiricide gereğinden fazla öğe" -#: c-typeck.c:6240 +#: c-typeck.c:6263 msgid "asm template is not a string constant" msgstr "asm şablon bir dizge sabit değil" -#: c-typeck.c:6272 +#: c-typeck.c:6295 msgid "invalid lvalue in asm statement" msgstr "asm deyiminde geçersiz sol taraf" -#: c-typeck.c:6344 cp/typeck.c:5854 +#: c-typeck.c:6367 cp/typeck.c:5902 msgid "modification by `asm'" msgstr "`asm' tarafından değişiklik" -#: c-typeck.c:6362 cp/typeck.c:5938 +#: c-typeck.c:6385 cp/typeck.c:5986 msgid "function declared `noreturn' has a `return' statement" msgstr "`noreturn' olarak bildirilmiş işlev `return' deyimi içeriyor" -#: c-typeck.c:6369 +#: c-typeck.c:6392 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:6375 +#: c-typeck.c:6398 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:6379 +#: c-typeck.c:6402 msgid "return" msgstr "dönüş değeri" -#: c-typeck.c:6431 +#: c-typeck.c:6454 msgid "function returns address of local variable" msgstr "işlev yerel değişkenin adresi ile dönüyor" -#: c-typeck.c:6486 cp/semantics.c:749 +#: c-typeck.c:6509 cp/semantics.c:749 msgid "switch quantity not an integer" msgstr "switch büyüklüğü bir tamsayı değil" -#: c-typeck.c:6496 +#: c-typeck.c:6519 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:6537 cp/parser.c:5555 +#: c-typeck.c:6560 cp/parser.c:5560 msgid "case label not within a switch statement" msgstr "case etiketi bir switch deyimi içinde değil" -#: c-typeck.c:6539 +#: c-typeck.c:6562 msgid "`default' label not within a switch statement" msgstr "`default' etiketi bir switch deyimi içinde değil" -#: c-typeck.c:6691 c-typeck.c:6725 +#: c-typeck.c:6714 c-typeck.c:6748 msgid "division by zero" msgstr "sıfırla bölme" -#: c-typeck.c:6770 cp/typeck.c:2930 +#: c-typeck.c:6793 cp/typeck.c:2953 msgid "right shift count is negative" msgstr "sağa kaydırma sayısı negatif" -#: c-typeck.c:6777 cp/typeck.c:2936 +#: c-typeck.c:6800 cp/typeck.c:2959 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:6798 cp/typeck.c:2955 +#: c-typeck.c:6821 cp/typeck.c:2978 msgid "left shift count is negative" msgstr "sola kaydırma sayısı negatif" -#: c-typeck.c:6801 cp/typeck.c:2957 +#: c-typeck.c:6824 cp/typeck.c:2980 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:6822 +#: c-typeck.c:6845 msgid "shift count is negative" msgstr "kaydırma sayısı negatif" -#: c-typeck.c:6824 +#: c-typeck.c:6847 msgid "shift count >= width of type" msgstr "kaydırma sayısı türünden büyük ya da eşit" -#: c-typeck.c:6841 cp/typeck.c:2992 +#: c-typeck.c:6864 cp/typeck.c:3015 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:6865 c-typeck.c:6871 +#: c-typeck.c:6888 c-typeck.c:6894 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:6874 c-typeck.c:6914 c-typeck.c:6942 +#: c-typeck.c:6897 c-typeck.c:6937 c-typeck.c:6965 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:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967 +#: c-typeck.c:6911 c-typeck.c:6916 c-typeck.c:6985 c-typeck.c:6990 msgid "comparison between pointer and integer" msgstr "gösterici türü ile tamsayı türü arasında karşılaştırma" -#: c-typeck.c:6909 c-typeck.c:6937 +#: c-typeck.c:6932 c-typeck.c:6960 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:6934 +#: c-typeck.c:6957 msgid "comparison of complete and incomplete pointers" msgstr "tamamlanmış ve içi boş göstericilerin karşılaştırılması" -#: c-typeck.c:6950 c-typeck.c:6957 +#: c-typeck.c:6973 c-typeck.c:6980 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:6981 cp/typeck.c:3128 +#: c-typeck.c:7004 cp/typeck.c:3151 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:7191 +#: c-typeck.c:7214 msgid "comparison between signed and unsigned" msgstr "signed ile unsigned arasında karşılaştırma" -#: c-typeck.c:7237 cp/typeck.c:3375 +#: c-typeck.c:7260 cp/typeck.c:3398 msgid "comparison of promoted ~unsigned with constant" msgstr "sabitle yükseltgenmiş ~unsigned karşılaştırması" -#: c-typeck.c:7245 cp/typeck.c:3383 +#: c-typeck.c:7268 cp/typeck.c:3406 msgid "comparison of promoted ~unsigned with unsigned" msgstr "unsigned ile ~unsigned'a yükseltgenmiş türlerin karşılaştırması" @@ -3425,11 +3423,11 @@ msgstr "%J `%F' çağrısı `inline' olamaz" #: calls.c:2219 msgid "ignoring return value of `%D', declared with attribute warn_unused_result" -msgstr "" +msgstr "warn_unused_result özniteliği ile bildirilmiş, `%D' dönüş değeri yoksayılıyor" #: calls.c:2232 msgid "ignoring return value of function declared with attribute warn_unused_result" -msgstr "" +msgstr "warn_unused_result özniteliği ile bildirildiğinden işlevin dönüş değeri yoksayılıyor" #: calls.c:2242 msgid "function call has aggregate value" @@ -3537,22 +3535,22 @@ msgstr "%d. döngünün saklayıcısı indirgenemez bölgenin parçası olarak i #: cfgloop.c:1231 #, c-format msgid "Basic block %d should be marked irreducible." -msgstr "" +msgstr "%d temel bloğu indirgenemez olarak imlenmeli." #: cfgloop.c:1237 #, c-format msgid "Basic block %d should not be marked irreducible." -msgstr "" +msgstr "%d temel bloğu indirgenemez olarak imlenmemeli." #: cfgloop.c:1245 #, c-format msgid "Edge from %d to %d should be marked irreducible." -msgstr "" +msgstr "%d den %d e kadar kenar indirgenemez olarak imlenmeli." #: cfgloop.c:1252 #, c-format msgid "Edge from %d to %d should not be marked irreducible." -msgstr "" +msgstr "%d den %d e kadar kenar indirgenemez olarak imlenmemeli." #: cfgrtl.c:1877 #, c-format @@ -3672,45 +3670,45 @@ msgstr "komut zinciri (%d) içindeki bb notlarının sayısı != n_basic_blocks msgid "function body not available" msgstr "işlev gövdesi yok" -#: cgraph.c:163 cgraphunit.c:340 +#: cgraph.c:163 cgraphunit.c:341 msgid "redefined extern inline functions are not considered for inlining" msgstr "yeniden tanımlanmış extern inline işlevler satıriçine alınma sırasında görmezden gelinir" -#: cgraph.c:166 cgraphunit.c:345 +#: cgraph.c:166 cgraphunit.c:346 msgid "function not considered for inlining" msgstr "işlev satıriçine alınma sırasında görmezden gelinir" -#: cgraph.c:168 cgraphunit.c:343 +#: cgraph.c:168 cgraphunit.c:344 msgid "function not inlinable" msgstr "işlev satıriçine alınabilir değil" -#: cgraph.c:476 +#: cgraph.c:485 msgid "%D renamed after being referenced in assembly" msgstr "makina dilinde referanslandıktan sonra %D yeniden isimlendirilmiş." -#: cgraphunit.c:1041 +#: cgraphunit.c:1046 msgid "--param large-function-growth limit reached" -msgstr "" +msgstr "--param large-function-growth sınırı aşıldı" -#: cgraphunit.c:1054 +#: cgraphunit.c:1059 msgid "--param large-function-growth limit reached while inlining the caller" -msgstr "" +msgstr "--param large-function-growth sınırı çağrıcı satıriçine alınırken aşıldı" -#: cgraphunit.c:1119 +#: cgraphunit.c:1124 msgid "--param max-inline-insns-single limit reached" -msgstr "" +msgstr "--param max-inline-insns-single sınırı aşıldı" -#: cgraphunit.c:1143 +#: cgraphunit.c:1148 msgid "--param max-inline-insns-single limit reached after inlining into the callee" -msgstr "" +msgstr "--param max-inline-insns-single sınırı çağrılanın içinde satıriçine alındıktan sonra aşıldı" -#: cgraphunit.c:1220 +#: cgraphunit.c:1225 msgid "--param inline-unit-growth limit reached" -msgstr "" +msgstr "--param inline-unit-growth sınırı aşıldı" -#: cgraphunit.c:1292 cgraphunit.c:1436 +#: cgraphunit.c:1297 cgraphunit.c:1441 msgid "recursive inlining" -msgstr "" +msgstr "içiçe satıriçine alma işlemi" #: collect2.c:406 msgid "internal error" @@ -3896,7 +3894,7 @@ msgstr "%s: bir COFF dosyası olarak açılamıyor" msgid "library lib%s not found" msgstr "lib%s kitaplığı bulunamadı" -#: combine.c:13038 +#: combine.c:13048 #, c-format msgid "" ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n" @@ -3907,7 +3905,7 @@ msgstr "" ";; %d başarı.\n" "\n" -#: combine.c:13047 +#: combine.c:13057 #, c-format msgid "" "\n" @@ -3967,17 +3965,17 @@ msgstr "%s sürümü `%.4s', umulan sürüm ise `%.4s'" #: coverage.c:255 coverage.c:263 #, c-format msgid "coverage mismatch for function %u while reading execution counters." -msgstr "" +msgstr "çalıştırma sayaçları okunurken %u. işlev için sarmalama çelişkisi." #: coverage.c:257 coverage.c:340 #, c-format msgid "checksum is %x instead of %x" -msgstr "" +msgstr "sağlama toplamı %2$x değil %1$x" #: coverage.c:265 coverage.c:348 #, c-format msgid "number of counters is %d instead of %d" -msgstr "" +msgstr "sayaç sayısı %2$d değil %1$d" #: coverage.c:271 #, c-format @@ -4007,7 +4005,7 @@ msgstr "`%s' işlevi için saklayıcı yok." #: coverage.c:337 coverage.c:345 #, c-format msgid "coverage mismatch for function '%s' while reading counter '%s'." -msgstr "" +msgstr "'%2$s' sayacı okunurken '%1$s' işlevi için sarmalama çelişkisi." #: coverage.c:493 #, c-format @@ -4027,13 +4025,13 @@ msgstr "%s ile %s arasında dönüşüm iconv tarafından desteklenmiyor" #: cppcharset.c:656 msgid "iconv_open" -msgstr "" +msgstr "iconv_open" #. XXX should be DL_SORRY #: cppcharset.c:664 #, c-format msgid "no iconv implementation, cannot convert from %s to %s" -msgstr "" +msgstr "iconv desteklenmiyor, %s ile %s arasında dönüşüm yapılamıyor" #: cppcharset.c:808 msgid "universal character names are only valid in C++ and C99" @@ -4113,7 +4111,7 @@ msgstr "önceleme diziliminden icra karakter kümesine dönüşüm" #: cppcharset.c:1181 msgid "converting to execution character set" -msgstr "" +msgstr "çalıştırma karakter kümesinin dönüşümü" #: cppcharset.c:1244 cppcharset.c:1307 msgid "character constant too long for its type" @@ -4298,15 +4296,15 @@ msgstr "#if içinde sıfırla bölme" #: cppfiles.c:370 msgid "NULL directory in find_file" -msgstr "" +msgstr "find_file içinde NULL dizin" #: cppfiles.c:397 msgid "one or more PCH files were found, but they were invalid" -msgstr "" +msgstr "bir yada daha fazla PCH dosyası bulundu ama hepsi geçersiz" #: cppfiles.c:400 msgid "use -Winvalid-pch for more information" -msgstr "" +msgstr "daha fazla bilgi için -Winvalid-pch kullanın" #: cppfiles.c:458 #, c-format @@ -4700,7 +4698,7 @@ msgstr "cpp_macro_definition içindeki isimli yapı türü %d geçersiz" #: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365 msgid "while writing precompiled header" -msgstr "" +msgstr "önderlenmiş başlık yazılırken" #: cpppch.c:463 #, c-format @@ -4719,7 +4717,7 @@ msgstr "%s: kullanılmadı çünkü `%s' tanımlı" #: cpppch.c:529 cpppch.c:715 msgid "while reading precompiled header" -msgstr "" +msgstr "önderlenmiş başlık okunurken" #: cppspec.c:106 #, c-format @@ -4739,7 +4737,7 @@ msgstr "makro \"%s\" genişletilirken iç içelik saptandı" msgid "syntax error in macro parameter list" msgstr "makro parametre listesinde sözdizimi hatası" -#: cse.c:7060 +#: cse.c:7064 #, 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" @@ -4786,7 +4784,7 @@ msgstr "komutta geçersiz rtl paylaşımı bulundu" #: emit-rtl.c:2329 msgid "Shared rtx" -msgstr "" +msgstr "Paylaşımlı rtx" #: emit-rtl.c:3464 msgid "ICE: emit_insn used where emit_jump_insn needed:\n" @@ -4817,16 +4815,16 @@ msgstr "bu hedefte yığın sınırları desteklenmiyor" msgid "function using short complex types cannot be inline" msgstr "short karmaşık türler kullanılan işlevler özümlenemez" -#: expr.c:6385 +#: expr.c:6386 msgid "%Jprior parameter's size depends on '%D'" msgstr "%J önceki parametrelerin uzunluğu `%D' bağımlı" -#: expr.c:6752 +#: expr.c:6753 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:8895 +#: expr.c:8894 msgid "cannot take the address of an unaligned member" msgstr "hizalanmamış bir üyenin adresi alınamaz" @@ -4871,12 +4869,12 @@ msgstr "`%%l' terimi bir etiket değil" #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751 +#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6768 #: config/pdp11/pdp11.c:1646 msgid "floating constant misused" msgstr "gerçel sayı sabitler desteklenmiyor" -#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829 +#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6846 #: config/pdp11/pdp11.c:1693 msgid "invalid expression as operand" msgstr "veri öğesi olarak ifade geçersiz" @@ -4917,7 +4915,7 @@ msgstr "bağdaşmayanların eşitlik testlerinin `and' sonucu daima 0 dır" #: fold-const.c:8393 msgid "fold check: original tree changed by fold" -msgstr "" +msgstr "fold sınaması: özgün ağaç fold tarafından değiştirildi" #: function.c:884 varasm.c:1408 msgid "%Jsize of variable '%D' is too large" @@ -4927,23 +4925,23 @@ msgstr "%J `%D' değişkeni çok geniş" msgid "impossible constraint in `asm'" msgstr "`asm' içindeki koşul mümkün değil" -#: function.c:5723 +#: function.c:5733 msgid "%J'%D' might be used uninitialized in this function" msgstr "%J `%D' bu işlevde ilklendirilmeden kullanılmış olmalı" -#: function.c:5730 +#: function.c:5740 msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'" msgstr "%J değişken `%D' `longjmp' ya da `vfork' tarafından taşırılmış olabilir" -#: function.c:5749 +#: function.c:5759 msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'" msgstr "%J argüman `%D' `longjmp' ya da `vfork' tarafından taşırılmış olabilir" -#: function.c:6523 +#: function.c:6533 msgid "function returns an aggregate" msgstr "işlev bir küme ile dönüyor" -#: function.c:7006 +#: function.c:6929 msgid "%Junused parameter '%D'" msgstr "%J parametre `%D' kullanılmamış" @@ -5265,7 +5263,7 @@ msgstr "%s (GCC) %s\n" #: gcc.c:3358 gcov.c:424 f/g77spec.c:351 msgid "(C)" -msgstr "" +msgstr "©" #: gcc.c:3359 msgid "" @@ -5389,11 +5387,11 @@ msgstr "belirtim işlevi argümanları bozuk" #: gcc.c:6083 msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC." -msgstr "" +msgstr "belirtim başarısızlığı: SYSROOT_SUFFIX_SPEC için argüman sayısı birden fazla." #: gcc.c:6093 msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC." -msgstr "" +msgstr "belirtim başarısızlığı: SYSROOT_HEADERS_SUFFIX_SPEC için argüman sayısı birden fazla.." #: gcc.c:6186 #, c-format @@ -5502,7 +5500,7 @@ msgstr " -v, --version Sürüm bilgilerini gösterir ve çık #: gcov.c:401 msgid " -a, --all-blocks Show information for every basic block\n" -msgstr "" +msgstr " -a, --all-blocks Her temel blok için bilgi verilir\n" #: gcov.c:402 msgid " -b, --branch-probabilities Include branch probabilities in output\n" @@ -5542,7 +5540,7 @@ msgstr " -p, --preserve-paths Tüm dosya yolu elemanları saklanır\ #: gcov.c:411 msgid " -u, --unconditional-branches Show unconditional branch counts too\n" -msgstr "" +msgstr " -u, --unconditional-branches Koşulsuz dallanma sayısı da gösterilir\n" #: gcov.c:412 #, c-format @@ -5609,17 +5607,17 @@ msgstr "%s: bir gcov graph dosyası değil\n" #: gcov.c:731 #, c-format msgid "%s:version `%.4s', prefer `%.4s'\n" -msgstr "" +msgstr "%s: `%.4s' sürümü, tercih edilen ise `%.4s'\n" #: gcov.c:783 #, c-format msgid "%s:already seen blocks for `%s'\n" -msgstr "" +msgstr "%s: `%s' için bloklar zaten görüldü\n" #: gcov.c:904 gcov.c:1063 #, c-format msgid "%s:corrupted\n" -msgstr "" +msgstr "%s: bozulmuş\n" #: gcov.c:977 #, c-format @@ -5634,12 +5632,12 @@ msgstr "%s: bir gcov veri dosyası değil\n" #: gcov.c:995 #, c-format msgid "%s:version `%.4s', prefer version `%.4s'\n" -msgstr "" +msgstr "%s: `%.4s' sürümü, tercih edilen sürüm `%.4s'\n" #: gcov.c:1001 #, c-format msgid "%s:stamp mismatch with graph file\n" -msgstr "" +msgstr "%s: zaman damgası çizge dosyası ile çelişiyor\n" #: gcov.c:1027 #, c-format @@ -5659,22 +5657,22 @@ msgstr "%s:taşma hatası\n" #: gcov.c:1086 #, c-format msgid "%s:`%s' lacks entry and/or exit blocks\n" -msgstr "" +msgstr "%s:`%s' girdiye ya da çıkış bloklarına ihtiyaç duyuyor\n" #: gcov.c:1091 #, c-format msgid "%s:`%s' has arcs to entry block\n" -msgstr "" +msgstr "%s:`%s' girdi bloklarına arc'lara sahip\n" #: gcov.c:1099 #, c-format msgid "%s:`%s' has arcs from exit block\n" -msgstr "" +msgstr "%s:`%s' çıkış bloklarından arc'lara sahip\n" #: gcov.c:1307 #, c-format msgid "%s:graph is unsolvable for `%s'\n" -msgstr "" +msgstr "%s:çizge `%s' için çözümlenebilir değil\n" #: gcov.c:1387 #, c-format @@ -5761,11 +5759,11 @@ msgstr "%s: kaynak dosya, `%s' dosyasından daha yeni\n" #. Return if there's nothing to do, or it is too expensive. #: gcse.c:747 msgid "GCSE disabled" -msgstr "" +msgstr "GCSE iptal edildi" #: gcse.c:6124 msgid "NULL pointer checks disabled" -msgstr "" +msgstr "boş gösterici sınamaları iptal edildi" #. Return if there's nothing to do, or it is too expensive. #: gcse.c:8010 @@ -5807,7 +5805,7 @@ msgstr "PCH dosyası okunamıyor: %m" #: ggc-common.c:681 msgid "had to relocate PCH" -msgstr "" +msgstr "PCH'a yeniden konumlanabilir" #: ggc-page.c:1325 #, c-format @@ -5820,7 +5818,7 @@ msgstr "PCH dosyasına yazılamıyor" #: ggc-simple.c:526 msgid "Generating PCH files is not supported when using ggc-simple.c" -msgstr "" +msgstr "ggc-simple.c kullanıldığında PCH dosyalarının üretimi desteklenmiyor." #: global.c:356 global.c:369 global.c:383 #, c-format @@ -5941,7 +5939,7 @@ msgstr "" #. What to print when a switch has no documentation. #: opts.c:149 msgid "This switch lacks documentation" -msgstr "" +msgstr "Bu seçenek belgelenmedi" #. Eventually this should become a hard error IMO. #: opts.c:318 @@ -5985,7 +5983,7 @@ msgstr "-fwritable-strings eski kullanım, lütfen ayrıntılar için belgelere #: opts.c:1538 #, c-format msgid "%s: --param arguments should be of the form NAME=VALUE" -msgstr "" +msgstr "%s: --param seçeneğinin argümanları İSİM=DEĞER biçiminde olmalı" #: opts.c:1543 #, c-format @@ -6009,11 +6007,11 @@ msgstr "hata ayılama çıktı seviyesi \"%s\" bilinmiyor" #: opts.c:1664 #, c-format msgid "debug output level %s is too high" -msgstr "" +msgstr "hata ayıklama çıktılama seviyesi %s çok yüksek" #: opts.c:1683 msgid "The following options are language-independent:\n" -msgstr "" +msgstr "Bu seçenekler dile bağımlıdır:\n" #: opts.c:1690 #, c-format @@ -6021,10 +6019,12 @@ msgid "" "The %s front end recognizes the following options:\n" "\n" msgstr "" +"%s önalanı bu seçenekleri tanır:\n" +"\n" #: opts.c:1704 msgid "The --param option recognizes the following as parameters:\n" -msgstr "" +msgstr "--param seçeneğinde belirtilebilecek parametreler:\n" #. If we didn't find this parameter, issue an error message. #: params.c:76 @@ -6034,11 +6034,11 @@ msgstr "geçersiz parametre `%s'" #: profile.c:288 msgid "corrupted profile info: run_max * runs < sum_max" -msgstr "" +msgstr "bozuk profil bilgisi: run_max * runs < sum_max" #: profile.c:294 msgid "corrupted profile info: sum_all is smaller than sum_max" -msgstr "" +msgstr "bozuk profil bilgisi: sum_all < sum_max" #: profile.c:336 #, c-format @@ -6048,12 +6048,12 @@ msgstr "bozuk profil bilgisi: %i den %i ye kadar kenar azami sayıyı aşıyor" #: profile.c:499 #, c-format msgid "corrupted profile info: number of iterations for basic block %d thought to be %i" -msgstr "" +msgstr "bozuk profil bilgisi: %d. temel blok için yineleme sayısının %i olduğu varsayıldı" #: profile.c:526 #, c-format msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i" -msgstr "" +msgstr "bozuk profil bilgisi: %d-%d kenarı için çalıştırma sayısının %i olduğu varsayıldı" #: protoize.c:534 #, c-format @@ -6403,7 +6403,7 @@ msgstr "çıktı terimi %d `&' kısıtını kullanmalı" msgid "can't use '%s' as a %s register" msgstr "'%s' bir %s yazmacı olarak kullanılamıyor" -#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664 +#: regclass.c:758 config/ia64/ia64.c:4660 config/ia64/ia64.c:4667 #, c-format msgid "unknown register name: %s" msgstr "bilinmeyen yazmaç ismi: %s" @@ -6460,47 +6460,47 @@ msgstr "aşağıdakiler için yeniden yüklemeler üretilemiyor:" msgid "inconsistent operand constraints in an `asm'" msgstr "bir `asm' içindeki terim şartı çelişkili" -#: reload1.c:1212 +#: reload1.c:1222 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:1215 +#: reload1.c:1225 msgid "try reducing the number of local variables" msgstr "yerel değişkenlerin sayısını azaltmayı deneyin" -#: reload1.c:1868 +#: reload1.c:1878 #, 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:1872 +#: reload1.c:1882 #, 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:1874 +#: reload1.c:1884 msgid "this is the insn:" msgstr "bu o komuttur:" -#: reload1.c:3871 +#: reload1.c:3881 msgid "`asm' operand requires impossible reload" msgstr "`asm' terimi imkansız yeniden yükleme gerektiriyor" #. It's the compiler's fault. -#: reload1.c:4963 +#: reload1.c:4973 msgid "could not find a spill register" msgstr "bir döküm yazmacı bulunamadı" -#: reload1.c:4968 +#: reload1.c:4978 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:6590 +#: reload1.c:6600 msgid "VOIDmode on an output" msgstr "bir çıktıda VOIDmode" -#: reload1.c:6591 +#: reload1.c:6601 msgid "output operand is constant in `asm'" msgstr "`asm' içindeki çıktı terimi bir sabit" @@ -6552,7 +6552,7 @@ msgstr "RTL seçenek denetimi: %4$s:%5$d: `%1$s' %3$s içinde umulmayan rtx kodu 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:977 stmt.c:3793 +#: stmt.c:977 stmt.c:3790 msgid "%Jlabel '%D' used before containing binding contour" msgstr "" @@ -6569,7 +6569,7 @@ msgstr "%2$d terimi için çıktı şartı `%1$c' başlangıçta değil" msgid "operand constraint contains incorrectly positioned '+' or '='" msgstr "terim kısıtı yanlış konumlu `+' ya da '=' içeriyor" -#: stmt.c:1199 stmt.c:1301 +#: stmt.c:1199 stmt.c:1298 #, c-format msgid "`%%' constraint used with last operand" msgstr "`%%' kısıtı son terimle kullanılmış" @@ -6578,125 +6578,121 @@ msgstr "`%%' kısıtı son terimle kullanılmış" msgid "matching constraint not valid in output operand" msgstr "eşleşen kısıt çıktı teriminde geçerli değil" -#: stmt.c:1260 -msgid "read-write constraint does not allow a register" -msgstr "" - -#: stmt.c:1292 +#: stmt.c:1289 #, c-format msgid "input operand constraint contains `%c'" msgstr "girdi terimi kısıtı `%c' içeriyor" -#: stmt.c:1334 +#: stmt.c:1331 msgid "matching constraint references invalid operand number" msgstr "kısıt referansları geçersiz terim numaraları eşleştiriyor" -#: stmt.c:1372 +#: stmt.c:1369 #, c-format msgid "invalid punctuation `%c' in constraint" msgstr "koşul içindeki `%c' işareti geçersiz" -#: stmt.c:1396 +#: stmt.c:1393 msgid "matching constraint does not allow a register" -msgstr "" +msgstr "eşleşen kısıt bir yazmaca izin vermez" -#: stmt.c:1424 +#: stmt.c:1421 #, 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:1514 +#: stmt.c:1511 #, c-format msgid "unknown register name `%s' in `asm'" msgstr "`asm' içindeki yazmaç ismi `%s' bilinmiyor" -#: stmt.c:1522 +#: stmt.c:1519 #, c-format msgid "PIC register `%s' clobbered in `asm'" -msgstr "" +msgstr "PIC yazmacı %s `asm' içinde taşmış" -#: stmt.c:1571 +#: stmt.c:1568 #, c-format msgid "more than %d operands in `asm'" msgstr "`asm' içinde %d terimden fazlası var" -#: stmt.c:1633 +#: stmt.c:1630 #, c-format msgid "output number %d not directly addressable" msgstr "çıktı numarası %d doğrudan adreslenebilir değil" -#: stmt.c:1711 +#: stmt.c:1708 #, c-format msgid "asm operand %d probably doesn't match constraints" msgstr "asm terimi %d belki şartlara uymaz" -#: stmt.c:1721 +#: stmt.c:1718 #, 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:1875 +#: stmt.c:1872 msgid "asm clobber conflict with output operand" msgstr "asm taşırıcı çıkış terimi ile çelişiyor" -#: stmt.c:1880 +#: stmt.c:1877 msgid "asm clobber conflict with input operand" msgstr "asm taşırıcı giriş terimi ile çelişiyor" -#: stmt.c:1914 +#: stmt.c:1911 msgid "too many alternatives in `asm'" msgstr "`asm' içindeki almaşıkların sayısı çok fazla" -#: stmt.c:1926 +#: stmt.c:1923 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:1978 +#: stmt.c:1975 #, c-format msgid "duplicate asm operand name '%s'" msgstr "terim ismi '%s' yinelenmiş" -#: stmt.c:2076 +#: stmt.c:2073 msgid "missing close brace for named operand" msgstr "isimi terim için kapama parantezi eksik" -#: stmt.c:2104 +#: stmt.c:2101 #, c-format msgid "undefined named operand '%s'" msgstr "tanımlanmamış isimli terim '%s'" -#: stmt.c:2161 +#: stmt.c:2158 msgid "%Hstatement with no effect" -msgstr "" +msgstr "%Hdeyim etkisiz" -#: stmt.c:2317 +#: stmt.c:2314 msgid "%Hvalue computed is not used" -msgstr "" +msgstr "%Hhesaplanan değer kullanılmadı" -#: stmt.c:3733 +#: stmt.c:3730 msgid "%Junused variable '%D'" -msgstr "" +msgstr "%J '%D' değişkeni kullanılmadı" -#: stmt.c:4508 +#: stmt.c:4505 msgid "%Hunreachable code at beginning of %s" msgstr "%s başlangıcında kod erişilebilir değil %H" -#: stmt.c:5136 +#: stmt.c:5133 #, c-format msgid "enumeration value `%s' not handled in switch" msgstr "sembolik sabit grubu değeri `%s' switch deyiminde elde edilemedi" -#: stmt.c:5161 stmt.c:5181 +#: stmt.c:5158 stmt.c:5178 #, c-format msgid "case value `%ld' not in enumerated type" msgstr "case değeri `%ld' sembolik sabit grubunda değil" -#: stmt.c:5164 stmt.c:5184 +#: stmt.c:5161 stmt.c:5181 #, 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:5401 +#: stmt.c:5398 msgid "switch missing default case" msgstr "switch içinde default eksik" @@ -6728,25 +6724,25 @@ msgstr "%J paketli öznitelik `%D' için gereksiz" msgid "%Jpadding struct to align '%D'" msgstr "" -#: stor-layout.c:1245 +#: stor-layout.c:1244 msgid "padding struct size to alignment boundary" msgstr "yapı boyutu hizalama sınırlarına ayarlanıyor" -#: stor-layout.c:1275 +#: stor-layout.c:1274 #, c-format msgid "packed attribute causes inefficient alignment for `%s'" msgstr "paketli öznitelik `%s' için yetersiz hizalama yapar" -#: stor-layout.c:1277 +#: stor-layout.c:1276 #, c-format msgid "packed attribute is unnecessary for `%s'" msgstr "paketli öznitelik `%s' için gereksiz" -#: stor-layout.c:1282 +#: stor-layout.c:1281 msgid "packed attribute causes inefficient alignment" msgstr "paketli öznitelik yetersiz hizalama yapar" -#: stor-layout.c:1284 +#: stor-layout.c:1283 msgid "packed attribute is unnecessary" msgstr "paketli öznitelik gereksiz" @@ -6819,12 +6815,12 @@ msgstr "seçenek argümanı `%s' geçersiz" #: toplev.c:1373 #, c-format msgid "getting core file size maximum limit: %m" -msgstr "" +msgstr "core dosyasının boyu azami sınıra getiriliyor: %m" #: toplev.c:1376 #, c-format msgid "setting core file size limit to maximum: %m" -msgstr "" +msgstr "core dosyasının boyut sınırı azami değere ayarlanıyor: %m" #: toplev.c:1695 msgid "%J'%F' used but never defined" @@ -6864,7 +6860,7 @@ msgstr "yazmaç değişkeni için yazmaç ismi `%s' geçersiz" #: toplev.c:3546 msgid "branch target register load optimization is not intended to be run twice" -msgstr "" +msgstr "dallanma hedef yazmacı yük eniyilemesi iki kere çalışacak şekilde tasarlanmadı" #: toplev.c:3713 msgid "" @@ -6896,7 +6892,7 @@ msgstr " Var fakat daha belgelendirilmedi.\n" msgid "unrecognized gcc debugging option: %c" msgstr "tanınmayan gcc hata ayıklama seçeneği: %c" -#: toplev.c:3874 config/rs6000/rs6000.c:907 +#: toplev.c:3874 config/rs6000/rs6000.c:922 #, c-format msgid "invalid option `%s'" msgstr "`%s' seçeneği geçersiz" @@ -6925,27 +6921,27 @@ msgstr "belirtilen seçenekler: " msgid "options enabled: " msgstr "etkin seçenekler: " -#: toplev.c:4035 java/jcf-write.c:3422 +#: toplev.c:4035 java/jcf-write.c:3424 #, c-format msgid "can't open %s for writing: %m" msgstr "%s yazmak için açılamıyor: %m" -#: toplev.c:4118 config/sh/sh.c:6883 +#: toplev.c:4118 config/sh/sh.c:7019 msgid "created and used with different settings of -fpic" -msgstr "" +msgstr "-fpic'in farklı ayarları ile oluşturulup kullanıldı" -#: toplev.c:4120 config/sh/sh.c:6885 +#: toplev.c:4120 config/sh/sh.c:7021 msgid "created and used with different settings of -fpie" -msgstr "" +msgstr "-fpie'in farklı ayarları ile oluşturulup kullanıldı" -#: toplev.c:4171 config/sh/sh.c:6935 +#: toplev.c:4171 config/sh/sh.c:7071 #, c-format msgid "created and used with differing settings of `-m%s'" -msgstr "" +msgstr "`-m%s''in farklı ayarları ile oluşturulup kullanıldı" -#: toplev.c:4174 config/sh/sh.c:6938 +#: toplev.c:4174 config/sh/sh.c:7074 msgid "out of memory" -msgstr "" +msgstr "bellek yetersiz" #: toplev.c:4355 msgid "instruction scheduling not supported on this target machine" @@ -6998,7 +6994,7 @@ msgstr "-ffunction-sections bazı hedeflerde hata ayıklamayı etkileyebilir" msgid "error writing to %s: %m" msgstr "%s e yazarken hata: %m" -#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429 +#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3431 #, c-format msgid "error closing %s: %m" msgstr "%s kapatılırken hata: %m" @@ -7015,35 +7011,35 @@ msgstr "bilinmeyen `%.*s' `-fdump-%s' için yoksayılıyor" #: tree-inline.c:1016 msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)" -msgstr "" +msgstr "%J '%F' işlevi alloca kullandığından satıriçine alınamaz (always_inline özniteliği ile zorlanabilir)" #: tree-inline.c:1029 msgid "%Jfunction '%F' can never be inlined because it uses setjmp" -msgstr "" +msgstr "%J '%F' işlevi setjmp kullandığından satıriçine alınamaz" #: tree-inline.c:1044 msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists" -msgstr "" +msgstr "%J '%F' işlevi değişken argüman listesi kullandığından satıriçine alınamaz" #: tree-inline.c:1060 msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling" -msgstr "" +msgstr "%J '%F' işlevi setjmp-longjmp olağandışılık eylemcisi kullandığından satıriçine alınamaz" #: tree-inline.c:1078 msgid "%Jfunction '%F' can never be inlined because it contains a nested function" -msgstr "" +msgstr "%J '%F' işlevi kendi içinde bir işlev içerdiğinden satıriçine alınamaz" #: tree-inline.c:1095 msgid "%Jfunction '%F' can never be inlined because it contains a computed goto" -msgstr "" +msgstr "%J '%F' işlevi bir hesaplanmış goto içerdiğinden satıriçine alınamaz." #: tree-inline.c:1105 msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto" -msgstr "" +msgstr "%J '%F' işlevi yerel olmayan goto içerdiğinden satıriçine alınamaz" #: tree-inline.c:1128 msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables" -msgstr "" +msgstr "%J '%F' işlevi değişken boyutlu değişkenler kullandığından satıriçine alınamaz" #: tree-inline.c:1338 tree-inline.c:1345 msgid "%Jinlining failed in call to '%F': %s" @@ -7057,34 +7053,34 @@ msgstr "%J `%D' dönüş değerinin uzunluğu %u bayt" msgid "%Jsize of return value of '%D' is larger than %wd bytes" msgstr "%J `%D' için dönen değerin genişliği %wd bayttan büyük" -#: tree.c:3800 +#: tree.c:3801 msgid "arrays of functions are not meaningful" msgstr "işlev dizileri anlamlı değil" -#: tree.c:3855 +#: tree.c:3856 msgid "function return type cannot be function" msgstr "işlevin dönen değer türü işlev olamaz" -#: tree.c:4684 +#: tree.c:4685 msgid "invalid initializer for bit string" msgstr "bit dizge için ilklendirici geçersiz" -#: tree.c:4736 +#: tree.c:4737 #, 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:4749 +#: tree.c:4750 #, 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:4762 +#: tree.c:4763 #, 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" -#: tree.c:4774 +#: tree.c:4775 #, c-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "ağaç denetimi: %5$s:%6$d: %4$s'in %3$d terimi ile %2$s'in %1$d. terimine erişildi" @@ -7221,7 +7217,7 @@ msgstr "pardon, daha gerçekleştirilmedi: " #: diagnostic.def:6 msgid "anachronism: " -msgstr "" +msgstr "yanlış zamanlama:" #: diagnostic.def:7 msgid "note: " @@ -7229,7 +7225,7 @@ msgstr "bilgi: " #: diagnostic.def:8 msgid "debug: " -msgstr "" +msgstr "hata ayıklama:" #: params.def:53 msgid "The maximum number of instructions in a single function eligible for inlining" @@ -7268,7 +7264,7 @@ msgstr "" #: params.def:112 msgid "The size of function body to be considered large" -msgstr "" +msgstr "İşlev gövdesinin büyük olduğu varsayılır" #: params.def:116 msgid "Maximal growth due to inlining of large function (in percent)" @@ -7276,7 +7272,7 @@ msgstr "Büyük işlevlerin özümlenmesi nedeniyle oluşan en yüksek büyüme #: params.def:120 msgid "how much can given compilation unit grow because of the inlining (in percent)" -msgstr "" +msgstr "satıriçine almadan dolayı belirtilen hesaplama biriminin büyüme oranı" #: params.def:127 msgid "The maximum amount of memory to be allocated by GCSE" @@ -7401,7 +7397,7 @@ msgstr "" #: params.def:248 msgid "The maximum memory locations recorded by cselib" -msgstr "" +msgstr "cselib tarafından kaydedilmiş azami bellek konumu" #: params.def:261 msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap" @@ -7418,7 +7414,7 @@ msgstr "" #: params.def:275 msgid "The maximum number of instructions to search backward when looking for equivalent reload" -msgstr "" +msgstr "Eşdeğer yeniden yükleme için bakılırken geriye doğru aranacak komutların azami sayısı" #: config/darwin-c.c:75 msgid "too many #pragma options align=reset" @@ -7463,7 +7459,7 @@ msgstr "-msystem-v ile -mthreads uyumsuz" #: config/windiss.h:37 msgid "profiler support for WindISS" -msgstr "" +msgstr "WindISS için profil desteği" #: config/alpha/alpha.c:231 #, c-format @@ -7493,7 +7489,7 @@ msgstr "-mfp-rounding-mode seçeneği için `%s' değeri hatalı" 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:324 config/rs6000/rs6000.c:1070 +#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1088 #, c-format msgid "bad value `%s' for -mtls-size switch" msgstr "-mtls-size seçeneği için `%s' değeri hatalı" @@ -7543,24 +7539,24 @@ msgstr "%%H değeri geçersiz" msgid "invalid %%J value" msgstr "%%J değeri geçersiz" -#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260 +#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4263 #, c-format msgid "invalid %%r value" msgstr "%%r değeri geçersiz" -#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012 -#: config/xtensa/xtensa.c:2013 +#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9241 +#: config/xtensa/xtensa.c:2014 #, c-format msgid "invalid %%R value" msgstr "%%R değeri geçersiz" -#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931 -#: config/xtensa/xtensa.c:1980 +#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:9160 +#: config/xtensa/xtensa.c:1981 #, c-format msgid "invalid %%N value" msgstr "%%N değeri geçersiz" -#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959 +#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:9188 #, c-format msgid "invalid %%P value" msgstr "%%P değeri geçersiz" @@ -7570,17 +7566,17 @@ msgstr "%%P değeri geçersiz" msgid "invalid %%h value" msgstr "%%h değeri geçersiz" -#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006 +#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2007 #, c-format msgid "invalid %%L value" msgstr "%%L değeri geçersiz" -#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913 +#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:9142 #, c-format msgid "invalid %%m value" msgstr "%%m değeri geçersiz" -#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921 +#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:9150 #, c-format msgid "invalid %%M value" msgstr "%%M değeri geçersiz" @@ -7591,7 +7587,7 @@ msgid "invalid %%U value" msgstr "%%U değeri geçersiz" #: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619 -#: config/rs6000/rs6000.c:9020 +#: config/rs6000/rs6000.c:9249 #, c-format msgid "invalid %%s value" msgstr "%%s değeri geçersiz" @@ -7601,7 +7597,8 @@ msgstr "%%s değeri geçersiz" msgid "invalid %%C value" msgstr "%%C değeri geçersiz" -#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770 +#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8979 +#: config/rs6000/rs6000.c:8999 #, c-format msgid "invalid %%E value" msgstr "%%E değeri geçersiz" @@ -7610,7 +7607,7 @@ msgstr "%%E değeri geçersiz" msgid "unknown relocation unspec" msgstr "bilinmeyen yerdeğişim belirtilmemiş" -#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333 +#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9562 #, c-format msgid "invalid %%xn code" msgstr "%%xn değeri geçersiz" @@ -7770,17 +7767,17 @@ msgstr "`%s' in argümanı bir sabit dizge değil" 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:1714 config/m32r/m32r.c:2325 +#: config/arc/arc.c:1714 config/m32r/m32r.c:2352 #, c-format msgid "invalid operand to %%R code" msgstr "%%R kodu için terim geçersiz" -#: config/arc/arc.c:1746 config/m32r/m32r.c:2348 +#: config/arc/arc.c:1746 config/m32r/m32r.c:2375 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "%%H/%%L kodu için terim geçersiz" -#: config/arc/arc.c:1769 config/m32r/m32r.c:2419 +#: config/arc/arc.c:1769 config/m32r/m32r.c:2446 #, c-format msgid "invalid operand to %%U code" msgstr "%%U kodu için terim geçersiz" @@ -7791,7 +7788,7 @@ msgid "invalid operand to %%V code" msgstr "%%V kodu için terim geçersiz" #. Unknown flag. -#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985 +#: config/arc/arc.c:1787 config/m32r/m32r.c:2473 config/sparc/sparc.c:7010 msgid "invalid operand output code" msgstr "çıkış kodu için geçersiz veri öğesi" @@ -7800,7 +7797,7 @@ msgstr "çıkış kodu için geçersiz veri öğesi" msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "switch -mcpu=%s ile -march= seçenekleri çelişiyor" -#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424 +#: config/arm/arm.c:530 config/rs6000/rs6000.c:767 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ı" @@ -7823,7 +7820,7 @@ msgstr "hedef MİB THUMB komutlarını desteklemez." #: config/arm/arm.c:694 msgid "future releases of GCC will not support -mapcs-26" -msgstr "" +msgstr "GCC'nin gelecek sürümleri -mapcs-26 seçeneğini desteklemeyecek" #: config/arm/arm.c:706 msgid "enabling backtrace support is only meaningful when compiling for the Thumb" @@ -7884,12 +7881,12 @@ msgid "unable to use '%s' for PIC register" msgstr "PIC yazmacı için '%s' kullanılamıyor" #: 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/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1592 +#: config/i386/i386.c:1638 config/ip2k/ip2k.c:3169 +#: config/m68hc11/m68hc11.c:1311 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 +#: config/rs6000/rs6000.c:14866 config/sh/sh.c:6873 config/sh/sh.c:6894 +#: config/sh/sh.c:6929 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" @@ -7904,7 +7901,7 @@ msgid "selector must be an immediate" msgstr "seçici bir şimdiki değer olmalı" #. @@@ better error message -#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334 +#: config/arm/arm.c:11284 config/i386/i386.c:14317 config/i386/i386.c:14351 msgid "mask must be an immediate" msgstr "mask bir dolaysız değer olmalı" @@ -8661,7 +8658,7 @@ msgstr "elinux için, bu programa belirli bir yığın boyutu isteniyor" #: config/cris/cris.h:362 msgid "Work around bug in multiplication instruction" -msgstr "" +msgstr "Çarpma komutundaki hatanın etrafından dolanılır" #. 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:368 @@ -9268,176 +9265,176 @@ msgstr "char komutları üretilir" msgid "Do not generate char instructions" msgstr "char komutları üretilmez" -#: config/i386/i386.c:1170 +#: config/i386/i386.c:1179 #, c-format msgid "code model %s not supported in PIC mode" msgstr "PIC kipinde %s kod modeli desteklenmiyor" -#: config/i386/i386.c:1180 config/sparc/sparc.c:387 +#: config/i386/i386.c:1189 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:1195 +#: config/i386/i386.c:1204 #, c-format msgid "bad value (%s) for -masm= switch" msgstr "-masm= seçeneğinin değeri (%s) hatalı" -#: config/i386/i386.c:1198 +#: config/i386/i386.c:1207 #, 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:1201 +#: config/i386/i386.c:1210 msgid "code model `large' not supported yet" msgstr "'büyük' kod modeli henüz desteklenmiyor" -#: config/i386/i386.c:1203 +#: config/i386/i386.c:1212 #, c-format msgid "%i-bit mode not compiled in" msgstr "%i bitlik kip bunun içinde derlenmiş değil:" -#: config/i386/i386.c:1230 config/i386/i386.c:1242 +#: config/i386/i386.c:1242 config/i386/i386.c:1254 msgid "CPU you selected does not support x86-64 instruction set" msgstr "Seçtiğiniz işlemci x86-64 komutlarını desteklemiyor." -#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840 +#: config/i386/i386.c:1247 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:1248 +#: config/i386/i386.c:1260 #, c-format msgid "bad value (%s) for -mtune= switch" msgstr "-mtune= seçeneğinin değeri (%s) hatalı" -#: config/i386/i386.c:1265 +#: config/i386/i386.c:1277 #, 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:1278 +#: config/i386/i386.c:1290 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:1283 config/i386/i386.c:1296 config/i386/i386.c:1309 +#: config/i386/i386.c:1295 config/i386/i386.c:1308 config/i386/i386.c:1321 #, 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:1291 +#: config/i386/i386.c:1303 msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "-malign-jumps eskidir, yerine -falign-jumps kullanın" -#: config/i386/i386.c:1304 +#: config/i386/i386.c:1316 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:1342 +#: config/i386/i386.c:1354 #, 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:1354 +#: config/i386/i386.c:1366 #, 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:1366 +#: config/i386/i386.c:1378 #, c-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "-mtls-dialect= seçeneğinin değeri (%s) hatalı" -#: config/i386/i386.c:1395 +#: config/i386/i386.c:1407 msgid "-malign-double makes no sense in the 64bit mode" msgstr "-malign-double 64bitlik kipte iş yapmaz" -#: config/i386/i386.c:1397 +#: config/i386/i386.c:1409 msgid "-mrtd calling convention not supported in the 64bit mode" msgstr "64bitlik kipte -mrtd çağrı uzlaşımı desteklenmiyor" -#: config/i386/i386.c:1419 config/i386/i386.c:1430 +#: config/i386/i386.c:1431 config/i386/i386.c:1442 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:1435 +#: config/i386/i386.c:1447 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:1442 +#: config/i386/i386.c:1454 #, c-format msgid "bad value (%s) for -mfpmath= switch" msgstr "-mfpmath= seçeneğinin değeri (%s) hatalı" -#: config/i386/i386.c:1590 config/i386/i386.c:1601 +#: config/i386/i386.c:1602 config/i386/i386.c:1613 msgid "fastcall and stdcall attributes are not compatible" msgstr "fastcall ve stdcall öznitelikleri uyumsuz" -#: config/i386/i386.c:1594 config/i386/i386.c:1650 +#: config/i386/i386.c:1606 config/i386/i386.c:1662 msgid "fastcall and regparm attributes are not compatible" msgstr "fastcall ve regparm nitelikleri uyumlu değil" -#: config/i386/i386.c:1637 +#: config/i386/i386.c:1649 #, c-format msgid "`%s' attribute requires an integer constant argument" msgstr "`%s' özniteliği bir tamsayı sabit argüman gerektirir" -#: config/i386/i386.c:1643 +#: config/i386/i386.c:1655 #, 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:2605 +#: config/i386/i386.c:2621 msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "SSE etkinleştirilmeksizin, SSE vektör argümanı ABI'yi değitirir" -#: config/i386/i386.c:2621 +#: config/i386/i386.c:2637 msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "MMX etkinleştirilmeksizin, MMX vektör argümanı ABI'yi değitirir" -#: config/i386/i386.c:2849 +#: config/i386/i386.c:2865 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:6823 +#: config/i386/i386.c:6840 msgid "invalid UNSPEC as operand" msgstr "veri öğesi olarak UNSPEC geçersiz" -#: config/i386/i386.c:7081 +#: config/i386/i386.c:7098 msgid "extended registers have no high halves" msgstr "ek yazmaçların yüksek yarıları yok" -#: config/i386/i386.c:7096 +#: config/i386/i386.c:7113 msgid "unsupported operand size for extended register" msgstr "ek yazmaç için desteklenmeyen terim boyutu" -#: config/i386/i386.c:7411 +#: config/i386/i386.c:7428 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:7457 +#: config/i386/i386.c:7474 #, c-format msgid "invalid operand code `%c'" msgstr "terim kodu `%c' geçersiz" -#: config/i386/i386.c:7500 +#: config/i386/i386.c:7517 msgid "invalid constraints for operand" msgstr "kısıtlar terim için geçersiz" -#: config/i386/i386.c:12014 +#: config/i386/i386.c:12031 msgid "unknown insn mode" msgstr "bilinmeyen komut kipi" -#: config/i386/i386.c:14102 config/i386/i386.c:14138 +#: config/i386/i386.c:14119 config/i386/i386.c:14155 #, c-format msgid "selector must be an integer constant in the range 0..%i" msgstr "seçici 0..%i aralığında bir tamsayı sabit olmalı" -#: config/i386/i386.c:14366 +#: config/i386/i386.c:14383 msgid "shift must be an immediate" msgstr "shift bir dolaysız değer olmalı" -#: config/i386/i386.c:15389 +#: config/i386/i386.c:15406 #, c-format msgid "`%s' incompatible attribute ignored" msgstr "`%s' uyumusuz özelliği yoksayıldı" @@ -9496,43 +9493,43 @@ msgstr "%J '%D' dllimport ilintileme ile ilişkilendirildikten sonra dllimport msgid "%J'%D' causes a section type conflict" msgstr "%J %D bir bölüm türü çelişkiye sebep oluyor" -#: config/i386/cygming.h:40 +#: config/i386/cygming.h:42 msgid "Use the Cygwin interface" msgstr "Cygwin arayüzü kullanılır" -#: config/i386/cygming.h:41 +#: config/i386/cygming.h:43 msgid "Use the Mingw32 interface" msgstr "Mingw32 arayüzü kullanılır" -#: config/i386/cygming.h:42 +#: config/i386/cygming.h:44 msgid "Create GUI application" msgstr "GKA uygulaması oluşturur" -#: config/i386/cygming.h:43 +#: config/i386/cygming.h:45 msgid "Don't set Windows defines" msgstr "Windows atamaları ayarlanmaz" -#: config/i386/cygming.h:44 +#: config/i386/cygming.h:46 msgid "Set Windows defines" msgstr "Windows atamaları ayarlanır" -#: config/i386/cygming.h:45 +#: config/i386/cygming.h:47 msgid "Create console application" msgstr "Konsol uygulaması oluşturulur" -#: config/i386/cygming.h:46 +#: config/i386/cygming.h:48 msgid "Generate code for a DLL" msgstr "Bir DLL için kod üretilir" -#: config/i386/cygming.h:48 +#: config/i386/cygming.h:50 msgid "Ignore dllimport for functions" msgstr "İşlevler için dllimport yoksayılır" -#: config/i386/cygming.h:50 +#: config/i386/cygming.h:52 msgid "Use Mingw-specific thread support" msgstr "Mingw'e özgü evre desteğini etkinleştirir" -#: config/i386/cygming.h:169 +#: config/i386/cygming.h:171 #, 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)" @@ -9713,11 +9710,11 @@ msgstr "32bit i386 kodu üretilir" #: config/i386/i386.h:417 msgid "Use native (MS) bitfield layout" -msgstr "" +msgstr "Doğal (MS) bitalanı yerleşimi kullanılır" #: config/i386/i386.h:419 msgid "Use gcc default bitfield layout" -msgstr "" +msgstr "gcc'nin öntanımlı bitalanı yerleşimi kullanılır" #: config/i386/i386.h:421 msgid "Use red-zone in the x86-64 code" @@ -9730,12 +9727,12 @@ msgstr "x86-64 kodda red-zone kullanılmaz" #: config/i386/i386.h:425 #, c-format msgid "Use direct references against %gs when accessing tls data" -msgstr "" +msgstr "TLS verisine erişilirken %gs karşılığı doğrudan referaslar kullanılır" #: config/i386/i386.h:427 #, c-format msgid "Do not use direct references against %gs when accessing tls data" -msgstr "" +msgstr "TLS verisine erişilirken %gs karşılığı doğrudan referaslar kullanılmaz" #. This macro is similar to `TARGET_SWITCHES' but defines names of #. command options that have values. Its definition is an @@ -9746,7 +9743,7 @@ 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:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437 +#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:449 #: config/s390/s390.h:146 config/sparc/sparc.h:656 msgid "Schedule code for given CPU" msgstr "Verilen MİB için kodu zamanlar" @@ -9868,7 +9865,7 @@ msgstr "çelişkili mimariler atanmış - K serisi kullanılıyor" 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:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364 +#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11597 msgid "stack limit expression is not supported" msgstr "yığın sınırlama ifadesi desteklenmiyor" @@ -9991,8 +9988,8 @@ msgstr "Türler Intel's v1.3 gcc gibi yerleştirilir" 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:333 config/sparc/freebsd.h:80 config/sparc/linux.h:91 -#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215 +#: config/i960/i960.h:333 config/sparc/freebsd.h:81 config/sparc/linux.h:91 +#: config/sparc/linux64.h:106 config/sparc/netbsd-elf.h:215 msgid "Use 64 bit long doubles" msgstr "64 bit long double'lar kullanılır" @@ -10025,41 +10022,41 @@ msgstr "%J '%s' adres alanı önceki bildirimle çelişiyor" msgid "%Jaddress area attribute cannot be specified for functions" msgstr "%J adres alanı özelliği işlevler için belirtilemez" -#: config/ia64/ia64.c:4305 +#: config/ia64/ia64.c:4308 msgid "ia64_print_operand: unknown code" msgstr "ia64_print_operand: bilinmeyen kod" -#: config/ia64/ia64.c:4645 +#: config/ia64/ia64.c:4648 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:4672 +#: config/ia64/ia64.c:4675 #, c-format msgid "%s-%s is an empty range" msgstr "%s-%s aralığı boş" -#: config/ia64/ia64.c:4720 +#: config/ia64/ia64.c:4723 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:4726 +#: config/ia64/ia64.c:4729 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:4732 +#: config/ia64/ia64.c:4735 msgid "cannot optimize square root for both latency and throughput" msgstr "karekök hem iş geçişi hem de gecikme için eniyilenemez" -#: config/ia64/ia64.c:4738 +#: config/ia64/ia64.c:4741 msgid "not yet implemented: latency-optimized inline square root" -msgstr "" +msgstr "henüz gerçeklenmedi: gecikme eniyilemeli satıriçi karekök alma" -#: config/ia64/ia64.c:4750 +#: config/ia64/ia64.c:4753 #, c-format msgid "bad value (%s) for -mtls-size= switch" msgstr "-mtls-size= seçeneğinin değeri (%s) hatalı" -#: config/ia64/ia64.c:4766 +#: config/ia64/ia64.c:4769 #, c-format msgid "bad value (%s) for -tune= switch" msgstr "-tune= seçeneğinin değeri (%s) hatalı" @@ -10149,7 +10146,7 @@ msgstr "Satıriçi karekök üretir, geciktirme için eniyilenir" #: config/ia64/ia64.h:212 msgid "Generate inline square root, optimize for throughput" -msgstr "" +msgstr "Satıriçi karekök üretir, iş geçişi için eniyilenir" #: config/ia64/ia64.h:214 msgid "Enable Dwarf 2 line debug info via GNU as" @@ -10161,11 +10158,11 @@ msgstr "GNU as yoluyla Dwarf 2 hata ayıklama satır bilgilerini etkisizleştiri #: config/ia64/ia64.h:218 msgid "Enable earlier placing stop bits for better scheduling" -msgstr "" +msgstr "Daha iyi zamanlama için stop bitlerinin daha önce yerleştirilmesi etkin olur" #: config/ia64/ia64.h:220 msgid "Disable earlier placing stop bits" -msgstr "" +msgstr "Stop bitlerinin daha önce yerleştirilmesi iptal edilir" #: config/ia64/ia64.h:265 msgid "Specify range of registers to make fixed" @@ -10195,7 +10192,7 @@ msgstr "gp_offset (%ld) veya end_offset (%ld) sıfırdan küçük." msgid "argument `%d' is not a constant" msgstr "`%d' argümanı bir sabit değil" -#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2095 +#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2096 msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "PRINT_OPERAND_ADDRESS, boş gösterici" @@ -10205,7 +10202,7 @@ msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "PRINT_OPERAND: '%c' noktalaması bilinmiyor" #: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464 -#: config/xtensa/xtensa.c:1949 +#: config/xtensa/xtensa.c:1950 msgid "PRINT_OPERAND null pointer" msgstr "PRINT_OPERAND boş gösterici" @@ -10214,7 +10211,7 @@ msgstr "PRINT_OPERAND boş gösterici" msgid "invalid %%P operand" msgstr "%%P terimi geçersiz" -#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949 +#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:9178 #, c-format msgid "invalid %%p value" msgstr "%%p değeri geçersiz" @@ -10275,89 +10272,89 @@ msgstr "-msdata seçeneğinin değeri (%s) hatalı" msgid "bad value (%s) for -flush-trap=n (0= friend typename S::X; -#: cp/friend.c:246 +#: cp/friend.c:250 msgid "typename type `%#T' declared `friend'" msgstr "tür ismi türü `%#T' `friend' olarak bildirilmiş" #. template friend class T; -#: cp/friend.c:252 +#: cp/friend.c:256 msgid "template parameter type `%T' declared `friend'" msgstr "şablon parametre türü `%T' `friend' olarak bildirilmiş" #. template friend class A; where A is not a template -#: cp/friend.c:258 +#: cp/friend.c:262 msgid "`%#T' is not a template" msgstr "`%#T' bir şablon değil" -#: cp/friend.c:277 +#: cp/friend.c:281 msgid "`%D' is already a friend of `%T'" msgstr "`%D' zaten `%T' nin kardeşi" -#: cp/friend.c:287 +#: cp/friend.c:291 msgid "`%T' is already a friend of `%T'" msgstr "`%T' zaten `%T' nin kardeşi" -#: cp/friend.c:409 +#: 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:465 +#: cp/friend.c:469 msgid "friend declaration `%#D' declares a non-template function" msgstr "kardeş bildirimi `%#D' bir şablon olmayan işlev bildiriyor" -#: cp/friend.c:468 +#: cp/friend.c:472 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" @@ -15194,7 +15195,7 @@ msgstr "bir küme türü ataması olarak `%T' hatalı" msgid "type `%T' is of non-aggregate type" msgstr "`%T' küme olmayan türde" -#: cp/init.c:1432 cp/typeck.c:1795 +#: cp/init.c:1432 cp/typeck.c:1818 msgid "qualified type `%T' does not match destructor name `~%T'" msgstr "yetkin tür `%T', yıkıcı ismi `~%T' ile eşleşmiyor" @@ -15230,72 +15231,71 @@ msgstr "array new içindeki boyut bütünleyici türde olmalı" msgid "zero size array reserves no space" msgstr "sıfır boyutlu dizi için yer ayrılmaz" -#: cp/init.c:1808 +#: cp/init.c:1809 msgid "new cannot be applied to a reference type" msgstr "new bir referans türe uygulanamaz" -#: cp/init.c:1814 +#: cp/init.c:1815 msgid "new cannot be applied to a function type" msgstr "new bir işlev türe uygulanamaz" -#: cp/init.c:1860 +#: cp/init.c:1861 msgid "call to Java constructor, while `jclass' undefined" msgstr "`jclass' tanımlanmamışken Java kurucusuna çağrı" -#: cp/init.c:1876 +#: cp/init.c:1877 msgid "can't find class$" msgstr "class$ bulunamıyor" -#: cp/init.c:2003 +#: cp/init.c:2004 msgid "invalid type `void' for new" msgstr "new için `void' türü geçersiz" -#: cp/init.c:2013 +#: cp/init.c:2014 msgid "uninitialized const in `new' of `%#T'" msgstr "`%#T' nin `new' u içinde ilklendirilmemiş sabit" -#: cp/init.c:2032 +#: cp/init.c:2033 #, c-format msgid "call to Java constructor with `%s' undefined" msgstr "`%s' li Java kurucusuna çağrı tanımsız" -#: cp/init.c:2073 +#. See PR 15967. This should never happen (and it is +#. fixed correctly in mainline), but on the release branch +#. we prefer this less-intrusive approacch. +#: cp/init.c:2077 +msgid "no suitable or ambiguous `%D' found in class `%T'" +msgstr "kullanışsız ya da belirsiz `%D' `%T' sınıfında bulundu" + +#: cp/init.c:2083 msgid "request for member `%D' is ambiguous" msgstr "üye `%D' için istek belirsiz" -#: cp/init.c:2193 +#: cp/init.c:2203 msgid "ISO C++ forbids initialization in array new" msgstr "ISO C++ da array new içinde ilklendirmeye izin verilmez" -#: cp/init.c:2667 +#: cp/init.c:2677 msgid "initializer ends prematurely" msgstr "ilklendirici erken sonlanıyor" -#: cp/init.c:2724 +#: cp/init.c:2734 msgid "cannot initialize multi-dimensional array with initializer" msgstr "çok boyutlu diziler ilklendiricilerle ilklendirilemez" -#: cp/init.c:2885 +#: cp/init.c:2895 msgid "possible problem detected in invocation of delete operator:" msgstr "silme işlecinin çağrısında bir sorun saptandı:" -#: cp/init.c:2888 -msgid "neither the destructor nor the class-specific " -msgstr "sınıf tanımlanırken bildirilmiş olsalar bile " +#: cp/init.c:2898 +msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined." +msgstr "Sınıf tanımlanırken bilfdirilmiş olsa bile, ne yıkıcı ne de sınıda özel silme işleci çağrılır." -#: cp/init.c:2889 -msgid "operator delete will be called, even if they are " -msgstr "ne yıkıcı ne de sınıfa özel " - -#: cp/init.c:2890 -msgid "declared when the class is defined." -msgstr "silme işleci çağrılabilir." - -#: cp/init.c:2909 +#: cp/init.c:2919 msgid "unknown array size in delete" msgstr "delete içindeki dizi boyutu bilinmiyor" -#: cp/init.c:3174 +#: cp/init.c:3184 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" @@ -15354,7 +15354,7 @@ msgstr "(her bildirimsiz tanımlayıcı sadece işlevin içinde ilk göründüğ #. 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 "" +msgstr "`%D' için bir şablon parametresine bağımlı bir argüman yok, o halde bir `%D' bildirimi olmalı." #: cp/lex.c:683 msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)" @@ -15366,7 +15366,7 @@ msgstr "çağrı ifadesi C++ ABI'deki bir bozukluktan dolayı anlamlandırılam #: cp/mangle.c:2090 msgid "omitted middle operand to `?:' operand cannot be mangled" -msgstr "" +msgstr "`?:' için ortadaki terim olmadığından yorumlanamadı" #: cp/mangle.c:2389 msgid "the mangled name of `%D' will change in a future version of GCC" @@ -15384,11 +15384,11 @@ msgstr "statik olmayan sabit üye `%#D', öntanımlı atama işleci kullanamaz" msgid "non-static reference member `%#D', can't use default assignment operator" msgstr "statik olmayan referans üyesi `%#D', öntanımlı atama işleci kullanamaz" -#: cp/name-lookup.c:660 +#: cp/name-lookup.c:671 msgid "`%#D' used prior to declaration" msgstr "`%#D' bildirim öncesi kullanılmış" -#: cp/name-lookup.c:691 +#: cp/name-lookup.c:702 msgid "redeclaration of `wchar_t' as `%T'" msgstr "`wchar_t' nin `%T' olarak yeniden bildirimi" @@ -15398,232 +15398,232 @@ msgstr "`wchar_t' nin `%T' olarak yeniden bildirimi" #. [basic.start.main] #. #. This function shall not be overloaded. -#: cp/name-lookup.c:723 +#: cp/name-lookup.c:734 msgid "invalid redeclaration of `%D'" msgstr "`%D'in" -#: cp/name-lookup.c:724 +#: cp/name-lookup.c:735 msgid "as `%D'" msgstr "`%D' olarak yeniden bildirimi geçersiz" -#: cp/name-lookup.c:812 +#: cp/name-lookup.c:823 msgid "type mismatch with previous external decl of `%#D'" msgstr "tür önceki `%#D' external bildirimle çatışıyor" -#: cp/name-lookup.c:813 +#: cp/name-lookup.c:824 msgid "previous external decl of `%#D'" msgstr "`%D'in önceki dış bildirimi" -#: cp/name-lookup.c:855 +#: cp/name-lookup.c:866 msgid "`%D' was previously implicitly declared to return `int'" msgstr "`%D' önceden dolaylı olarak dönüş değerine `int' bildirilmiş" -#: cp/name-lookup.c:913 +#: cp/name-lookup.c:924 msgid "extern declaration of `%#D' doesn't match" msgstr "`%#D' için extern bildirim uyumsuz" -#: cp/name-lookup.c:914 +#: cp/name-lookup.c:925 msgid "global declaration `%#D'" msgstr "`%#D' genel bildirimi" -#: cp/name-lookup.c:950 cp/name-lookup.c:957 +#: cp/name-lookup.c:961 cp/name-lookup.c:968 msgid "declaration of '%#D' shadows a parameter" msgstr "`%#D' bildirimi bir parametreyi gölgeliyor" #. Location of previous decl is not useful in this case. -#: cp/name-lookup.c:974 +#: cp/name-lookup.c:985 msgid "declaration of '%D' shadows a member of 'this'" msgstr "`%D' bildirimi bir `this' üyesini gölgeliyor" -#: cp/name-lookup.c:980 +#: cp/name-lookup.c:991 msgid "declaration of '%D' shadows a previous local" msgstr "`%D' bildirimi önceki yereli gölgeliyor" -#: cp/name-lookup.c:987 +#: cp/name-lookup.c:998 msgid "declaration of '%D' shadows a global declaration" msgstr "`%D' bildirimi bir genel bildirimi gölgeliyor" -#: cp/name-lookup.c:1156 +#: cp/name-lookup.c:1167 msgid "name lookup of `%D' changed" msgstr "`%D' isim araması değişti" -#: cp/name-lookup.c:1158 +#: cp/name-lookup.c:1169 msgid " matches this `%D' under ISO standard rules" msgstr " bu `%D' ISO standardının kuralları altında eşleşiyor" -#: cp/name-lookup.c:1160 +#: cp/name-lookup.c:1171 msgid " matches this `%D' under old rules" msgstr " bu `%D' eski kurallar altında eşleşiyor" -#: cp/name-lookup.c:1174 cp/name-lookup.c:1181 +#: cp/name-lookup.c:1185 cp/name-lookup.c:1192 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/name-lookup.c:1176 +#: cp/name-lookup.c:1187 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/name-lookup.c:1183 +#: cp/name-lookup.c:1194 msgid " using obsolete binding at `%D'" msgstr " `%D' deki modası geçmiş bağlantı kullanılıyor" -#: cp/name-lookup.c:1236 +#: cp/name-lookup.c:1247 #, c-format msgid "%s %s(%E) %p %d\n" msgstr "%s %s(%E) %p %d\n" -#: cp/name-lookup.c:1239 +#: cp/name-lookup.c:1250 #, c-format msgid "%s %s %p %d\n" msgstr "%s %s %p %d\n" -#: cp/name-lookup.c:1358 +#: cp/name-lookup.c:1369 msgid "XXX is_class_level != (current_scope == class_scope)\n" msgstr "XXX is_class_level != (current_scope == class_scope)\n" -#: cp/name-lookup.c:1996 +#: cp/name-lookup.c:2007 msgid "`%#D' hides constructor for `%#T'" msgstr "`%#D' `%#T' kurucusunu gizliyor" -#: cp/name-lookup.c:2011 +#: cp/name-lookup.c:2022 msgid "`%#D' conflicts with previous using declaration `%#D'" msgstr "`%#D' `%#D' bildiriminin önceki kullanımı ile çelişiyor" -#: cp/name-lookup.c:2023 +#: cp/name-lookup.c:2034 msgid "previous non-function declaration `%#D'" msgstr "önceki işlev olmayan bildirim `%#D'" -#: cp/name-lookup.c:2024 +#: cp/name-lookup.c:2035 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:2101 +#: cp/name-lookup.c:2112 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:2107 +#: cp/name-lookup.c:2118 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:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369 +#: cp/name-lookup.c:2126 cp/name-lookup.c:2140 cp/name-lookup.c:3380 msgid "`%T' is not a namespace" msgstr "`%T' bir isim alanı değil" -#: cp/name-lookup.c:2153 +#: cp/name-lookup.c:2164 msgid "`%D' not declared" msgstr "`%D' bildirilmemiş" #. If the OLD_FN was really declared, the #. declarations don't match. -#: cp/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244 +#: cp/name-lookup.c:2176 cp/name-lookup.c:2218 cp/name-lookup.c:2255 msgid "`%D' is already declared in this scope" msgstr "`%D' zaten bu bağlamda bildirilmiş" -#: cp/name-lookup.c:2250 +#: cp/name-lookup.c:2261 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:2412 cp/name-lookup.c:2431 +#: cp/name-lookup.c:2423 cp/name-lookup.c:2442 msgid "`%#D' redeclared as %C" msgstr "`%#D' %C olarak yeniden bildirilmiş" -#: cp/name-lookup.c:2804 +#: cp/name-lookup.c:2815 msgid "`%D' has the same name as the class in which it is declared" msgstr "`%D' kendisini bildiren sınıf ile aynı isimde" -#: cp/name-lookup.c:2891 +#: cp/name-lookup.c:2902 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:2898 +#: cp/name-lookup.c:2909 msgid "using-declaration cannot name destructor" msgstr "using bildirimi yıkıcıyı isimlendiremez" -#: cp/name-lookup.c:2994 +#: cp/name-lookup.c:3005 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:3034 +#: cp/name-lookup.c:3045 msgid "`%D' should have been declared inside `%D'" msgstr "`%D' zaten `%D' içinde bildirilmişti" -#: cp/name-lookup.c:3098 +#: cp/name-lookup.c:3109 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:3213 +#: cp/name-lookup.c:3224 msgid "unknown namespace `%D'" msgstr "bilinmeyen isim alanı `%D'" -#: cp/name-lookup.c:3363 +#: cp/name-lookup.c:3374 msgid "namespace `%T' undeclared" msgstr "isim alanı `%T' bildirimsiz" -#: cp/name-lookup.c:3396 +#: cp/name-lookup.c:3407 msgid "strong using only meaningful at namespace scope" -msgstr "" +msgstr "kesin kullanım sadece isimalanı kapsamında anlamlıdır" -#: cp/name-lookup.c:3403 +#: cp/name-lookup.c:3414 msgid "`%D' attribute directive ignored" msgstr "`%D' özellik yönergesi yoksayıldı" -#: cp/name-lookup.c:3536 +#: cp/name-lookup.c:3547 msgid "use of `%D' is ambiguous" msgstr "`%D' kullanımı belirsiz" -#: cp/name-lookup.c:3537 +#: cp/name-lookup.c:3548 msgid " first declared as `%#D' here" msgstr " ilk defa burada `%#D' olarak bildirilmiş" -#: cp/name-lookup.c:3540 +#: cp/name-lookup.c:3551 msgid " also declared as `%#D' here" msgstr " ayrıca burada da `%#D' olarak bildirilmiş" -#: cp/name-lookup.c:3555 +#: cp/name-lookup.c:3566 msgid "`%D' denotes an ambiguous type" msgstr "`%D' bir belirsiz tür gösteriyor" -#: cp/name-lookup.c:3556 +#: cp/name-lookup.c:3567 msgid "%J first type here" msgstr "%J ilk tür burada" -#: cp/name-lookup.c:3557 +#: cp/name-lookup.c:3568 msgid "%J other type here" msgstr "%J 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:3622 cp/typeck.c:1769 +#: cp/name-lookup.c:3633 cp/typeck.c:1792 msgid "invalid use of `%D'" msgstr "`%D' kullanımı geçersiz" -#: cp/name-lookup.c:3663 +#: cp/name-lookup.c:3674 msgid "`%D::%D' is not a template" msgstr "`%D::%D' bir şablon değil" -#: cp/name-lookup.c:3680 +#: cp/name-lookup.c:3691 msgid "`%D' undeclared in namespace `%D'" msgstr "`%D' isim alanı `%D' içinde bildirimsiz" -#: cp/name-lookup.c:4141 +#: cp/name-lookup.c:4153 msgid "`%D' is not a function," msgstr "`%D' bir işlev değil," -#: cp/name-lookup.c:4142 +#: cp/name-lookup.c:4154 msgid " conflict with `%D'" msgstr " `%D' ile çelişiyor" -#: cp/name-lookup.c:4882 +#: cp/name-lookup.c:4911 msgid "XXX entering pop_everything ()\n" msgstr "XXX, pop_everything () işlevine giriyor\n" -#: cp/name-lookup.c:4891 +#: cp/name-lookup.c:4920 msgid "XXX leaving pop_everything ()\n" msgstr "XXX, pop_everything () işlevini bırakıyor\n" @@ -15707,171 +15707,179 @@ msgstr "yerel değişken `%D' bu kapsamda görünemez" msgid "typedef-name `%D' used as destructor declarator" msgstr "typedef ismi `%D' yıkıcı bildiricisi olarak kullanılmış" -#: cp/parser.c:3635 +#: cp/parser.c:3638 msgid "ISO C++ forbids compound-literals" msgstr "ISO C++ da birleşik sabitlere izin verilmez" -#: cp/parser.c:4456 +#: cp/parser.c:4461 msgid "array bound forbidden after parenthesized type-id" msgstr "parantezli tür kimliğinden sonra dizi sınırı yasak" -#: cp/parser.c:4457 +#: cp/parser.c:4462 msgid "try removing the parentheses around the type-id" msgstr "tür kimliğini sarmalayan parantezleri kaldırmayı deneyin" -#: cp/parser.c:4619 +#: cp/parser.c:4624 msgid "expression in new-declarator must have integral or enumeration type" msgstr "new bildirimli ifade bütünleyici ya da numaralama türünde olmalı" -#: cp/parser.c:4800 +#: cp/parser.c:4805 msgid "use of old-style cast" msgstr "eski tarz tür dönüşümü" -#: cp/parser.c:5545 +#: cp/parser.c:5550 #, 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:6087 +#: cp/parser.c:6092 msgid "ISO C++ forbids computed gotos" msgstr "ISO C++ hesaplanmış goto'lara izin vermez" -#: cp/parser.c:6207 +#: cp/parser.c:6212 msgid "extra `;'" msgstr "`;' fazla" -#: cp/parser.c:6502 +#: cp/parser.c:6507 msgid "mixing declarations and function-definitions is forbidden" msgstr "karışık bildirimler ve işlev tanımları yasaktır" -#: cp/parser.c:6640 +#: cp/parser.c:6645 msgid "duplicate `friend'" msgstr "`friend' yinelenmiş" -#: cp/parser.c:6789 +#: cp/parser.c:6794 msgid "class definition may not be declared a friend" msgstr "sınıf tanımı kardeş olarak bildirilemez" -#: cp/parser.c:7104 +#: cp/parser.c:7109 msgid "only constructors take base initializers" msgstr "temel ilklendiricileri sadece kurucular alır" -#: cp/parser.c:7155 +#: cp/parser.c:7160 msgid "anachronistic old-style base class initializer" msgstr "artık tarih olmuş eski tarz temel sınıf ilklendiricisi" +#: cp/parser.c:7201 +msgid "keyword `typename' not allowed in this context (a qualified member initializer is implicitly a type)" +msgstr "`typename' anahtar sözcüğüne bu bağlamda izin verilmez (bir nitelikli üye ilklendirici örtük türde)" + #. Warn that we do not support `export'. -#: cp/parser.c:7548 +#: cp/parser.c:7563 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:7908 +#: cp/parser.c:7923 msgid "`<::' cannot begin a template-argument list" msgstr "`<::' bir şablon argüman listesi başlatamaz" -#: cp/parser.c:7909 +#: cp/parser.c:7924 msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'" msgstr "`<:', `[' için diğer gösterimdir. `<' ile `::' arasında boşluk bırakın" -#: cp/parser.c:7916 +#: cp/parser.c:7931 msgid "(if you use `-fpermissive' G++ will accept your code)" msgstr "(`-fpermissive' kullanırsanız G++ kodunuzu kabul edecek)" #. Explain what went wrong. -#: cp/parser.c:8088 +#: cp/parser.c:8106 msgid "non-template `%D' used as template" msgstr "şablon olarak şablon olmayan `%D' kullanılmış" -#: cp/parser.c:8089 -msgid "(use `%T::template %D' to indicate that it is a template)" -msgstr "(bir şablon olduğunu belirtmek için `%T::template %D' kullanın)" +#: cp/parser.c:8107 +msgid "use `%T::template %D' to indicate that it is a template" +msgstr "bir şablon olduğunu belirtmek için `%T::template %D' kullanın" -#: cp/parser.c:9026 +#: cp/parser.c:9058 msgid "using `typename' outside of template" msgstr "şablon dışında `typename' kullanımı" -#: cp/parser.c:9148 +#: cp/parser.c:9180 msgid "expected type-name" msgstr "burada tür ismi umuluyordu" -#: cp/parser.c:9207 +#: cp/parser.c:9239 msgid "type attributes are honored only at type definition" msgstr "tür öznitelikleri sadece tür tanımlarında uygulanabilir" #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:9590 +#: cp/parser.c:9622 msgid "a template-id may not appear in a using-declaration" msgstr "using bildiriminde bir şablon kimliği bulunamaz" -#: cp/parser.c:9917 +#: cp/parser.c:9949 msgid "an asm-specification is not allowed on a function-definition" msgstr "bir işlev tanımında bir asm belirtimine izin verilmez" -#: cp/parser.c:9919 +#: cp/parser.c:9951 msgid "attributes are not allowed on a function-definition" msgstr "bir işlev tanımıda özniteliklere izin verilmez" -#: cp/parser.c:10052 +#: cp/parser.c:10084 msgid "attributes after parenthesized initializer ignored" msgstr "parantezli ilklendiriciden sonraki öznitelikler yoksayıldı" -#: cp/parser.c:11254 +#: cp/parser.c:10540 +msgid "`%T::%D' is not a type" +msgstr "`%T::%D' bir tür değil" + +#: cp/parser.c:11288 msgid "file ends in default argument" msgstr "öntanımlı argüman içinde dosya sonu" -#: cp/parser.c:11310 +#: cp/parser.c:11344 msgid "deprecated use of default argument for parameter of non-function" msgstr "işlev olmayanın parametresi için öntanımlı argüman kullanımı artık geçersiz" -#: cp/parser.c:11313 +#: cp/parser.c:11347 msgid "default arguments are only permitted for function parameters" msgstr "Öntanımlı argümanlara sadece işlev parametresi olarak izin verilir" -#: cp/parser.c:12043 +#: cp/parser.c:12078 msgid "declaration of `%D' in `%D' which does not enclose `%D'" msgstr "`%D' bildirimi `%D' içinde ve bu `%D' yi kapsamıyor" -#: cp/parser.c:12056 +#: cp/parser.c:12091 msgid "extra qualification ignored" msgstr "fazladan niteleme yoksayıldı" -#: cp/parser.c:12067 +#: cp/parser.c:12102 msgid "an explicit specialization must be preceded by 'template <>'" msgstr "doğrudan özelleştirme `template <>' tarafından öncelenmeli" -#: cp/parser.c:12350 +#: cp/parser.c:12385 msgid "extra semicolon" msgstr "`;' fazla" -#: cp/parser.c:12368 +#: cp/parser.c:12403 msgid "a class-key must be used when declaring a friend" msgstr "bir kardeş bildirilirken bir sınıf anahtarı kullanılmalıdır" -#: cp/parser.c:12399 +#: cp/parser.c:12434 msgid "friend declaration does not name a class or function" msgstr "kardeş bildirimi bir sınıf veya işlevi isimlendirmiyor" -#: cp/parser.c:12570 +#: cp/parser.c:12605 msgid "pure-specifier on function-definition" msgstr "işlev tanımında saf belirteç" -#: cp/parser.c:12843 +#: cp/parser.c:12878 msgid "keyword `typename' not allowed outside of templates" msgstr "şablon dışında `typename' kullanımına izin verilmez" -#: cp/parser.c:12845 +#: cp/parser.c:12880 msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)" -msgstr "" +msgstr "`typename' anahtar sözcüğüne bu bağlamda izin verilmez (bir taban sınıf örtük türde)" -#: cp/parser.c:13665 +#: cp/parser.c:13700 msgid "reference to `%D' is ambiguous" msgstr "`%D' ile ilişkilendirme belirsiz" -#: cp/parser.c:13839 +#: cp/parser.c:13874 msgid "too few template-parameter-lists" msgstr "şablon parametresi listesi çok az" @@ -15879,44 +15887,44 @@ msgstr "şablon parametresi listesi çok az" #. something like: #. #. template template void S::f(); -#: cp/parser.c:13854 +#: cp/parser.c:13889 msgid "too many template-parameter-lists" msgstr "şablon parametresi listesi çok fazla" #. If begin_function_definition didn't like the definition, skip #. the entire function. -#: cp/parser.c:14146 +#: cp/parser.c:14185 msgid "invalid function declaration" msgstr "işlev bildirimi geçersiz" #. Issue an error message. -#: cp/parser.c:14183 +#: cp/parser.c:14222 msgid "named return values are no longer supported" msgstr "isimli dönüş değerleri artık desteklenmiyor" -#: cp/parser.c:14522 +#: cp/parser.c:14561 msgid "`>>' should be `> >' within a nested template argument list" msgstr "alt şablon argüman listesindeki `>>', `> >' 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:14530 +#: cp/parser.c:14569 msgid "spurious `>>', use `>' to terminate a template argument list" msgstr "sahte `>>', bir şablon argüman listesini sonlandırmak için `>' kullanın" -#: cp/parser.c:14535 +#: cp/parser.c:14574 msgid "missing `>' to terminate the template argument list" msgstr "şablon argüman listesini sonlandıracak '>' eksik" -#: cp/parser.c:15023 +#: cp/parser.c:15062 msgid "`%s' tag used in naming `%#T'" msgstr "`%s' etiketi `%#T' isimlemesinde kullanılmış" -#: cp/parser.c:15043 +#: cp/parser.c:15082 msgid "%D redeclared with different access" msgstr "`%D' farklı erişimle tekrar bildirilmiş" -#: cp/parser.c:15060 +#: cp/parser.c:15099 msgid "`template' (as a disambiguator) is only allowed within templates" msgstr "" @@ -16259,150 +16267,150 @@ msgstr "`%#T' için sınıf şablonu gerçeklemesi belirsiz" msgid "%s %+#T" msgstr "%s %+#T" -#: cp/pt.c:6307 cp/pt.c:6427 +#: cp/pt.c:6308 cp/pt.c:6428 msgid "instantiation of `%D' as type `%T'" msgstr "`%D' gerçeklemesi `%T' türünde" -#: cp/pt.c:6469 +#: cp/pt.c:6470 msgid "invalid parameter type `%T'" msgstr "geçersiz parametre türü `%T'" -#: cp/pt.c:6471 +#: cp/pt.c:6472 msgid "in declaration `%D'" msgstr "`%D' bildiriminde" -#: cp/pt.c:6545 +#: cp/pt.c:6546 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:6684 +#: cp/pt.c:6685 msgid "creating array with size zero" msgstr "dizi sıfır uzunlukta oluşturuluyor" -#: cp/pt.c:6698 +#: cp/pt.c:6699 #, c-format msgid "creating array with size zero (`%E')" msgstr "sıfır boyutlu dizi oluşturuluyor (`%E')" -#: cp/pt.c:6937 +#: cp/pt.c:6938 msgid "forming reference to void" msgstr "void'e referans oluşturuluyor" -#: cp/pt.c:6939 +#: cp/pt.c:6940 msgid "forming %s to reference type `%T'" msgstr "%s tür `%T'ye referans oluşturuyor" -#: cp/pt.c:6976 +#: cp/pt.c:6977 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:6982 +#: cp/pt.c:6983 msgid "creating pointer to member reference type `%T'" msgstr "`%T' üye referans türünde gösterici oluşturulması" -#: cp/pt.c:7068 +#: cp/pt.c:7069 msgid "creating array of `%T'" msgstr "`%T' dizisi oluşturulması" -#: cp/pt.c:7074 +#: cp/pt.c:7075 msgid "creating array of `%T', which is an abstract class type" msgstr "mutlak sınıf türünde olan `%T' dizininin oluşturulması" -#: cp/pt.c:7118 +#: cp/pt.c:7119 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:7231 +#: cp/pt.c:7232 #, c-format msgid "use of `%s' in template" msgstr "şablonda `%s' kullanımı" -#: cp/pt.c:7344 +#: cp/pt.c:7345 #, c-format msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type" msgstr "`%E' bağımlı ismi bir tür olarak çözümlenmedi ama gerçekleme onun bir tür olmasını istiyor" -#: cp/pt.c:7346 +#: cp/pt.c:7347 #, c-format msgid "say `typename %E' if a type is meant" msgstr "eğer bu bir türdür anlamında kullandıysanız `typename %E' deyin" -#: cp/pt.c:8609 +#: cp/pt.c:8613 msgid "`%T' uses anonymous type" msgstr "`%T' anonim tür kullanıyor" -#: cp/pt.c:8611 +#: cp/pt.c:8615 msgid "`%T' uses local type `%T'" msgstr "`%T' yerel tür `%T' kullanıyor" -#: cp/pt.c:8619 +#: cp/pt.c:8623 msgid "`%T' is a variably modified type" msgstr "`%T' değişkene göre değişen türde" -#: cp/pt.c:8630 +#: cp/pt.c:8634 #, c-format msgid "integral expression `%E' is not constant" msgstr "bütünleyen ifade `%E' bir sabit değil" -#: cp/pt.c:8635 +#: cp/pt.c:8639 msgid " trying to instantiate `%D'" msgstr " `%D' gerçeklenmeye çalışılıyor" -#: cp/pt.c:9148 +#: cp/pt.c:9156 msgid "incomplete type unification" msgstr "tamamlanmamış tür birleştirme" -#: cp/pt.c:10095 +#: cp/pt.c:10112 #, c-format msgid "use of `%s' in template type unification" msgstr "şablon türü birleştirmede `%s' kullanımı" -#: cp/pt.c:10529 cp/pt.c:10601 +#: cp/pt.c:10546 cp/pt.c:10618 msgid "explicit instantiation of non-template `%#D'" msgstr "şablon olmayan `%#D' nin doğrudan gerçeklenmesi" -#: cp/pt.c:10545 cp/pt.c:10596 +#: cp/pt.c:10562 cp/pt.c:10613 msgid "no matching template for `%D' found" msgstr "`%D' için eşleşen bir şablon yok" -#: cp/pt.c:10551 +#: cp/pt.c:10568 msgid "explicit instantiation of `%#D'" msgstr "`%#D' nin doğrudan gerçeklenmesi" -#: cp/pt.c:10588 +#: cp/pt.c:10605 msgid "duplicate explicit instantiation of `%#D'" msgstr "yinelenmiş doğrudan `%#D' gerçeklemesi" -#: cp/pt.c:10610 +#: cp/pt.c:10627 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:10614 cp/pt.c:10695 +#: cp/pt.c:10631 cp/pt.c:10712 msgid "storage class `%D' applied to template instantiation" msgstr "saklama sınıfı `%D' şablon gerçeklemesine uygulanmış" -#: cp/pt.c:10667 +#: cp/pt.c:10684 msgid "explicit instantiation of non-template type `%T'" msgstr "şablon olmayan tür `%T' nin doğrudan gerçeklenmesi" -#: cp/pt.c:10676 +#: cp/pt.c:10693 msgid "explicit instantiation of `%#T' before definition of template" msgstr "şablon tanımından önce `%T' nin doğrudan gerçeklenmesi" -#: cp/pt.c:10684 +#: cp/pt.c:10701 #, 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:10728 +#: cp/pt.c:10745 msgid "duplicate explicit instantiation of `%#T'" msgstr "yinelenmiş doğrudan `%#T' gerçeklemesi" -#: cp/pt.c:11109 +#: cp/pt.c:11126 msgid "explicit instantiation of `%D' but no definition available" msgstr "bir tanımlama olmadan `%D' nin doğrudan gerçeklenmesi" -#: cp/pt.c:11543 +#: cp/pt.c:11562 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" @@ -16569,7 +16577,7 @@ msgstr "şablon bildiriminde çoklu bildiriciler" msgid "incomplete type `%T' used in nested name specifier" msgstr "içi boş `%T' türü alt isim belirtecinde kullanılmış" -#: cp/semantics.c:2303 cp/typeck.c:1612 +#: cp/semantics.c:2303 cp/typeck.c:1635 msgid "`%D' is not a member of `%T'" msgstr "`%D' `%T' nin bir üyesi değil" @@ -16612,239 +16620,239 @@ msgstr " `%#D' burada bildirilmiş" msgid "type of `%E' is unknown" msgstr "`%E' türü bilinmiyor" -#: cp/tree.c:222 +#: cp/tree.c:226 #, c-format msgid "non-lvalue in %s" msgstr "%s içinde olmayan sol yan" -#: cp/tree.c:539 +#: cp/tree.c:532 msgid "`%V' qualifiers cannot be applied to `%T'" msgstr "`%V' niteleyicisi `%T' ye uygulanamaz" -#: cp/tree.c:1828 +#: cp/tree.c:1821 #, 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:1857 +#: cp/tree.c:1850 #, 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:1863 +#: cp/tree.c:1856 #, 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:1887 +#: cp/tree.c:1880 msgid "requested init_priority is not an integer constant" msgstr "istenen init_priority bir tamsayı sabit değil" -#: cp/tree.c:1908 +#: cp/tree.c:1901 #, 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:1916 +#: cp/tree.c:1909 msgid "requested init_priority is out of range" msgstr "istenen init_priority kapsamdışı" -#: cp/tree.c:1926 +#: cp/tree.c:1919 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:1936 +#: cp/tree.c:1929 #, c-format msgid "`%s' attribute is not supported on this platform" msgstr "bu hedefte `%s' özniteliği desteklenmiyor" -#: cp/tree.c:2531 +#: cp/tree.c:2524 #, 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:437 cp/typeck.c:451 cp/typeck.c:543 +#: cp/typeck.c:436 cp/typeck.c:450 cp/typeck.c:542 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 +#: cp/typeck.c:512 #, 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:563 +#: cp/typeck.c:562 msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast" msgstr "%s farklı üye göstericisi türleri `%T' ve `%T' arasında bir tür dönüşümünü kaldırır" -#: cp/typeck.c:1235 +#: cp/typeck.c:1234 #, c-format msgid "invalid application of `%s' to a member function" msgstr "üye olmayan işleve `%s' uygulanması geçersiz" -#: cp/typeck.c:1268 +#: cp/typeck.c:1267 #, c-format msgid "invalid application of `%s' to a bit-field" msgstr "bir bit alanına geçersiz `%s' uygulaması" -#: cp/typeck.c:1273 +#: cp/typeck.c:1272 #, c-format msgid "ISO C++ forbids applying `%s' to an expression of function type" msgstr "ISO C++ bir işlev türü ifadesine ``%s' uygulanmasına izin vermez" -#: cp/typeck.c:1342 +#: cp/typeck.c:1308 msgid "invalid use of non-static member function" msgstr "statik olmayan üye işlev kullanımı geçersiz " -#: cp/typeck.c:1471 +#: cp/typeck.c:1494 msgid "deprecated conversion from string constant to `%T'" msgstr "dizge sabitten `%T' ye modası geçmiş dönüşüm" -#: cp/typeck.c:1583 cp/typeck.c:1874 +#: cp/typeck.c:1606 cp/typeck.c:1897 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:1610 +#: cp/typeck.c:1633 #, c-format msgid "invalid use of nonstatic data member '%E'" msgstr "geçersiz static olmayan veri üyesi `%E' kullanımı" -#: cp/typeck.c:1662 cp/typeck.c:1684 +#: cp/typeck.c:1685 cp/typeck.c:1707 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:1664 cp/typeck.c:1686 +#: cp/typeck.c:1687 cp/typeck.c:1709 msgid "(perhaps the `offsetof' macro was used incorrectly)" msgstr "(belki `offsetof' makrosu yanlış kullanıldı)" -#: cp/typeck.c:1801 +#: cp/typeck.c:1824 msgid "the type being destroyed is `%T', but the destructor refers to `%T'" msgstr "iptal edilen tür `%T' iken yıkıcı `%T' ile ilişkili" -#: cp/typeck.c:1924 +#: cp/typeck.c:1947 msgid "`%D::%D' is not a member of `%T'" msgstr "`%D::%D', `%T' nin bir üyesi değil" -#: cp/typeck.c:1935 +#: cp/typeck.c:1958 msgid "`%T' is not a base of `%T'" msgstr "`%T' `%T' tabanında değil" -#: cp/typeck.c:1954 +#: cp/typeck.c:1977 msgid "'%D' has no member named '%E'" msgstr "%D' `%E' isimli üyeye sahip değil" -#: cp/typeck.c:1969 +#: cp/typeck.c:1992 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:2075 +#: cp/typeck.c:2098 msgid "`%T' is not a pointer-to-object type" msgstr "`%T' bir nesne gösterici türü değil" -#: cp/typeck.c:2100 +#: cp/typeck.c:2123 #, c-format msgid "invalid use of `%s' on pointer to member" msgstr "üye göstericisinde `%s' kullanımı geçersiz" -#: cp/typeck.c:2106 +#: cp/typeck.c:2129 msgid "invalid type argument" msgstr "tür argümanı geçersiz" -#: cp/typeck.c:2212 +#: cp/typeck.c:2235 msgid "ISO C++ forbids subscripting non-lvalue array" msgstr "ISO C++ sol yan olmayan dizi indislemesine izin vermez" -#: cp/typeck.c:2223 +#: cp/typeck.c:2246 msgid "subscripting array declared `register'" msgstr "`register' olarak bildirilmiş dizi indislemesi" -#: cp/typeck.c:2306 +#: cp/typeck.c:2329 #, c-format msgid "object missing in use of `%E'" msgstr "`%E' kullanımı içinde nesne eksik" -#: cp/typeck.c:2408 +#: cp/typeck.c:2431 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:2433 +#: cp/typeck.c:2456 #, 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:2446 +#: cp/typeck.c:2469 #, c-format msgid "`%E' cannot be used as a function" msgstr "`%E' bir işlev olarak kullanılamaz" -#: cp/typeck.c:2539 +#: cp/typeck.c:2562 msgid "too many arguments to %s `%+#D'" msgstr "%s `%+#D' için argümanlar çok fazla" -#: cp/typeck.c:2541 cp/typeck.c:2647 +#: cp/typeck.c:2564 cp/typeck.c:2670 msgid "at this point in file" msgstr "dosyanın burasında" -#: cp/typeck.c:2578 +#: cp/typeck.c:2601 msgid "parameter %P of `%D' has incomplete type `%T'" msgstr "`%P' parametresi '%D' içinde tamamlanmamış `%T' türünde" -#: cp/typeck.c:2581 +#: cp/typeck.c:2604 msgid "parameter %P has incomplete type `%T'" msgstr "parametre %P tamamlanmamış `%T' türünde" -#: cp/typeck.c:2645 +#: cp/typeck.c:2668 msgid "too few arguments to %s `%+#D'" msgstr "%s `%+#D' için argümanlar çok az" -#: cp/typeck.c:2792 cp/typeck.c:2802 +#: cp/typeck.c:2815 cp/typeck.c:2825 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:2863 +#: cp/typeck.c:2886 #, c-format msgid "division by zero in `%E / 0'" msgstr "`%E / 0' da sıfırla bölme" -#: cp/typeck.c:2865 +#: cp/typeck.c:2888 #, c-format msgid "division by zero in `%E / 0.'" msgstr "`%E / 0.' da sıfırla bölme" -#: cp/typeck.c:2894 +#: cp/typeck.c:2917 #, c-format msgid "division by zero in `%E %% 0'" msgstr "`%E %% 0' da sıfırla bölme" -#: cp/typeck.c:2896 +#: cp/typeck.c:2919 #, c-format msgid "division by zero in `%E %% 0.'" msgstr "`%E %% 0.' da sıfırla bölme" -#: cp/typeck.c:2976 +#: cp/typeck.c:2999 #, c-format msgid "%s rotate count is negative" msgstr "%s döngü sayısı negatif" -#: cp/typeck.c:2979 +#: cp/typeck.c:3002 #, c-format msgid "%s rotate count >= width of type" msgstr "%s döngü sayısı >= tür genişliği" -#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114 +#: cp/typeck.c:3036 cp/typeck.c:3041 cp/typeck.c:3132 cp/typeck.c:3137 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:3295 +#: cp/typeck.c:3318 msgid "comparison between types `%#T' and `%#T'" msgstr "`%#T' ile `%#T' türleri arasında karşılaştırma" -#: cp/typeck.c:3331 +#: cp/typeck.c:3354 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:3396 +#: cp/typeck.c:3419 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" @@ -16852,281 +16860,281 @@ 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:3418 +#: cp/typeck.c:3441 msgid "NULL used in arithmetic" msgstr "aritmetik içinde NULL kullanımı" -#: cp/typeck.c:3481 +#: cp/typeck.c:3504 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:3483 +#: cp/typeck.c:3506 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:3485 +#: cp/typeck.c:3508 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:3497 +#: cp/typeck.c:3520 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:3553 +#: cp/typeck.c:3582 #, 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:3559 +#: cp/typeck.c:3588 #, 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:3581 +#: cp/typeck.c:3610 msgid "taking address of temporary" msgstr "geçicinin adresi alınıyor" -#: cp/typeck.c:3816 +#: cp/typeck.c:3845 #, c-format msgid "ISO C++ forbids %sing an enum" msgstr "ISO C++ bir enum'um %s-lenmesine izin vermez" -#: cp/typeck.c:3827 +#: cp/typeck.c:3856 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:3833 +#: cp/typeck.c:3862 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:3858 +#: cp/typeck.c:3887 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:3892 +#: cp/typeck.c:3921 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:3923 +#: cp/typeck.c:3952 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:3994 +#: cp/typeck.c:4027 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 ya da parantezli statik olmayan üye işlevin adresinin alınmasına izin vermez. `&%T::%D' denebilir." -#: cp/typeck.c:3999 +#: cp/typeck.c:4032 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:4027 +#: cp/typeck.c:4060 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:4047 +#: cp/typeck.c:4080 msgid "unary `&'" msgstr "tekil `&'" -#: cp/typeck.c:4076 +#: cp/typeck.c:4113 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:4190 +#: cp/typeck.c:4227 msgid "taking address of destructor" msgstr "yıkıcı adresinin alınması" -#: cp/typeck.c:4203 +#: cp/typeck.c:4240 msgid "taking address of bound pointer-to-member expression" msgstr "üyeye göstericili ifadenin sınır adresi alınıyor" -#: cp/typeck.c:4211 +#: cp/typeck.c:4248 msgid "cannot create pointer to reference member `%D'" msgstr "referans üyesi `%D' için gösterici oluşturulamaz" -#: cp/typeck.c:4273 +#: cp/typeck.c:4311 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:4292 +#: cp/typeck.c:4330 msgid "address requested for `%D', which is declared `register'" msgstr "`register' olarak bildirilmiş `%D' için adres isteği" -#: cp/typeck.c:4360 +#: cp/typeck.c:4398 #, c-format msgid "%s expression list treated as compound expression" msgstr "%s ifade listesi bileşik ifade olarak ele alınıyor" -#: cp/typeck.c:4434 +#: cp/typeck.c:4472 msgid "%s from type `%T' to type `%T' casts away constness" msgstr "`%T' türünden `%T' türüne %s const'suz dışı dönüşüme sebep oluyor" -#: cp/typeck.c:4626 +#: cp/typeck.c:4674 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:4666 +#: cp/typeck.c:4714 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:4686 +#: cp/typeck.c:4734 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:4705 +#: cp/typeck.c:4753 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:4711 +#: cp/typeck.c:4759 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:4739 +#: cp/typeck.c:4787 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:4742 +#: cp/typeck.c:4790 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:4765 +#: cp/typeck.c:4813 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:4782 +#: cp/typeck.c:4830 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:4822 cp/typeck.c:4827 +#: cp/typeck.c:4870 cp/typeck.c:4875 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:4835 +#: cp/typeck.c:4883 msgid "invalid cast to function type `%T'" msgstr "`%T' işlev türüne dönüşüm geçersiz" -#: cp/typeck.c:4891 +#: cp/typeck.c:4939 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:4937 +#: cp/typeck.c:4985 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:5104 +#: cp/typeck.c:5152 msgid " in evaluation of `%Q(%#T, %#T)'" msgstr " `%Q(%#T, %#T)' nin gelişiminde" -#: cp/typeck.c:5146 +#: cp/typeck.c:5194 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:5219 +#: cp/typeck.c:5267 msgid "incompatible types in assignment of `%T' to `%T'" msgstr "`%T' den `%T' ye değer atamada uyumsuz türler" -#: cp/typeck.c:5226 +#: cp/typeck.c:5274 msgid "ISO C++ forbids assignment of arrays" msgstr "ISO C++ dizilerin değer atanarak bildirimine izin vermez" -#: cp/typeck.c:5326 +#: cp/typeck.c:5374 msgid " in pointer to member function conversion" msgstr " üye işleve gösterici dönüşümünde" -#: cp/typeck.c:5334 +#: cp/typeck.c:5382 msgid " in pointer to member conversion" msgstr " üyeye gösterici dönüşümünde" #. This is a reinterpret cast, we choose to do nothing. -#: cp/typeck.c:5344 cp/typeck.c:5359 +#: cp/typeck.c:5392 cp/typeck.c:5407 msgid "pointer to member cast via virtual base `%T'" msgstr "sanal taban `%T' üzerinden üye göstericisine dönüşüm" -#: cp/typeck.c:5362 +#: cp/typeck.c:5410 msgid "pointer to member conversion via virtual base `%T'" msgstr "sanal taban `%T' üzerinden üye göstericisine dönüşüm" -#: cp/typeck.c:5432 +#: cp/typeck.c:5480 msgid "invalid conversion to type `%T' from type `%T'" msgstr "tür `%T' nin `%T' den dönüşümü geçersiz" -#: cp/typeck.c:5588 +#: cp/typeck.c:5636 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:5591 +#: cp/typeck.c:5639 msgid "%s to non-pointer type `%T' from NULL" msgstr "NULL'dan gösterici olmayan `%T' türüne %s" -#: cp/typeck.c:5599 +#: cp/typeck.c:5647 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:5602 +#: cp/typeck.c:5650 msgid "%s to `%T' from `%T'" msgstr "`%T' nin `%T' den %s" -#: cp/typeck.c:5612 +#: cp/typeck.c:5660 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:5615 +#: cp/typeck.c:5663 msgid "%s of negative value `%E' to `%T'" msgstr "%s `%E' nin `%T' için negatif değeridir" -#: cp/typeck.c:5703 +#: cp/typeck.c:5751 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:5706 +#: cp/typeck.c:5754 msgid "cannot convert `%T' to `%T' in %s" msgstr " `%T' `%T' ye %s içinde dönüştürülemez" -#: cp/typeck.c:5783 cp/typeck.c:5785 +#: cp/typeck.c:5831 cp/typeck.c:5833 msgid "in passing argument %P of `%+D'" msgstr "`%+D' nin %P. argümanının aktarılmasında" -#: cp/typeck.c:5892 +#: cp/typeck.c:5940 msgid "returning reference to temporary" msgstr "geçiciye referans dönüyor" -#: cp/typeck.c:5899 +#: cp/typeck.c:5947 msgid "reference to non-lvalue returned" msgstr "sağ yansız dönüşlüye referans" -#: cp/typeck.c:5911 +#: cp/typeck.c:5959 msgid "reference to local variable `%D' returned" msgstr "yerel değişken `%D' ye referansa döndürüldü" -#: cp/typeck.c:5914 +#: cp/typeck.c:5962 msgid "address of local variable `%D' returned" msgstr "yerel değişken `%D' adresi döndürüldü" -#: cp/typeck.c:5944 +#: cp/typeck.c:5992 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:5952 +#: cp/typeck.c:6000 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:5955 +#: cp/typeck.c:6003 msgid "returning a value from a constructor" msgstr "kurucudan bir değer döndürülemez" -#: cp/typeck.c:5978 +#: cp/typeck.c:6026 msgid "return-statement with no value, in function returning '%T'" msgstr "'%T' döndüren işlevde değer içermeyen `return' deyimi" -#: cp/typeck.c:5995 +#: cp/typeck.c:6043 msgid "return-statement with a value, in function returning 'void'" msgstr "'void' dönüşlü işlevde değer içeren `return' deyimi" -#: cp/typeck.c:6017 +#: cp/typeck.c:6065 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)" @@ -18758,12 +18766,12 @@ msgstr "generate_bytecode_insn içinde hata - ağaç kodu oluşturulamadı: %s" msgid "field initializer type mismatch" msgstr "alan ilklendirici türü uyumsuzluğu" -#: java/jcf-write.c:3389 +#: java/jcf-write.c:3391 #, c-format msgid "can't create directory %s: %m" msgstr "dizin %s oluşturulamıyor: %m" -#: java/jcf-write.c:3442 +#: java/jcf-write.c:3444 #, c-format msgid "can't create %s: %m" msgstr "%s oluşturulamıyor: %m" @@ -18846,228 +18854,291 @@ msgstr "%s anlamlandırılamıyor" msgid "internal error - invalid Utf8 name" msgstr "iç hata - Utf8 ismi geçersiz" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:949 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1290 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1351 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1555 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1777 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1786 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1797 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1808 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1820 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1854 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1935 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2106 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2168 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2320 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2332 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2339 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2346 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2357 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2359 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2397 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2399 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2401 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2422 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2424 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2426 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2442 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2444 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2465 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2467 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2469 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2499 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2501 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2503 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2521 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2523 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2534 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2545 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2556 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2567 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2578 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2591 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2610 msgid "Missing term" msgstr "Terim eksik" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse-scan.y:882 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:721 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:759 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:784 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:970 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1325 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1531 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1533 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1762 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1788 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1799 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1810 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1822 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1837 msgid "';' expected" msgstr "';' gerekli" -#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:719 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:757 msgid "Missing name" msgstr "İsim eksik" -#: ../../gcc/java/parse.y:782 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:782 msgid "'*' expected" msgstr "'*' gerekli" -#: ../../gcc/java/parse.y:796 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:796 msgid "Class or interface declaration expected" msgstr "Sınıf ya da arabirim bildirimi gerekli" -#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:833 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:835 msgid "Missing class name" msgstr "Sınıf ismi yok" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:838 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:842 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1010 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1271 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1273 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1597 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1848 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1880 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1942 msgid "'{' expected" msgstr "'{' gerekli" -#: ../../gcc/java/parse.y:852 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:852 msgid "Missing super class name" msgstr "Süper sınıf ismi eksik" -#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:862 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:878 msgid "Missing interface name" msgstr "Arabirim ismi yok" -#: ../../gcc/java/parse.y:964 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:964 msgid "Missing variable initializer" msgstr "Değişken ilklendirici eksik" -#: ../../gcc/java/parse.y:981 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:981 msgid "Invalid declaration" msgstr "Geçersiz bildirim" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:984 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1069 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2143 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2165 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2169 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2204 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2281 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2291 msgid "']' expected" msgstr "']' gerekli" -#: ../../gcc/java/parse.y:988 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:988 msgid "Unbalanced ']'" msgstr "karşılıksız ']'" -#: ../../gcc/java/parse.y:1024 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1024 msgid "Invalid method declaration, method name required" msgstr "Yöntem bildirimi geçersiz, yöntem ismi gerekiyor" -#: ../../gcc/java/parse.y:1029 ../../gcc/java/parse.y:1034 -#: ../../gcc/java/parse.y:1039 ../../gcc/java/parse.y:2026 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1029 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1034 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1039 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2026 msgid "Identifier expected" msgstr "Tanıtıcı gerekli" -#: ../../gcc/java/parse.y:1044 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1044 msgid "Invalid method declaration, return type required" msgstr "Yöntem bildirimi geçersiz, return türü gerekli" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1067 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1511 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1518 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1527 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1529 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1557 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1665 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1971 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2024 msgid "')' expected" msgstr "')' gerekli" -#: ../../gcc/java/parse.y:1083 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1083 msgid "Missing formal parameter term" msgstr "Biçimsel parametre terimi eksik" -#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1098 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1103 msgid "Missing identifier" msgstr "Tanıtıcı eksik" -#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1123 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1132 msgid "Missing class type term" msgstr "class tür terimi eksik" -#: ../../gcc/java/parse.y:1288 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1288 msgid "Invalid interface type" msgstr "Geçersiz arabirim türü" -#: ../../gcc/java/parse.y:1475 ../../gcc/java/parse.y:1644 -#: ../../gcc/java/parse.y:1646 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1475 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1644 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1646 msgid "':' expected" msgstr "':' gerekli" -#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502 -#: ../../gcc/java/parse.y:1507 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1497 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1502 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1507 msgid "Invalid expression statement" msgstr "Geçersiz ifade satırı" -#: ../../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 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1525 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1553 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1593 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1661 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1729 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1850 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1928 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2018 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2020 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2028 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2264 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2266 msgid "'(' expected" msgstr "'(' gerekli" -#: ../../gcc/java/parse.y:1595 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1595 msgid "Missing term or ')'" msgstr "Terim ya da ')' eksik" -#: ../../gcc/java/parse.y:1642 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1642 msgid "Missing or invalid constant expression" msgstr "Geçersiz ya da eksik sabit ifadesi" -#: ../../gcc/java/parse.y:1663 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1663 msgid "Missing term and ')' expected" msgstr "Terim eksik ve ')' gerekli" -#: ../../gcc/java/parse.y:1702 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1702 msgid "Invalid control expression" msgstr "Geçersiz denetim ifadesi" -#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1704 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1706 msgid "Invalid update expression" msgstr "Geçersiz güncelleme ifadesi" -#: ../../gcc/java/parse.y:1731 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1731 msgid "Invalid init statement" msgstr "Geçersiz ilklendirme satırı" -#: ../../gcc/java/parse.y:1931 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1931 msgid "Missing term or ')' expected" msgstr "Terim eksik ya da ')' gerekli" -#: ../../gcc/java/parse.y:1973 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1973 msgid "'class' or 'this' expected" msgstr "'class' ya da 'this' gerekli" -#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1975 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:1977 msgid "'class' expected" msgstr "'class' gerekli" -#: ../../gcc/java/parse.y:2022 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2022 msgid "')' or term expected" msgstr "')' ya da terim gerekli" -#: ../../gcc/java/parse.y:2141 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2141 msgid "'[' expected" msgstr "'[' gerekli" -#: ../../gcc/java/parse.y:2219 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2219 msgid "Field expected" msgstr "Alan gerekli" -#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2276 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2286 msgid "Missing term and ']' expected" msgstr "Terim eksik ve ']' gerekli" -#: ../../gcc/java/parse.y:2390 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2390 msgid "']' expected, invalid type expression" msgstr "']' gerekli ve tür ifadesi geçersiz" -#: ../../gcc/java/parse.y:2393 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2393 msgid "Invalid type expression" msgstr "Geçersiz tür ifadesi" -#: ../../gcc/java/parse.y:2505 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2505 msgid "Invalid reference type" msgstr "Geçersiz referans türü" -#: ../../gcc/java/parse.y:2977 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/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ı" -#: ../../gcc/java/parse.y:2979 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2979 msgid "Only constructors can invoke constructors" msgstr "Sadece kurucular birbirini çağırabilir" -#: ../../gcc/java/parse.y:2987 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:2987 #, c-format msgid ": `%s' JDK1.1(TM) feature" msgstr ": `%s' JDK1.1(TM) özelliği" -#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3046 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:3048 #, c-format msgid "" "%s.\n" @@ -19076,32 +19147,32 @@ msgstr "" "%s.\n" "%s" -#: ../../gcc/java/parse.y:6909 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:6909 #, c-format msgid "malformed .zip archive in CLASSPATH: %s" msgstr "CLASSPATH içinde bozuk .zip arşivi: %s" -#: ../../gcc/java/parse.y:6980 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/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 "Öntanımlı `%s' paketi bulunamıyor. CLASSPATH ortam değişkenini ve arşivlere erişimi kontrol ediniz" -#: ../../gcc/java/parse.y:12193 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12193 #, c-format msgid "missing static field `%s'" msgstr "statik alan `%s' eksik" -#: ../../gcc/java/parse.y:12198 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12198 #, c-format msgid "not a static field `%s'" msgstr "`%s' bir statik alan değil" -#: ../../gcc/java/parse.y:12241 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:12241 #, c-format msgid "No case for %s" msgstr "%s için uygun bir case yok" -#: ../../gcc/java/parse.y:13173 +#: /home/mitchell/gcc-3.4.1-20040625/gcc-3.4.1-20040625/gcc/java/parse.y:13173 #, c-format msgid "unregistered operator %s" msgstr "%s işleci tanınmıyor" @@ -19158,8 +19229,8 @@ msgstr "protokol `%s' döngüsel bağımlılık içeriyor" msgid "cannot find protocol declaration for `%s'" msgstr "`%s' için protokol bildirimi bulunamıyor" -#: 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 +#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6507 +#: objc/objc-act.c:6823 objc/objc-act.c:6876 objc/objc-act.c:6901 #, c-format msgid "cannot find interface declaration for `%s'" msgstr "`%s' için arabirim bildirimi bulunamıyor" @@ -19184,8 +19255,8 @@ msgstr "omayan yöntem %s için ayraç oluşturuyor" msgid "`%s' is not an Objective-C class name or alias" msgstr "`%s' geçerli bir Objective-C sınıf ismi ya da rumuzu 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 +#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6770 +#: objc/objc-act.c:7060 objc/objc-act.c:7089 msgid "Objective-C declarations may only appear in global scope" msgstr "Objective-C bildirimleri sadece genel etki alanında görünebilir" @@ -19199,7 +19270,7 @@ msgstr "sınıf `%s' bulunamıyor" msgid "class `%s' already exists" msgstr "sınıf `%s' zaten var" -#: objc/objc-act.c:2532 objc/objc-act.c:6791 +#: objc/objc-act.c:2532 objc/objc-act.c:6792 #, c-format msgid "`%s' redeclared as different kind of symbol" msgstr "`%s' farklı bir sembol çeşidi olarak tekrar bildirilmiş" @@ -19358,1498 +19429,1880 @@ msgstr "`%s' türü bir kullanıcı tanımlı yıkıcıya sahip" msgid "C++ constructors and destructors will not be invoked for Objective-C fields" msgstr "C++ yapıcıları ve yıkıcıları Objective-C alanları için çağrılamaz" -#: objc/objc-act.c:6490 +#: objc/objc-act.c:6531 #, c-format msgid "instance variable `%s' is declared private" msgstr "gerçekleme değişkeni `%s' private olarak bildirilmiş" -#: objc/objc-act.c:6539 +#: objc/objc-act.c:6540 #, c-format msgid "instance variable `%s' is %s; this will be a hard error in the future" msgstr "gerçekleme değişkeni `%s' %s: bu ileride kesinlikle bir hata olacak" -#: objc/objc-act.c:6546 +#: objc/objc-act.c:6547 #, c-format msgid "instance variable `%s' is declared %s" msgstr "gerçekleme değişkeni `%s' %s olarak bildirilmiş" -#: objc/objc-act.c:6556 +#: objc/objc-act.c:6557 msgid "static access to object of type `id'" msgstr "`id' türünün nesnesine statik erişim" -#: objc/objc-act.c:6578 objc/objc-act.c:6666 +#: objc/objc-act.c:6579 objc/objc-act.c:6667 #, c-format msgid "incomplete implementation of class `%s'" msgstr "`%s' sınıfının içi boş" -#: objc/objc-act.c:6582 objc/objc-act.c:6671 +#: objc/objc-act.c:6583 objc/objc-act.c:6672 #, c-format msgid "incomplete implementation of category `%s'" msgstr "`%s' kategorisinin içi boş" -#: objc/objc-act.c:6587 objc/objc-act.c:6676 +#: objc/objc-act.c:6588 objc/objc-act.c:6677 #, c-format msgid "method definition for `%c%s' not found" msgstr "`%c%s' için yöntem tanımı yok" -#: objc/objc-act.c:6717 +#: objc/objc-act.c:6718 #, 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:6775 objc/objc-act.c:8803 +#: objc/objc-act.c:6776 objc/objc-act.c:8804 msgid "`@end' missing in implementation context" msgstr "oluşum bağlamında `@end' eksik" -#: objc/objc-act.c:6805 +#: objc/objc-act.c:6806 #, c-format msgid "reimplementation of class `%s'" msgstr "`%s' sınıfının yeniden oluşumu" -#: objc/objc-act.c:6836 +#: objc/objc-act.c:6837 #, c-format msgid "conflicting super class name `%s'" msgstr "süper sınıf ismi `%s' çelişiyor" -#: objc/objc-act.c:6838 +#: objc/objc-act.c:6839 #, c-format msgid "previous declaration of `%s'" msgstr "`%s'in önceki bildirimi" -#: objc/objc-act.c:6852 objc/objc-act.c:6854 +#: objc/objc-act.c:6853 objc/objc-act.c:6855 #, c-format msgid "duplicate interface declaration for class `%s'" msgstr "`%s' sınıfı için birden fazla arabirim bildirimi" -#: objc/objc-act.c:7121 +#: objc/objc-act.c:7122 #, c-format msgid "duplicate declaration for protocol `%s'" msgstr "protokol `%s' için birden fazla bildirim" #. Add a readable method name to the warning. -#: objc/objc-act.c:7613 +#: objc/objc-act.c:7614 msgid "%J%s `%c%s'" msgstr "%J%s `%c%s'" -#: objc/objc-act.c:7908 +#: objc/objc-act.c:7909 #, 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:7956 +#: objc/objc-act.c:7957 msgid "[super ...] must appear in a method context" msgstr "[super ...] bir yöntem bağlamında görünmeli" -#: objc/objc-parse.y:2700 +#: objc/objc-parse.y:2701 msgid "`@end' must appear in an implementation context" msgstr "`@end' bir oluşum bağlamında görünmeli" -#: objc/objc-parse.y:2913 +#: objc/objc-parse.y:2914 msgid "method definition not in class context" msgstr "yöntem tanımı sınıf bağlamında değil" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:23 msgid "Display this information" msgstr "Bu yardım iletisi gösterilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:29 msgid "--param =\tSet paramter to value. See below for a complete list of parameters" msgstr "--param =\tParametreye değer atanır. Parametrelerin tam listesi aşağıdadır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:38 msgid "-A=\tAssert the to . Putting '-' before disables the to " msgstr "-A=\tSoruya yanıt olumlanır. dan önce '-' konursa soruya yanıt iptal edilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:41 msgid "Do not discard comments" msgstr "Açıklamalar iptal edilmez" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:44 msgid "Do not discard comments in macro expansions" msgstr "Makro yorumlamalarında açıklamalar iptal edilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:47 msgid "-D[=]\tDefine a with as its value. If just is given, is taken to be 1" msgstr "-D[=]\t, değeriyle tanımlanır. Değer verilmezse 1 kabul edilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:53 msgid "-G\tPut global and static data smaller than bytes into a special section (on some targets)" msgstr "-G SAYI\tGlobal ve static verileri SAYI bayttan daha küçükse (bazı hedeflerdeki) bir özel bölüme koyar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:56 msgid "Print the name of header files as they are used" msgstr "Başlık dosyalarının isimleri kullanılmış olarak basılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57 -msgid "-I \tAdd to the end of the main include path. -I- gives more include path control; see info documentation" -msgstr "-I DİZİN\tDİZİN ana başlık dosyaları yolunun sonuna eklenir. -I- daha iyidir; bilgi sayfalarına bakınız" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:60 -msgid "Generate make dependencies" -msgstr "make bağımlılıkları üretilir" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:65 msgid "Generate make dependencies and compile" msgstr "Make bağımlılıklarını üretir ve derler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66 -msgid "-MF \tWrite dependency output to the given file" -msgstr "-MF DOSYA\tBağımlılık çıktıları belirtilen dosyaya yazılır" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:74 msgid "Treat missing header files as generated files" msgstr "Kayıp başlık dosyaları üretilen dosyalar olarak ele alınır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:72 -msgid "Like -M but ignore system header files" -msgstr "-M gibi, ancak sistem başlık dosyaları yoksayılır" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:75 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:80 msgid "Like -MD but ignore system header files" msgstr "-MD gibi, ancak sistem başlık dosyaları yoksayılır" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:89 msgid "-MQ \tAdd a MAKE-quoted target" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84 -msgid "-MT \tAdd an unquoted target" -msgstr "" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:95 msgid "-O\tSet optimization level to " msgstr "-O[SAYI]\tEniyileme seviyesi SAYI olarak ayarlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:98 msgid "Optimize for space rather than speed" msgstr "Hızdan çok boyut eniyilemesi yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:101 msgid "Do not generate #line directives" msgstr "#satır yönergeleri üretilmez" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:104 msgid "-U\tUndefine " msgstr "-U\t tanımsız yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:107 msgid "This switch is deprecated; use -Wextra instead" msgstr "Eski kullanım: yerine -Wextra kullanın" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:113 msgid "Warn about returning structures, unions or arrays" msgstr "Dönen yapı, birleşim ve diziler hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:108 -msgid "Enable most warning messages" -msgstr "Uyarı sıklığı iletileri etkinleştirilir" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:111 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:119 msgid "Warn about casting functions to incompatible types" msgstr "İşlevlerin uyumsuz türlere dönüştürülmesi durumunda uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:122 msgid "Warn about pointer casts which increase alignment" msgstr "Hizalamayı arttıran gösterici tür dönüşümlerinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:125 msgid "Warn about casts which discard qualifiers" msgstr "Niteleyicileri iptal eden tür dönüşümleri hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:128 msgid "Warn about subscripts whose type is \"char\"" msgstr "Türü \"char\" olan dizi indisleri hakkında uyarır" -#: /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 "İç içe açıklama satırları ile bir fiziksel satırdan fazla olan C++ açıklamalarında uyarır" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:126 -msgid "Synonym for -Wcomment" -msgstr "-Wcomment ile aynı" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:129 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:137 msgid "Warn about possibly confusing type conversions" msgstr "Tür dönüşümlerinin olası karışıklığı hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:140 msgid "Warn when all constructors and destructors are private" msgstr "Tüm kurucu/yıkıcılar private olduğunda uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:143 msgid "Warn when a declaration is found after a statement" msgstr "Bir deyimden sonra gelen bir bildirimde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138 -msgid "Warn about deprecated compiler features" -msgstr "Eskimiş derleyici özellikleri hakkında uyarmaz" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:146 +msgid "Warn if deprecated class, method, or field is used" +msgstr "Eski tip sınıf, yöntem ya da alan bulunduğunda uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:149 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "__attribute__((eskidi)) bildirimlerinde uyarı verir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:152 msgid "Warn when an optimization pass is disabled" msgstr "Bir eniyileme aşaması iptal edildiğinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:155 msgid "Warn about compile-time integer division by zero" msgstr "Derleme anı sıfırla tamsayı bölme taşması için uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:158 msgid "Warn about violations of Effective C++ style rules" msgstr "Effective C++ tarzı kuralların çelişkilerinde uyarmaz" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:161 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:164 msgid "Treat all warnings as errors" msgstr "Tüm uyarıların hata olduğu varsayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:167 msgid "Make implicit function declarations an error" msgstr "İşlevlerin dolaylı bildirimlerinde hata verir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:170 msgid "Print extra (possibly unwanted) warnings" msgstr "Fazladan (istenmeyen) uyarılar basılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:173 +msgid "Warn if deprecated empty statements are found" +msgstr "Eski tip boş deyimler bulunduğunda uyarır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:176 msgid "Warn if testing floating point numbers for equality" msgstr "Gerçek sayıların eşitlik sınamalarında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:179 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "printf/scanf/strftime/strfmon biçim dizgesi bozukluklarında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:182 msgid "Warn if passing too many arguments to a function for its format string" msgstr "bir işleve biçim dizgesinde çok fazla argüman aktarılırsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:185 msgid "Warn about format strings that are not literals" msgstr "Bir sabit olmayan biçim dizgelerinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:188 msgid "Warn about possible security problems with format functions" msgstr "" "biçimleme işlevleriyle ilgili olası güvenlik\n" " sorunları hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:191 msgid "Warn about strftime formats yielding 2-digit years" msgstr "2 haneli yıllara yer veren strftime biçimlerde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:200 +msgid "Enable warnings about inter-procedural problems" +msgstr "Yordamlar arası sorunlar hakkındaki uyarılar verilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:206 msgid "Warn about implicit function declarations" msgstr "İşlevlerin dolaylı bildirimlerinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:209 msgid "Warn when a declaration does not specify a type" msgstr "Bir bildirimde tür belirtilmemişse uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:198 -msgid "Deprecated. This switch has no effect." -msgstr "Eski. Bu seçenek etkisizdir." - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:201 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:215 msgid "Warn about variables which are initialized to themselves." msgstr "Kendileriyle ilklendirilmiş değişkenlerde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:218 msgid "Warn when an inlined function cannot be inlined" msgstr "Bir özümlemeli işlev özümlenemediğinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:221 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "\"offsetof\" makrosunun geçersiz kullanımlarında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:224 msgid "Warn about PCH files that are found but not used" msgstr "Kullanılmayan PCH dosyaları bulunduğunda uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:227 msgid "-Wlarger-than-\tWarn if an object is larger than bytes" msgstr "-Wlarger-than-SAYI\tBir nesne SAYI bayttan büyükse uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:230 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "-pedantic ile \"long long\" kullanımı hakkında uyarmaz" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:233 msgid "Warn about suspicious declarations of \"main\"" msgstr "Kuşkulu \"main\" bildirimleri hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:236 msgid "Warn about possibly missing braces around initializers" msgstr "İlklendiricileri çevreleyen parantezler yoksa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:239 msgid "Warn about global functions without previous declarations" msgstr "Önceden bildirilmemiş genel işlevler hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:242 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:245 msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "__attribute__((noreturn)) özelliğine aday olabilecek işlevler hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:248 msgid "Warn about global functions without prototypes" msgstr "Prototipsiz genel işlevler hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:251 msgid "Warn about use of multi-character character constants" msgstr "Çoklu karakter sabitlerinin kullanımı hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:254 msgid "Warn about \"extern\" declarations not at file scope" msgstr "Dosya etki alanı içinde olmayan \"extern\" bildirimlerinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:257 msgid "Warn when non-templatized friend functions are declared within a template" msgstr "Şablonlanmış olmayan kardeş işlevler bir şablonla bildirildiğinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:260 msgid "Warn about non-virtual destructors" msgstr "Sanal olmayan yıkıcılar hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:266 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:269 msgid "Warn if an old-style parameter definition is used" msgstr "Bir eski tarz parametre tanımı kullanılmamışsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:272 +msgid "Warn if .class files are out of date" +msgstr ".class dosyaları güncel değilse uyarır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:275 msgid "Warn about overloaded virtual function names" msgstr "Aşırı yüklü sanal işlev isimleri hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:278 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "Paketli öznitelik yapı yerleşiminde etkisizse uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:281 msgid "Warn when padding is required to align structure members" msgstr "Yapı üyelerini hizalamak için adımlama gerekliyse uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:284 msgid "Warn about possibly missing parentheses" msgstr "Olası eksik parantezler hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:287 msgid "Warn when converting the type of pointers to member functions" msgstr "Üye işlev göstericilerinin tür dönüşümlerinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:290 msgid "Warn about function pointer arithmetic" msgstr "İşlev gösterici aritmetiği hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:293 msgid "Warn if inherited methods are unimplemented" msgstr "Kalıt yöntemler oluşturulmamışsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:296 msgid "Warn about multiple declarations of the same object" msgstr "Aynı nesne birden fazla bildirilmişse uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:299 +msgid "Warn if modifiers are specified when not necessary" +msgstr "Değiştiriciler gereksizken belirtilmişse uyarır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:302 msgid "Warn when the compiler reorders code" msgstr "Derleyici kodu yeniden sıralarken uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:305 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ünün \"int\"e öntanımlılığında (C) ya da belirsiz dönüş türlerinde (C++) uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:308 msgid "Warn if a selector has multiple methods" msgstr "Bir seçici çoklu yöntemlere sahipse uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:311 msgid "Warn about possible violations of sequence point rules" msgstr "" "Ardışık nokta kurallarının olası çelişkileri\n" " hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:314 msgid "Warn when one local variable shadows another" msgstr "Bir yerel değişken bir diğerini gölgeliyorsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:317 msgid "Warn about signed-unsigned comparisons" msgstr "signed/unsigned karşılaştırmalarında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:320 msgid "Warn when overload promotes from unsigned to signed" msgstr "" "unsigned'dan signed'a yükseltmelerin aşırı\n" " yüklemesinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:323 msgid "Warn about code which might break strict aliasing rules" msgstr "Adlandırma kurallarının değişmezliğini bozabilen kod varsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:326 msgid "Warn about unprototyped function declarations" msgstr "Prototipsiz işlev bildirimlerinde uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:329 +msgid "Warn about constructs with surprising meanings" +msgstr "Yapılar hakkında sürpriz niteliğinde uyarı verilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:332 msgid "Warn about enumerated switches, with no default, missing a case" msgstr "" "Numaralı switch'lerde case eksikse veya\n" " default yoksa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:335 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "Numaralı switch'lerde \"default:\" yoksa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:338 msgid "Warn about all enumerated switches missing a specific case" msgstr "Numaralı switch'lerde belli bir case eksikse uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:341 msgid "Warn when synthesis behavior differs from Cfront" msgstr "Sentezleme davranışı Cfront'dan farklıysa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:344 msgid "Do not suppress warnings from system headers" msgstr "Sistem başlık dosyalarından gelen uyarılar engellenmez" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:347 msgid "Warn about features not present in traditional C" msgstr "Geleneksel C'de olmayan özelliklerde uyarır" -#: /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 "Yazılımın anlamını etkileyebilecek üçlü harfler saptanırsa uyarır" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:333 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:356 msgid "Warn if an undefined macro is used in an #if directive" msgstr "#if yönergesinde tanımsız yapılmış makro kullanılmışsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:359 msgid "Warn about uninitialized automatic variables" msgstr "İlklendirilmemiş otomatik değişkenler hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:362 msgid "Warn about unrecognized pragmas" msgstr "tanımlanamayan #pragma'lar hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:365 msgid "Warn about code that will never be executed" msgstr "Hiç çalışmayacak kod hakkında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:368 msgid "Enable all -Wunused- warnings" msgstr "-Wunused- uyarılarının tamamı etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:371 msgid "Warn when a function is unused" msgstr "Bir işlev kullanılmamışsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:374 msgid "Warn when a label is unused" msgstr "Bir etiket kullanılmamışsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:377 msgid "Warn about macros defined in the main file that are not used" msgstr "Ana dosyada kullanılmamış olan makro tanımlarında uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:380 msgid "Warn when a function parameter is unused" msgstr "Bir işlev parametresi kullanılmamışsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:383 msgid "Warn when an expression value is unused" msgstr "Bir ifade değeri kullanılmamışsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:386 msgid "Warn when a variable is unused" msgstr "Bir değişken kullanılmamışsa uyarır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:389 msgid "Give strings the type \"array of char\"" msgstr "Dizgeler \"char dizileri\" türünde verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:392 msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead" msgstr "-std=c89 karşılığı bir isim. GCCnin ileri sürümleri -std=c99 yerine eşanlamlıları ile gelebilecek " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:395 msgid "-aux-info \tEmit declaration information into " msgstr "-aux-info DOSYA\tBildirim bilgileri DOSYAda gösterilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:407 msgid "-d\tEnable dumps from specific passes of the compiler" msgstr "-d[HARFLER]\tBelirli derleyici aşamalarının dökümlenmesi etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:410 msgid "-dumpbase \tSet the file basename to be used for dumps" msgstr "-dumpbase DOSYA\tDerleyici aşamalarının dökümleneceği DOSYA" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:413 +msgid "--CLASSPATH\tDeprecated; use --classpath instead" +msgstr "--CLASSPATH\t eski kullanım; yerine --classpath kullanın" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:425 msgid "Enforce class member access control semantics" msgstr "Sınıf üyesi erişim denetimi kurallarına uyulur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:428 msgid "Align the start of functions" msgstr "İşlevlerin başlangıcı hizalanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:434 msgid "Align labels which are only reached by jumping" msgstr "" "Sadece atlanarak ulaşılabilen hedefler bayt\n" " sınırlarına ayarlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:440 msgid "Align all labels" msgstr "Tüm dallanma hedefleri bayt sınırlarına ayarlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:446 msgid "Align the start of loops" msgstr "Döngü başlangıçları bayt sınırlarına ayarlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:455 msgid "Change when template instances are emitted" msgstr "Şablon gerçeklemeleri yayınlandığında değiştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:458 msgid "Specify that arguments may alias each other and globals" msgstr "Argümanların bir diğerinin ya da globallerin takma adı olabileceği varsayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:461 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:464 msgid "Assume arguments alias neither each other nor globals" msgstr "Argümanların bir diğerine ya da globallere takma ad olmadığı varsayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:467 msgid "Recognize the \"asm\" keyword" msgstr "\"asm\" anahtar sözcüğü tanınır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:479 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "Birbirlerini etkilemeyenlerin tablosu her komutun tam sınırında oluşturulur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:482 +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ğerlendirilmez." + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:485 +msgid "Backslashes in character and hollerith constants are special (not C-style)" +msgstr "" +"Tersbölüler ve karakter/hollerith sabitler özeldir\n" +" (C-tarzı)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:488 +msgid "Delete libU77 intrinsics with bad interfaces" +msgstr "Hatalı arabirimli libU77 yerleşikleri silinir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:491 +msgid "Disable libU77 intrinsics with bad interfaces" +msgstr "Hatalı arabirimli libU77 yerleşikleri iptal edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:494 +msgid "Enable libU77 intrinsics with bad interfaces" +msgstr "Hatalı arabirimli libU77 yerleşikleri etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:497 +msgid "Hide libU77 intrinsics with bad interfaces" +msgstr "Hatalı arabirimli libU77 yerleşikleri gizlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:500 +msgid "--bootclasspath=\tReplace system path" +msgstr "--bootclasspath=\tSistem dosya yolu ile değiştirilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:503 msgid "Generate code to check bounds before indexing arrays" msgstr "" "Diziler indislenmeden önce sınrlarını\n" " denetleyecek kod üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:506 msgid "Replace add, compare, branch with branch on count register" msgstr "Ekleme, karşılaştırma, dallanma sayaç yazmacı üzerinden dallanma ile değiştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:509 msgid "Use profiling information for branch probabilities" msgstr "" "Dallanma olasılıkları için ayrımlama bilgileri\n" " kullanılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:512 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "Ön ve ard evreleme öncesi dal hedefli yük eniyilemesi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:515 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "Ön ve ard evreleme sonrası dal hedefli yük eniyilemesi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:518 msgid "Recognize built-in functions" msgstr "Yerleşik işlevler tanınır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:524 msgid "-fcall-saved-\tMark as being preserved across functions" msgstr "-fcall-saved-YAZMAÇ\tYAZMAÇ işlevlere karşı korunmuş olarak imlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:527 msgid "-fcall-used-\tMark as being corrupted by function calls" msgstr "-fcall-used-YAZMAÇ\tYAZMAÇ işlev çağrıları tarafından bozulmuş olarak imlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:530 msgid "Save registers around function calls" msgstr "İşlev çağrıları civarındaki yazmaçlar kaydedilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477 -msgid "Check the return value of new" -msgstr "new işlemiminin dönen değeri denetlenir" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:533 +msgid "Program written in strict mixed-case" +msgstr "Program BüyükKüçük harflerle yazılmıştır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480 -msgid "Do not put uninitialized globals in the common section" -msgstr "İlklendirilmemiş global'ler ortak bölüme konmaz" +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:536 +msgid "Compile as if program written in lowercase" +msgstr "Program küçük harflerle yazılmış olarak derlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:539 +msgid "Preserve case used in program" +msgstr "Programda harf büyüklüklerine dokunulmaz" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:542 +msgid "Program written in lowercase" +msgstr "Program küçük harflerle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:545 +msgid "Program written in uppercase" +msgstr "Program büyük harflerle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:548 +msgid "Compile as if program written in uppercase" +msgstr "Program büyük harflerle yazılmış olarak derlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:551 +msgid "Check the return value of new" +msgstr "new işlemiminin dönen değeri denetlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:557 +msgid "--classpath=\tSet class path" +msgstr "--classpath=\tSınıf dosya yolunu ayarlar" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:560 +msgid "Do not put uninitialized globals in the common section" +msgstr "İlklendirilmemiş global'ler ortak bölüme konmaz" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:566 msgid "Allow the arguments of the '?' operator to have different types" msgstr "? işlecinin argümanlarında farklı türlere izin verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:569 msgid "Reduce the size of object files" msgstr "Nesne dosyalarını küçültür" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:572 msgid "Make string literals \"const char[]\" not \"char[]\"" msgstr "Dizge sabitler \"char[]\" değil \"const char[]\" yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:575 msgid "-fconst-string-class=\tUse class for constant strings" msgstr "-fconst-string-class=İSİM\tSabit dizgeleri için İSİM sınıfı kullanılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:578 msgid "Perform a register copy-propagation optimization pass" msgstr "Yazmaç kopyalama girişimi eniyileme aşaması uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:581 msgid "Perform cross-jumping optimization" msgstr "Çapraz atlama eniyilemesi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:584 msgid "When running CSE, follow jumps to their targets" msgstr "" "Ortak alt ifade elemesi sırasında onların\n" " hedeflerine dallanmalar izlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:587 msgid "When running CSE, follow conditional jumps" msgstr "" "Ortak alt ifade elemesi sırasında koşullu\n" " dallanmalar izlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:590 msgid "Place data items into their own section" msgstr "Veri öğelerini kendi bölümlerine yerleştirir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:593 +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)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:596 msgid "Inline member functions by default" msgstr "Öntanımlı olarak üye işlevler satıriçidir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:599 msgid "Defer popping functions args from stack until later" msgstr "Yığından işlev argümanlarının çekilmesini erteler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:602 msgid "Attempt to fill delay slots of branch instructions" msgstr "" "Dallanma komutlarının gecikme yuvalarını doldurmaya\n" " çalışır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:605 msgid "Delete useless null pointer checks" msgstr "Kullanışsız boş gösterici denetimlerini siler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:608 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]\tSatır sarmalaması başlangıcında, önek olarak, kaynak konumu bilgisinin ne sıklıkta gösterileceği belirtilir. once: bir kere, every-line: her satırda" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:611 +msgid "Allow '$' in symbol names" +msgstr "Sembol isimlerinde '$' kullanımına izin verilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:614 msgid "Permit '$' as an identifier character" msgstr "Bir belirteç karakteri olarak '$' kullanılabilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528 -msgid "-fdump-\tDump various compiler internals to a file" -msgstr "-fdump-TÜR\tBelirtilen derleyici iç oluşumları bir dosyaya dökümlenir" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:620 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:626 msgid "Perform DWARF2 duplicate elimination" msgstr "DWARF2 yinelenmiş elemesi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:629 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:632 msgid "Perform unused type elimination in debug info" msgstr "Hata ayıklama bilgilerinde kullanılmamış tür elemesi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:641 +msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" +msgstr "" +"Hatalara sebep olmamak için COMPLEX aritmetiği\n" +" emüle edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:644 +msgid "--encoding=\tChoose input encoding (defaults from your locale)" +msgstr "--encoding=\tGirdi kodlaması seçilir (öntanımlısı yerelden gelir)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:647 msgid "Generate code to check exception specifications" msgstr "Olağandışılık belirtimlerini denetleyecek kod üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:653 msgid "Enable exception handling" msgstr "Olağandışılıkların yakalanması etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:656 msgid "-fexec-charset=\tConvert all strings and character constants to character set " msgstr "-fexec-charset=KRK-KÜME\tTüm dizgeler ve karakter sabitleri KRK-KÜME karakter kümesine dönüştürülür" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:659 msgid "Perform a number of minor, expensive optimizations" msgstr "Masraflı eniyilemelerden birkaçını uygular" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:668 +msgid "f2c-compatible code can be generated" +msgstr "f2c uyumlu kod üretililemez" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:671 +msgid "Delete non-FORTRAN-77 intrinsics f2c supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin f2c destekleri\n" +" silinir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:674 +msgid "Disable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin f2c destekleri\n" +" iptal edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:677 +msgid "Enable non-FORTRAN-77 intrinsics f2c supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin f2c destekleri\n" +" etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:680 +msgid "Hide non-FORTRAN-77 intrinsics f2c supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin f2c destekleri\n" +" gizlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:683 +msgid "Unsupported; generate libf2c-calling code" +msgstr "Desteklenmiyor; libf2c çağrı kodu üretilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:686 +msgid "Program is written in typical FORTRAN 66 dialect" +msgstr "Program tipik FORTRAN 66 dilinde yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:689 +msgid "Program is written in typical Unix-f77 dialect" +msgstr "Program tipik Unix-f77 dilinde yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:692 +msgid "Program is written in Fortran-90-ish dialect" +msgstr "Program tipik Fortran-90 dilinde yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:695 +msgid "Delete non-FORTRAN-77 intrinsics F90 supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin F90 destekleri\n" +" silinir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:698 +msgid "Disable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin F90 destekleri\n" +" iptal edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:701 +msgid "Enable non-FORTRAN-77 intrinsics F90 supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin F90 destekleri\n" +" etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:704 +msgid "Hide non-FORTRAN-77 intrinsics F90 supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin F90 destekleri\n" +" gizlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:716 msgid "Assume no NaNs or infinities are generated" msgstr "NaNların ya da sonsuzların üretilmediği varsayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:719 msgid "-ffixed-\tMark as being unavailable to the compiler" msgstr "-ffixed-YAZMAÇ\tDerleyiciye YAZMAÇ yok denir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:725 +msgid "ffixed-line-length-\tSet the maximum line length to " +msgstr "ffixed-line-length-\tAzami satır uzunluğu 'ya ayarlanır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:728 +msgid "Unsupported; affects code generation of arrays" +msgstr "Desteklenmiyor; dizilerin kod üretimi etkilenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:731 msgid "Do not store floats in registers" msgstr "Gerçel sayılar yazmaçlarda saklanmaz" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:734 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 etki alanı döngüye yereldir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:737 msgid "Copy memory address constants into registers before use" msgstr "Kullanmadan önce bellek adres sabitlerini yazmaçlara kopyalar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:740 +msgid "Always check for non gcj generated classes archives" +msgstr "" +"gcj üretimi olmayan sınıfların arşivleri daima\n" +" denetlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:743 msgid "Copy memory operands into registers before use" msgstr "Kullanmadan önce bellek terimlerini yazmaçlara kopyalar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:746 +msgid "Generate code to check subscript and substring bounds" +msgstr "Dizi indislerini denetleyecek kod üretilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:749 +msgid "Program is written in Fortran-90-ish free form" +msgstr "Program Fortran-90'ca serbest biçimde yazılmış" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:752 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "Standart kitaplıkların ve \"main\" işlevinin varolduğu varsayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:755 msgid "Allow function addresses to be held in registers" msgstr "Yazmaçlarda tutulan işlev adreslerine izin verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:758 msgid "Place each function into its own section" msgstr "Her işlev kendi bölümüne yerleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:761 msgid "Perform global common subexpression elimination" msgstr "Global ortak alt ifade elemesi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:764 msgid "Perform redundant load after store elimination in global common subexpression elimination" msgstr "Genel ortak alt ifade elemesinde saklama elemesinden sonra gereğinden fazla yük uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:767 msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "Global ortak alt ifade elemesi sırasında genişletilmiş yük hareketi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:770 msgid "Perform store motion after global common subexpression elimination" msgstr "Global ortak alt ifade elemesinden sonra saklama hareketi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:773 +msgid "Enable fatal diagnostics about inter-procedural problems" +msgstr "" +"Yordamlar arası sorunlar hakkındaki ölümcül tanılar\n" +" etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:776 +msgid "Delete non-FORTRAN-77 intrinsics g77 supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin g77 destekleri\n" +" silinir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:779 +msgid "Disable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin g77 destekleri\n" +" iptal edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:782 +msgid "Enable non-FORTRAN 77 intrinsics F90 supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin g77 destekleri\n" +" etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:785 +msgid "Hide non-FORTRAN 77 intrinsics F90 supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin g77 destekleri\n" +" gizlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:788 msgid "Recognize GNU-defined keywords" msgstr "GNU tanımlı anahtar sözcükler tanınır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:791 msgid "Generate code for GNU runtime environment" msgstr "Kod GNU çalışma ortamı için üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:794 msgid "Enable guessing of branch probabilities" msgstr "Dallanma olasılıklarının tahmini etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:809 msgid "Assume normal C execution environment" msgstr "Normal C çalıştırma ortamı var sayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:812 msgid "Enable support for huge objects" msgstr "Dev nesneler için destek etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:815 msgid "Process #ident directives" msgstr "#ident yönergeleri işlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:818 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" "Dallanmasız karşılıklara koşullu atlama dönüşümü\n" " uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:821 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "" "Koşullu çalıştırmaya koşullu atlama dönüşümü\n" " uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:824 msgid "Export functions even if they can be inlined" msgstr "Özümlenebilir olsalar bile işlevler ihracedilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:827 msgid "Emit implicit instantiations of inline templates" msgstr "Satıriçi şablonların doğrudan gerçeklenmesi sağlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:830 msgid "Emit implicit instantiations of templates" msgstr "Şablonlarının doğrudan gerçeklenmesi sağlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:833 +msgid "Use offset tables for virtual method calls" +msgstr "" +"Sanal yöntem çağrıları için adresleme tabloları\n" +" kullanılır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:836 msgid "Do not generate .size directives" msgstr ".size yönergeleri üretilmez" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:839 +msgid "Initialize local vars and arrays to zero" +msgstr "Yerel değişkenler ve diziler sıfır ile ilklendirilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:842 msgid "Pay attention to the \"inline\" keyword" msgstr "\"inline\" anahtar sözcüğüne dikkat edilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660 -msgid "Integrate simple functions into their callers" -msgstr "Basit işlevler onları çağıranların içine gömülür" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:851 msgid "-finline-limit=\tLimit the size of inlined functions to " msgstr "-finline-limit=SAYI\tSatıriçi kod içeren işlevlerin uzunluğu SAYI ile sınırlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:854 msgid "-finput-charset= Specify the default character set for source files." msgstr "-finput-charset=KRK-KÜME Kaynak dosyaları için öntanımlı karakter kümesi." -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:857 msgid "Instrument function entry and exit with profiling calls" msgstr "İşlev giriş ve çıkışı ayrımlama çağrılarıyla yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:860 +msgid "Intrinsics letters in arbitrary cases" +msgstr "Yerleşikler gelişigüzel yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:863 +msgid "Intrinsics spelled as e.g. SqRt" +msgstr "Yerleşikler SqRt tarzında hecelenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:866 +msgid "Intrinsics in lowercase" +msgstr "Yerleşikler küçük harfle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:869 +msgid "Intrinsics in uppercase" +msgstr "Yerleşikler büyük harfle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:872 +msgid "Assume native functions are implemented using JNI" +msgstr "Yerli işlevlerin JNI kullanarak oluştuğu varsayılır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:875 msgid "Generate code for functions even if they are fully inlined" msgstr "Tamamı satıriçi kod içerse bile işlevler için kod üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:878 msgid "Emit static const variables even if they are not used" msgstr "" "Kullanılmamış bile olsa statik sabit değişkenler\n" " içerilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:884 msgid "Give external symbols a leading underscore" msgstr "Alt çizgi ile başlayan dış semboller verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:887 msgid "Perform loop optimizations" msgstr "Döngü eniyilemeleri uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:890 +msgid "Language keyword letters in arbitrary cases" +msgstr "Dil anahtar sözcükleri gelişigüzel yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:893 +msgid "Language keywords spelled as e.g. IOStat" +msgstr "Dil anahtar sözcükleri IOStat tarzı hecelenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:896 +msgid "Language keywords in lowercase" +msgstr "Dil anahtar sözcükleri küçük harflerle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:899 +msgid "Language keywords in uppercase" +msgstr "Dil anahtar sözcükleri büyük harflerle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:902 msgid "Set errno after built-in math functions" msgstr "" "Yerleşik matematik işlevlerinden sonra ERRNO\n" " kullanılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:905 msgid "Report on permanent memory allocation" msgstr "Ayrılan kalıcı bellek miktarı raporlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:908 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:911 msgid "Attempt to merge identical constants across compilation units" msgstr "" "Özdeş sabitler derleme birimlerine karşın\n" " katıştırılmaya çalışılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:914 msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr "-fmessage-length=SAYI\tTanı iletilerinin uzunluğu her satırda SAYI karakterle sınırlanır. 0 satır sarmalamayı engeller" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:917 +msgid "Delete MIL-STD 1753 intrinsics" +msgstr "MIL-STD 1753 yerleşikleri silinir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:920 +msgid "Disable MIL-STD 1753 intrinsics" +msgstr "MIL-STD 1753 yerleşikleri iptal edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:923 +msgid "Enable MIL-STD 1753 intrinsics" +msgstr "MIL-STD 1753 yerleşikleri etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:926 +msgid "Hide MIL-STD 1753 intrinsics" +msgstr "MIL-STD 1753 yerleşikleri gizlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:929 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:932 msgid "Don't warn about uses of Microsoft extensions" msgstr "Microsoft oluşumlarının kullanımı hakkındaki uyarılar verilmez" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:941 msgid "Use graph-coloring register allocation" msgstr "Çizim renklendiren yazmaç tahsisi kullanılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:944 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "Kod NeXT (Apple Mac OS X) çalışma ortamı için üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:947 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "Objective-C iletileri alıcılarının nil olabileceği varsayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:950 msgid "Support synchronous non-call exceptions" msgstr "Eşzamanlı çağrısız olağandışılıklar desteklenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:959 msgid "Enable Objective-C exception and synchronization syntax" msgstr "Objective-C olağandışılık ve eşzamanlama sözdizimi etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:962 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1286 msgid "Perform loop unrolling for all loops" msgstr "Tüm döngülere ters döngüleme uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741 -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:965 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1289 msgid "Perform loop unrolling when iteration count is known" msgstr "Yineleme sayısı bilindiğinde ters döngüleme uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:968 msgid "When possible do not generate stack frames" msgstr "Mümkün olduğunca yığın çerçeveleri üretilmez" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:971 +msgid "Take at least one trip through each iterative DO loop" +msgstr "Her yinelemeli DO döngüsü en azından bir tur atar" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:974 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "\"compl\" ve \"xor\" benzeri C++ anahtar sözcükleri tanınır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:977 msgid "Do the full register move optimization pass" msgstr "Baştan sona yazmaç taşıma eniyilemesi yapar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:980 msgid "Optimize sibling and tail recursive calls" msgstr "Kardeş ve kuyruk özyinelemeli çağrılar eniyilenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:983 +msgid "Enable optimization of static class initialization code" +msgstr "Statik sınıf ilklendirme kodunun eniyilemesi yapılır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:986 msgid "Enable optional diagnostics" msgstr "Seçimlik teşhisler yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:992 msgid "Pack structure members together without holes" msgstr "Yapı üyelerini birlikte deliksiz paketler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:995 msgid "Return small aggregates in memory, not registers" msgstr "Yazmaçlardaki değil bellekteki küçük kümeler döndürülür" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1001 +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)" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1004 msgid "Perform loop peeling" msgstr "Döngü soyması uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1007 msgid "Enable machine specific peephole optimizations" msgstr "Makinaya özel gözlem deliği eniyilemesi etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1010 msgid "Enable an RTL peephole pass before sched2" msgstr "sched2 çalıştırılmadan önce bir rtl gözlem deliği aşaması etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1013 msgid "Downgrade conformance errors to warnings" msgstr "Uyumluluk hatalarını uyarılara indirger" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1016 msgid "Generate position-independent code if possible" msgstr "Mümkünse, konumdan bağımsız kod üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1019 msgid "Generate position-independent code for executables if possible" msgstr "Mümkünse, çalıştırılabilirler için konumdan bağımsız kod üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1022 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:789 -msgid "Treat the input file as already preprocessed" -msgstr "Girdi dosyaları evvelce önişlemden geçirilmiş kabul edilir" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:792 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1028 msgid "Enable basic program profiling code" msgstr "Temel program profil çıkarma kodu etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1031 msgid "Insert arc-based program profiling code" msgstr "arc-tabanlı yazılım ayrımlama kodu yerleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1034 msgid "Enable common options for generating profile info for profile feedback directed optimizations" msgstr "Ayrımlama geribeslemesi yönlendirmeli eniyilemelerin ayrımlama bilgileri üretimi için ortak seçenekler etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:801 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1037 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "Ayrımlama geribeslemesi yönlendirmeli eniyilemelerin uygulanması için ortak seçenekler etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1040 msgid "Insert code to profile values of expressions" msgstr "Kod, ifade ayrımlama değerlerine yerleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1046 msgid "-frandom-seed=\tMake compile reproducible using " msgstr "-frandom-seed=DİZGE\tDİZGE kullanılarak derleme yeniden türetilebilir yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1049 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1052 msgid "Return small aggregates in registers" msgstr "Yazmaçlardaki küçük kümeler döndürülür" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1055 msgid "Enables a register move optimization" msgstr "Bir yazmaç taşıma eniyilemesi etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1058 msgid "Perform a register renaming optimization pass" msgstr "Yazmaç isimlendirme eniyilemesi aşaması uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1061 msgid "Reorder basic blocks to improve code placement" msgstr "" "Kod yerleşimini iyileştirecek temel blokları\n" " yeniden sıralar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1064 msgid "Reorder functions to improve code placement" msgstr "" "Kod yerleşimini iyileştirecek işlevleri\n" " yeniden sıralar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1067 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "Nesne dosyalarının çalışma anında takaslanabileceğini belirten Fix-and-Continue kipi kullanılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1070 msgid "Enable automatic template instantiation" msgstr "Otomatik şablon gerçeklemesi etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1073 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "Döngü eniyilemesinden sonra bir ortak alt ifade eleme aşaması eklenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1076 msgid "Run the loop optimizer twice" msgstr "Döngü eniyilemesi iki kere çalıştırılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1079 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "Kayan nokta yuvarlama davranışını öntanımlı varsayan eniyilemeler yapılmaz" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1082 msgid "Generate run time type descriptor information" msgstr "Çalışma anı tür tanımlayıcı bilgisi üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1085 msgid "Enable scheduling across basic blocks" msgstr "Temel bloklar arasında zamanlama etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1088 msgid "Allow speculative motion of non-loads" msgstr "Yük oluşturmayanların tahmini hareketine izin verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1091 msgid "Allow speculative motion of some loads" msgstr "Bazı yüklerin tahmini hareketine izin verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1094 msgid "Allow speculative motion of more loads" msgstr "Fazla yüklerin tahmini hareketine izin verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1097 msgid "Allow premature scheduling of queued insns" msgstr "Kuyruklanmış komutların erken zamanlanmasına izin verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1100 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "Kuyruklanmış komutların erken zamanlanmasında bağımlılık aralığı denetimi yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1103 msgid "-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns" msgstr "-fsched-stalled-insns-dep=SAYI Kuyruklanmış komutların erken zamanlanmasında bağımlılık aralığı denetimi yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1106 msgid "-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled" msgstr "-fsched-stalled-insns=SAYI Erken zamanlanabilen kuyruklanmış komutların sayısı" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1109 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler" msgstr "-fsched-verbose=SAYI\tZamanlama için ayrıntı düzeyi belirtilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1112 msgid "If scheduling post reload, do superblock scheduling" msgstr "Sonradan yeniden yükleme zamanlaması varsa süper blok zamanlaması yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1115 msgid "If scheduling post reload, do trace scheduling" msgstr "Sonradan yeniden yükleme zamanlaması varsa izleme zamanlaması yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1118 msgid "Reschedule instructions before register allocation" msgstr "Yazmaç tahsisinden önce komutları yeniden zamanlar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1121 msgid "Reschedule instructions after register allocation" msgstr "Yazmaç tahsisinden sonra komutları yeniden zamanlar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1124 +msgid "Allow appending a second underscore to externals" +msgstr "external'lara ikinci altçizgi eklenebilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1127 msgid "Mark data as shared rather than private" msgstr "Veriyi özelden çok paylaşımlı olarak imler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1130 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" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1133 msgid "Use the narrowest integer type possible for enumeration types" msgstr "Sıralı sabit türleri için mümkün en dar tamsayı türü kullanılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1136 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "\"wchar_t\" için temel tür olarak \"unsigned short\"a zorlar" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1142 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" "IEEE sinyalleme NaNları tarafından farkedilebilen\n" " eniyilemeler iptal edilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1145 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "\"signed\" veya \"unsigned\" verilmezse bit alanı signed yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1148 msgid "Make \"char\" signed by default" msgstr "Öntanımlı olarak \"char\" signed yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1151 +msgid "Do not print names of program units as they are compiled" +msgstr "Yazılım birimlerini isimleri derlendiğinde basılmaz" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1154 msgid "Convert floating point constants to single precision constants" msgstr "Kayan noktalı sabitler tek duyarlıklı sabitlere dönüştürülür" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1157 +msgid "Internally convert most source to lowercase" +msgstr "Küçük harfe dönüşüm içerden yapılır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1160 +msgid "Internally preserve source case" +msgstr "İçerde harf büyüklüğü korunur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1163 +msgid "Internally convert most source to uppercase" +msgstr "Büyük harfe dönüşüm içerden yapılır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1169 msgid "Insert stack checking code into the program" msgstr "Programa yığın denetimi kodu yerleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1175 msgid "-fstack-limit-register=\tTrap if the stack goes past " msgstr "-fstack-limit-register=YAZMAÇ\tYığıt YAZMAÇı aşarsa yakalanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1178 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol " msgstr "-fstack-limit-symbol=İSİM\tYığıt İSİM sembolünü aşarsa yakalanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1181 msgid "Display statistics accumulated during compilation" msgstr "Derleme sırasında toplanan istatistikler gösterilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1184 +msgid "Enable assignability checks for stores into object arrays" +msgstr "" +"Nesne dizileri içinde saklamalar için atanabilirlik\n" +" sınamaları etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1187 msgid "Perform strength reduction optimizations" msgstr "Güç azaltma eniyilemesi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1190 msgid "Assume strict aliasing rules apply" msgstr "Sıkı takma ad kuralları uygulanacağı varsayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1199 +msgid "Symbol names spelled in mixed case" +msgstr "Sembol isimlerin BüyükKüçük harflerle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1202 +msgid "Symbol names in lowercase" +msgstr "Sembol isimleri küçük harflerle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1205 +msgid "Symbol names in uppercase" +msgstr "Sembol isimleri büyük harflerle yazılmıştır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1208 msgid "Check for syntax errors, then stop" msgstr "Sözdizimi denetimi yaptıktan sonra durur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1211 msgid "-ftabstop=\tDistance between tab stops for column reporting" msgstr "-ftabstop=SAYI\tSütunlu raporlama için sekmeler arası mesafe" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1214 msgid "-ftemplate-depth-\tSpecify maximum template instantiation depth" msgstr "-ftemplate-depth-SAYI\tAzami şablon gerçekleme derinliği belirtilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1217 msgid "Create data files needed by \"gcov\"" msgstr "\"gcov\" için gereken veri dosyaları oluşturulur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1223 msgid "Perform jump threading optimizations" msgstr "Atlama evresi oluşturma eniyilemesi uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1226 msgid "Report the time taken by each compiler pass" msgstr "Her derleme aşaması için harcanan zaman raporlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1229 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]\tÖntanımlı yerel-evreli saklama kodu üretim modeli belirtilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1232 msgid "Perform superblock formation via tail duplication" msgstr "Kuyruk tekrarı üzerinden süperblok oluşumu uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1235 msgid "Assume floating-point operations can trap" msgstr "Kayan nokta işlemlerinin yakalanabileceği varsayılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1238 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "Toplama, çıkartma, çarpmada signed taşması için kapan kurulur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1241 +msgid "Make prefix-radix non-decimal constants be typeless" +msgstr "Ondalık olmayan taban önekli sabitler türsüz yapılır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1244 +msgid "Allow all ugly features" +msgstr "Tüm salak özellikler etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1247 +msgid "Hollerith and typeless can be passed as arguments" +msgstr "" +"Hollerith ve türsüz sabitler argüman olarak\n" +" kullanılabilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1250 +msgid "Allow ordinary copying of ASSIGN'ed vars" +msgstr "" +"ASSIGN'lı değişkenlerin olağan kopyalamasına izin\n" +" verilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1253 +msgid "Dummy array dimensioned to (1) is assumed-size" +msgstr "Yapay dizi üstindisi (1) kabul edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1256 +msgid "Trailing comma in procedure call denotes null argument" +msgstr "Yordam çağrılarında son virgül null argüman sayılır" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1259 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1262 +msgid "Initialization via DATA and PARAMETER is not type-compatible" +msgstr "DATA ve PARAMETER üzerinden ilklendirme tür uyumlu değildir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1265 +msgid "Allow INTEGER and LOGICAL interchangeability" +msgstr "INTEGER ve LOGICAL aradönüşümlerine izin verilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1268 +msgid "Append underscores to externals" +msgstr "external'lara altçizgiler eklenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1271 msgid "Compile whole compilation unit at a time" msgstr "Derleme biriminin tamamı bir defada derlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1274 +msgid "Delete libU77 intrinsics" +msgstr "libU77 yerleşikleri silinir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1277 +msgid "Disable libU77 intrinsics" +msgstr "libU77 yerleşikleri iptal edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1280 +msgid "Enable libU77 intrinsics" +msgstr "libU77 yerleşikleri etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1283 +msgid "Hide libU77 intrinsics" +msgstr "libU77 yerleşikleri gizlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1292 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "IEEE veya ISO standartlarını bozabilen matematiksel eniyilemelere izin verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1295 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "\"signed\" veya \"unsigned\" verilmediğinde bit alanı unsigned yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1298 msgid "Make \"char\" unsigned by default" msgstr "Öntanımlı olarak \"char\" unsigned yapılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1301 msgid "Perform loop unswitching" msgstr "Döngü anahtarlamaması uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1304 msgid "Just generate unwind tables for exception handling" msgstr "" "Olağandışılıkların yakalanması için birbirlerini\n" " etkilemeyenlerin tablosu oluşturulur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1310 msgid "Use __cxa_atexit to register destructors" msgstr "Yazmaç yıkıcılara __cxa_atexit kullanılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1316 msgid "Add extra commentary to assembler output" msgstr "Çevirici çıktısına fazladan açıklama ekler" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1319 +msgid "Print g77-specific version information and run internal tests" +msgstr "g77'ye özel sürüm bilgisini gösterir ve iç testleri yapar" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1322 msgid "Use expression value profiles in optimizations" msgstr "Eniyilemelerde ifade değeri ayrımlaması kullanılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1325 msgid "Discard unused virtual functions" msgstr "Kullanılmayan sanal işlevler iptal edilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1328 msgid "Implement vtables using thunks" msgstr "İşlev gösterici tablosu aşılarla oluşturulur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1331 +msgid "Program is written in VXT (Digital-like) FORTRAN" +msgstr "Program VXT (Digital-benzeri) FORTRAN da yazılmış" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1334 +msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin VXT FORTRAN\n" +" destekleri silinir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1337 +msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin VXT FORTRAN\n" +" destekleri iptal edilir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1340 +msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin VXT FORTRAN\n" +" destekleri etkin olur" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1343 +msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" +msgstr "" +"FORTRAN-77 olmayan yerleşiklerin VXT FORTRAN\n" +" destekleri gizlenir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1349 msgid "Emit common-like symbols as weak symbols" msgstr "Benzer semboller zayıf semboller olarak ele alınır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1352 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1355 msgid "-fwide-exec-charset=\tConvert all wide strings and character constants to character set " msgstr "-fwide-exec-charset=KRK-KÜMESİ\tTüm geniş karakterli dizgeler ve sabitler KRK-KÜMESİne dönüştürülür" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1358 msgid "Generate a #line directive pointing at the current working directory" msgstr "O anki çalışma dizinini betimleyen bir #line yönergesi üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1361 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1364 msgid "Store strings in writable data section" msgstr "Dizgeler yazılabilir veri bölümünde saklanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1367 msgid "Emit cross referencing information" msgstr "Çapraz referans bilgisi yayınlanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1370 +msgid "Print internal debugging-related information" +msgstr "İç hata ayıklama bilgilerini gösterir" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1373 msgid "Put zero initialized data in the bss section" msgstr "bss bölümüne sıfır ilklendirmeli veri yerleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1376 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "Zero-Link kipinde kullanmak için çılgın sınıf araması (via objc_getClass()) üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1379 +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" + +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1382 msgid "Generate debug information in default format" msgstr "Öntanımlı biçimde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1385 msgid "Generate debug information in COFF format" msgstr "COFF biçiminde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1388 msgid "Generate debug information in DWARF v2 format" msgstr "DWARF v2 biçiminde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1391 msgid "Dump declarations to a .decl file" msgstr "Bildirimler bir .decl dosyasına dökümlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1394 msgid "Generate debug information in default extended format" msgstr "Öntanımlı gelişmiş biçimde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1397 msgid "Generate debug information in STABS format" msgstr "STABS biçiminde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1400 msgid "Generate debug information in extended STABS format" msgstr "Gelişmiş STABS biçiminde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1403 msgid "Generate debug information in VMS format" msgstr "VMS biçiminde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1406 msgid "Generate debug information in XCOFF format" msgstr "XCOFF biçiminde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1409 msgid "Generate debug information in extended XCOFF format" msgstr "Gelişmiş XCOFF biçiminde hata ayıklama bilgisi üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1412 msgid "-idirafter \tAdd to the end of the system include path" msgstr "-idirafter DİZİN\tDİZİN sistem başlık dosyaları arama yolunun sonuna eklenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1415 msgid "-imacros \tAccept definition of macros in " msgstr "-imacros DOSYA\tDOSYAdaki makro tanımları kabul edilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1418 msgid "-include \tInclude the contents of before other files" msgstr "-include DOSYA\tDOSYAnın içeriği diğer dosyaların başlangıcına eklenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1421 msgid "-iprefix \tSpecify as a prefix for next two options" msgstr "-iprefix YOL\tYOL sonraki iki seçenek için önek olur" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1424 msgid "-isysroot \tSet to be the system root directory" msgstr "-isysroot DİZİN\tDİZİN sistemin kök dizini kabul edilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1427 msgid "-isystem \tAdd to the start of the system include path" msgstr "-isystem DİZİN\tDİZİN sistem başlık dosyaları arama yolunun başına eklenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1430 msgid "-iwithprefix \tAdd to the end of the system include path" msgstr "-iwithprefix DİZİN\tDİZİN sistem başlık dosyaları arama yolunun sonuna eklenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1433 msgid "-iwithprefixbefore \tAdd to the end of the main include path" msgstr "-iwithprefixbefore DİZİN\tDİZİN ana başlık dosyaları arama yolunun sonuna eklenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1445 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "Standart sistem başlık dosyaları dizinleri aranmaz (-isystem ile belirtilenler hariç) " -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1448 msgid "Do not search standard system include directories for C++" msgstr "C++ için standart sistem başlık dosyaları dizinleri aranmaz" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1451 msgid "-o \tPlace output into " msgstr "-o DOSYA\tÇıktı DOSYAya yazılır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1454 msgid "Enable function profiling" msgstr "İşlev ayrımlama etkinleştirilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1457 msgid "Issue warnings needed for strict compliance to the standard" msgstr "Standarda tam uyum için gereken uyarılar üretilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1460 msgid "Like -pedantic but issue them as errors" msgstr "-pedantic gibidir ancak uyarılar hata olarak ele alınır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1463 msgid "Generate C header of platform-specific features" msgstr "Platforma özel niteliklerin C başlıklarını üretir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1466 msgid "Do not display functions compiled or elapsed time" msgstr "Derlenen işlevler ve geçen zaman gösterilmez" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1469 msgid "Remap file names when including files" msgstr "Dosyalar içerildiğinde dosya isimleri yeniden eşlenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1472 msgid "Conform to the ISO 1998 C++ standard" msgstr "ISO 1998 C++ standardı uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1475 msgid "Conform to the ISO 1990 C standard" msgstr "ISO 1990 C standardı uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1478 msgid "Conform to the ISO 1999 C standard" msgstr "ISO 1999 C standardı uygulanır" -#: /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 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1481 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1502 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1505 msgid "Deprecated in favor of -std=c99" msgstr "-std=c99 eskidi" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1484 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "ISO 1998 C++ standardı GNU oluşumlarıyla uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1487 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "ISO 1990 C standardı GNU oluşumlarıyla uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1490 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "ISO 1999 C standardı GNU oluşumlarıyla uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1493 msgid "Deprecated in favor of -std=gnu99" msgstr "-std=gnu99 eskidi" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1496 msgid "Deprecated in favor of -std=c89" msgstr "-std=c89 eskidi" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1499 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "ISO 1990 C standardı 1994 düzeltmesiyle uygulanır" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1508 msgid "Enable traditional preprocessing" msgstr "Geleneksel önişlemi etkinleştirir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1511 msgid "-trigraphs\tSupport ISO C trigraphs" msgstr "-trigraphs\tISO C üçlü harfleri desteklenir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1514 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "Sisteme özel ve GCCye özel makrolar önceden tanımlı yapılmaz" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1517 msgid "Enable verbose output" msgstr "Ayrıntılı bilgi verilir" -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179 -msgid "Display the compiler's version" -msgstr "Derleyicinin sürüm bilgileri gösterilir" - -#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182 +#: /home/mitchell/gcc-3.4.1-20040625/objdir/gcc/options.c:1523 msgid "Suppress warnings" msgstr "Uyarılar engellenir" -#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094 +#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1089 msgid "`-p' not supported; use `-pg' and gprof(1)" msgstr "`-p' desteklenmiyor; `-pg' ve gprof(1) kullanın" @@ -20861,7 +21314,7 @@ msgstr "GCC -E kulanılmaksızın -C desteklemez" msgid "GCC does not support -CC without using -E" msgstr "GCC -E kulanılmaksızın -CC desteklemez" -#: config/sparc/linux64.h:208 config/sparc/linux64.h:219 +#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 #: 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" @@ -21004,6 +21457,57 @@ msgstr "Standart girdiden girdi alınırken -E gereklidir" msgid "mno-cygwin and mno-win32 are not compatible" msgstr "mno-cygwin ve mno-win32 uyumsuz" +#~ msgid "neither the destructor nor the class-specific " +#~ msgstr "sınıf tanımlanırken bildirilmiş olsalar bile " + +#~ msgid "operator delete will be called, even if they are " +#~ msgstr "ne yıkıcı ne de sınıfa özel " + +#~ msgid "declared when the class is defined." +#~ msgstr "silme işleci çağrılabilir." + +#~ msgid "-I \tAdd to the end of the main include path. -I- gives more include path control; see info documentation" +#~ msgstr "-I DİZİN\tDİZİN ana başlık dosyaları yolunun sonuna eklenir. -I- daha iyidir; bilgi sayfalarına bakınız" + +#~ msgid "Generate make dependencies" +#~ msgstr "make bağımlılıkları üretilir" + +#~ msgid "-MF \tWrite dependency output to the given file" +#~ msgstr "-MF DOSYA\tBağımlılık çıktıları belirtilen dosyaya yazılır" + +#~ msgid "Like -M but ignore system header files" +#~ msgstr "-M gibi, ancak sistem başlık dosyaları yoksayılır" + +#~ msgid "Enable most warning messages" +#~ msgstr "Uyarı sıklığı iletileri etkinleştirilir" + +#~ msgid "Warn about possibly nested block comments, and C++ comments spanning more than one physical line" +#~ msgstr "İç içe açıklama satırları ile bir fiziksel satırdan fazla olan C++ açıklamalarında uyarır" + +#~ msgid "Synonym for -Wcomment" +#~ msgstr "-Wcomment ile aynı" + +#~ msgid "Warn about deprecated compiler features" +#~ msgstr "Eskimiş derleyici özellikleri hakkında uyarmaz" + +#~ msgid "Deprecated. This switch has no effect." +#~ msgstr "Eski. Bu seçenek etkisizdir." + +#~ msgid "Warn if trigraphs are encountered that might affect the meaning of the program" +#~ msgstr "Yazılımın anlamını etkileyebilecek üçlü harfler saptanırsa uyarır" + +#~ msgid "-fdump-\tDump various compiler internals to a file" +#~ msgstr "-fdump-TÜR\tBelirtilen derleyici iç oluşumları bir dosyaya dökümlenir" + +#~ msgid "Integrate simple functions into their callers" +#~ msgstr "Basit işlevler onları çağıranların içine gömülür" + +#~ msgid "Treat the input file as already preprocessed" +#~ msgstr "Girdi dosyaları evvelce önişlemden geçirilmiş kabul edilir" + +#~ msgid "Display the compiler's version" +#~ msgstr "Derleyicinin sürüm bilgileri gösterilir" + #~ msgid "concatenation of string literals with __FUNCTION__ is deprecated" #~ msgstr "__FUNCTION__ ile dizge sabitlerin birleştirilmesi özelliği eski kullanım" @@ -22510,274 +23014,15 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "ignoring pragma: %s" #~ msgstr "pragma yoksayılıyor: %s" -#~ 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" - -#~ msgid "Program is written in typical FORTRAN 66 dialect" -#~ msgstr "Program tipik FORTRAN 66 dilinde yazılmıştır" - -#~ msgid "Program is written in typical Unix f77 dialect" -#~ msgstr "Program tipik Unix f77 dilinde yazılmıştır" - #~ msgid "Program does not use Unix-f77 dialectal features" #~ msgstr "Program Unix-f77 dilinin özelliklerini kullanmıyor" -#~ msgid "Program is written in Fortran-90-ish dialect" -#~ msgstr "Program tipik Fortran-90 dilinde yazılmıştır" - -#~ 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." - -#~ msgid "Allow $ in symbol names" -#~ msgstr "Sembol isimlerinde $ kullanımına izin verilir" - -#~ msgid "f2c-compatible code need not be generated" -#~ msgstr "f2c uyumlu kod, üretilmemeyi gerektirir" - -#~ msgid "Unsupported; do not generate libf2c-calling code" -#~ msgstr "Desteklenmiyor; libf2c çağrı kodu üretilmez" - -#~ msgid "Unsupported; affects code-generation of arrays" -#~ msgstr "Desteklenmiyor; dizilerin kod üretimi etkilenir" - -#~ msgid "Program is written in Fortran-90-ish free form" -#~ msgstr "Program Fortran-90'ca serbest biçimde yazılmış" - -#~ 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)" - -#~ msgid "Program is written in VXT (Digital-like) FORTRAN" -#~ msgstr "Program VXT (Digital-benzeri) FORTRAN da yazılmış" - -#~ msgid "Disallow all ugly features" -#~ msgstr "Tüm salak özellikler kapatılır" - -#~ msgid "Hollerith and typeless constants not passed as arguments" -#~ msgstr "" -#~ "Hollerith ve türsüz sabitler argüman olarak\n" -#~ " kullanılmaz" - -#~ msgid "Allow ordinary copying of ASSIGN'ed vars" -#~ msgstr "" -#~ "ASSIGN'lı değişkenlerin olağan kopyalamasına izin\n" -#~ " verilir" - -#~ msgid "Dummy array dimensioned to (1) is assumed-size" -#~ msgstr "Yapay dizi üstindisi (1) kabul edilir" - -#~ msgid "Trailing comma in procedure call denotes null argument" -#~ msgstr "Yordam çağrılarında son virgül null argüman sayılır" - -#~ 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" - -#~ msgid "Initialization via DATA and PARAMETER is type-compatible" -#~ msgstr "DATA ve PARAMETER üzerinden ilklendirme tür uyumludur" - -#~ msgid "Allow INTEGER and LOGICAL interchangeability" -#~ msgstr "INTEGER ve LOGICAL aradönüşümlerine izin verilir" - -#~ msgid "Print internal debugging-related info" -#~ msgstr "İç hata ayıklama bilgilerini gösterir" - -#~ msgid "Initialize local vars and arrays to zero" -#~ msgstr "Yerel değişkenler ve diziler sıfır ile ilklendirilir" - -#~ msgid "Backslashes in character/hollerith constants not special (C-style)" -#~ msgstr "" -#~ "Tersbölüler ve karakter/hollerith sabitler özel\n" -#~ " değildir (C-tarzı)" - -#~ msgid "Have front end emulate COMPLEX arithmetic to avoid bugs" -#~ msgstr "" -#~ "Hatalara sebep olmamak için COMPLEX aritmetiği\n" -#~ " emüle edilir" - #~ msgid "Disable the appending of underscores to externals" #~ msgstr "external'lara altçizgi eklenmez" -#~ msgid "Never append a second underscore to externals" -#~ msgstr "external'lara ikinci altçizgi eklenemez" - -#~ msgid "Intrinsics spelled as e.g. SqRt" -#~ msgstr "Yerleşikler SqRt tarzında hecelenir" - -#~ msgid "Intrinsics in uppercase" -#~ msgstr "Yerleşikler büyük harfle yazılmıştır" - -#~ msgid "Intrinsics letters in arbitrary cases" -#~ msgstr "Yerleşikler gelişigüzel yazılmıştır" - -#~ msgid "Language keywords spelled as e.g. IOStat" -#~ msgstr "Dil anahtar sözcükleri IOStat tarzı hecelenir" - -#~ msgid "Language keywords in uppercase" -#~ msgstr "Dil anahtar sözcükleri büyük harflerle yazılmıştır" - -#~ msgid "Language keyword letters in arbitrary cases" -#~ msgstr "Dil anahtar sözcükleri gelişigüzel yazılmıştır" - -#~ msgid "Internally convert most source to uppercase" -#~ msgstr "Büyük harfe dönüşüm içerden yapılır" - -#~ msgid "Internally preserve source case" -#~ msgstr "İçerde harf büyüklüğü korunur" - -#~ msgid "Symbol names spelled in mixed case" -#~ msgstr "Sembol isimlerin BüyükKüçük harflerle yazılmıştır" - -#~ msgid "Symbol names in uppercase" -#~ msgstr "Sembol isimleri büyük harflerle yazılmıştır" - -#~ msgid "Symbol names in lowercase" -#~ msgstr "Sembol isimleri küçük harflerle yazılmıştır" - -#~ msgid "Program written in uppercase" -#~ msgstr "Program büyük harflerle yazılmıştır" - -#~ msgid "Program written in lowercase" -#~ msgstr "Program küçük harflerle yazılmıştır" - -#~ msgid "Program written in strict mixed-case" -#~ msgstr "Program BüyükKüçük harflerle yazılmıştır" - -#~ msgid "Compile as if program written in uppercase" -#~ msgstr "Program büyük harflerle yazılmış olarak derlenir" - -#~ msgid "Compile as if program written in lowercase" -#~ msgstr "Program küçük harflerle yazılmış olarak derlenir" - -#~ msgid "Preserve all spelling (case) used in program" -#~ msgstr "Program derlenirken harf büyüklüklerine dokunulmaz" - -#~ msgid "Delete libU77 intrinsics with bad interfaces" -#~ msgstr "Hatalı arabirimli libU77 yerleşikleri silinir" - -#~ msgid "Disable libU77 intrinsics with bad interfaces" -#~ msgstr "Hatalı arabirimli libU77 yerleşikleri iptal edilir" - -#~ msgid "Hide libU77 intrinsics with bad interfaces" -#~ msgstr "Hatalı arabirimli libU77 yerleşikleri gizlenir" - -#~ msgid "Delete non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin f2c destekleri\n" -#~ " silinir" - -#~ msgid "Disable non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin f2c destekleri\n" -#~ " iptal edilir" - -#~ msgid "Hide non-FORTRAN-77 intrinsics f2c supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin f2c destekleri\n" -#~ " gizlenir" - -#~ msgid "Delete non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin F90 destekleri\n" -#~ " silinir" - -#~ msgid "Disable non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin F90 destekleri\n" -#~ " iptal edilir" - -#~ msgid "Hide non-FORTRAN-77 intrinsics F90 supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin F90 destekleri\n" -#~ " gizlenir" - -#~ msgid "Delete non-FORTRAN-77 intrinsics g77 supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin g77 destekleri\n" -#~ " silinir" - -#~ msgid "Disable non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin g77 destekleri\n" -#~ " iptal edilir" - -#~ msgid "Hide non-FORTRAN 77 intrinsics F90 supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin g77 destekleri\n" -#~ " gizlenir" - -#~ msgid "Delete MIL-STD 1753 intrinsics" -#~ msgstr "MIL-STD 1753 yerleşikleri silinir" - -#~ msgid "Disable MIL-STD 1753 intrinsics" -#~ msgstr "MIL-STD 1753 yerleşikleri iptal edilir" - -#~ msgid "Hide MIL-STD 1753 intrinsics" -#~ msgstr "MIL-STD 1753 yerleşikleri gizlenir" - -#~ msgid "Delete libU77 intrinsics" -#~ msgstr "libU77 yerleşikleri silinir" - -#~ msgid "Disable libU77 intrinsics" -#~ msgstr "libU77 yerleşikleri iptal edilir" - -#~ msgid "Hide libU77 intrinsics" -#~ msgstr "libU77 yerleşikleri gizlenir" - -#~ msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin VXT FORTRAN\n" -#~ " destekleri silinir" - -#~ msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin VXT FORTRAN\n" -#~ " destekleri iptal edilir" - -#~ msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports" -#~ msgstr "" -#~ "FORTRAN-77 olmayan yerleşiklerin VXT FORTRAN\n" -#~ " destekleri gizlenir" - -#~ 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" - -#~ 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)" - -#~ msgid "Take at least one trip through each iterative DO loop" -#~ msgstr "Her yinelemeli DO döngüsü en azından bir tur atar" - -#~ msgid "Disable fatal diagnostics about inter-procedural problems" -#~ msgstr "" -#~ "Yordamlar arası sorunlar hakkındaki ölümcül tanılar\n" -#~ " iptal edilir" - -#~ msgid "Make prefix-radix non-decimal constants be typeless" -#~ msgstr "Ondalık olmayan taban önekli sabitler türsüz yapılır" - -#~ msgid "Generate code to check subscript and substring bounds" -#~ msgstr "Dizi indislerini denetleyecek kod üretilir" - #~ msgid "Fortran-specific form of -fbounds-check" #~ msgstr "Fortran'a özel -fbounds-check biçimi" -#~ msgid "Disable warnings about inter-procedural problems" -#~ msgstr "Yordamlar arası sorunlar hakkındaki uyarılar verilmez" - -#~ msgid "Warn about constructs with surprising meanings" -#~ msgstr "Yapılar hakkında sürpriz niteliğinde uyarı verilir" - #~ msgid "Add a directory for INCLUDE searching" #~ msgstr "INCLUDE araması için dizin eklenir" @@ -22790,56 +23035,18 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "Disable automatic array bounds checking" #~ msgstr "Dizi sınırları denetimi iptal edilir" -#~ msgid "Disable assignability checks for stores into object arrays" -#~ msgstr "" -#~ "Nesne dizileri içinde saklamalar için atanabilirlik\n" -#~ " denetimleri kapatılır" - -#~ msgid "Assume native functions are implemented using JNI" -#~ msgstr "Yerli işlevlerin JNI kullanarak oluştuğu varsayılır" - -#~ msgid "Replace system path" -#~ msgstr "Sistem dosya yolu ile değiştirilir" - #~ 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 "Choose input encoding (default comes from locale)" -#~ msgstr "Girdi kodlaması seçilir (öntanımlı yerelden gelir)" - #~ 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 "Warn if modifiers are specified when not necessary" -#~ msgstr "Değiştiriciler gereksizken belirtilmişse uyarır" - -#~ msgid "Warn if deprecated empty statements are found" -#~ msgstr "Eski tip boş deyimler bulunduğunda uyarır" - -#~ msgid "Warn if .class files are out of date" -#~ msgstr ".class dosyaları güncel değilse uyarır" - -#~ msgid "Always check for non gcj generated classes archives" -#~ msgstr "" -#~ "gcj üretimi olmayan sınıfların arşivleri daima\n" -#~ " denetlenir" - -#~ msgid "Never optimize static class initialization code" -#~ msgstr "" -#~ "Statik sınıf ilklendirme koduna hiç bir eniyileme\n" -#~ " uygulanmaz" - -#~ msgid "Use offset tables for virtual method calls" -#~ msgstr "" -#~ "Sanal yöntem çağrıları için adresleme tabloları\n" -#~ " kullanılır" - #~ msgid "`%s' cannot be statically allocated" #~ msgstr "`%s' statik olarak ayrılamıyor" @@ -25787,14 +25994,12 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "Unterminated character constant at %0 [info -f g77 M LEX]" #~ msgstr "%0 içinde sonlandırılmamış karakter sabiti [info -f g77 M LEX]" -#, fuzzy #~ msgid "Continuation line at %0 must have initial `&' since it continues a character context [info -f g77 M LEX]" #~ msgstr "%0 daki devam satırı bir karakter bağlamı ile devam ettiğinden başında `&' olmalı [info -f g77 M LEX]" #~ msgid "Missing initial `&' on continuation line at %0 [info -f g77 M LEX]" #~ msgstr "%0 daki devam satırının başında `&' eksik [info -f g77 M LEX]" -#, fuzzy #~ msgid "Continuation line at %0 must have initial `&' since it continues a split lexical token [info -f g77 M LEX]" #~ msgstr "%0 daki devam satırı ayrı bir sözel dizgecik ile devam ettiğinden başında `&' olmalı [info -f g77 M LEX]" @@ -25822,7 +26027,6 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "Invalid %A statement at %0" #~ msgstr "%0 daki deyim %A için geçersiz" -#, fuzzy #~ msgid "Invalid use of hollerith constant in statement at %0 -- enclose the constant in parentheses (for example, change BACKSPACE 2HAB to BACKSPACE (2HAB))" #~ msgstr "Hollerith sabitin %0 daki kullanımı geçersiz -- sabiti parantez içine alın (örneğin, BACKSPACE 2HAB yerine BACKSPACE (2HAB))" @@ -25893,77 +26097,66 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "Invalid G specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki G belirteci geçersiz" -#, fuzzy #~ msgid "Invalid L specifier in FORMAT statement at %0 -- correct form: [r]Lw" #~ msgstr "%0 daki FORMAT deyimi içindeki L belirteci geçersiz -- doğrusu: [r]Lw" #~ msgid "Invalid L specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki L belirteci geçersiz" -#, fuzzy #~ msgid "Invalid A specifier in FORMAT statement at %0 -- correct form: [r]A[w]" #~ msgstr "%0 daki FORMAT deyimi içindeki A belirteci geçersiz -- doğrusu: [r]A[w]" #~ msgid "Invalid A specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki A belirteci geçersiz" -#, fuzzy #~ msgid "Invalid D specifier in FORMAT statement at %0 -- correct form: [r]Dw.d" #~ msgstr "%0 daki FORMAT deyimi içindeki D belirteci geçersiz -- doğrusu: [r]Dw.d" #~ msgid "Invalid D specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki D belirteci geçersiz" -#, fuzzy #~ msgid "Invalid Q specifier in FORMAT statement at %0 -- correct form: Q" #~ msgstr "%0 daki FORMAT deyimi içindeki Q belirteci geçersiz -- doğrusu: Q" #~ msgid "Invalid Q specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki Q belirteci geçersiz" -#, fuzzy #~ msgid "Invalid $ specifier in FORMAT statement at %0 -- correct form: $" #~ msgstr "%0 daki FORMAT deyimi içindeki $ belirteci geçersiz -- doğrusu: $" #~ msgid "Invalid $ specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki $ belirteci geçersiz" -#, fuzzy #~ msgid "Invalid P specifier in FORMAT statement at %0 -- correct form: kP" #~ msgstr "%0 daki FORMAT deyimi içindeki P belirteci geçersiz -- doğrusu: kP" #~ msgid "Invalid P specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki P belirteci geçersiz" -#, fuzzy #~ msgid "Invalid T specifier in FORMAT statement at %0 -- correct form: Tn" #~ msgstr "%0 daki FORMAT deyimi içindeki T belirteci geçersiz -- doğrusu: Tn" #~ msgid "Invalid T specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki T belirteci geçersiz" -#, fuzzy #~ msgid "Invalid TL specifier in FORMAT statement at %0 -- correct form: TLn" #~ msgstr "%0 daki FORMAT deyimi içindeki TL belirteci geçersiz -- doğrusu: TLn" #~ msgid "Invalid TL specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki TL belirteci geçersiz" -#, fuzzy #~ msgid "Invalid TR specifier in FORMAT statement at %0 -- correct form: TRn" #~ msgstr "%0 daki FORMAT deyimi içindeki TR belirteci geçersiz -- doğrusu: TRn" #~ msgid "Invalid TR specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki TR belirteci geçersiz" -#, fuzzy #~ msgid "Invalid X specifier in FORMAT statement at %0 -- correct form: nX" #~ msgstr "%0 daki FORMAT deyimi içindeki X belirteci geçersiz -- doğrusu: nX" #~ msgid "Invalid X specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki X belirteci geçersiz" -#, fuzzy #~ msgid "Invalid S specifier in FORMAT statement at %0 -- correct form: S" #~ msgstr "%0 daki FORMAT deyimi içindeki S belirteci geçersiz -- doğrusu: S" @@ -25984,28 +26177,24 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "Invalid SS specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki SS belirteci geçersiz" -#, fuzzy #~ msgid "Invalid BN specifier in FORMAT statement at %0 -- correct form: BN" #~ msgstr "%0 daki FORMAT deyimi içindeki BN belirteci geçersiz -- doğrusu: BN" #~ msgid "Invalid BN specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki BN belirteci geçersiz" -#, fuzzy #~ msgid "Invalid BZ specifier in FORMAT statement at %0 -- correct form: BZ" #~ msgstr "%0 daki FORMAT deyimi içindeki BZ belirteci geçersiz -- doğrusu: BZ" #~ msgid "Invalid BZ specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki BZ belirteci geçersiz" -#, fuzzy #~ msgid "Invalid : specifier in FORMAT statement at %0 -- correct form: :" #~ msgstr "%0 daki FORMAT deyimi içindeki : belirteci geçersiz -- doğrusu: :" #~ msgid "Invalid : specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki : belirteci geçersiz" -#, fuzzy #~ msgid "Invalid H specifier in FORMAT statement at %0 -- correct form: nHcharacters !where n is an unsigned decimal constant, and characters !contains exactly n characters (including spaces)" #~ msgstr "" #~ "%0 daki FORMAT deyimi içindeki H belirteci geçersiz -- doğrusu: nHkarakterler\n" @@ -26014,21 +26203,18 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "Invalid H specifier in FORMAT statement at %0" #~ msgstr "%0 daki FORMAT deyimi içindeki H belirteci geçersiz" -#, fuzzy #~ msgid "Invalid token with FORMAT run-time expression at %0 -- use the traditional operators .LT., .LE., .GT., .GE., .EQ., and .NE. in place of the newer tokens <, <=, >, >=, ==, and !=, because > ends an expression within a FORMAT statement" -#~ msgstr "%0 daki FORMAT çalışma anı ifadesinde dizgecik geçersiz -- FORMAT deyimi içindeki ifadeler > ile bittiğinden <, <=, >, >=, ==, ve != dizgecikleri yerine geleneksel .LT., .LE., .GT., .GE., .EQ., ve .NE. işlemimlerini kullanın." +#~ msgstr "%0 daki FORMAT çalışma anı ifadesinde dizgecik geçersiz -- FORMAT deyimi içindeki ifadeler > ile bittiğinden <, <=, >, >=, ==, ve != dizgecikleri yerine geleneksel .LT., .LE., .GT., .GE., .EQ., ve .NE. işleçlerini kullanın." #~ msgid "Invalid token with FORMAT run-time expression at %0" #~ msgstr "%0 daki FORMAT çalışma anı ifadesinde dizgecik geçersiz" -#, fuzzy #~ msgid "Defined operator at %0 contains a nonletter -- must contain only letters A-Z (or a-z)" -#~ msgstr "%0 da tanımlı işlemimindeki karakter bir harf değil -- sadece A-Z ya da a-z aralığındaki karakterler kullanılabilir" +#~ msgstr "%0 da tanımlı işleçteki karakter bir harf değil -- sadece A-Z ya da a-z aralığındaki karakterler kullanılabilir" #~ msgid "Nonletter in defined operator at %0" #~ msgstr "%0 da tanımlı işlemimindeki karakter bir harf değil" -#, fuzzy #~ msgid "Invalid type-declaration attribute at %0 -- must be one of: DIMENSION(array-spec), EXTERNAL, INTRINSIC, PARAMETER, or SAVE" #~ msgstr "%0 daki tür bildirim özniteliği geçersiz -- bunlardan biri olmalı: DIMENSION(dizi-özl), EXTERNAL, INTRINSIC, PARAMETER, ya da SAVE" @@ -26047,7 +26233,6 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "Range specification at %0 invalid" #~ msgstr "%0 daki kapsam özellikleri geçersiz" -#, fuzzy #~ msgid "Range specification at %0 useless; first expression greater than second expression in range, so range can never be matched by any selection expression" #~ msgstr "%0 da aralık özelliği kullanışsız; aralık içindeki ilk ifade ikincisinden büyük, öyle ki aralık hiçbir zaman herhangi bir seçim ifadesi tarafından eşleştirilemez" @@ -26243,9 +26428,8 @@ msgstr "mno-cygwin ve mno-win32 uyumsuz" #~ msgid "Padding of %A %D required before `%B' in common block `%C' at %0" #~ msgstr "%A %D adımlaması %0 daki ortak blok `%C' içindeki `%B' den önce gerekli" -#, fuzzy #~ msgid "Invalid length specification at %0 for IMPLICIT statement -- must be integer constant expression" -#~ msgstr "IMPLICIT deyimi için %0 daki uzunluk özelliği geçersiz -- tamsayı sabit ifadesi olmalı" +#~ msgstr "IMPLICIT deyimi için %0 daki uzunluk belirtimi geçersiz -- tamsayı sabit ifadesi olmalı" #~ msgid "Type of ENTRY point at %0 to function conflicts with type(s) of previous entrypoint(s) -- must all be identical-length CHARACTER or none be CHARACTER type" #~ msgstr "İşlevin %0 daki giriş noktasının türü önceki giriş noktası/larındaki tür(ler) ile çelişiyor -- ya tümü aynı karakter uzunluğunda olmalı yada hiçbiri karakter türünde olmamalı" diff --git a/gcc/postreload.c b/gcc/postreload.c index 20d4a4f543e..2ff95b1a4a7 100644 --- a/gcc/postreload.c +++ b/gcc/postreload.c @@ -118,6 +118,19 @@ reload_cse_simplify (rtx insn, rtx testreg) int count = 0; rtx value = NULL_RTX; + /* Registers mentioned in the clobber list for an asm cannot be reused + within the body of the asm. Invalidate those registers now so that + we don't try to substitute values for them. */ + if (asm_noperands (body) >= 0) + { + for (i = XVECLEN (body, 0) - 1; i >= 0; --i) + { + rtx part = XVECEXP (body, 0, i); + if (GET_CODE (part) == CLOBBER && REG_P (XEXP (part, 0))) + cselib_invalidate_rtx (XEXP (part, 0)); + } + } + /* If every action in a PARALLEL is a noop, we can delete the entire PARALLEL. */ for (i = XVECLEN (body, 0) - 1; i >= 0; --i) diff --git a/gcc/predict.c b/gcc/predict.c index 51668344087..1bbf1b84c25 100644 --- a/gcc/predict.c +++ b/gcc/predict.c @@ -51,13 +51,14 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "sreal.h" #include "params.h" #include "target.h" -#include "loop.h" #include "cfgloop.h" #include "tree-flow.h" #include "ggc.h" #include "tree-dump.h" #include "tree-pass.h" #include "timevar.h" +#include "tree-scalar-evolution.h" +#include "cfgloop.h" /* real constants: 0, 1, 1-1/REG_BR_PROB_BASE, REG_BR_PROB_BASE, 1/REG_BR_PROB_BASE, 0.5, BB_FREQ_MAX. */ @@ -317,7 +318,7 @@ dump_prediction (FILE *file, enum br_predictor predictor, int probability, fprintf (file, "\n"); } -/* We can not predict the probabilities of ougtoing edges of bb. Set them +/* We can not predict the probabilities of outgoing edges of bb. Set them evenly and hope for the best. */ static void set_even_probabilities (basic_block bb) @@ -565,13 +566,16 @@ combine_predictions_for_bb (FILE *file, basic_block bb) } /* Predict edge probabilities by exploiting loop structure. - When SIMPLELOOPS is set, attempt to count number of iterations by analyzing - RTL. */ + When RTLSIMPLELOOPS is set, attempt to count number of iterations by analyzing + RTL otherwise use tree based approach. */ static void -predict_loops (struct loops *loops_info, bool simpleloops) +predict_loops (struct loops *loops_info, bool rtlsimpleloops) { unsigned i; + if (!rtlsimpleloops) + scev_initialize (loops_info); + /* Try to predict out blocks in a loop that are not part of a natural loop. */ for (i = 1; i < loops_info->num; i++) @@ -586,7 +590,7 @@ predict_loops (struct loops *loops_info, bool simpleloops) flow_loop_scan (loop, LOOP_EXIT_EDGES); exits = loop->num_exits; - if (simpleloops) + if (rtlsimpleloops) { iv_analysis_loop_init (loop); find_simple_exit (loop, &desc); @@ -608,6 +612,42 @@ predict_loops (struct loops *loops_info, bool simpleloops) prob); } } + else + { + edge *exits; + unsigned j, n_exits; + struct tree_niter_desc niter_desc; + + exits = get_loop_exit_edges (loop, &n_exits); + for (j = 0; j < n_exits; j++) + { + tree niter = NULL; + + if (number_of_iterations_exit (loop, exits[j], &niter_desc)) + niter = niter_desc.niter; + if (!niter || TREE_CODE (niter_desc.niter) != INTEGER_CST) + niter = loop_niter_by_eval (loop, exits[j]); + + if (TREE_CODE (niter) == INTEGER_CST) + { + int probability; + if (host_integerp (niter, 1) + && tree_int_cst_lt (niter, + build_int_cstu (NULL_TREE, + REG_BR_PROB_BASE - 1))) + { + HOST_WIDE_INT nitercst = tree_low_cst (niter, 1) + 1; + probability = (REG_BR_PROB_BASE + nitercst / 2) / nitercst; + } + else + probability = 1; + + predict_edge (exits[j], PRED_LOOP_ITERATIONS, probability); + } + } + + free (exits); + } bbs = get_loop_body (loop); @@ -623,7 +663,7 @@ predict_loops (struct loops *loops_info, bool simpleloops) statements construct loops via "non-loop" constructs in the source language and are better to be handled separately. */ - if ((simpleloops && !can_predict_insn_p (BB_END (bb))) + if ((rtlsimpleloops && !can_predict_insn_p (BB_END (bb))) || predicted_by_p (bb, PRED_CONTINUE)) continue; @@ -657,6 +697,9 @@ predict_loops (struct loops *loops_info, bool simpleloops) /* Free basic blocks from get_loop_body. */ free (bbs); } + + if (!rtlsimpleloops) + scev_reset (); } /* Attempt to predict probabilities of BB outgoing edges using local @@ -868,7 +911,7 @@ estimate_probability (struct loops *loops_info) profile_status = PROFILE_GUESSED; } -/* Set edge->probability for each succestor edge of BB. */ +/* Set edge->probability for each successor edge of BB. */ void guess_outgoing_edge_probabilities (basic_block bb) { @@ -876,7 +919,139 @@ guess_outgoing_edge_probabilities (basic_block bb) combine_predictions_for_insn (BB_END (bb), bb); } +/* Return constant EXPR will likely have at execution time, NULL if unknown. + The function is used by builtin_expect branch predictor so the evidence + must come from this construct and additional possible constant folding. + + We may want to implement more involved value guess (such as value range + propagation based prediction), but such tricks shall go to new + implementation. */ + +static tree +expr_expected_value (tree expr, bitmap visited) +{ + if (TREE_CONSTANT (expr)) + return expr; + else if (TREE_CODE (expr) == SSA_NAME) + { + tree def = SSA_NAME_DEF_STMT (expr); + + /* If we were already here, break the infinite cycle. */ + if (bitmap_bit_p (visited, SSA_NAME_VERSION (expr))) + return NULL; + bitmap_set_bit (visited, SSA_NAME_VERSION (expr)); + if (TREE_CODE (def) == PHI_NODE) + { + /* All the arguments of the PHI node must have the same constant + length. */ + int i; + tree val = NULL, new_val; + + for (i = 0; i < PHI_NUM_ARGS (def); i++) + { + tree arg = PHI_ARG_DEF (def, i); + + /* If this PHI has itself as an argument, we cannot + determine the string length of this argument. However, + if we can find a expected constant value for the other + PHI args then we can still be sure that this is + likely a constant. So be optimistic and just + continue with the next argument. */ + if (arg == PHI_RESULT (def)) + continue; + + new_val = expr_expected_value (arg, visited); + if (!new_val) + return NULL; + if (!val) + val = new_val; + else if (!operand_equal_p (val, new_val, false)) + return NULL; + } + return val; + } + if (TREE_CODE (def) != MODIFY_EXPR || TREE_OPERAND (def, 0) != expr) + return NULL; + return expr_expected_value (TREE_OPERAND (def, 1), visited); + } + else if (TREE_CODE (expr) == CALL_EXPR) + { + tree decl = get_callee_fndecl (expr); + if (!decl) + return NULL; + if (DECL_BUILT_IN (decl) && DECL_FUNCTION_CODE (decl) == BUILT_IN_EXPECT) + { + tree arglist = TREE_OPERAND (expr, 1); + tree val; + + if (arglist == NULL_TREE + || TREE_CHAIN (arglist) == NULL_TREE) + return NULL; + val = TREE_VALUE (TREE_CHAIN (TREE_OPERAND (expr, 1))); + if (TREE_CONSTANT (val)) + return val; + return TREE_VALUE (TREE_CHAIN (TREE_OPERAND (expr, 1))); + } + } + if (TREE_CODE_CLASS (TREE_CODE (expr)) == '2' + || TREE_CODE_CLASS (TREE_CODE (expr)) == '<') + { + tree op0, op1, res; + op0 = expr_expected_value (TREE_OPERAND (expr, 0), visited); + if (!op0) + return NULL; + op1 = expr_expected_value (TREE_OPERAND (expr, 1), visited); + if (!op1) + return NULL; + res = fold (build (TREE_CODE (expr), TREE_TYPE (expr), op0, op1)); + if (TREE_CONSTANT (res)) + return res; + return NULL; + } + if (TREE_CODE_CLASS (TREE_CODE (expr)) == '1') + { + tree op0, res; + op0 = expr_expected_value (TREE_OPERAND (expr, 0), visited); + if (!op0) + return NULL; + res = fold (build1 (TREE_CODE (expr), TREE_TYPE (expr), op0)); + if (TREE_CONSTANT (res)) + return res; + return NULL; + } + return NULL; +} + +/* Get rid of all builtin_expect calls we no longer need. */ +static void +strip_builtin_expect (void) +{ + basic_block bb; + FOR_EACH_BB (bb) + { + block_stmt_iterator bi; + for (bi = bsi_start (bb); !bsi_end_p (bi); bsi_next (&bi)) + { + tree stmt = bsi_stmt (bi); + tree fndecl; + tree arglist; + + if (TREE_CODE (stmt) == MODIFY_EXPR + && TREE_CODE (TREE_OPERAND (stmt, 1)) == CALL_EXPR + && (fndecl = get_callee_fndecl (TREE_OPERAND (stmt, 1))) + && DECL_BUILT_IN (fndecl) + && DECL_FUNCTION_CODE (fndecl) == BUILT_IN_EXPECT + && (arglist = TREE_OPERAND (TREE_OPERAND (stmt, 1), 1)) + && TREE_CHAIN (arglist)) + { + TREE_OPERAND (stmt, 1) = TREE_VALUE (arglist); + modify_stmt (stmt); + } + } + } +} + /* Predict using opcode of the last statement in basic block. */ static void tree_predict_by_opcode (basic_block bb) @@ -886,6 +1061,8 @@ tree_predict_by_opcode (basic_block bb) tree cond; tree op0; tree type; + tree val; + bitmap visited; edge_iterator ei; if (!stmt || TREE_CODE (stmt) != COND_EXPR) @@ -896,10 +1073,21 @@ tree_predict_by_opcode (basic_block bb) break; } cond = TREE_OPERAND (stmt, 0); - if (TREE_CODE_CLASS (TREE_CODE (cond)) != '<') + if (!COMPARISON_CLASS_P (cond)) return; op0 = TREE_OPERAND (cond, 0); type = TREE_TYPE (op0); + visited = BITMAP_XMALLOC (); + val = expr_expected_value (cond, visited); + BITMAP_XFREE (visited); + if (val) + { + if (integer_zerop (val)) + predict_edge_def (then_edge, PRED_BUILTIN_EXPECT, NOT_TAKEN); + else + predict_edge_def (then_edge, PRED_BUILTIN_EXPECT, TAKEN); + return; + } /* Try "pointer heuristic." A comparison ptr == 0 is predicted as false. Similarly, a comparison ptr1 == ptr2 is predicted as false. */ @@ -1055,6 +1243,8 @@ tree_estimate_probability (void) FOR_EACH_BB (bb) combine_predictions_for_bb (dump_file, bb); + if (0) /* FIXME: Enable once we are pass down the profile to RTL level. */ + strip_builtin_expect (); estimate_bb_frequencies (&loops_info); free_dominance_info (CDI_POST_DOMINATORS); remove_fake_exit_edges (); diff --git a/gcc/pretty-print.h b/gcc/pretty-print.h index 8c568a42f4d..42bf8e1b180 100644 --- a/gcc/pretty-print.h +++ b/gcc/pretty-print.h @@ -248,7 +248,17 @@ extern const char *pp_base_formatted_text (pretty_printer *); extern const char *pp_base_last_position_in_text (const pretty_printer *); extern void pp_base_emit_prefix (pretty_printer *); extern void pp_base_append_text (pretty_printer *, const char *, const char *); -extern void pp_printf (pretty_printer *, const char *, ...) ATTRIBUTE_PRINTF_2; + +/* This header may be included before toplev.h, hence the duplicate + definitions to allow for GCC-specific formats. */ +#if GCC_VERSION >= 3005 +#define ATTRIBUTE_GCC_PPDIAG(m, n) __attribute__ ((__format__ (__gcc_diag__, m ,n))) ATTRIBUTE_NONNULL(m) +#else +#define ATTRIBUTE_GCC_PPDIAG(m, n) ATTRIBUTE_NONNULL(m) +#endif +extern void pp_printf (pretty_printer *, const char *, ...) + ATTRIBUTE_GCC_PPDIAG(2,3); + extern void pp_verbatim (pretty_printer *, const char *, ...); extern void pp_base_flush (pretty_printer *); extern void pp_base_format_text (pretty_printer *, text_info *); diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c index a90a2c392cb..06831596292 100644 --- a/gcc/print-rtl.c +++ b/gcc/print-rtl.c @@ -67,6 +67,23 @@ int flag_simple = 0; int dump_for_graph; #ifndef GENERATOR_FILE +static void +print_decl_name (FILE *outfile, tree node) +{ + if (DECL_NAME (node)) + fputs (IDENTIFIER_POINTER (DECL_NAME (node)), outfile); + else + { + if (TREE_CODE (node) == LABEL_DECL && LABEL_DECL_UID (node) != -1) + fprintf (outfile, "L." HOST_WIDE_INT_PRINT_DEC, LABEL_DECL_UID (node)); + else + { + char c = TREE_CODE (node) == CONST_DECL ? 'C' : 'D'; + fprintf (outfile, "%c.%u", c, DECL_UID (node)); + } + } +} + void print_mem_expr (FILE *outfile, tree expr) { @@ -76,9 +93,8 @@ print_mem_expr (FILE *outfile, tree expr) print_mem_expr (outfile, TREE_OPERAND (expr, 0)); else fputs (" ", outfile); - if (DECL_NAME (TREE_OPERAND (expr, 1))) - fprintf (outfile, ".%s", - IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (expr, 1)))); + fputc ('.', outfile); + print_decl_name (outfile, TREE_OPERAND (expr, 1)); } else if (TREE_CODE (expr) == INDIRECT_REF) { @@ -86,12 +102,13 @@ print_mem_expr (FILE *outfile, tree expr) print_mem_expr (outfile, TREE_OPERAND (expr, 0)); fputs (")", outfile); } - else if (DECL_NAME (expr)) - fprintf (outfile, " %s", IDENTIFIER_POINTER (DECL_NAME (expr))); else if (TREE_CODE (expr) == RESULT_DECL) fputs (" ", outfile); else - fputs (" ", outfile); + { + fputc (' ', outfile); + print_decl_name (outfile, expr); + } } #endif diff --git a/gcc/print-tree.c b/gcc/print-tree.c index 829e2c9f302..20822af24b1 100644 --- a/gcc/print-tree.c +++ b/gcc/print-tree.c @@ -61,7 +61,7 @@ debug_tree (tree node) void print_node_brief (FILE *file, const char *prefix, tree node, int indent) { - char class; + enum tree_code_class class; if (node == 0) return; @@ -75,12 +75,12 @@ print_node_brief (FILE *file, const char *prefix, tree node, int indent) fprintf (file, "%s <%s " HOST_PTR_PRINTF, prefix, tree_code_name[(int) TREE_CODE (node)], (char *) node); - if (class == 'd') + if (class == tcc_declaration) { if (DECL_NAME (node)) fprintf (file, " %s", IDENTIFIER_POINTER (DECL_NAME (node))); } - else if (class == 't') + else if (class == tcc_type) { if (TYPE_NAME (node)) { @@ -156,7 +156,7 @@ print_node (FILE *file, const char *prefix, tree node, int indent) int hash; struct bucket *b; enum machine_mode mode; - char class; + enum tree_code_class class; int len; int first_rtl; int i; @@ -177,7 +177,7 @@ print_node (FILE *file, const char *prefix, tree node, int indent) return; } - if (indent > 8 && (class == 't' || class == 'd')) + if (indent > 8 && (class == tcc_type || class == tcc_declaration)) { print_node_brief (file, prefix, node, indent); return; @@ -214,12 +214,12 @@ print_node (FILE *file, const char *prefix, tree node, int indent) prefix, tree_code_name[(int) TREE_CODE (node)], (void *) node); /* Print the name, if any. */ - if (class == 'd') + if (class == tcc_declaration) { if (DECL_NAME (node)) fprintf (file, " %s", IDENTIFIER_POINTER (DECL_NAME (node))); } - else if (class == 't') + else if (class == tcc_type) { if (TYPE_NAME (node)) { @@ -296,7 +296,7 @@ print_node (FILE *file, const char *prefix, tree node, int indent) switch (TREE_CODE_CLASS (TREE_CODE (node))) { - case 'd': + case tcc_declaration: mode = DECL_MODE (node); if (DECL_UNSIGNED (node)) @@ -461,7 +461,7 @@ print_node (FILE *file, const char *prefix, tree node, int indent) print_node_brief (file, "chain", TREE_CHAIN (node), indent + 4); break; - case 't': + case tcc_type: if (TYPE_UNSIGNED (node)) fputs (" unsigned", file); @@ -573,12 +573,12 @@ print_node (FILE *file, const char *prefix, tree node, int indent) print_node_brief (file, "chain", TREE_CHAIN (node), indent + 4); break; - case 'e': - case '<': - case '1': - case '2': - case 'r': - case 's': + case tcc_expression: + case tcc_comparison: + case tcc_unary: + case tcc_binary: + case tcc_reference: + case tcc_statement: if (TREE_CODE (node) == BIT_FIELD_REF && BIT_FIELD_REF_UNSIGNED (node)) fputs (" unsigned", file); if (TREE_CODE (node) == BIND_EXPR) @@ -619,8 +619,8 @@ print_node (FILE *file, const char *prefix, tree node, int indent) print_node (file, "chain", TREE_CHAIN (node), indent + 4); break; - case 'c': - case 'x': + case tcc_constant: + case tcc_exceptional: switch (TREE_CODE (node)) { case INTEGER_CST: @@ -765,7 +765,7 @@ print_node (FILE *file, const char *prefix, tree node, int indent) break; default: - if (TREE_CODE_CLASS (TREE_CODE (node)) == 'x') + if (EXCEPTIONAL_CLASS_P (node)) lang_hooks.print_xnode (file, node, indent); break; } diff --git a/gcc/profile.c b/gcc/profile.c index 1eac149d89e..67bad852d2a 100644 --- a/gcc/profile.c +++ b/gcc/profile.c @@ -719,6 +719,53 @@ compute_value_histograms (histogram_values values) free (histogram_counts[t]); } +#define BB_TO_GCOV_INDEX(bb) ((bb)->index + 1) +/* When passed NULL as file_name, initialize. + When passed something else, output the necessary commands to change + line to LINE and offset to FILE_NAME. */ +static void +output_location (char const *file_name, int line, + gcov_position_t *offset, basic_block bb) +{ + static char const *prev_file_name; + static int prev_line; + bool name_differs, line_differs; + + if (!file_name) + { + prev_file_name = NULL; + prev_line = -1; + return; + } + + name_differs = !prev_file_name || strcmp (file_name, prev_file_name); + line_differs = prev_line != line; + + if (name_differs || line_differs) + { + if (!*offset) + { + *offset = gcov_write_tag (GCOV_TAG_LINES); + gcov_write_unsigned (BB_TO_GCOV_INDEX (bb)); + name_differs = line_differs=true; + } + + /* If this is a new source file, then output the + file's name to the .bb file. */ + if (name_differs) + { + prev_file_name = file_name; + gcov_write_unsigned (0); + gcov_write_string (prev_file_name); + } + if (line_differs) + { + gcov_write_unsigned (line); + prev_line = line; + } + } +} + /* Instrument and/or analyze program behavior based on program flow graph. In either case, this function builds a flow graph for the function being compiled. The flow graph is stored in BB_GRAPH. @@ -887,7 +934,6 @@ branch_prob (void) */ ENTRY_BLOCK_PTR->index = -1; EXIT_BLOCK_PTR->index = last_basic_block; -#define BB_TO_GCOV_INDEX(bb) ((bb)->index + 1) /* Arcs */ if (coverage_begin_output ()) @@ -915,6 +961,12 @@ branch_prob (void) flag_bits |= GCOV_ARC_FAKE; if (e->flags & EDGE_FALLTHRU) flag_bits |= GCOV_ARC_FALLTHROUGH; + /* On trees we don't have fallthru flags, but we can + recompute them from CFG shape. */ + if (ir_type () + && e->flags & (EDGE_TRUE_VALUE | EDGE_FALSE_VALUE) + && e->src->next_bb == e->dest) + flag_bits |= GCOV_ARC_FALLTHROUGH; gcov_write_unsigned (BB_TO_GCOV_INDEX (e->dest)); gcov_write_unsigned (flag_bits); @@ -926,78 +978,118 @@ branch_prob (void) } /* Line numbers. */ - /* FIXME: make this work for trees. (Line numbers are in location_t - objects, but aren't always attached to the obvious tree...) */ - if (coverage_begin_output () && !ir_type ()) + if (coverage_begin_output ()) { - char const *prev_file_name = NULL; - gcov_position_t offset; + /* Initialize the output. */ + output_location (NULL, 0, NULL, NULL); - FOR_EACH_BB (bb) + if (!ir_type ()) { - rtx insn = BB_HEAD (bb); - int ignore_next_note = 0; - - offset = 0; + gcov_position_t offset; - /* We are looking for line number notes. Search backward - before basic block to find correct ones. */ - insn = prev_nonnote_insn (insn); - if (!insn) - insn = get_insns (); - else - insn = NEXT_INSN (insn); - - while (insn != BB_END (bb)) + FOR_EACH_BB (bb) { - if (NOTE_P (insn)) - { - /* Must ignore the line number notes that - immediately follow the end of an inline function - to avoid counting it twice. There is a note - before the call, and one after the call. */ - if (NOTE_LINE_NUMBER (insn) - == NOTE_INSN_REPEATED_LINE_NUMBER) - ignore_next_note = 1; - else if (NOTE_LINE_NUMBER (insn) <= 0) - /*NOP*/; - else if (ignore_next_note) - ignore_next_note = 0; - else - { - expanded_location s; + rtx insn = BB_HEAD (bb); + int ignore_next_note = 0; - if (!offset) - { - offset = gcov_write_tag (GCOV_TAG_LINES); - gcov_write_unsigned (BB_TO_GCOV_INDEX (bb)); - } + offset = 0; - NOTE_EXPANDED_LOCATION (s, insn); + /* We are looking for line number notes. Search backward + before basic block to find correct ones. */ + insn = prev_nonnote_insn (insn); + if (!insn) + insn = get_insns (); + else + insn = NEXT_INSN (insn); - /* If this is a new source file, then output the - file's name to the .bb file. */ - if (!prev_file_name - || strcmp (s.file, prev_file_name)) + while (insn != BB_END (bb)) + { + if (NOTE_P (insn)) + { + /* Must ignore the line number notes that + immediately follow the end of an inline function + to avoid counting it twice. There is a note + before the call, and one after the call. */ + if (NOTE_LINE_NUMBER (insn) + == NOTE_INSN_REPEATED_LINE_NUMBER) + ignore_next_note = 1; + else if (NOTE_LINE_NUMBER (insn) <= 0) + /*NOP*/; + else if (ignore_next_note) + ignore_next_note = 0; + else { - prev_file_name = s.file; - gcov_write_unsigned (0); - gcov_write_string (prev_file_name); + expanded_location s; + NOTE_EXPANDED_LOCATION (s, insn); + output_location (s.file, NOTE_LINE_NUMBER (insn), &offset, bb); } - gcov_write_unsigned (s.line); } + insn = NEXT_INSN (insn); + } + + if (offset) + { + /* A file of NULL indicates the end of run. */ + gcov_write_unsigned (0); + gcov_write_string (NULL); + gcov_write_length (offset); } - insn = NEXT_INSN (insn); } + } + else + { + gcov_position_t offset; - if (offset) + FOR_EACH_BB (bb) { - /* A file of NULL indicates the end of run. */ - gcov_write_unsigned (0); - gcov_write_string (NULL); - gcov_write_length (offset); + block_stmt_iterator bsi; + + offset = 0; + + if (bb == ENTRY_BLOCK_PTR->next_bb) + { + expanded_location curr_location = + expand_location (DECL_SOURCE_LOCATION + (current_function_decl)); + output_location (curr_location.file, curr_location.line, + &offset, bb); + } + + for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi)) + { + tree stmt = bsi_stmt (bsi); + if (EXPR_HAS_LOCATION (stmt)) + output_location (EXPR_FILENAME (stmt), + EXPR_LINENO (stmt), + &offset, bb); + } + + /* Notice GOTO expressions we eliminated while constructing the + CFG. */ + if (EDGE_COUNT (bb->succs) == 1 && EDGE_SUCC (bb, 0)->goto_locus) + { + /* ??? source_locus type is marked deprecated in input.h. */ + source_locus curr_location = EDGE_SUCC (bb, 0)->goto_locus; + /* ??? The FILE/LINE API is inconsistent for these cases. */ +#ifdef USE_MAPPED_LOCATION + output_location (LOCATION_FILE (curr_location), + LOCATION_LINE (curr_location), + &offset, bb); +#else + output_location (curr_location->file, curr_location->line, + &offset, bb); +#endif + } + + if (offset) + { + /* A file of NULL indicates the end of run. */ + gcov_write_unsigned (0); + gcov_write_string (NULL); + gcov_write_length (offset); + } } - } + } } ENTRY_BLOCK_PTR->index = ENTRY_BLOCK; diff --git a/gcc/regclass.c b/gcc/regclass.c index a73d8865bac..3d5a5f8dddd 100644 --- a/gcc/regclass.c +++ b/gcc/regclass.c @@ -104,6 +104,13 @@ static const char initial_call_used_regs[] = CALL_USED_REGISTERS; char call_really_used_regs[] = CALL_REALLY_USED_REGISTERS; #endif +#ifdef CALL_REALLY_USED_REGISTERS +#define CALL_REALLY_USED_REGNO_P(X) call_really_used_regs[X] +#else +#define CALL_REALLY_USED_REGNO_P(X) call_used_regs[X] +#endif + + /* Indexed by hard register number, contains 1 for registers that are fixed use or call used registers that cannot hold quantities across calls even if we are willing to save and restore them. call fixed @@ -454,7 +461,11 @@ init_reg_sets_1 (void) If we are generating PIC code, the PIC offset table register is preserved across calls, though the target can override that. */ - if (i == STACK_POINTER_REGNUM || i == FRAME_POINTER_REGNUM) + if (i == STACK_POINTER_REGNUM) + ; + else if (global_regs[i]) + SET_HARD_REG_BIT (regs_invalidated_by_call, i); + else if (i == FRAME_POINTER_REGNUM) ; #if HARD_FRAME_POINTER_REGNUM != FRAME_POINTER_REGNUM else if (i == HARD_FRAME_POINTER_REGNUM) @@ -468,13 +479,7 @@ init_reg_sets_1 (void) else if (i == (unsigned) PIC_OFFSET_TABLE_REGNUM && fixed_regs[i]) ; #endif - else if (0 -#ifdef CALL_REALLY_USED_REGISTERS - || call_really_used_regs[i] -#else - || call_used_regs[i] -#endif - || global_regs[i]) + else if (CALL_REALLY_USED_REGNO_P (i)) SET_HARD_REG_BIT (regs_invalidated_by_call, i); } @@ -800,6 +805,12 @@ globalize_reg (int i) global_regs[i] = 1; + /* If we're globalizing the frame pointer, we need to set the + appropriate regs_invalidated_by_call bit, even if it's already + set in fixed_regs. */ + if (i != STACK_POINTER_REGNUM) + SET_HARD_REG_BIT (regs_invalidated_by_call, i); + /* If already fixed, nothing else to do. */ if (fixed_regs[i]) return; @@ -813,7 +824,6 @@ globalize_reg (int i) SET_HARD_REG_BIT (fixed_reg_set, i); SET_HARD_REG_BIT (call_used_reg_set, i); SET_HARD_REG_BIT (call_fixed_reg_set, i); - SET_HARD_REG_BIT (regs_invalidated_by_call, i); } /* Now the data and code for the `regclass' pass, which happens diff --git a/gcc/reload.c b/gcc/reload.c index 990cf209613..f3c5978164e 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -1254,7 +1254,8 @@ push_reload (rtx in, rtx out, rtx *inloc, rtx *outloc, mode = outmode; if (mode == VOIDmode) { - error_for_asm (this_insn, "cannot reload integer constant operand in `asm'"); + error_for_asm (this_insn, "cannot reload integer constant " + "operand in %"); mode = word_mode; if (in != 0) inmode = word_mode; @@ -1276,7 +1277,8 @@ push_reload (rtx in, rtx out, rtx *inloc, rtx *outloc, } if (i == FIRST_PSEUDO_REGISTER) { - error_for_asm (this_insn, "impossible register constraint in `asm'"); + error_for_asm (this_insn, "impossible register constraint " + "in %"); class = ALL_REGS; } } @@ -3513,7 +3515,7 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known, this_alternative_earlyclobber[i] = 0; gcc_assert (this_insn_is_asm); error_for_asm (this_insn, - "`&' constraint used with no register class"); + "%<&%> constraint used with no register class"); } for (j = 0; j < noperands; j++) @@ -3680,7 +3682,7 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known, /* No alternative works with reloads?? */ if (insn_code_number >= 0) fatal_insn ("unable to generate reloads for:", insn); - error_for_asm (insn, "inconsistent operand constraints in an `asm'"); + error_for_asm (insn, "inconsistent operand constraints in an %"); /* Avoid further trouble with this insn. */ PATTERN (insn) = gen_rtx_USE (VOIDmode, const0_rtx); n_reloads = 0; @@ -3891,7 +3893,8 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known, else { gcc_assert (insn_code_number < 0); - error_for_asm (insn, "inconsistent operand constraints in an `asm'"); + error_for_asm (insn, "inconsistent operand constraints " + "in an %"); /* Avoid further trouble with this insn. */ PATTERN (insn) = gen_rtx_USE (VOIDmode, const0_rtx); n_reloads = 0; diff --git a/gcc/reload1.c b/gcc/reload1.c index 4d9dd796978..d8d40ee0d43 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -1871,11 +1871,12 @@ spill_failure (rtx insn, enum reg_class class) { static const char *const reg_class_names[] = REG_CLASS_NAMES; if (asm_noperands (PATTERN (insn)) >= 0) - error_for_asm (insn, "can't find a register in class `%s' while reloading `asm'", + error_for_asm (insn, "can't find a register in class %qs while " + "reloading %", reg_class_names[class]); else { - error ("unable to find a register to spill in class `%s'", + error ("unable to find a register to spill in class %qs", reg_class_names[class]); fatal_insn ("this is the insn:", insn); } @@ -2031,7 +2032,7 @@ alter_reg (int i, int from_reg) /* If we have a decl for the original register, set it for the memory. If this is a shared MEM, make a copy. */ if (REG_EXPR (regno_reg_rtx[i]) - && TREE_CODE_CLASS (TREE_CODE (REG_EXPR (regno_reg_rtx[i]))) == 'd') + && DECL_P (REG_EXPR (regno_reg_rtx[i]))) { rtx decl = DECL_RTL_IF_SET (REG_EXPR (regno_reg_rtx[i])); @@ -3867,7 +3868,8 @@ reload_as_needed (int live_known) || (extract_insn (p), ! constrain_operands (1)))) { error_for_asm (insn, - "`asm' operand requires impossible reload"); + "% operand requires " + "impossible reload"); delete_insn (p); } } @@ -4990,7 +4992,7 @@ failed_reload (rtx insn, int r) /* It's the user's fault; the operand's mode and constraint don't match. Disable this reload so we don't crash in final. */ error_for_asm (insn, - "`asm' operand constraint incompatible with operand size"); + "% operand constraint incompatible with operand size"); rld[r].in = 0; rld[r].out = 0; rld[r].reg_rtx = 0; @@ -6609,7 +6611,7 @@ emit_output_reload_insns (struct insn_chain *chain, struct reload *rl, if (asm_noperands (PATTERN (insn)) < 0) /* It's the compiler's fault. */ fatal_insn ("VOIDmode on an output", insn); - error_for_asm (insn, "output operand is constant in `asm'"); + error_for_asm (insn, "output operand is constant in %"); /* Prevent crash--use something we know is valid. */ mode = word_mode; old = gen_rtx_REG (mode, REGNO (reloadreg)); diff --git a/gcc/rtl.def b/gcc/rtl.def index 4c678dbb67e..61cb811fc22 100644 --- a/gcc/rtl.def +++ b/gcc/rtl.def @@ -338,7 +338,8 @@ DEF_RTL_EXPR(VALUE, "value", "0", RTX_OBJ) the REGNO macro. If this number is less than FIRST_PSEUDO_REGISTER than a hardware register is being referred to. The second operand holds the original register number - this will be different for a - pseudo register that got turned into a hard register. + pseudo register that got turned into a hard register. The third + operand points to a reg_attrs structure. This rtx needs to have as many (or more) fields as a MEM, since we can change REG rtx's into MEMs during reload. */ DEF_RTL_EXPR(REG, "reg", "i00", RTX_OBJ) diff --git a/gcc/rtl.h b/gcc/rtl.h index f8095192ec9..d96b3d4c433 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -788,7 +788,6 @@ extern const char * const reg_note_name[]; #define NOTE_BASIC_BLOCK(INSN) XCBBDEF (INSN, 4, NOTE) #define NOTE_EXPECTED_VALUE(INSN) XCEXP (INSN, 4, NOTE) #define NOTE_PREDICTION(INSN) XCINT (INSN, 4, NOTE) -#define NOTE_PRECONDITIONED(INSN) XCINT (INSN, 4, NOTE) #define NOTE_VAR_LOCATION(INSN) XCEXP (INSN, 4, NOTE) /* In a NOTE that is a line number, this is the line number. diff --git a/gcc/stmt.c b/gcc/stmt.c index dc2ca0d3b1b..e5d094d5ae9 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -39,7 +39,6 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "expr.h" #include "libfuncs.h" #include "hard-reg-set.h" -#include "loop.h" #include "recog.h" #include "machmode.h" #include "toplev.h" @@ -313,7 +312,7 @@ parse_output_constraint (const char **constraint_p, int operand_num, message. */ if (!p) { - error ("output operand constraint lacks `='"); + error ("output operand constraint lacks %<=%>"); return false; } @@ -328,7 +327,8 @@ parse_output_constraint (const char **constraint_p, int operand_num, size_t c_len = strlen (constraint); if (p != constraint) - warning ("output constraint `%c' for operand %d is not at the beginning", + warning ("output constraint %qc for operand %d " + "is not at the beginning", *p, operand_num); /* Make a copy of the constraint. */ @@ -350,13 +350,14 @@ parse_output_constraint (const char **constraint_p, int operand_num, { case '+': case '=': - error ("operand constraint contains incorrectly positioned '+' or '='"); + error ("operand constraint contains incorrectly positioned " + "%<+%> or %<=%>"); return false; case '%': if (operand_num + 1 == ninputs + noutputs) { - error ("`%%' constraint used with last operand"); + error ("%<%%%> constraint used with last operand"); return false; } break; @@ -446,7 +447,7 @@ parse_input_constraint (const char **constraint_p, int input_num, case '+': case '=': case '&': if (constraint == orig_constraint) { - error ("input operand constraint contains `%c'", constraint[j]); + error ("input operand constraint contains %qc", constraint[j]); return false; } break; @@ -455,7 +456,7 @@ parse_input_constraint (const char **constraint_p, int input_num, if (constraint == orig_constraint && input_num + 1 == ninputs - ninout) { - error ("`%%' constraint used with last operand"); + error ("%<%%%> constraint used with last operand"); return false; } break; @@ -526,7 +527,7 @@ parse_input_constraint (const char **constraint_p, int input_num, default: if (! ISALPHA (constraint[j])) { - error ("invalid punctuation `%c' in constraint", constraint[j]); + error ("invalid punctuation %qc in constraint", constraint[j]); return false; } if (REG_CLASS_FROM_CONSTRAINT (constraint[j], constraint + j) @@ -605,7 +606,8 @@ decl_conflicts_with_clobbers_p (tree decl, const HARD_REG_SET clobbered_regs) regno++) if (TEST_HARD_REG_BIT (clobbered_regs, regno)) { - error ("asm-specifier for variable `%s' conflicts with asm clobber list", + error ("asm-specifier for variable %qs conflicts with " + "asm clobber list", IDENTIFIER_POINTER (DECL_NAME (decl))); /* Reset registerness to stop multiple errors emitted for a @@ -693,7 +695,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs, if (i >= 0 || i == -4) ++nclobbers; else if (i == -2) - error ("unknown register name `%s' in `asm'", regname); + error ("unknown register name %qs in %", regname); /* Mark clobbered registers. */ if (i >= 0) @@ -701,7 +703,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs, /* Clobbering the PIC register is an error */ if (i == (int) PIC_OFFSET_TABLE_REGNUM) { - error ("PIC register `%s' clobbered in `asm'", regname); + error ("PIC register %qs clobbered in %", regname); return; } @@ -748,7 +750,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs, ninputs += ninout; if (ninputs + noutputs > MAX_RECOG_OPERANDS) { - error ("more than %d operands in `asm'", MAX_RECOG_OPERANDS); + error ("more than %d operands in %", MAX_RECOG_OPERANDS); return; } @@ -890,7 +892,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs, if (allows_reg) op = force_reg (TYPE_MODE (type), op); else if (!allows_mem) - warning ("asm operand %d probably doesn't match constraints", + warning ("asm operand %d probably doesn%'t match constraints", i + noutputs); else if (MEM_P (op)) { @@ -1128,7 +1130,7 @@ check_operand_nalternatives (tree outputs, tree inputs) if (nalternatives + 1 > MAX_RECOG_ALTERNATIVES) { - error ("too many alternatives in `asm'"); + error ("too many alternatives in %"); return false; } @@ -1140,7 +1142,8 @@ check_operand_nalternatives (tree outputs, tree inputs) if (n_occurrences (',', constraint) != nalternatives) { - error ("operand constraints for `asm' differ in number of alternatives"); + error ("operand constraints for % differ " + "in number of alternatives"); return false; } @@ -1192,7 +1195,7 @@ check_unique_operand_names (tree outputs, tree inputs) return true; failure: - error ("duplicate asm operand name '%s'", + error ("duplicate asm operand name %qs", TREE_STRING_POINTER (TREE_PURPOSE (TREE_PURPOSE (i)))); return false; } @@ -1318,7 +1321,7 @@ resolve_operand_name_1 (char *p, tree outputs, tree inputs) } *q = '\0'; - error ("undefined named operand '%s'", p + 1); + error ("undefined named operand %qs", p + 1); op = 0; found: @@ -1468,16 +1471,14 @@ warn_if_unused_value (tree exp, location_t locus) default: /* Referencing a volatile value is a side effect, so don't warn. */ - if ((DECL_P (exp) - || TREE_CODE_CLASS (TREE_CODE (exp)) == 'r') + if ((DECL_P (exp) || REFERENCE_CLASS_P (exp)) && TREE_THIS_VOLATILE (exp)) return 0; /* If this is an expression which has no operands, there is no value to be unused. There are no such language-independent codes, but front ends may define such. */ - if (TREE_CODE_CLASS (TREE_CODE (exp)) == 'e' - && TREE_CODE_LENGTH (TREE_CODE (exp)) == 0) + if (EXPRESSION_CLASS_P (exp) && TREE_CODE_LENGTH (TREE_CODE (exp)) == 0) return 0; maybe_warn: diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c index 12d6d484bc3..ccbca424bbf 100644 --- a/gcc/stor-layout.c +++ b/gcc/stor-layout.c @@ -149,7 +149,7 @@ variable_size (tree size) if (lang_hooks.decls.global_bindings_p ()) { if (TREE_CONSTANT (size)) - error ("type size can't be explicitly evaluated"); + error ("type size can%'t be explicitly evaluated"); else error ("variable-size type declared outside of any function"); @@ -455,9 +455,9 @@ layout_decl (tree decl, unsigned int known_align) int size_as_int = TREE_INT_CST_LOW (size); if (compare_tree_int (size, size_as_int) == 0) - warning ("%Jsize of '%D' is %d bytes", decl, decl, size_as_int); + warning ("%Jsize of %qD is %d bytes", decl, decl, size_as_int); else - warning ("%Jsize of '%D' is larger than %d bytes", + warning ("%Jsize of %qD is larger than %d bytes", decl, decl, larger_than_size); } } @@ -840,9 +840,9 @@ place_field (record_layout_info rli, tree field) { if (STRICT_ALIGNMENT) warning ("%Jpacked attribute causes inefficient alignment " - "for '%D'", field, field); + "for %qD", field, field); else - warning ("%Jpacked attribute is unnecessary for '%D'", + warning ("%Jpacked attribute is unnecessary for %qD", field, field); } } @@ -858,7 +858,7 @@ place_field (record_layout_info rli, tree field) Bump the cumulative size to multiple of field alignment. */ if (warn_padded) - warning ("%Jpadding struct to align '%D'", field, field); + warning ("%Jpadding struct to align %qD", field, field); /* If the alignment is still within offset_align, just align the bit position. */ @@ -1230,9 +1230,10 @@ finalize_record_size (record_layout_info rli) name = IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (rli->t))); if (STRICT_ALIGNMENT) - warning ("packed attribute causes inefficient alignment for `%s'", name); + warning ("packed attribute causes inefficient " + "alignment for %qs", name); else - warning ("packed attribute is unnecessary for `%s'", name); + warning ("packed attribute is unnecessary for %qs", name); } else { diff --git a/gcc/target.h b/gcc/target.h index acb1814bcc3..a6d69e1938e 100644 --- a/gcc/target.h +++ b/gcc/target.h @@ -107,9 +107,10 @@ struct gcc_target /* Output the assembler code for function exit. */ void (* function_epilogue) (FILE *, HOST_WIDE_INT); - /* Switch to an arbitrary section NAME with attributes as - specified by FLAGS. */ - void (* named_section) (const char *, unsigned int); + /* Tell assembler to change to section NAME with attributes FLAGS. + If DECL is non-NULL, it is the VAR_DECL or FUNCTION_DECL with + which this section is associated. */ + void (* named_section) (const char *name, unsigned int flags, tree decl); /* Switch to the section that holds the exception table. */ void (* exception_section) (void); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 1dbc50a01d5..c9d44bbc529 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,298 @@ +2004-09-17 Kenneth Zadeck + + * gcc.c-torture/execute/20040917-1.c: New test. + +2004-09-17 Diego Novillo + + PR tree-optimization/17319 + * gcc.dg/pr17319.c: New test. + +2004-09-17 Devang Patel + + * gcc.dg/20040813-1.c: New test. + +2004-09-17 Diego Novillo + + PR tree-optimization/17273 + * gcc.c-torture/compile/pr17273.c: New test. + +2004-09-17 Joseph S. Myers + + * gcc.dg/declspec-4.c, gcc.dg/declspec-5.c, gcc.dg/declspec-6.c: + Update expected messages. + * gcc.dg/declspec-13.c: New test. + +2004-09-17 David Edelsohn + + * gcc.dg/darwin-longlong.c: XFAIL on AIX and SPE. + +2004-09-17 Diego Novillo + + * gcc.c-torture/execute/pr17252.c: Use post-increment to + change what 'a' is pointing to. + +2004-09-17 Mark Mitchell + + PR c++/16002 + * g++.dg/template/error18.C: New test. + + PR c++/16029 + * g++.dg/warn/Wunused-8.C: New test. + +2004-09-17 Steven Bosscher + + PR tree-optimization/17513 + * gcc.dg/20040916-1.c: New test. + +2004-09-16 Mark Mitchell + + PR c++/17501 + * g++.dg/template/typename7.C: New test. + +2004-09-16 Zdenek Dvorak + + * gcc.dg/tree-ssa/copy-headers.c: Update outcome. + +2004-09-16 Frank Ch. Eigler + + * gcc.misc-tests/bprob.exp, g++.dg/bprob/bprob.exp: Iterate tests + with -ftree-based-profiling also. + * lib/profopt.exp: Support late-set profile_option/feedback_option. + +2004-09-16 Victor Leikehman + + PR/15364 + * gfortran.dg/der_array_io_1.f90: New test. + * gfortran.dg/der_array_io_2.f90: New test. + * gfortran.dg/der_array_io_3.f90: New test. + +2004-09-15 Mark Mitchell + + * testsuite/g++.old-deja/g++.abi/cxa_vec.C: Adjust for ARM + EABI. + +2004-09-15 Mark Mitchell + + * g++.dg/opt/switch1.C: New test. + +2004-09-15 Joseph S. Myers + + * g++.dg/ext/member-attr.C, g++.dg/warn/deprecated.C, + gcc.dg/deprecated.c, gcc.dg/noreturn-1.c, gcc.dg/noreturn-4.c: + Update expected messages. + +2004-09-15 Tobias Schlueter + + PR fortran/16485 + * gfortran.dg/same_name_1.f90: New test. + +2004-09-15 Diego Novillo + + * gcc.c-torture/execute/pr17252.c: Fix thinko. Don't + dereference garbage pointers. + +2004-09-15 Jakub Jelinek + + * gcc.c-torture/execute/builtins/strlen-3.c: New test. + * gcc.c-torture/execute/builtins/strlen-3-lib.c: New. + + * gcc.c-torture/execute/builtins/memmove.c (main_test): Formatting. + * gcc.c-torture/execute/builtins/memmove-2.c: New test. + * gcc.c-torture/execute/builtins/memmove-2-lib.c: New. + +2004-09-14 Mark Mitchell + + PR c++/17324 + * g++.dg/template/mangle1.C: New test. + +2004-09-14 Diego Novillo + + PR tree-optimization/17252 + * gcc.c-torture/execute/pr17252.c: New test. + +2004-09-14 Andrew Pinski + + * g++.dg/tree-ssa/pointer-reference-alias.C: New test. + +2004-09-14 Roger Sayle + + PR rtl-optimization/9771 + * gcc.dg/pr9771-1.c: New test case. + +2004-09-14 Diego Novillo + + PR tree-optimization/15262 + * gcc.c-torture/execute/pr15262-1.c: New test. + * gcc.c-torture/execute/pr15262-2.c: New test. + +2004-09-14 Joseph S. Myers + + * gcc.dg/declspec-12.c: New test. + +2004-09-14 Bud Davis + + * gfortran.dg/pr17090.f90: Add directives to test. + +2004-09-14 Zdenek Dvorak + + * gcc.c-torture/compile/20040914-1.c: New test. + +2004-09-13 Mark Mitchell + + PR c++/16162 + * g++.dg/template/decl2.C: New test. + +2004-09-13 Bud Davis + + PR fortran/17090 + * gfortran.dg/pr17090.f90: New test. + +2004-09-13 Dale Johannesen + + * gcc.c-torture/compile/pr17408.c: New test case. + +2004-09-13 Mark Mitchell + + PR c++/16716 + * g++.dg/parse/crash17.C: New test. + + PR c++/17327 + * g++.dg/template/enum3.C: New test. + +2004-09-13 Hans-Peter Nilsson + + * lib/gcc-defs.exp: Load wrapper.exp. + * lib/g++.exp (g++_init): Call g++_maybe_build_wrapper instead of + using local code. + * lib/gcc.exp (gcc_init): Similar. + * lib/gfortran.exp (gfortran_init): Similar. + * lib/objc.exp (objc_init): Similar. + * lib/treelang.exp (treelang_init): Similar. + * lib/wrapper.exp: New file with build_wrapper call machinery in + ${tool}_maybe_build_wrapper. + +2004-09-13 Joseph S. Myers + + * gcc.dg/declspec-7.c: Don't expect diagnostic for duplicate + "inline". + * gcc.dg/declspec-11.c: Update expected messages. + * gcc.dg/inline-6.c, gcc.dg/inline-7.c, gcc.dg/inline-8.c, + gcc.dg/inline-9.c, gcc.dg/inline-10.c, gcc.dg/inline-11.c, + gcc.dg/inline-12.c: New tests. + +2004-09-13 Andrew MacLeod + + * g++.dg/tree-ssa/pr17400.C: New testcase. + +2004-09-13 James E Wilson + + * gcc.target/mips/sb1-1.c: New testcase. + +2004-09-12 Hans-Peter Nilsson + + * lib/g77-dg.exp: Remove unused file. + * lib/mike-g77.exp: Ditto. + * lib/g77.exp: Ditto. + +2004-09-12 Richard Henderson + + * g++.old-deja/g++.other/sizeof3.C: Fix abort declaration. + +2004-09-13 Joseph S. Myers + + * g++.dg/warn/Wswitch-1.C, g++.dg/warn/Wswitch-2.C, + gcc.dg/Wswitch-2.c, gcc.dg/Wswitch-enum.c, gcc.dg/Wswitch.c, + gcc.dg/declspec-9.c, gcc.dg/declspec-10.c, gcc.dg/declspec-11.c, + gcc.dg/m-un-2.c, gcc.dg/noreturn-1.c, gcc.dg/wtr-conversion-1.c: + Update expected messages. + +2004-09-13 Hans-Peter Nilsson + + * gcc.dg/asmreg-1.c (__syscall_getdents64): Adjust signedness + declaration/use mismatch for dirp parameter. + +2004-09-12 Andrew Pinski + + * lib/objc.exp (objc_target_compile): Look for libobjc-gnu.a also when + -fgnu-runtime is passed. + +2004-09-12 Richard Henderson + + * lib/fortran-torture.exp (add-ieee-options): Replace ieee-options; + do the uplevel thing and update additional_flags directly. + * gfortran.fortran-torture/execute/intrinsic_fraction_exponent.x, + gfortran.fortran-torture/execute/intrinsic_nearest.x, + gfortran.fortran-torture/execute/intrinsic_set_exponent.x, + gfortran.fortran-torture/execute/nan_inf_fmt.x: Update to match. + +2004-09-11 Steven Bosscher + + * g++.dg/parse/break-in-for.C: Fix for -ansi -pedantic-errors. + +2004-09-11 Roger Sayle + + PR middle-end/17411 + * g++.dg/opt/pr17411-1.C: New test case. + +2004-09-11 Joseph S. Myers + + * gcc.dg/declspec-4.c, gcc.dg/declspec-5.c, gcc.dg/declspec-6.c, + gcc.dg/tls/diag-2.c: Update expected messages. + * gcc.dg/991209-1.c: Specify compilation options. Update expected + messages. + * gcc.dg/pr14289-2.c, gcc.dg/pr14289-3.c: Remove. + * gcc.dg/declspec-7.c, gcc.dg/declspec-8.c, gcc.dg/declspec-9.c, + gcc.dg/declspec-10.c, gcc.dg/declspec-11.c, gcc.dg/tls/diag-4.c, + gcc.dg/tls/diag-5.c: New tests. + +2004-09-11 Zack Weinberg + + * gcc.dg/20040910-1.c: Correct dg-error regexp. + +2004-09-11 Steven Bosscher + + * g++.dg/parse/break-in-for.C: New test. + +2004-09-11 Jakub Jelinek + + * gcc.dg/tree-ssa/20040911-1.c: New test. + +2004-09-11 Andreas Jaeger + + * gcc.c-torture/execute/991118-1.x: Delete, PR 16437 is fixed. + * gcc.c-torture/execute/bf64-1.x: Remove XFAIL on x86-64. + +2004-09-11 Richard Sandiford + + * gcc.target/frv: New directory of FR-V-specific tests. + +2004-09-10 James E Wilson + + * gcc.dg/convert-vec-1.c: New test. + +2004-09-10 Roger Sayle + + PR middle-end/17024 + * gcc.dg/pr17024-1.c: New test case. + +2004-09-10 Eric Christopher + + * gcc.dg/20040910-1.c: New test. + +2004-09-11 Joseph S. Myers + + * gcc.dg/bitfld-9.c: New test. + +2004-09-10 Richard Sandiford + + * gcc.c-torture/execute/ieee/acc1.c: New test. + * gcc.c-torture/execute/ieee/acc2.c: New test. + * gcc.c-torture/execute/ieee/mzero6.c: New test. + +2004-09-10 Joseph S. Myers + + * gcc.dg/deprecated-2.c: New test. + 2004-09-09 James E Wilson * gcc.dg/init-vec-1.c: New test. @@ -31,7 +326,7 @@ * gcc.dg/darwin-ld-20040828-1.c: New test. * gcc.dg/darwin-ld-20040828-2.c: New test. * gcc.dg/darwin-ld-20040828-3.c: New test. - + 2004-09-08 Ziemowit Laski * objc.dg/bitfield-2.m: Make 'id' definition a typedef. @@ -52,10 +347,10 @@ LD_LIBRARYN32_PATH, LD_LIBRARY64_PATH and DYLD_LIBRARY_PATH. 2004-09-06 Devang Patel - + * gcc.dg/tree-ssa/ifc-20040816-1.c: Use -ftree-vectorize. * gcc.dg/tree-ssa/ifc-20040816-2.c: Use -ftree-vectorize. - + 2004-09-06 Zack Weinberg * g++.old-deja/g++.other/enum2.C: Move dg-error markers to diff --git a/gcc/testsuite/g++.dg/bprob/bprob.exp b/gcc/testsuite/g++.dg/bprob/bprob.exp index ea458fa1797..90cb99a8228 100644 --- a/gcc/testsuite/g++.dg/bprob/bprob.exp +++ b/gcc/testsuite/g++.dg/bprob/bprob.exp @@ -1,4 +1,4 @@ -# Copyright (C) 2001, 2002 Free Software Foundation, Inc. +# Copyright (C) 2001, 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 @@ -27,8 +27,6 @@ if { ![check_profiling_available "-fprofile-arcs"] } { # The procedures in profopt.exp need these parameters. set tool g++ -set profile_option -fprofile-arcs -set feedback_option -fbranch-probabilities set prof_ext gcda if $tracelevel then { @@ -52,12 +50,20 @@ if $tracelevel then { # Load support procs. load_lib profopt.exp +set profile_options "-fprofile-arcs" +set feedback_options "-fbranch-probabilities" +if {[check_profiling_available "-ftree-based-profiling"]} { + lappend profile_options "-ftree-based-profiling -fprofile-arcs" + lappend feedback_options "-ftree-based-profiling -fbranch-probabilities" +} + # Main loop. -foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.C]] { - # If we're only testing specific files and this isn't one of them, skip it. - if ![runtest_file_p $runtests $src] then { - continue +foreach profile_option $profile_options feedback_option $feedback_options { + foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.C]] { + # If we're only testing specific files and this isn't one of them, skip it. + if ![runtest_file_p $runtests $src] then { + continue + } + profopt-execute $src } - - profopt-execute $src } diff --git a/gcc/testsuite/g++.dg/ext/member-attr.C b/gcc/testsuite/g++.dg/ext/member-attr.C index 3ba3ee84cf0..ede63c15729 100644 --- a/gcc/testsuite/g++.dg/ext/member-attr.C +++ b/gcc/testsuite/g++.dg/ext/member-attr.C @@ -9,6 +9,6 @@ class T { public: - __attribute__ ((garbage1)) void member1(int) {} /* { dg-error "`garbage1' attribute directive ignored" "" } */ - void __attribute__ ((garbage2)) member2(int) {} /* { dg-error "`garbage2' attribute directive ignored" "" } */ + __attribute__ ((garbage1)) void member1(int) {} /* { dg-error "'garbage1' attribute directive ignored" "" } */ + void __attribute__ ((garbage2)) member2(int) {} /* { dg-error "'garbage2' attribute directive ignored" "" } */ }; diff --git a/gcc/testsuite/g++.dg/warn/Wswitch-1.C b/gcc/testsuite/g++.dg/warn/Wswitch-1.C index 4f44e12576e..9b05cd16c5d 100644 --- a/gcc/testsuite/g++.dg/warn/Wswitch-1.C +++ b/gcc/testsuite/g++.dg/warn/Wswitch-1.C @@ -19,14 +19,14 @@ foo (int i, int j, enum e ei, enum e ej, enum e ek, enum e el, case 4: return 3; default: break; } - switch (ei) /* { dg-warning "enumeration value `e1' not handled in switch" "enum e1" } */ - { /* { dg-warning "enumeration value `e2' not handled in switch" "enum e2" { target *-*-* } 22 } */ + switch (ei) /* { dg-warning "enumeration value 'e1' not handled in switch" "enum e1" } */ + { /* { dg-warning "enumeration value 'e2' not handled in switch" "enum e2" { target *-*-* } 22 } */ } switch (ej) { default: break; } - switch (ek) /* { dg-warning "enumeration value `e2' not handled in switch" "enum e2" } */ + switch (ek) /* { dg-warning "enumeration value 'e2' not handled in switch" "enum e2" } */ { case e1: return 1; } @@ -50,7 +50,7 @@ foo (int i, int j, enum e ei, enum e ej, enum e ek, enum e el, { case e1: return 1; case e2: return 2; - case 3: return 3; /* { dg-warning "case value `3' not in enumerated type `e'" "excess 3" } */ + case 3: return 3; /* { dg-warning "case value '3' not in enumerated type 'e'" "excess 3" } */ } switch (ep) { diff --git a/gcc/testsuite/g++.dg/warn/Wswitch-2.C b/gcc/testsuite/g++.dg/warn/Wswitch-2.C index 9bc7d022b46..79ba4bdcb84 100644 --- a/gcc/testsuite/g++.dg/warn/Wswitch-2.C +++ b/gcc/testsuite/g++.dg/warn/Wswitch-2.C @@ -13,7 +13,7 @@ foo (enum e ei, int j) case e3: return 2; case e4: return 3; } /* No warning here since e2 has the same value as e3. */ - switch (ei) /* { dg-warning "enumeration value `e4' not handled in switch" "enum e4" } */ + switch (ei) /* { dg-warning "enumeration value 'e4' not handled in switch" "enum e4" } */ { case e1: return 1; case e2: return 2; @@ -22,7 +22,7 @@ foo (enum e ei, int j) { case e1: return 1; } /* No warning here since switch condition was cast to int. */ - switch ((enum e) j) /* { dg-warning "enumeration value `e1' not handled in switch" "enum e1" } */ + switch ((enum e) j) /* { dg-warning "enumeration value 'e1' not handled in switch" "enum e1" } */ { case e2: return 1; case e4: return 2; diff --git a/gcc/testsuite/g++.dg/warn/deprecated.C b/gcc/testsuite/g++.dg/warn/deprecated.C index aa7a5b09db9..21b901af4f5 100644 --- a/gcc/testsuite/g++.dg/warn/deprecated.C +++ b/gcc/testsuite/g++.dg/warn/deprecated.C @@ -6,18 +6,18 @@ typedef int INT1 __attribute__((deprecated)); typedef INT1 INT2 __attribute__ ((__deprecated__)); -typedef INT1 INT1a; /* { dg-warning "`INT1' is deprecated" "" } */ +typedef INT1 INT1a; /* { dg-warning "'INT1' is deprecated" "" } */ typedef INT1 INT1b __attribute__ ((deprecated)); -INT1 should_be_unavailable; /* { dg-warning "`INT1' is deprecated" "" } */ +INT1 should_be_unavailable; /* { dg-warning "'INT1' is deprecated" "" } */ INT1a should_not_be_deprecated; INT1 f1(void) __attribute__ ((deprecated)); -INT1 f2(void) { return 0; } /* { dg-warning "`INT1' is deprecated" "" } */ +INT1 f2(void) { return 0; } /* { dg-warning "'INT1' is deprecated" "" } */ INT2 f3(void) __attribute__ ((__deprecated__)); -INT2 f4(void) { return 0; } /* { dg-warning "`INT2' is deprecated" "" } */ -int f5(INT2 x); /* { dg-warning "`INT2' is deprecated" "" } */ +INT2 f4(void) { return 0; } /* { dg-warning "'INT2' is deprecated" "" } */ +int f5(INT2 x); /* { dg-warning "'INT2' is deprecated" "" } */ int f6(INT2 x) __attribute__ ((__deprecated__)); typedef enum Color {red, green, blue} Color __attribute__((deprecated)); @@ -25,7 +25,7 @@ typedef enum Color {red, green, blue} Color __attribute__((deprecated)); int g1; int g2 __attribute__ ((deprecated)); int g3 __attribute__ ((__deprecated__)); -Color k; /* { dg-warning "`Color' is deprecated" "" } */ +Color k; /* { dg-warning "'Color' is deprecated" "" } */ typedef struct { int field1; @@ -46,17 +46,17 @@ typedef struct { int func1() { - INT1 w; /* { dg-warning "`INT1' is deprecated" "" } */ + INT1 w; /* { dg-warning "'INT1' is deprecated" "" } */ int x __attribute__ ((deprecated)); int y __attribute__ ((__deprecated__)); int z; - int (*pf)() = f1; /* { dg-warning "`f1' is deprecated" "" } */ + int (*pf)() = f1; /* { dg-warning "'f1' is deprecated" "" } */ - z = w + x + y + g1 + g2 + g3; /* { dg-warning "`x' is deprecated" "" } */ - /* { dg-warning "`y' is deprecated" "" { target *-*-* } 55 } */ - /* { dg-warning "`g2' is deprecated" "" { target *-*-* } 55 } */ - /* { dg-warning "`g3' is deprecated" "" { target *-*-* } 55 } */ - return f1(); /* { dg-warning "`f1' is deprecated" "" } */ + z = w + x + y + g1 + g2 + g3; /* { dg-warning "'x' is deprecated" "" } */ + /* { dg-warning "'y' is deprecated" "" { target *-*-* } 55 } */ + /* { dg-warning "'g2' is deprecated" "" { target *-*-* } 55 } */ + /* { dg-warning "'g3' is deprecated" "" { target *-*-* } 55 } */ + return f1(); /* { dg-warning "'f1' is deprecated" "" } */ } int func2(S1 *p) @@ -64,36 +64,36 @@ int func2(S1 *p) S1 lp; if (p->field1) - return p->field2; /* { dg-warning "`field2' is deprecated" "" } */ - else if (lp.field4) /* { dg-warning "`field4' is deprecated" "" } */ + return p->field2; /* { dg-warning "'field2' is deprecated" "" } */ + else if (lp.field4) /* { dg-warning "'field4' is deprecated" "" } */ return p->field3; p->u1.field5 = g1 + p->field7; - p->u2.field9; /* { dg-warning "`u2' is deprecated" "" } */ - return p->u1.field6 + p->field8; /* { dg-warning "`field6' is deprecated" "" } */ - /* { dg-warning "`field8' is deprecated" "" { target *-*-* } 73 } */ + p->u2.field9; /* { dg-warning "'u2' is deprecated" "" } */ + return p->u1.field6 + p->field8; /* { dg-warning "'field6' is deprecated" "" } */ + /* { dg-warning "'field8' is deprecated" "" { target *-*-* } 73 } */ } struct SS1 { int x; - INT1 y; /* { dg-warning "`INT1' is deprecated" "" } */ + INT1 y; /* { dg-warning "'INT1' is deprecated" "" } */ } __attribute__ ((deprecated)); -struct SS1 *p1; /* { dg-warning "`SS1' is deprecated" "" } */ +struct SS1 *p1; /* { dg-warning "'SS1' is deprecated" "" } */ struct __attribute__ ((__deprecated__)) SS2 { int x; - INT1 y; /* { dg-warning "`INT1' is deprecated" "" } */ + INT1 y; /* { dg-warning "'INT1' is deprecated" "" } */ }; -struct SS2 *p2; /* { dg-warning "`SS2' is deprecated" "" } */ +struct SS2 *p2; /* { dg-warning "'SS2' is deprecated" "" } */ #endif #ifdef __cplusplus class T { public: void member1(int) __attribute__ ((deprecated)); - void member2(INT1) __attribute__ ((__deprecated__)); /* { dg-warning "`INT1' is deprecated" "" } */ + void member2(INT1) __attribute__ ((__deprecated__)); /* { dg-warning "'INT1' is deprecated" "" } */ int member3(T *); int x; } __attribute__ ((deprecated)); @@ -104,13 +104,13 @@ inline void T::member1(int) {} int T::member3(T *p) { - p->member1(1); /* { dg-warning "`member1' is deprecated" "" } */ - (*p).member1(2); /* { dg-warning "`member1' is deprecated" "" } */ - p->member2(1); /* { dg-warning "`member2' is deprecated" "" } */ - (*p).member2(2); /* { dg-warning "`member2' is deprecated" "" } */ + p->member1(1); /* { dg-warning "'member1' is deprecated" "" } */ + (*p).member1(2); /* { dg-warning "'member1' is deprecated" "" } */ + p->member2(1); /* { dg-warning "'member2' is deprecated" "" } */ + (*p).member2(2); /* { dg-warning "'member2' is deprecated" "" } */ p->member3(p); (*p).member3(p); - return f1(); /* { dg-warning "`f1' is deprecated" "" } */ + return f1(); /* { dg-warning "'f1' is deprecated" "" } */ } #endif diff --git a/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C b/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C index a6fdc44e597..3c05f16f28e 100644 --- a/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C +++ b/gcc/testsuite/g++.old-deja/g++.abi/cxa_vec.C @@ -22,14 +22,17 @@ static bool dtor_repeat = false; #endif // our pseudo ctors and dtors -static void ctor (void *) +static abi::__cxa_cdtor_return_type ctor (void *x) { if (!ctor_count) throw 1; ctor_count--; +#ifdef __ARM_EABI__ + return x; +#endif } -static void dtor (void *) +static abi::__cxa_cdtor_return_type dtor (void *x) { if (!dtor_count) { @@ -38,6 +41,9 @@ static void dtor (void *) throw 1; } dtor_count--; +#ifdef __ARM_EABI__ + return x; +#endif } // track new and delete diff --git a/gcc/testsuite/g++.old-deja/g++.other/sizeof3.C b/gcc/testsuite/g++.old-deja/g++.other/sizeof3.C index b3f74db6822..bceb7317a1c 100644 --- a/gcc/testsuite/g++.old-deja/g++.other/sizeof3.C +++ b/gcc/testsuite/g++.old-deja/g++.other/sizeof3.C @@ -6,7 +6,7 @@ // means things like the rhs of a comma operator mustn't decay. This will make // a difference if it is an array or function. -extern void abort(); +extern "C" void abort(); int main (int argc, char **argv) { diff --git a/gcc/testsuite/gcc.c-torture/execute/991118-1.x b/gcc/testsuite/gcc.c-torture/execute/991118-1.x deleted file mode 100644 index f1067a007e0..00000000000 --- a/gcc/testsuite/gcc.c-torture/execute/991118-1.x +++ /dev/null @@ -1,14 +0,0 @@ -# PR 16437. This fails on x86_64 now. -if { [istarget "x86_64-*-*"] } { - set torture_eval_before_execute { - global compiler_conditional_xfail_data - set compiler_conditional_xfail_data { - { "PR 16437" } \ - { "x86_64-*-*" } \ - { "*-O[123s]*" } \ - { "-O0" } - } - } -} - -return 0 diff --git a/gcc/testsuite/gcc.c-torture/execute/bf64-1.x b/gcc/testsuite/gcc.c-torture/execute/bf64-1.x dissimilarity index 61% index 54a8f6ac03c..f3069f2844b 100644 --- a/gcc/testsuite/gcc.c-torture/execute/bf64-1.x +++ b/gcc/testsuite/gcc.c-torture/execute/bf64-1.x @@ -1,21 +1,8 @@ -# The MCore ABI specifies that bitfields may not exceed 32 bits. -# Hence this tes will fail. - -if { [istarget "mcore-*-*"] } { - set torture_execute_xfail "mcore-*-*" -} - -# PR 16437. This fails on x86_64 now. -if { [istarget "x86_64-*-*"] } { - set torture_eval_before_execute { - global compiler_conditional_xfail_data - set compiler_conditional_xfail_data { - { "PR 16437" } \ - { "x86_64-*-*" } \ - { "*-O[123s]*" } \ - { "-O0" } - } - } -} - -return 0 +# The MCore ABI specifies that bitfields may not exceed 32 bits. +# Hence this tes will fail. + +if { [istarget "mcore-*-*"] } { + set torture_execute_xfail "mcore-*-*" +} + +return 0 diff --git a/gcc/testsuite/gcc.c-torture/execute/builtins/memmove.c b/gcc/testsuite/gcc.c-torture/execute/builtins/memmove.c index 4a18fc6400f..f52332c6c13 100644 --- a/gcc/testsuite/gcc.c-torture/execute/builtins/memmove.c +++ b/gcc/testsuite/gcc.c-torture/execute/builtins/memmove.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2003 Free Software Foundation. +/* Copyright (C) 2003, 2004 Free Software Foundation. Ensure builtin memmove and bcopy perform correctly. @@ -62,13 +62,13 @@ main_test (void) struct bar b1[sizeof bar/sizeof*bar]; int bz[sizeof baz/sizeof*baz]; - if (memmove (f1, foo, sizeof (foo)) != f1 || memcmp (f1, foo, sizeof(foo))) - abort(); - if (memmove (b1, bar, sizeof (bar)) != b1 || memcmp (b1, bar, sizeof(bar))) - abort(); + if (memmove (f1, foo, sizeof (foo)) != f1 || memcmp (f1, foo, sizeof (foo))) + abort (); + if (memmove (b1, bar, sizeof (bar)) != b1 || memcmp (b1, bar, sizeof (bar))) + abort (); bcopy (baz, bz, sizeof (baz)); - if (memcmp (bz, baz, sizeof(baz))) - abort(); + if (memcmp (bz, baz, sizeof (baz))) + abort (); if (memmove (p, "abcde", 6) != p || memcmp (p, "abcde", 6)) abort (); diff --git a/gcc/testsuite/gcc.dg/991209-1.c b/gcc/testsuite/gcc.dg/991209-1.c index b3a47285158..2381922c660 100644 --- a/gcc/testsuite/gcc.dg/991209-1.c +++ b/gcc/testsuite/gcc.dg/991209-1.c @@ -1,8 +1,9 @@ /* { dg-do compile { target i?86-*-* } } */ +/* { dg-options "-ansi -pedantic" } */ int foo () { return 1; } -register char *stack_ptr __asm ("%esp"); +register char *stack_ptr __asm ("%esp"); /* { dg-warning "warning: file-scope declaration of 'stack_ptr' specifies 'register'" } */ diff --git a/gcc/testsuite/gcc.dg/Wswitch-2.c b/gcc/testsuite/gcc.dg/Wswitch-2.c index 9bc7d022b46..79ba4bdcb84 100644 --- a/gcc/testsuite/gcc.dg/Wswitch-2.c +++ b/gcc/testsuite/gcc.dg/Wswitch-2.c @@ -13,7 +13,7 @@ foo (enum e ei, int j) case e3: return 2; case e4: return 3; } /* No warning here since e2 has the same value as e3. */ - switch (ei) /* { dg-warning "enumeration value `e4' not handled in switch" "enum e4" } */ + switch (ei) /* { dg-warning "enumeration value 'e4' not handled in switch" "enum e4" } */ { case e1: return 1; case e2: return 2; @@ -22,7 +22,7 @@ foo (enum e ei, int j) { case e1: return 1; } /* No warning here since switch condition was cast to int. */ - switch ((enum e) j) /* { dg-warning "enumeration value `e1' not handled in switch" "enum e1" } */ + switch ((enum e) j) /* { dg-warning "enumeration value 'e1' not handled in switch" "enum e1" } */ { case e2: return 1; case e4: return 2; diff --git a/gcc/testsuite/gcc.dg/Wswitch-enum.c b/gcc/testsuite/gcc.dg/Wswitch-enum.c index 24fc26261e6..28c60d879ae 100644 --- a/gcc/testsuite/gcc.dg/Wswitch-enum.c +++ b/gcc/testsuite/gcc.dg/Wswitch-enum.c @@ -19,18 +19,18 @@ foo (int i, int j, enum e ei, enum e ej, enum e ek, enum e el, case 4: return 3; default: break; } - switch (ei) /* { dg-warning "enumeration value `e1' not handled in switch" "enum e1" } */ - { /* { dg-warning "enumeration value `e2' not handled in switch" "enum e2" { target *-*-* } 22 } */ + switch (ei) /* { dg-warning "enumeration value 'e1' not handled in switch" "enum e1" } */ + { /* { dg-warning "enumeration value 'e2' not handled in switch" "enum e2" { target *-*-* } 22 } */ } - switch (ej) /* { dg-warning "enumeration value `e1' not handled in switch" "enum e1" } */ - { /* { dg-warning "enumeration value `e2' not handled in switch" "enum e2" { target *-*-* } 25 } */ + switch (ej) /* { dg-warning "enumeration value 'e1' not handled in switch" "enum e1" } */ + { /* { dg-warning "enumeration value 'e2' not handled in switch" "enum e2" { target *-*-* } 25 } */ default: break; } - switch (ek) /* { dg-warning "enumeration value `e2' not handled in switch" "enum e2" } */ + switch (ek) /* { dg-warning "enumeration value 'e2' not handled in switch" "enum e2" } */ { case e1: return 1; } - switch (el) /* { dg-warning "enumeration value `e2' not handled in switch" "enum e2" } */ + switch (el) /* { dg-warning "enumeration value 'e2' not handled in switch" "enum e2" } */ { case e1: return 1; default: break; @@ -50,13 +50,13 @@ foo (int i, int j, enum e ei, enum e ej, enum e ek, enum e el, { case e1: return 1; case e2: return 2; - case 3: return 3; /* { dg-warning "case value `3' not in enumerated type `enum e'" "excess 3" } */ + case 3: return 3; /* { dg-warning "case value '3' not in enumerated type 'enum e'" "excess 3" } */ } switch (ep) { case e1: return 1; case e2: return 2; - case 3: return 3; /* { dg-warning "case value `3' not in enumerated type `enum e'" "excess 3" } */ + case 3: return 3; /* { dg-warning "case value '3' not in enumerated type 'enum e'" "excess 3" } */ default: break; } return 0; diff --git a/gcc/testsuite/gcc.dg/Wswitch.c b/gcc/testsuite/gcc.dg/Wswitch.c index 9ba12d6d3c0..686fd41614c 100644 --- a/gcc/testsuite/gcc.dg/Wswitch.c +++ b/gcc/testsuite/gcc.dg/Wswitch.c @@ -19,14 +19,14 @@ foo (int i, int j, enum e ei, enum e ej, enum e ek, enum e el, case 4: return 3; default: break; } - switch (ei) /* { dg-warning "enumeration value `e1' not handled in switch" "enum e1" } */ - { /*{ dg-warning "enumeration value `e2' not handled in switch" "enum e2" { target *-*-* } 22 } */ + switch (ei) /* { dg-warning "enumeration value 'e1' not handled in switch" "enum e1" } */ + { /*{ dg-warning "enumeration value 'e2' not handled in switch" "enum e2" { target *-*-* } 22 } */ } switch (ej) { default: break; } - switch (ek) /* { dg-warning "enumeration value `e2' not handled in switch" "enum e2" } */ + switch (ek) /* { dg-warning "enumeration value 'e2' not handled in switch" "enum e2" } */ { case e1: return 1; } @@ -50,7 +50,7 @@ foo (int i, int j, enum e ei, enum e ej, enum e ek, enum e el, { case e1: return 1; case e2: return 2; - case 3: return 3; /* { dg-warning "case value `3' not in enumerated type `enum e'" "excess 3" } */ + case 3: return 3; /* { dg-warning "case value '3' not in enumerated type 'enum e'" "excess 3" } */ } switch (ep) { diff --git a/gcc/testsuite/gcc.dg/asmreg-1.c b/gcc/testsuite/gcc.dg/asmreg-1.c index a779766d4a6..85827e9a9a3 100644 --- a/gcc/testsuite/gcc.dg/asmreg-1.c +++ b/gcc/testsuite/gcc.dg/asmreg-1.c @@ -22,7 +22,7 @@ struct kernel_dirent64 }; static inline int __attribute__ ((__always_inline__)) -__syscall_getdents64 (int fd, unsigned char * dirp, unsigned count) +__syscall_getdents64 (int fd, char * dirp, unsigned count) { register unsigned long __sys_res asm ("r10"); register unsigned long __r10 __asm__ ("r10") = (unsigned long) fd; diff --git a/gcc/testsuite/gcc.dg/darwin-longlong.c b/gcc/testsuite/gcc.dg/darwin-longlong.c index 1c5d057798b..b9392c0c37b 100644 --- a/gcc/testsuite/gcc.dg/darwin-longlong.c +++ b/gcc/testsuite/gcc.dg/darwin-longlong.c @@ -1,4 +1,5 @@ /* { dg-do run { target powerpc*-*-* } } */ +/* { dg-xfail-if "" { "powerpc-*-eabispe*" "powerpc-ibm-aix*" } { "-mcpu=G5" } { "" } } */ /* { dg-options "-mcpu=G5" } */ #include diff --git a/gcc/testsuite/gcc.dg/declspec-4.c b/gcc/testsuite/gcc.dg/declspec-4.c index 0610e059413..b8eb9d0f99c 100644 --- a/gcc/testsuite/gcc.dg/declspec-4.c +++ b/gcc/testsuite/gcc.dg/declspec-4.c @@ -19,23 +19,25 @@ enum e1 { E1 }; /* Not declaring anything (pedwarns). */ struct { int a; }; /* { dg-warning "warning: unnamed struct/union that defines no instances" } */ int; /* { dg-warning "warning: useless type name in empty declaration" } */ -long; /* { dg-warning "warning: useless keyword or type name in empty declaration" } */ -/* { dg-warning "warning: empty declaration" "long" { target *-*-* } 22 } */ +long; /* { dg-warning "warning: useless type name in empty declaration" } */ T; /* { dg-warning "warning: useless type name in empty declaration" } */ -static const; /* { dg-warning "warning: useless keyword or type name in empty declaration" } */ -/* { dg-warning "warning: empty declaration" "long" { target *-*-* } 25 } */ +static const; /* { dg-warning "warning: useless storage class specifier in empty declaration" } */ +/* { dg-warning "warning: empty declaration" "static const" { target *-*-* } 24 } */ union { long b; }; /* { dg-warning "warning: unnamed struct/union that defines no instances" } */ /* Multiple type names (errors). */ struct s1 int; /* { dg-error "error: two or more data types in declaration specifiers" } */ char union u1; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-warning "warning: useless type name in empty declaration" "char union" { target *-*-* } 31 } */ +/* { dg-warning "warning: useless type name in empty declaration" "char union" { target *-*-* } 30 } */ double enum { E2 }; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-warning "warning: useless type name in empty declaration" "double enum" { target *-*-* } 33 } */ +/* { dg-warning "warning: useless type name in empty declaration" "double enum" { target *-*-* } 32 } */ T struct s2; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-warning "warning: useless type name in empty declaration" "T struct" { target *-*-* } 35 } */ -long union u2; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -struct s3 short; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -union u3 signed; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -unsigned struct s4; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -_Complex enum { E3 }; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ +/* { dg-warning "warning: useless type name in empty declaration" "T struct" { target *-*-* } 34 } */ +long union u2; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 36 } */ +struct s3 short; /* { dg-error "error: two or more data types in declaration specifiers" } */ +union u3 signed; /* { dg-error "error: two or more data types in declaration specifiers" } */ +unsigned struct s4; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 40 } */ +_Complex enum { E3 }; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 42 } */ diff --git a/gcc/testsuite/gcc.dg/declspec-5.c b/gcc/testsuite/gcc.dg/declspec-5.c index aba27397023..f24d9b468b9 100644 --- a/gcc/testsuite/gcc.dg/declspec-5.c +++ b/gcc/testsuite/gcc.dg/declspec-5.c @@ -19,23 +19,27 @@ enum e1 { E1 }; /* Not declaring anything (pedwarns). */ struct { int a; }; /* { dg-warning "warning: unnamed struct/union that defines no instances" } */ int; /* { dg-warning "warning: useless type name in empty declaration" } */ -long; /* { dg-warning "warning: useless keyword or type name in empty declaration" } */ -/* { dg-warning "warning: empty declaration" "long" { target *-*-* } 22 } */ +long; /* { dg-warning "warning: useless type name in empty declaration" } */ T; /* { dg-warning "warning: useless type name in empty declaration" } */ -static const; /* { dg-warning "warning: useless keyword or type name in empty declaration" } */ -/* { dg-warning "warning: empty declaration" "long" { target *-*-* } 25 } */ +static const; /* { dg-warning "warning: useless storage class specifier in empty declaration" } */ +/* { dg-warning "warning: empty declaration" "static const" { target *-*-* } 24 } */ union { long b; }; /* { dg-warning "warning: unnamed struct/union that defines no instances" } */ /* Multiple type names (errors). */ struct s1 int; /* { dg-error "error: two or more data types in declaration specifiers" } */ char union u1; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-warning "warning: useless type name in empty declaration" "char union" { target *-*-* } 31 } */ +/* { dg-warning "warning: useless type name in empty declaration" "char union" { target *-*-* } 30 } */ double enum { E2 }; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-warning "warning: useless type name in empty declaration" "double enum" { target *-*-* } 33 } */ +/* { dg-warning "warning: useless type name in empty declaration" "double enum" { target *-*-* } 32 } */ T struct s2; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-warning "warning: useless type name in empty declaration" "T struct" { target *-*-* } 35 } */ -long union u2; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -struct s3 short; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -union u3 signed; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -unsigned struct s4; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -_Complex enum { E3 }; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ +/* { dg-warning "warning: useless type name in empty declaration" "T struct" { target *-*-* } 34 } */ +long union u2; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 36 } */ +struct s3 short; /* { dg-error "error: two or more data types in declaration specifiers" } */ +union u3 signed; /* { dg-error "error: two or more data types in declaration specifiers" } */ +unsigned struct s4; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 40 } */ +_Complex enum { E3 }; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 42 } */ +/* { dg-warning "warning: ISO C90 does not support complex types" "C90" { target *-*-* } 42 } */ +/* { dg-warning "warning: ISO C does not support plain 'complex' meaning 'double complex'" "ISO C" { target *-*-* } 42 } */ diff --git a/gcc/testsuite/gcc.dg/declspec-6.c b/gcc/testsuite/gcc.dg/declspec-6.c index 91a5d82b842..29ef24843bf 100644 --- a/gcc/testsuite/gcc.dg/declspec-6.c +++ b/gcc/testsuite/gcc.dg/declspec-6.c @@ -19,23 +19,27 @@ enum e1 { E1 }; /* Not declaring anything (pedwarns). */ struct { int a; }; /* { dg-error "error: unnamed struct/union that defines no instances" } */ int; /* { dg-error "error: useless type name in empty declaration" } */ -long; /* { dg-warning "warning: useless keyword or type name in empty declaration" } */ -/* { dg-error "error: empty declaration" "long" { target *-*-* } 22 } */ +long; /* { dg-error "error: useless type name in empty declaration" } */ T; /* { dg-error "error: useless type name in empty declaration" } */ -static const; /* { dg-warning "warning: useless keyword or type name in empty declaration" } */ -/* { dg-error "error: empty declaration" "long" { target *-*-* } 25 } */ +static const; /* { dg-warning "warning: useless storage class specifier in empty declaration" } */ +/* { dg-error "error: empty declaration" "static const" { target *-*-* } 24 } */ union { long b; }; /* { dg-error "error: unnamed struct/union that defines no instances" } */ /* Multiple type names (errors). */ struct s1 int; /* { dg-error "error: two or more data types in declaration specifiers" } */ char union u1; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-error "error: useless type name in empty declaration" "char union" { target *-*-* } 31 } */ +/* { dg-error "error: useless type name in empty declaration" "char union" { target *-*-* } 30 } */ double enum { E2 }; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-error "error: useless type name in empty declaration" "double enum" { target *-*-* } 33 } */ +/* { dg-error "error: useless type name in empty declaration" "double enum" { target *-*-* } 32 } */ T struct s2; /* { dg-error "error: two or more data types in declaration specifiers" } */ -/* { dg-error "error: useless type name in empty declaration" "T struct" { target *-*-* } 35 } */ -long union u2; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -struct s3 short; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -union u3 signed; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -unsigned struct s4; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ -_Complex enum { E3 }; /* { dg-error "error: long, short, signed, unsigned or complex used invalidly in empty declaration" } */ +/* { dg-error "error: useless type name in empty declaration" "T struct" { target *-*-* } 34 } */ +long union u2; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-error "error: useless type name in empty declaration" "empty" { target *-*-* } 36 } */ +struct s3 short; /* { dg-error "error: two or more data types in declaration specifiers" } */ +union u3 signed; /* { dg-error "error: two or more data types in declaration specifiers" } */ +unsigned struct s4; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-error "error: useless type name in empty declaration" "empty" { target *-*-* } 40 } */ +_Complex enum { E3 }; /* { dg-error "error: two or more data types in declaration specifiers" } */ +/* { dg-error "error: useless type name in empty declaration" "empty" { target *-*-* } 42 } */ +/* { dg-error "error: ISO C90 does not support complex types" "C90" { target *-*-* } 42 } */ +/* { dg-error "error: ISO C does not support plain 'complex' meaning 'double complex'" "ISO C" { target *-*-* } 42 } */ diff --git a/gcc/testsuite/gcc.dg/deprecated.c b/gcc/testsuite/gcc.dg/deprecated.c index 83557475c44..1e07efe6314 100644 --- a/gcc/testsuite/gcc.dg/deprecated.c +++ b/gcc/testsuite/gcc.dg/deprecated.c @@ -6,26 +6,26 @@ typedef int INT1 __attribute__((deprecated)); typedef INT1 INT2 __attribute__ ((__deprecated__)); -typedef INT1 INT1a; /* { dg-warning "`INT1' is deprecated" "" } */ +typedef INT1 INT1a; /* { dg-warning "'INT1' is deprecated" "" } */ typedef INT1 INT1b __attribute__ ((deprecated)); -INT1 should_be_unavailable; /* { dg-warning "`INT1' is deprecated" "" } */ +INT1 should_be_unavailable; /* { dg-warning "'INT1' is deprecated" "" } */ INT1a should_not_be_deprecated; INT1 f1(void) __attribute__ ((deprecated)); -INT1 f2(void) { return 0; } /* { dg-warning "`INT1' is deprecated" "" } */ +INT1 f2(void) { return 0; } /* { dg-warning "'INT1' is deprecated" "" } */ INT2 f3(void) __attribute__ ((__deprecated__)); -INT2 f4(void) { return 0; } /* { dg-warning "`INT2' is deprecated" "" } */ -int f5(INT2 x); /* { dg-warning "`INT2' is deprecated" "" } */ -int f6(INT2 x) __attribute__ ((__deprecated__)); /* { dg-warning "`INT2' is deprecated" "" } */ +INT2 f4(void) { return 0; } /* { dg-warning "'INT2' is deprecated" "" } */ +int f5(INT2 x); /* { dg-warning "'INT2' is deprecated" "" } */ +int f6(INT2 x) __attribute__ ((__deprecated__)); /* { dg-warning "'INT2' is deprecated" "" } */ typedef enum {red, green, blue} Color __attribute__((deprecated)); int g1; int g2 __attribute__ ((deprecated)); int g3 __attribute__ ((__deprecated__)); -Color k; /* { dg-warning "`Color' is deprecated" "" } */ +Color k; /* { dg-warning "'Color' is deprecated" "" } */ typedef struct { int field1; @@ -46,17 +46,17 @@ typedef struct { int func1() { - INT1 w; /* { dg-warning "`INT1' is deprecated" "" } */ + INT1 w; /* { dg-warning "'INT1' is deprecated" "" } */ int x __attribute__ ((deprecated)); int y __attribute__ ((__deprecated__)); int z; - int (*pf)() = f1; /* { dg-warning "`f1' is deprecated" "" } */ + int (*pf)() = f1; /* { dg-warning "'f1' is deprecated" "" } */ - z = w + x + y + g1 + g2 + g3; /* { dg-warning "`x' is deprecated" "" } */ - /* { dg-warning "`y' is deprecated" "" { target *-*-* } 55 } */ - /* { dg-warning "`g2' is deprecated" "" { target *-*-* } 55 } */ - /* { dg-warning "`g3' is deprecated" "" { target *-*-* } 55 } */ - return f1(); /* { dg-warning "`f1' is deprecated" "" } */ + z = w + x + y + g1 + g2 + g3; /* { dg-warning "'x' is deprecated" "" } */ + /* { dg-warning "'y' is deprecated" "" { target *-*-* } 55 } */ + /* { dg-warning "'g2' is deprecated" "" { target *-*-* } 55 } */ + /* { dg-warning "'g3' is deprecated" "" { target *-*-* } 55 } */ + return f1(); /* { dg-warning "'f1' is deprecated" "" } */ } int func2(S1 *p) @@ -64,29 +64,29 @@ int func2(S1 *p) S1 lp; if (p->field1) - return p->field2; /* { dg-warning "`field2' is deprecated" "" } */ - else if (lp.field4) /* { dg-warning "`field4' is deprecated" "" } */ + return p->field2; /* { dg-warning "'field2' is deprecated" "" } */ + else if (lp.field4) /* { dg-warning "'field4' is deprecated" "" } */ return p->field3; p->u1.field5 = g1 + p->field7; - p->u2.field9; /* { dg-warning "`u2' is deprecated" "" } */ - return p->u1.field6 + p->field8; /* { dg-warning "`field6' is deprecated" "" } */ - /* { dg-warning "`field8' is deprecated" "" { target *-*-* } 73 } */ + p->u2.field9; /* { dg-warning "'u2' is deprecated" "" } */ + return p->u1.field6 + p->field8; /* { dg-warning "'field6' is deprecated" "" } */ + /* { dg-warning "'field8' is deprecated" "" { target *-*-* } 73 } */ } struct SS1 { int x; - INT1 y; /* { dg-warning "`INT1' is deprecated" "" } */ + INT1 y; /* { dg-warning "'INT1' is deprecated" "" } */ } __attribute__ ((deprecated)); -struct SS1 *p1; /* { dg-warning "`SS1' is deprecated" "" } */ +struct SS1 *p1; /* { dg-warning "'SS1' is deprecated" "" } */ struct __attribute__ ((__deprecated__)) SS2 { int x; - INT1 y; /* { dg-warning "`INT1' is deprecated" "" } */ + INT1 y; /* { dg-warning "'INT1' is deprecated" "" } */ }; -struct SS2 *p2; /* { dg-warning "`SS2' is deprecated" "" } */ +struct SS2 *p2; /* { dg-warning "'SS2' is deprecated" "" } */ #endif #ifdef __cplusplus @@ -104,13 +104,13 @@ inline void T::member1(int) {} int T::member2(T *p) { - p->member1(1); /* { xxdg-warning "`member1' is deprecated" "" } */ - (*p).member1(2); /* { xxdg-warning "`member1' is deprecated" "" } */ - p->member2(1); /* { xxdg-warning "`member2' is deprecated" "" } */ - (*p).member2(2); /* { xxdg-warning "`member2' is deprecated" "" } */ + p->member1(1); /* { xxdg-warning "'member1' is deprecated" "" } */ + (*p).member1(2); /* { xxdg-warning "'member1' is deprecated" "" } */ + p->member2(1); /* { xxdg-warning "'member2' is deprecated" "" } */ + (*p).member2(2); /* { xxdg-warning "'member2' is deprecated" "" } */ p->member3(p); (*p).member3(p); - return f1(); /* { xxdg-warning "`f1' is deprecated" "" } */ + return f1(); /* { xxdg-warning "'f1' is deprecated" "" } */ } #endif diff --git a/gcc/testsuite/gcc.dg/m-un-2.c b/gcc/testsuite/gcc.dg/m-un-2.c index bb617369163..d957f868405 100644 --- a/gcc/testsuite/gcc.dg/m-un-2.c +++ b/gcc/testsuite/gcc.dg/m-un-2.c @@ -16,7 +16,7 @@ struct vtable mtable = { malloc, free }; /* { dg-warning "missing initializer" "warning regression" { target *-*-* } {18} } */ - /* { dg-warning "initialization for `mtable._realloc'" "warning regression" { target *-*-* } {18} } */ + /* { dg-warning "initialization for 'mtable._realloc'" "warning regression" { target *-*-* } {18} } */ /* With designated initializers, we assume you meant to leave out the initialization of any blank fields. */ diff --git a/gcc/testsuite/gcc.dg/noreturn-1.c b/gcc/testsuite/gcc.dg/noreturn-1.c index 21ad2fa8e53..3bd6a26c582 100644 --- a/gcc/testsuite/gcc.dg/noreturn-1.c +++ b/gcc/testsuite/gcc.dg/noreturn-1.c @@ -8,7 +8,7 @@ extern void foo1(void) __attribute__ ((__noreturn__)); void foo1(void) { -} /* { dg-warning "`noreturn' function does return" "detect falling off end of noreturn" } */ +} /* { dg-warning "'noreturn' function does return" "detect falling off end of noreturn" } */ extern void foo2(void) __attribute__ ((__noreturn__)); void @@ -26,7 +26,7 @@ foo3(void) extern void foo4(void); void foo4(void) -{ /* { dg-warning "candidate for attribute `noreturn'" "detect noreturn candidate" } */ +{ /* { dg-warning "candidate for attribute 'noreturn'" "detect noreturn candidate" } */ exit(0); } @@ -34,7 +34,7 @@ extern void foo5(void) __attribute__ ((__noreturn__)); void foo5(void) { - return; /* { dg-warning "`noreturn' has a `return' statement" "detect invalid return" } */ + return; /* { dg-warning "'noreturn' has a 'return' statement" "detect invalid return" } */ } /* { dg-warning "function does return" "detect return from noreturn" } */ extern void foo6(void); @@ -56,4 +56,4 @@ void foo8(void) { foo7(); -} /* { dg-warning "`noreturn' function does return" "detect return from tail call" } */ +} /* { dg-warning "'noreturn' function does return" "detect return from tail call" } */ diff --git a/gcc/testsuite/gcc.dg/noreturn-4.c b/gcc/testsuite/gcc.dg/noreturn-4.c index 6a081b3fb4e..91f64573a55 100644 --- a/gcc/testsuite/gcc.dg/noreturn-4.c +++ b/gcc/testsuite/gcc.dg/noreturn-4.c @@ -5,6 +5,6 @@ extern void exit (int) __attribute__ ((__noreturn__)); int main (void) -{ /* { dg-warning "warning: function might be possible candidate for attribute `noreturn'" "warn for main" } */ +{ /* { dg-warning "warning: function might be possible candidate for attribute 'noreturn'" "warn for main" } */ exit (0); } diff --git a/gcc/testsuite/gcc.dg/pr14289-2.c b/gcc/testsuite/gcc.dg/pr14289-2.c deleted file mode 100644 index 7530b468cac..00000000000 --- a/gcc/testsuite/gcc.dg/pr14289-2.c +++ /dev/null @@ -1,12 +0,0 @@ -/* 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 deleted file mode 100644 index 7cfbf78ce05..00000000000 --- a/gcc/testsuite/gcc.dg/pr14289-3.c +++ /dev/null @@ -1,12 +0,0 @@ -/* 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/tls/diag-2.c b/gcc/testsuite/gcc.dg/tls/diag-2.c index 3c5d9bdd724..5e7e17bee5a 100644 --- a/gcc/testsuite/gcc.dg/tls/diag-2.c +++ b/gcc/testsuite/gcc.dg/tls/diag-2.c @@ -3,19 +3,19 @@ __thread extern int g1; /* { dg-error "'__thread' before 'extern'" } */ __thread static int g2; /* { dg-error "'__thread' before 'static'" } */ __thread __thread int g3; /* { dg-error "duplicate '__thread'" } */ -typedef __thread int g4; /* { dg-error "multiple storage classes" } */ +typedef __thread int g4; /* { dg-error "'__thread' used with 'typedef'" } */ void foo() { - __thread int l1; /* { dg-error "implicitly auto and declared `__thread'" } */ - auto __thread int l2; /* { dg-error "multiple storage classes" } */ + __thread int l1; /* { dg-error "implicitly auto and declared '__thread'" } */ + auto __thread int l2; /* { dg-error "'__thread' used with 'auto'" } */ __thread extern int l3; /* { dg-error "'__thread' before 'extern'" } */ - register __thread int l4; /* { dg-error "multiple storage classes" } */ + register __thread int l4; /* { dg-error "'__thread' used with 'register'" } */ } __thread void f1 (); /* { dg-error "invalid storage class for function" } */ extern __thread void f2 (); /* { dg-error "invalid storage class for function" } */ static __thread void f3 (); /* { dg-error "invalid storage class for function" } */ -__thread void f4 () { } /* { dg-error "function definition declared `__thread'" } */ +__thread void f4 () { } /* { dg-error "function definition declared '__thread'" } */ void bar(__thread int p1); /* { dg-error "storage class specified for parameter" } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/copy-headers.c b/gcc/testsuite/gcc.dg/tree-ssa/copy-headers.c index efe831beab5..4241b40835e 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/copy-headers.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/copy-headers.c @@ -11,5 +11,5 @@ void bla (void) foo (i); } -/* There should be a header scheduled for duplication. */ -/* { dg-final { scan-tree-dump-times "Scheduled" 1 "ch"} } */ +/* There should be a header duplicated. */ +/* { dg-final { scan-tree-dump-times "Duplicating header" 1 "ch"} } */ diff --git a/gcc/testsuite/gcc.dg/wtr-conversion-1.c b/gcc/testsuite/gcc.dg/wtr-conversion-1.c index 18d26165f2a..15086f245fe 100644 --- a/gcc/testsuite/gcc.dg/wtr-conversion-1.c +++ b/gcc/testsuite/gcc.dg/wtr-conversion-1.c @@ -23,8 +23,8 @@ testfunc1 () foo_i (cd); /* { dg-warning "as integer rather than complex" "prototype conversion warning" } */ foo_f (i); /* { dg-warning "as floating rather than integer" "prototype conversion warning" } */ - foo_f (f); /* { dg-warning "as `float' rather than `double'" "prototype conversion warning" } */ - foo_f (ld); /* { dg-warning "as `float' rather than `double'" "prototype conversion warning" } */ + foo_f (f); /* { dg-warning "as 'float' rather than 'double'" "prototype conversion warning" } */ + foo_f (ld); /* { dg-warning "as 'float' rather than 'double'" "prototype conversion warning" } */ foo_f (cd); /* { dg-warning "as floating rather than complex" "prototype conversion warning" } */ foo_ld (i); /* { dg-warning "as floating rather than integer" "prototype conversion warning" } */ diff --git a/gcc/testsuite/gcc.misc-tests/bprob.exp b/gcc/testsuite/gcc.misc-tests/bprob.exp index 8fde6829f83..554bf76dde9 100644 --- a/gcc/testsuite/gcc.misc-tests/bprob.exp +++ b/gcc/testsuite/gcc.misc-tests/bprob.exp @@ -1,4 +1,4 @@ -# Copyright (C) 2001, 2002 Free Software Foundation, Inc. +# Copyright (C) 2001, 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 @@ -27,8 +27,6 @@ if { ![check_profiling_available "-fprofile-arcs"] } { # The procedures in profopt.exp need these parameters. set tool gcc -set profile_option -fprofile-arcs -set feedback_option -fbranch-probabilities set prof_ext gcda set perf_ext tim @@ -49,11 +47,19 @@ if $tracelevel then { # Load support procs. load_lib profopt.exp -foreach src [lsort [glob -nocomplain $srcdir/$subdir/bprob-*.c]] { - # If we're only testing specific files and this isn't one of them, skip it. - if ![runtest_file_p $runtests $src] then { - continue - } +set profile_options "-fprofile-arcs" +set feedback_options "-fbranch-probabilities" +if {[check_profiling_available "-ftree-based-profiling"]} { + lappend profile_options "-ftree-based-profiling -fprofile-arcs" + lappend feedback_options "-ftree-based-profiling -fbranch-probabilities" +} - profopt-execute $src +foreach profile_option $profile_options feedback_option $feedback_options { + foreach src [lsort [glob -nocomplain $srcdir/$subdir/bprob-*.c]] { + # If we're only testing specific files and this isn't one of them, skip it. + if ![runtest_file_p $runtests $src] then { + continue + } + profopt-execute $src + } } diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.x b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.x index be755d03596..dad399dcb8d 100644 --- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.x +++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.x @@ -1,2 +1,2 @@ -lappend additional_flags [ieee-options] +add-ieee-options return 0 diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.x b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.x index be755d03596..dad399dcb8d 100644 --- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.x +++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.x @@ -1,2 +1,2 @@ -lappend additional_flags [ieee-options] +add-ieee-options return 0 diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.x b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.x index be755d03596..dad399dcb8d 100644 --- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.x +++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.x @@ -1,2 +1,2 @@ -lappend additional_flags [ieee-options] +add-ieee-options return 0 diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.x b/gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.x index be755d03596..dad399dcb8d 100644 --- a/gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.x +++ b/gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.x @@ -1,2 +1,2 @@ -lappend additional_flags [ieee-options] +add-ieee-options return 0 diff --git a/gcc/testsuite/lib/fortran-torture.exp b/gcc/testsuite/lib/fortran-torture.exp index dae028139dd..4483dd709ce 100644 --- a/gcc/testsuite/lib/fortran-torture.exp +++ b/gcc/testsuite/lib/fortran-torture.exp @@ -346,20 +346,18 @@ proc fortran-torture { args } { } # -# ieee-options -- return options necessary for 100% ieee conformance. +# add-ieee-options -- add options necessary for 100% ieee conformance. # -proc ieee-options { } { +proc add-ieee-options { } { # Ensure that excess precision does not cause problems. - if [istarget "i?86-*-*"] then { - return "-ffloat-store" + if { [istarget "i?86-*-*"] + || [istarget "m68k-*-*"] } then { + uplevel 1 lappend additional_flags "-ffloat-store" } - if [istarget "m68k-*-*"] then { - return "-ffloat-store" - } - + # Enable full IEEE compliance mode. if { [istarget "alpha*-*-*"] || [istarget "sh*-*-*"] } then { - return "-mieee" + uplevel 1 lappend additional_flags "-mieee" } } diff --git a/gcc/testsuite/lib/g++.exp b/gcc/testsuite/lib/g++.exp index df8e0a4b8f1..b863785ee38 100644 --- a/gcc/testsuite/lib/g++.exp +++ b/gcc/testsuite/lib/g++.exp @@ -1,4 +1,4 @@ -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2002, 2003 +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2002, 2003, 2004 # Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify @@ -249,16 +249,7 @@ proc g++_init { args } { unset gluefile } - if { [target_info needs_status_wrapper] != "" } { - set gluefile ${tmpdir}/g++-testglue.o; - set result [build_wrapper $gluefile]; - if { $result != "" } { - set gluefile [lindex $result 0]; - set wrap_flags [lindex $result 1]; - } else { - unset gluefile - } - } + g++_maybe_build_wrapper "${tmpdir}/g++-testglue.o" set ALWAYS_CXXFLAGS "" diff --git a/gcc/testsuite/lib/g77-dg.exp b/gcc/testsuite/lib/g77-dg.exp deleted file mode 100644 index 4734075fe52..00000000000 --- a/gcc/testsuite/lib/g77-dg.exp +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright (C) 1997, 1999, 2000, 2003 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. - -load_lib gcc-dg.exp - -# Define g77 callbacks for dg.exp. - -proc g77-dg-test { prog do_what extra_tool_flags } { - set result \ - [gcc-dg-test-1 g77_target_compile $prog $do_what $extra_tool_flags] - - set comp_output [lindex $result 0] - set output_file [lindex $result 1] - - # Put the error message on the same line as the line number - # Remove the line of source code with the error and - # the " ^" that points to error - regsub -all "\n\[^\n\]*\n *\\^\n" $comp_output "" comp_output - - return [list $comp_output $output_file] -} - -proc g77-dg-prune { system text } { - return [gcc-dg-prune $system $text] -} - -# Utility routines. - -# Modified dg-runtest that can cycle through a list of optimization options -# as c-torture does. -proc g77-dg-runtest { testcases default-extra-flags } { - return [gcc-dg-runtest $testcases ${default-extra-flags}] -} diff --git a/gcc/testsuite/lib/g77.exp b/gcc/testsuite/lib/g77.exp deleted file mode 100644 index ec0494d2fe5..00000000000 --- a/gcc/testsuite/lib/g77.exp +++ /dev/null @@ -1,225 +0,0 @@ -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2002 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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -# This file was written by Rob Savoye (rob@cygnus.com) -# Many modifications by Jeffrey Wheat (cassidy@cygnus.com) -# With modifications by Mike Stump . - -# -# g77 support library routines -# -load_lib prune.exp -load_lib gcc-defs.exp - -# -# G77_UNDER_TEST is the compiler under test. -# - - -set gpp_compile_options "" - - -# -# g77_version -- extract and print the version number of the compiler -# - -proc g77_version { } { - global G77_UNDER_TEST - - g77_init - - # ignore any arguments after the command - set compiler [lindex $G77_UNDER_TEST 0] - - # verify that the compiler exists - if { [is_remote host] || [which $compiler] != 0 } then { - set tmp [remote_exec host "$compiler -v"] - set status [lindex $tmp 0]; - set output [lindex $tmp 1]; - regexp " version \[^\n\r\]*" $output version - if { $status == 0 && [info exists version] } then { - if [is_remote host] { - clone_output "$compiler $version\n" - } else { - clone_output "[which $compiler] $version\n" - } - } else { - clone_output "Couldn't determine version of [which $compiler]\n" - } - } else { - # compiler does not exist (this should have already been detected) - warning "$compiler does not exist" - } -} - -# -# g77_link_flags -- provide new version of g77_link_flags -# (originally from libgloss.exp) which knows about the gcc tree structure -# - -proc g77_link_flags { paths } { - global rootme - global srcdir - global ld_library_path - global G77_UNDER_TEST - - set gccpath ${paths} - set libio_dir "" - set flags "" - set ld_library_path "." - - if { $gccpath != "" } { - if [file exists "${gccpath}/libf2c/.libs/libg2c.a"] { - append flags "-L${gccpath}/libf2c/.libs " - append ld_library_path ":${gccpath}/libf2c/.libs" - } - if [file exists "${gccpath}/libf2c/libfrtbegin.a"] { - append flags "-L${gccpath}/libf2c " - } - if [file exists "${gccpath}/libiberty/libiberty.a"] { - append flags "-L${gccpath}/libiberty " - } - append ld_library_path ":${rootme}" - set compiler [lindex $G77_UNDER_TEST 0] - if { [is_remote host] == 0 && [which $compiler] != 0 } { - foreach i "[exec $compiler --print-multi-lib]" { - set mldir "" - regexp -- "\[a-z0-9=/\.-\]*;" $i mldir - set mldir [string trimright $mldir "\;@"] - if { "$mldir" == "." } { - continue - } - if { [llength [glob -nocomplain ${rootme}/${mldir}/libgcc_s*.so.*]] == 1 } { - append ld_library_path ":${rootme}/${mldir}" - } - } - } - } - - # On IRIX 6, we have to set variables akin to LD_LIBRARY_PATH, but - # called LD_LIBRARYN32_PATH (for the N32 ABI) and LD_LIBRARY64_PATH - # (for the 64-bit ABI). The right way to do this would be to modify - # unix.exp -- but that's not an option since it's part of DejaGNU - # proper, so we do it here. - # The same applies to Darwin (DYLD_LIBRARY_PATH), Solaris 32 bit - # (LD_LIBRARY_PATH_32), Solaris 64 bit (LD_LIBRARY_PATH_64), and HP-UX - # (SHLIB_PATH). - setenv LD_LIBRARY_PATH $ld_library_path - setenv SHLIB_PATH $ld_library_path - setenv LD_LIBRARYN32_PATH $ld_library_path - setenv LD_LIBRARY64_PATH $ld_library_path - setenv LD_LIBRARY_PATH_32 $ld_library_path - setenv LD_LIBRARY_PATH_64 $ld_library_path - setenv DYLD_LIBRARY_PATH $ld_library_path - - return "$flags" -} - -# -# g77_init -- called at the start of each subdir of tests -# - -proc g77_init { args } { - global subdir - global gpp_initialized - global base_dir - global tmpdir - global libdir - global gluefile wrap_flags; - global objdir srcdir - global ALWAYS_G77FLAGS - global TOOL_EXECUTABLE TOOL_OPTIONS - global G77_UNDER_TEST - global TESTING_IN_BUILD_TREE - - if ![info exists G77_UNDER_TEST] then { - if [info exists TOOL_EXECUTABLE] { - set G77_UNDER_TEST $TOOL_EXECUTABLE; - } else { - if { [is_remote host] || ! [info exists TESTING_IN_BUILD_TREE] } { - set G77_UNDER_TEST [transform g77] - } else { - set G77_UNDER_TEST [findfile $base_dir/../g77 "$base_dir/../g77 -B$base_dir/../" [findfile $base_dir/g77 "$base_dir/g77 -B$base_dir/" [transform g77]]] - } - } - } - - if ![is_remote host] { - if { [which $G77_UNDER_TEST] == 0 } then { - perror "G77_UNDER_TEST ($G77_UNDER_TEST) does not exist" - exit 1 - } - } - if ![info exists tmpdir] { - set tmpdir "/tmp" - } - - if [info exists gluefile] { - unset gluefile - } - - if { [target_info needs_status_wrapper] != "" } { - set gluefile ${tmpdir}/g77-testglue.o; - set result [build_wrapper $gluefile]; - if { $result != "" } { - set gluefile [lindex $result 0]; - set wrap_flags [lindex $result 1]; - } else { - unset gluefile - } - } - - set ALWAYS_G77FLAGS "" - - if ![is_remote host] { - if [info exists TOOL_OPTIONS] { - lappend ALWAYS_G77FLAGS "ldflags=[g77_link_flags [get_multilibs ${TOOL_OPTIONS}] ]"; - } else { - lappend ALWAYS_G77FLAGS "ldflags=[g77_link_flags [get_multilibs] ]"; - } - } - - if [info exists TOOL_OPTIONS] { - lappend ALWAYS_G77FLAGS "additional_flags=$TOOL_OPTIONS"; - } - - verbose -log "ALWAYS_G77FLAGS set to $ALWAYS_G77FLAGS" - - verbose "g77 is initialized" 3 -} - -# -# g77_target_compile -- compile a source file -# - -proc g77_target_compile { source dest type options } { - global tmpdir; - global gluefile wrap_flags - global ALWAYS_G77FLAGS; - global G77_UNDER_TEST; - - if { [target_info needs_status_wrapper] != "" && [info exists gluefile] } { - lappend options "libs=${gluefile}" - lappend options "ldflags=${wrap_flags}" - } - - lappend options "compiler=$G77_UNDER_TEST"; - - set options [concat "$ALWAYS_G77FLAGS" $options]; - - return [target_compile $source $dest $type $options] -} diff --git a/gcc/testsuite/lib/gcc-defs.exp b/gcc/testsuite/lib/gcc-defs.exp index bb2369c2110..740073fb8c8 100644 --- a/gcc/testsuite/lib/gcc-defs.exp +++ b/gcc/testsuite/lib/gcc-defs.exp @@ -1,4 +1,4 @@ -# Copyright (C) 2001, 2003 Free Software Foundation, Inc. +# Copyright (C) 2001, 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 @@ -14,6 +14,8 @@ # along with this program; if not, write to the Free Software # Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +load_lib wrapper.exp + # # ${tool}_check_compile -- Reports and returns pass/fail for a compilation # diff --git a/gcc/testsuite/lib/gcc.exp b/gcc/testsuite/lib/gcc.exp index 1741406b91d..2f553387666 100644 --- a/gcc/testsuite/lib/gcc.exp +++ b/gcc/testsuite/lib/gcc.exp @@ -1,4 +1,4 @@ -# Copyright (C) 1992, 1993, 1994, 1996, 1997, 1999, 2000, 2001, 2003 Free Software Foundation, Inc. +# Copyright (C) 1992, 1993, 1994, 1996, 1997, 1999, 2000, 2001, 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 @@ -106,18 +106,8 @@ proc gcc_init { args } { if ![info exists tmpdir] then { set tmpdir /tmp } - if {[target_info needs_status_wrapper] != "" && \ - [target_info needs_status_wrapper] != "0" && \ - ![info exists gluefile]} { - set gluefile ${tmpdir}/gcc-testglue.o; - set result [build_wrapper $gluefile]; - if { $result != "" } { - set gluefile [lindex $result 0]; - set wrap_flags [lindex $result 1]; - } else { - unset gluefile - } - } + + gcc_maybe_build_wrapper "${tmpdir}/gcc-testglue.o" } # diff --git a/gcc/testsuite/lib/gfortran.exp b/gcc/testsuite/lib/gfortran.exp index 4303871e3f9..07787cc5bcc 100644 --- a/gcc/testsuite/lib/gfortran.exp +++ b/gcc/testsuite/lib/gfortran.exp @@ -187,16 +187,7 @@ proc gfortran_init { args } { unset gluefile } - if { [target_info needs_status_wrapper] != "" } { - set gluefile ${tmpdir}/gfortran-testglue.o; - set result [build_wrapper $gluefile]; - if { $result != "" } { - set gluefile [lindex $result 0]; - set wrap_flags [lindex $result 1]; - } else { - unset gluefile - } - } + gfortran_maybe_build_wrapper "${tmpdir}/gfortran-testglue.o" set ALWAYS_GFORTRANFLAGS "" diff --git a/gcc/testsuite/lib/mike-g77.exp b/gcc/testsuite/lib/mike-g77.exp deleted file mode 100644 index ccc9041e3ec..00000000000 --- a/gcc/testsuite/lib/mike-g77.exp +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright (C) 1988, 90, 91, 92, 95, 96, 97, 1998 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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -# This file was derived from mike-g++.exp written by Mike Stump - -# Please email any bugs, comments, and/or additions to this file to: -# fortran@gnu.org - -# -# mike_cleanup -- remove any files that are created by the testcase -# -proc mike_cleanup { src_code output_file assembly_file } { - remote_file build delete $output_file $assembly_file; -} - -# -# prebase -- sets up a Mike Stump (mrs@cygnus.com) style g77 test -# -proc prebase { } { - global compiler_output - global not_compiler_output - global compiler_result - global not_compiler_result - global program_output - global groups - global run - global actions - global target_regexp - - set compiler_output "^$" - set not_compiler_output ".*Internal compiler error.*" - set compiler_result "" - set not_compiler_result "" - set program_output ".*PASS.*" - set groups {} - set run no - set actions assemble - set target_regexp ".*" -} - -# -# run the test -# -proc postbase { src_code run groups args } { - global verbose - global srcdir - global subdir - global not_compiler_output - global compiler_output - global compiler_result - global not_compiler_result - global program_output - global actions - global target_regexp - global host_triplet - global target_triplet - global tool - global tmpdir - global G77_UNDER_TEST - global GROUP - - if ![info exists G77_UNDER_TEST] { - error "No compiler specified for testing." - } - - if ![regexp $target_regexp $target_triplet] { - unsupported $subdir/$src_code - return - } - - if { [llength $args] > 0 } { - set comp_options [lindex $args 0]; - } else { - set comp_options "" - } - - set fail_message $subdir/$src_code - set pass_message $subdir/$src_code - - if [info exists GROUP] { - if {[lsearch $groups $GROUP] == -1} { - return - } - } - - if [string match $run yes] { - set actions run - } - - set output_file "$tmpdir/[file tail [file rootname $src_code]]" - set assembly_file "$output_file" - append assembly_file ".S" - - set compile_type "none" - - case $actions { - compile - { - set compile_type "assembly"; - set output_file $assembly_file; - } - assemble - { - set compile_type "object"; - append output_file ".o"; - } - link - { - set compile_type "executable"; - append output_file ".exe"; - } - run - { - set compile_type "executable"; - append output_file ".exe"; - set run yes; - } - default - { - set output_file ""; - set compile_type "none"; - } - } - - set src_file "$srcdir/$subdir/$src_code" - set options "" - lappend options "compiler=$G77_UNDER_TEST" - - if { $comp_options != "" } { - lappend options "additional_flags=$comp_options" - } - - set comp_output [g77_target_compile $src_file $output_file $compile_type $options]; - - set pass no - - # Delete things like "ld.so warning" messages. - set comp_output [prune_warnings $comp_output] - - if [regexp -- $not_compiler_output $comp_output] { - if { $verbose > 1 } { - send_user "\nChecking:\n$not_compiler_output\nto make sure it does not match:\n$comp_output\nbut it does.\n\n" - } else { - send_log "\nCompiler output:\n$comp_output\n\n" - } - fail $fail_message - # The framework doesn't like to see any error remnants, - # so remove them. - uplevel { - if [info exists errorInfo] { - unset errorInfo - } - } - mike_cleanup $src_code $output_file $assembly_file - return - } - - # remove any leftover CRs. - regsub -all -- "\r" $comp_output "" comp_output - - regsub -all "(^|\n)\[^\n\]*linker input file unused since linking not done" $comp_output "" comp_output - regsub -all "(^|\n)\[^\n\]*file path prefix \[^\n\]* never used" $comp_output "" comp_output - - set unsupported_message [${tool}_check_unsupported_p $comp_output] - if { $unsupported_message != "" } { - unsupported "$subdir/$src_code: $unsupported_message" - mike_cleanup $src_code $output_file $assembly_file - return - } - - if { $verbose > 1 } { - send_user "\nChecking:\n$compiler_output\nto see if it matches:\n$comp_output\n" - } else { - send_log "\nCompiler output:\n$comp_output\n\n" - } - if [regexp -- $compiler_output $comp_output] { - if { $verbose > 1 } { - send_user "Yes, it matches.\n\n" - } - set pass yes - if [file exists [file rootname [file tail $src_code]].s] { - set fd [open [file rootname [file tail $src_code]].s r] - set dot_s [read $fd] - close $fd - if { $compiler_result != "" } { - verbose "Checking .s file for $compiler_result" 2 - if [regexp -- $compiler_result $dot_s] { - verbose "Yes, it matches." 2 - } else { - verbose "Nope, doesn't match." 2 - verbose $dot_s 4 - set pass no - } - } - if { $not_compiler_result != "" } { - verbose "Checking .s file for not $not_compiler_result" 2 - if ![regexp -- $not_compiler_result $dot_s] { - verbose "Nope, not found (that's good)." 2 - } else { - verbose "Uh oh, it was found." 2 - verbose $dot_s 4 - set pass no - } - } - } - if [string match $run yes] { - set result [g77_load $output_file] - set status [lindex $result 0]; - set output [lindex $result 1]; - if { $status == -1 } { - mike_cleanup $src_code $output_file $assembly_file; - return; - } - if { $verbose > 1 } { - send_user "Checking:\n$program_output\nto see if it matches:\n$output\n\n" - } - if ![regexp -- $program_output $output] { - set pass no - if { $verbose > 1 } { - send_user "Nope, does not match.\n\n" - } - } else { - if { $verbose > 1 } { - send_user "Yes, it matches.\n\n" - } - } - } - } else { - if { $verbose > 1 } { - send_user "Nope, does not match.\n\n" - } - } - - if [string match $pass "yes"] { - pass $pass_message - } else { - fail $fail_message - } - - # The framework doesn't like to see any error remnants, - # so remove them. - uplevel { - if [info exists errorInfo] { - unset errorInfo - } - } - - mike_cleanup $src_code $output_file $assembly_file -} diff --git a/gcc/testsuite/lib/objc.exp b/gcc/testsuite/lib/objc.exp index d00da0fa92e..d75cf1aaf8b 100644 --- a/gcc/testsuite/lib/objc.exp +++ b/gcc/testsuite/lib/objc.exp @@ -1,4 +1,4 @@ -# Copyright (C) 1992, 1993, 1994, 1996, 1997, 2000, 2001, 2002 +# Copyright (C) 1992, 1993, 1994, 1996, 1997, 2000, 2001, 2002, 2004 # Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify @@ -107,16 +107,8 @@ proc objc_init { args } { if ![info exists tmpdir] then { set tmpdir /tmp } - if { [target_info needs_status_wrapper]!="" && ![info exists gluefile] } { - set gluefile ${tmpdir}/objc-testglue.o; - set result [build_wrapper $gluefile]; - if { $result != "" } { - set gluefile [lindex $result 0]; - set wrap_flags [lindex $result 1]; - } else { - unset gluefile - } - } + + objc_maybe_build_wrapper "${tmpdir}/objc-testglue.o" set objc_libgcc_s_path "${rootme}" set compiler [lindex $OBJC_UNDER_TEST 0] @@ -173,7 +165,14 @@ proc objc_target_compile { source dest type options } { # at it (and associated headers). set objcpath "[get_multilibs]" + set libobjc_dir [lookfor_file ${objcpath} libobjc/.libs/libobjc.a] + if { $libobjc_dir == ""} { + verbose "see if we have -fgnu-runtime in [target_info name]" + if [regexp ".*-fgnu-runtime.*" [target_info name]] { + set libobjc_dir [lookfor_file ${objcpath} libobjc/.libs/libobjc-gnu.a] + } + } if { $libobjc_dir != "" } { set objc_include_dir "${srcdir}/../../libobjc" lappend options "additional_flags=-I${objc_include_dir}" diff --git a/gcc/testsuite/lib/profopt.exp b/gcc/testsuite/lib/profopt.exp index 4d32ff2fdbe..e8a7ac12354 100644 --- a/gcc/testsuite/lib/profopt.exp +++ b/gcc/testsuite/lib/profopt.exp @@ -1,4 +1,4 @@ -# Copyright (C) 2001 Free Software Foundation, Inc. +# 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 @@ -37,12 +37,6 @@ global tool profile_option feedback_option prof_ext if ![info exists tool] { error "Tools is not specified." } -if ![info exists profile_option] { - error "No profile option specified for first compile." -} -if ![info exists feedback_option] { - error "No feedback option specified for second compile." -} if ![info exists prof_ext] { error "No profile data file extension specified." } @@ -130,6 +124,13 @@ proc profopt-execute { src } { global tool profile_option feedback_option prof_ext perf_ext perf_delta global verbose + if ![info exists profile_option] { + error "No profile option specified for first compile." + } + if ![info exists feedback_option] { + error "No feedback option specified for second compile." + } + regsub "^$srcdir/?" $src "" testcase # If we couldn't rip $srcdir out of `src' then just do the best we can. # The point is to reduce the unnecessary noise in the logs. Don't strip diff --git a/gcc/testsuite/lib/treelang.exp b/gcc/testsuite/lib/treelang.exp index cea35268dab..94bb8a0b115 100644 --- a/gcc/testsuite/lib/treelang.exp +++ b/gcc/testsuite/lib/treelang.exp @@ -104,16 +104,8 @@ proc treelang_init { args } { if ![info exists tmpdir] then { set tmpdir /tmp } - if { [target_info needs_status_wrapper]!="" && ![info exists gluefile] } { - set gluefile ${tmpdir}/treelang-testglue.o; - set result [build_wrapper $gluefile]; - if { $result != "" } { - set gluefile [lindex $result 0]; - set wrap_flags [lindex $result 1]; - } else { - unset gluefile - } - } + + treelang_maybe_build_wrapper "${tmpdir}/treelang-testglue.o" set treelang_libgcc_s_path "${rootme}" set compiler [lindex $TREELANG_UNDER_TEST 0] diff --git a/gcc/toplev.c b/gcc/toplev.c index eeb111df3c5..848bfca570b 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -61,7 +61,6 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "intl.h" #include "ggc.h" #include "graph.h" -#include "loop.h" #include "regs.h" #include "timevar.h" #include "diagnostic.h" @@ -220,9 +219,9 @@ int optimize_size = 0; or 0 if between functions. */ tree current_function_decl; -/* Set to the FUNC_BEGIN label of the current function, or NULL_TREE +/* Set to the FUNC_BEGIN label of the current function, or NULL if none. */ -tree current_function_func_begin_label; +const char * current_function_func_begin_label; /* Temporarily suppress certain warnings. This is set while reading code from a system header file. */ @@ -418,7 +417,6 @@ int warn_return_type; FILE *asm_out_file; FILE *aux_info_file; FILE *dump_file = NULL; -FILE *cgraph_dump_file = NULL; char *dump_file_name; /* The current working directory of a translation. It's generally the @@ -536,7 +534,7 @@ read_integral_parameter (const char *p, const char *pname, const int defval) if (*endp != 0) { if (pname != 0) - error ("invalid option argument `%s'", pname); + error ("invalid option argument %qs", pname); return defval; } @@ -842,9 +840,10 @@ check_global_declarations (tree *vec, int len) || TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)))) { if (TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl))) - pedwarn ("%J'%F' used but never defined", decl, decl); + pedwarn ("%J%qF used but never defined", decl, decl); else - warning ("%J'%F' declared `static' but never defined", decl, decl); + warning ("%J%qF declared % but never defined", + decl, decl); /* This symbol is effectively an "extern" declaration now. */ TREE_PUBLIC (decl) = 1; assemble_external (decl); @@ -869,7 +868,7 @@ check_global_declarations (tree *vec, int len) && ! (TREE_CODE (decl) == VAR_DECL && DECL_REGISTER (decl)) /* Otherwise, ask the language. */ && lang_hooks.decls.warn_unused_global (decl)) - warning ("%J'%D' defined but not used", decl, decl); + warning ("%J%qD defined but not used", decl, decl); /* Avoid confusing the debug information machinery when there are errors. */ @@ -892,7 +891,7 @@ warn_deprecated_use (tree node) if (DECL_P (node)) { expanded_location xloc = expand_location (DECL_SOURCE_LOCATION (node)); - warning ("`%s' is deprecated (declared at %s:%d)", + warning ("%qs is deprecated (declared at %s:%d)", IDENTIFIER_POINTER (DECL_NAME (node)), xloc.file, xloc.line); } @@ -901,18 +900,21 @@ warn_deprecated_use (tree node) const char *what = NULL; tree decl = TYPE_STUB_DECL (node); - if (TREE_CODE (TYPE_NAME (node)) == IDENTIFIER_NODE) - what = IDENTIFIER_POINTER (TYPE_NAME (node)); - else if (TREE_CODE (TYPE_NAME (node)) == TYPE_DECL - && DECL_NAME (TYPE_NAME (node))) - what = IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (node))); + if (TYPE_NAME (node)) + { + if (TREE_CODE (TYPE_NAME (node)) == IDENTIFIER_NODE) + what = IDENTIFIER_POINTER (TYPE_NAME (node)); + else if (TREE_CODE (TYPE_NAME (node)) == TYPE_DECL + && DECL_NAME (TYPE_NAME (node))) + what = IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (node))); + } if (decl) { expanded_location xloc = expand_location (DECL_SOURCE_LOCATION (decl)); if (what) - warning ("`%s' is deprecated (declared at %s:%d)", what, + warning ("%qs is deprecated (declared at %s:%d)", what, xloc.file, xloc.line); else warning ("type is deprecated (declared at %s:%d)", @@ -921,9 +923,9 @@ warn_deprecated_use (tree node) else { if (what) - warning ("type is deprecated"); + warning ("%qs is deprecated", what); else - warning ("`%s' is deprecated", what); + warning ("type is deprecated"); } } } @@ -978,6 +980,7 @@ compile_file (void) { /* Initialize yet another pass. */ + init_cgraph (); init_final (main_input_filename); coverage_init (aux_base_name); @@ -1214,7 +1217,7 @@ set_target_switch (const char *name) #endif if (!valid_target_option) - error ("invalid option `%s'", name); + error ("invalid option %qs", name); } /* Print version information to FILE. @@ -1391,7 +1394,7 @@ init_asm_output (const char *name) else asm_out_file = fopen (asm_file_name, "w+b"); if (asm_out_file == 0) - fatal_error ("can't open %s for writing: %m", asm_file_name); + fatal_error ("can%'t open %s for writing: %m", asm_file_name); } #ifdef IO_BUFFER_SIZE @@ -1527,7 +1530,7 @@ default_pch_valid_p (const void *data_p, size_t len) make_message: { char *r; - asprintf (&r, _("created and used with differing settings of `-m%s'"), + asprintf (&r, _("created and used with differing settings of '-m%s'"), flag_that_differs); if (r == NULL) return _("out of memory"); @@ -1681,24 +1684,7 @@ process_options (void) if (flag_unroll_all_loops) flag_unroll_loops = 1; - if (flag_unroll_loops) - { - flag_old_unroll_loops = 0; - flag_old_unroll_all_loops = 0; - } - - if (flag_old_unroll_all_loops) - flag_old_unroll_loops = 1; - - /* Old loop unrolling requires that strength_reduction be on also. Silently - turn on strength reduction here if it isn't already on. Also, the loop - unrolling code assumes that cse will be run after loop, so that must - be turned on also. */ - if (flag_old_unroll_loops) - { - flag_strength_reduce = 1; - flag_rerun_cse_after_loop = 1; - } + /* The loop unrolling code assumes that cse will be run after loop. */ if (flag_unroll_loops || flag_peel_loops) flag_rerun_cse_after_loop = 1; @@ -1749,8 +1735,6 @@ process_options (void) warning ("this target machine does not have delayed branches"); #endif - if (flag_tree_based_profiling && flag_test_coverage) - sorry ("test-coverage not yet implemented in trees."); if (flag_tree_based_profiling && flag_profile_values) sorry ("value-based profiling not yet implemented in trees."); @@ -1878,7 +1862,7 @@ process_options (void) { aux_info_file = fopen (aux_info_file_name, "w"); if (aux_info_file == 0) - fatal_error ("can't open %s: %m", aux_info_file_name); + fatal_error ("can%'t open %s: %m", aux_info_file_name); } if (! targetm.have_named_sections) diff --git a/gcc/tree-browser.c b/gcc/tree-browser.c index 891c761e25e..1ac5dda331d 100644 --- a/gcc/tree-browser.c +++ b/gcc/tree-browser.c @@ -1,5 +1,5 @@ /* Tree browser. - Copyright (C) 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. Contributed by Sebastian Pop This file is part of GCC. @@ -262,14 +262,14 @@ browse_tree (tree begin) break; case TB_REFERENCE_TO_THIS: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 't') + if (head && TYPE_P (head)) TB_SET_HEAD (TYPE_REFERENCE_TO (head)); else TB_WF; break; case TB_POINTER_TO_THIS: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 't') + if (head && TYPE_P (head)) TB_SET_HEAD (TYPE_POINTER_TO (head)); else TB_WF; @@ -338,28 +338,28 @@ browse_tree (tree begin) break; case TB_INITIAL: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 'd') + if (head && DECL_P (head)) TB_SET_HEAD (DECL_INITIAL (head)); else TB_WF; break; case TB_RESULT: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 'd') + if (head && DECL_P (head)) TB_SET_HEAD (DECL_RESULT_FLD (head)); else TB_WF; break; case TB_ARGUMENTS: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 'd') + if (head && DECL_P (head)) TB_SET_HEAD (DECL_ARGUMENTS (head)); else TB_WF; break; case TB_ABSTRACT_ORIGIN: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 'd') + if (head && DECL_P (head)) TB_SET_HEAD (DECL_ABSTRACT_ORIGIN (head)); else if (head && TREE_CODE (head) == BLOCK) TB_SET_HEAD (BLOCK_ABSTRACT_ORIGIN (head)); @@ -368,18 +368,18 @@ browse_tree (tree begin) break; case TB_ATTRIBUTES: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 'd') + if (head && DECL_P (head)) TB_SET_HEAD (DECL_ATTRIBUTES (head)); - else if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 't') + else if (head && TYPE_P (head)) TB_SET_HEAD (TYPE_ATTRIBUTES (head)); else TB_WF; break; case TB_CONTEXT: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 'd') + if (head && DECL_P (head)) TB_SET_HEAD (DECL_CONTEXT (head)); - else if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 't' + else if (head && TYPE_P (head) && TYPE_CONTEXT (head)) TB_SET_HEAD (TYPE_CONTEXT (head)); else @@ -401,18 +401,18 @@ browse_tree (tree begin) break; case TB_UNIT_SIZE: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 'd') + if (head && DECL_P (head)) TB_SET_HEAD (DECL_SIZE_UNIT (head)); - else if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 't') + else if (head && TYPE_P (head)) TB_SET_HEAD (TYPE_SIZE_UNIT (head)); else TB_WF; break; case TB_SIZE: - if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 'd') + if (head && DECL_P (head)) TB_SET_HEAD (DECL_SIZE (head)); - else if (head && TREE_CODE_CLASS (TREE_CODE (head)) == 't') + else if (head && TYPE_P (head)) TB_SET_HEAD (TYPE_SIZE (head)); else TB_WF; @@ -441,32 +441,28 @@ browse_tree (tree begin) break; case TB_CHILD_0: - if (head && IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (head))) - && TREE_OPERAND (head, 0)) + if (head && EXPR_P (head) && TREE_OPERAND (head, 0)) TB_SET_HEAD (TREE_OPERAND (head, 0)); else TB_WF; break; case TB_CHILD_1: - if (head && IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (head))) - && TREE_OPERAND (head, 1)) + if (head && EXPR_P (head) && TREE_OPERAND (head, 1)) TB_SET_HEAD (TREE_OPERAND (head, 1)); else TB_WF; break; case TB_CHILD_2: - if (head && IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (head))) - && TREE_OPERAND (head, 2)) + if (head && EXPR_P (head) && TREE_OPERAND (head, 2)) TB_SET_HEAD (TREE_OPERAND (head, 2)); else TB_WF; break; case TB_CHILD_3: - if (head && IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (head))) - && TREE_OPERAND (head, 3)) + if (head && EXPR_P (head) && TREE_OPERAND (head, 3)) TB_SET_HEAD (TREE_OPERAND (head, 3)); else TB_WF; @@ -751,7 +747,7 @@ store_child_info (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED, node = *tp; /* 'node' is the parent of 'TREE_OPERAND (node, *)'. */ - if (TREE_CODE_CLASS (TREE_CODE (node)) == 'e') + if (EXPRESSION_CLASS_P (node)) { #define STORE_CHILD(N) do { \ @@ -808,7 +804,7 @@ TB_parent_eq (const void *p1, const void *p2) if (p1 == NULL || p2 == NULL) return 0; - if (TREE_CODE_CLASS(TREE_CODE(parent)) == 'e') + if (EXPRESSION_CLASS_P (parent)) { #define TEST_CHILD(N) do { \ diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index bdadb885e24..c48f47a9640 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -43,6 +43,7 @@ Boston, MA 02111-1307, USA. */ #include "toplev.h" #include "except.h" #include "cfgloop.h" +#include "cfglayout.h" /* This file contains functions for building the Control Flow Graph (CFG) for a function tree. */ @@ -1800,6 +1801,7 @@ remove_bb (basic_block bb) for (i = bsi_start (bb); !bsi_end_p (i); bsi_remove (&i)) { tree stmt = bsi_stmt (i); + release_defs (stmt); set_bb_for_stmt (stmt, NULL); @@ -2002,7 +2004,7 @@ find_taken_edge (basic_block bb, tree val) SSA_NAME, we can always determine its truth value (except when doing floating point comparisons that may involve NaNs). */ if (val - && TREE_CODE_CLASS (TREE_CODE (val)) == '<' + && COMPARISON_CLASS_P (val) && TREE_OPERAND (val, 0) == TREE_OPERAND (val, 1) && TREE_CODE (TREE_OPERAND (val, 0)) == SSA_NAME && (TREE_CODE (TREE_TYPE (TREE_OPERAND (val, 0))) != REAL_TYPE @@ -2666,7 +2668,9 @@ last_and_only_stmt (basic_block bb) void set_bb_for_stmt (tree t, basic_block bb) { - if (TREE_CODE (t) == STATEMENT_LIST) + if (TREE_CODE (t) == PHI_NODE) + PHI_BB (t) = bb; + else if (TREE_CODE (t) == STATEMENT_LIST) { tree_stmt_iterator i; for (i = tsi_start (t); !tsi_end_p (i); tsi_next (&i)) @@ -3025,7 +3029,11 @@ tree_split_edge (edge edge_in) after_bb = edge_in->src; new_bb = create_empty_bb (after_bb); + new_bb->frequency = EDGE_FREQUENCY (edge_in); + new_bb->count = edge_in->count; new_edge = make_edge (new_bb, dest, EDGE_FALLTHRU); + new_edge->probability = REG_BR_PROB_BASE; + new_edge->count = edge_in->count; /* Find all the PHI arguments on the original edge, and change them to the new edge. Do it before redirection, so that the argument does not @@ -3084,8 +3092,8 @@ verify_expr (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED) We check for constants explicitly since they are not considered gimple invariants if they overflowed. */ #define CHECK_OP(N, MSG) \ - do { if (TREE_CODE_CLASS (TREE_CODE (TREE_OPERAND (t, N))) != 'c' \ - && !is_gimple_val (TREE_OPERAND (t, N))) \ + do { if (!CONSTANT_CLASS_P (TREE_OPERAND (t, N)) \ + && !is_gimple_val (TREE_OPERAND (t, N))) \ { error (MSG); return TREE_OPERAND (t, N); }} while (0) switch (TREE_CODE (t)) @@ -3186,8 +3194,7 @@ verify_expr (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED) t = TREE_OPERAND (t, 0); } - if (TREE_CODE_CLASS (TREE_CODE (t)) != 'c' - && !is_gimple_lvalue (t)) + if (!CONSTANT_CLASS_P (t) && !is_gimple_lvalue (t)) { error ("Invalid reference prefix."); return t; @@ -3274,7 +3281,7 @@ verify_stmt (tree stmt, bool last_in_block) { if (!tree_could_throw_p (stmt)) { - error ("Statement marked for throw, but doesn't."); + error ("Statement marked for throw, but doesn%'t."); goto fail; } if (!last_in_block && tree_can_throw_internal (stmt)) @@ -3297,10 +3304,10 @@ verify_stmt (tree stmt, bool last_in_block) static bool tree_node_can_be_shared (tree t) { - if (TYPE_P (t) || DECL_P (t) + if (IS_TYPE_OR_DECL_P (t) /* We check for constants explicitly since they are not considered gimple invariants if they overflowed. */ - || TREE_CODE_CLASS (TREE_CODE (t)) == 'c' + || CONSTANT_CLASS_P (t) || is_gimple_min_invariant (t) || TREE_CODE (t) == SSA_NAME) return true; @@ -3308,7 +3315,7 @@ tree_node_can_be_shared (tree t) while (((TREE_CODE (t) == ARRAY_REF || TREE_CODE (t) == ARRAY_RANGE_REF) /* We check for constants explicitly since they are not considered gimple invariants if they overflowed. */ - && (TREE_CODE_CLASS (TREE_CODE (TREE_OPERAND (t, 1))) == 'c' + && (CONSTANT_CLASS_P (TREE_OPERAND (t, 1)) || is_gimple_min_invariant (TREE_OPERAND (t, 1)))) || (TREE_CODE (t) == COMPONENT_REF || TREE_CODE (t) == REALPART_EXPR @@ -3560,7 +3567,7 @@ tree_verify_flow_info (void) if (!has_label_p (true_edge->dest, GOTO_DESTINATION (COND_EXPR_THEN (stmt)))) { - error ("`then' label does not match edge at end of bb %d\n", + error ("% label does not match edge at end of bb %d\n", bb->index); err = 1; } @@ -3568,7 +3575,7 @@ tree_verify_flow_info (void) if (!has_label_p (false_edge->dest, GOTO_DESTINATION (COND_EXPR_ELSE (stmt)))) { - error ("`else' label does not match edge at end of bb %d\n", + error ("% label does not match edge at end of bb %d\n", bb->index); err = 1; } @@ -3873,6 +3880,9 @@ thread_jumps (void) forwardable. */ for (ix = 0; VEC_iterate (edge, bb->succs, ix, e); ) { + int freq; + gcov_type count; + /* If the edge is abnormal or its destination is not forwardable, then there's nothing to do. */ if ((e->flags & EDGE_ABNORMAL) @@ -3882,6 +3892,9 @@ thread_jumps (void) continue; } + count = e->count; + freq = EDGE_FREQUENCY (e); + /* Now walk through as many forwarder block as possible to find the ultimate destination we want to thread our jump to. */ @@ -3901,6 +3914,15 @@ thread_jumps (void) break; bb_ann (dest)->forwardable = 0; + dest->frequency -= freq; + if (dest->frequency < 0) + dest->frequency = 0; + dest->count -= count; + if (dest->count < 0) + dest->count = 0; + EDGE_SUCC (dest, 0)->count -= count; + if (EDGE_SUCC (dest, 0)->count < 0) + EDGE_SUCC (dest, 0)->count = 0; } /* Reset the forwardable marks to 1. */ @@ -3978,9 +4000,11 @@ thread_jumps (void) set_immediate_dominator (CDI_DOMINATORS, old_dest, bb); /* Now proceed like if we forwarded just over one edge at a time. - Algorithm for forwarding over edge A --> B then is + Algorithm for forwarding edge S --> A over edge A --> B then + is - if (idom (B) == A) + if (idom (B) == A + && !dominated_by (S, B)) idom (B) = idom (A); recount_idom (A); */ @@ -3988,7 +4012,8 @@ thread_jumps (void) { tmp = EDGE_SUCC (old_dest, 0)->dest; - if (get_immediate_dominator (CDI_DOMINATORS, tmp) == old_dest) + if (get_immediate_dominator (CDI_DOMINATORS, tmp) == old_dest + && !dominated_by_p (CDI_DOMINATORS, bb, tmp)) { dom = get_immediate_dominator (CDI_DOMINATORS, old_dest); set_immediate_dominator (CDI_DOMINATORS, tmp, dom); @@ -4247,7 +4272,6 @@ tree_can_duplicate_bb_p (basic_block bb ATTRIBUTE_UNUSED) return true; } - /* Create a duplicate of the basic block BB. NOTE: This does not preserve SSA form. */ @@ -4261,10 +4285,15 @@ tree_duplicate_bb (basic_block bb) new_bb = create_empty_bb (EXIT_BLOCK_PTR->prev_bb); + /* First copy the phi nodes. We do not copy phi node arguments here, + since the edges are not ready yet. Keep the chain of phi nodes in + the same order, so that we can add them later. */ for (phi = phi_nodes (bb); phi; phi = TREE_CHAIN (phi)) { mark_for_rewrite (PHI_RESULT (phi)); + create_phi_node (PHI_RESULT (phi), new_bb); } + set_phi_nodes (new_bb, nreverse (phi_nodes (new_bb))); bsi_tgt = bsi_start (new_bb); for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi)) @@ -4293,6 +4322,396 @@ tree_duplicate_bb (basic_block bb) return new_bb; } +/* Basic block BB_COPY was created by code duplication. Add phi node + arguments for edges going out of BB_COPY. The blocks that were + duplicated have rbi->duplicated set to one. */ + +void +add_phi_args_after_copy_bb (basic_block bb_copy) +{ + basic_block bb, dest; + edge e, e_copy; + edge_iterator ei; + tree phi, phi_copy, phi_next, def; + + bb = bb_copy->rbi->original; + + FOR_EACH_EDGE (e_copy, ei, bb_copy->succs) + { + if (!phi_nodes (e_copy->dest)) + continue; + + if (e_copy->dest->rbi->duplicated) + dest = e_copy->dest->rbi->original; + else + dest = e_copy->dest; + + e = find_edge (bb, dest); + if (!e) + { + /* During loop unrolling the target of the latch edge is copied. + In this case we are not looking for edge to dest, but to + duplicated block whose original was dest. */ + FOR_EACH_EDGE (e, ei, bb->succs) + if (e->dest->rbi->duplicated + && e->dest->rbi->original == dest) + break; + + gcc_assert (e != NULL); + } + + for (phi = phi_nodes (e->dest), phi_copy = phi_nodes (e_copy->dest); + phi; + phi = phi_next, phi_copy = TREE_CHAIN (phi_copy)) + { + phi_next = TREE_CHAIN (phi); + + gcc_assert (PHI_RESULT (phi) == PHI_RESULT (phi_copy)); + def = PHI_ARG_DEF_FROM_EDGE (phi, e); + add_phi_arg (&phi_copy, def, e_copy); + } + } +} + +/* Blocks in REGION_COPY array of length N_REGION were created by + duplication of basic blocks. Add phi node arguments for edges + going from these blocks. */ + +void +add_phi_args_after_copy (basic_block *region_copy, unsigned n_region) +{ + unsigned i; + + for (i = 0; i < n_region; i++) + region_copy[i]->rbi->duplicated = 1; + + for (i = 0; i < n_region; i++) + add_phi_args_after_copy_bb (region_copy[i]); + + for (i = 0; i < n_region; i++) + region_copy[i]->rbi->duplicated = 0; +} + +/* Maps the old ssa name FROM_NAME to TO_NAME. */ + +struct ssa_name_map_entry +{ + tree from_name; + tree to_name; +}; + +/* Hash function for ssa_name_map_entry. */ + +static hashval_t +ssa_name_map_entry_hash (const void *entry) +{ + const struct ssa_name_map_entry *en = entry; + return SSA_NAME_VERSION (en->from_name); +} + +/* Equality function for ssa_name_map_entry. */ + +static int +ssa_name_map_entry_eq (const void *in_table, const void *ssa_name) +{ + const struct ssa_name_map_entry *en = in_table; + + return en->from_name == ssa_name; +} + +/* Allocate duplicates of ssa names in list DEFINITIONS and store the mapping + to MAP. */ + +void +allocate_ssa_names (bitmap definitions, htab_t *map) +{ + tree name; + struct ssa_name_map_entry *entry; + PTR *slot; + unsigned ver; + + if (!*map) + *map = htab_create (10, ssa_name_map_entry_hash, + ssa_name_map_entry_eq, free); + EXECUTE_IF_SET_IN_BITMAP (definitions, 0, ver, + { + name = ssa_name (ver); + slot = htab_find_slot_with_hash (*map, name, SSA_NAME_VERSION (name), + INSERT); + if (*slot) + entry = *slot; + else + { + entry = xmalloc (sizeof (struct ssa_name_map_entry)); + entry->from_name = name; + *slot = entry; + } + entry->to_name = duplicate_ssa_name (name, SSA_NAME_DEF_STMT (name)); + }); +} + +/* Rewrite the definition DEF in statement STMT to new ssa name as specified + by the mapping MAP. */ + +static void +rewrite_to_new_ssa_names_def (def_operand_p def, tree stmt, htab_t map) +{ + tree name = DEF_FROM_PTR (def); + struct ssa_name_map_entry *entry; + + gcc_assert (TREE_CODE (name) == SSA_NAME); + + entry = htab_find_with_hash (map, name, SSA_NAME_VERSION (name)); + if (!entry) + return; + + SET_DEF (def, entry->to_name); + SSA_NAME_DEF_STMT (entry->to_name) = stmt; +} + +/* Rewrite the USE to new ssa name as specified by the mapping MAP. */ + +static void +rewrite_to_new_ssa_names_use (use_operand_p use, htab_t map) +{ + tree name = USE_FROM_PTR (use); + struct ssa_name_map_entry *entry; + + if (TREE_CODE (name) != SSA_NAME) + return; + + entry = htab_find_with_hash (map, name, SSA_NAME_VERSION (name)); + if (!entry) + return; + + SET_USE (use, entry->to_name); +} + +/* Rewrite the ssa names in basic block BB to new ones as specified by the + mapping MAP. */ + +void +rewrite_to_new_ssa_names_bb (basic_block bb, htab_t map) +{ + unsigned i; + edge e; + edge_iterator ei; + tree phi, stmt; + block_stmt_iterator bsi; + use_optype uses; + vuse_optype vuses; + def_optype defs; + v_may_def_optype v_may_defs; + v_must_def_optype v_must_defs; + stmt_ann_t ann; + + FOR_EACH_EDGE (e, ei, bb->preds) + if (e->flags & EDGE_ABNORMAL) + break; + + for (phi = phi_nodes (bb); phi; phi = TREE_CHAIN (phi)) + { + rewrite_to_new_ssa_names_def (PHI_RESULT_PTR (phi), phi, map); + if (e) + SSA_NAME_OCCURS_IN_ABNORMAL_PHI (PHI_RESULT (phi)) = 1; + } + + for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi)) + { + stmt = bsi_stmt (bsi); + get_stmt_operands (stmt); + ann = stmt_ann (stmt); + + uses = USE_OPS (ann); + for (i = 0; i < NUM_USES (uses); i++) + rewrite_to_new_ssa_names_use (USE_OP_PTR (uses, i), map); + + defs = DEF_OPS (ann); + for (i = 0; i < NUM_DEFS (defs); i++) + rewrite_to_new_ssa_names_def (DEF_OP_PTR (defs, i), stmt, map); + + vuses = VUSE_OPS (ann); + for (i = 0; i < NUM_VUSES (vuses); i++) + rewrite_to_new_ssa_names_use (VUSE_OP_PTR (vuses, i), map); + + v_may_defs = V_MAY_DEF_OPS (ann); + for (i = 0; i < NUM_V_MAY_DEFS (v_may_defs); i++) + { + rewrite_to_new_ssa_names_use + (V_MAY_DEF_OP_PTR (v_may_defs, i), map); + rewrite_to_new_ssa_names_def + (V_MAY_DEF_RESULT_PTR (v_may_defs, i), stmt, map); + } + + v_must_defs = V_MUST_DEF_OPS (ann); + for (i = 0; i < NUM_V_MUST_DEFS (v_must_defs); i++) + rewrite_to_new_ssa_names_def + (V_MUST_DEF_OP_PTR (v_must_defs, i), stmt, map); + } + + FOR_EACH_EDGE (e, ei, bb->succs) + for (phi = phi_nodes (e->dest); phi; phi = TREE_CHAIN (phi)) + { + rewrite_to_new_ssa_names_use + (PHI_ARG_DEF_PTR_FROM_EDGE (phi, e), map); + + if (e->flags & EDGE_ABNORMAL) + { + tree op = PHI_ARG_DEF_FROM_EDGE (phi, e); + SSA_NAME_OCCURS_IN_ABNORMAL_PHI (op) = 1; + } + } +} + +/* Rewrite the ssa names in N_REGION blocks REGION to the new ones as specified + by the mapping MAP. */ + +void +rewrite_to_new_ssa_names (basic_block *region, unsigned n_region, htab_t map) +{ + unsigned r; + + for (r = 0; r < n_region; r++) + rewrite_to_new_ssa_names_bb (region[r], map); +} + +/* Duplicates a REGION (set of N_REGION basic blocks) with just a single + important exit edge EXIT. By important we mean that no SSA name defined + inside region is live over the other exit edges of the region. All entry + edges to the region must go to ENTRY->dest. The edge ENTRY is redirected + to the duplicate of the region. SSA form, dominance and loop information + is updated. The new basic blocks are stored to REGION_COPY in the same + order as they had in REGION, provided that REGION_COPY is not NULL. + The function returns false if it is unable to copy the region, + true otherwise. */ + +bool +tree_duplicate_sese_region (edge entry, edge exit, + basic_block *region, unsigned n_region, + basic_block *region_copy) +{ + unsigned i, n_doms, ver; + bool free_region_copy = false, copying_header = false; + struct loop *loop = entry->dest->loop_father; + edge exit_copy; + bitmap definitions; + tree phi, var; + basic_block *doms; + htab_t ssa_name_map = NULL; + edge redirected; + + if (!can_copy_bbs_p (region, n_region)) + return false; + + /* Some sanity checking. Note that we do not check for all possible + missuses of the functions. I.e. if you ask to copy something weird, + it will work, but the state of structures probably will not be + correct. */ + + for (i = 0; i < n_region; i++) + { + /* We do not handle subloops, i.e. all the blocks must belong to the + same loop. */ + if (region[i]->loop_father != loop) + return false; + + if (region[i] != entry->dest + && region[i] == loop->header) + return false; + } + + loop->copy = loop; + + /* In case the function is used for loop header copying (which is the primary + use), ensure that EXIT and its copy will be new latch and entry edges. */ + if (loop->header == entry->dest) + { + copying_header = true; + loop->copy = loop->outer; + + if (!dominated_by_p (CDI_DOMINATORS, loop->latch, exit->src)) + return false; + + for (i = 0; i < n_region; i++) + if (region[i] != exit->src + && dominated_by_p (CDI_DOMINATORS, region[i], exit->src)) + return false; + } + + if (!region_copy) + { + region_copy = xmalloc (sizeof (basic_block) * n_region); + free_region_copy = true; + } + + gcc_assert (!any_marked_for_rewrite_p ()); + + /* Record blocks outside the region that are duplicated by something + inside. */ + doms = xmalloc (sizeof (basic_block) * n_basic_blocks); + n_doms = get_dominated_by_region (CDI_DOMINATORS, region, n_region, doms); + + copy_bbs (region, n_region, region_copy, &exit, 1, &exit_copy, loop); + definitions = marked_ssa_names (); + + if (copying_header) + { + loop->header = exit->dest; + loop->latch = exit->src; + } + + /* Redirect the entry and add the phi node arguments. */ + redirected = redirect_edge_and_branch (entry, entry->dest->rbi->copy); + gcc_assert (redirected != NULL); + for (phi = phi_nodes (entry->dest), var = PENDING_STMT (entry); + phi; + phi = TREE_CHAIN (phi), var = TREE_CHAIN (var)) + add_phi_arg (&phi, TREE_VALUE (var), entry); + PENDING_STMT (entry) = NULL; + + /* Concerning updating of dominators: We must recount dominators + for entry block and its copy. Anything that is outside of the region, but + was dominated by something inside needs recounting as well. */ + set_immediate_dominator (CDI_DOMINATORS, entry->dest, entry->src); + doms[n_doms++] = entry->dest->rbi->original; + iterate_fix_dominators (CDI_DOMINATORS, doms, n_doms); + free (doms); + + /* Add the other phi node arguments. */ + add_phi_args_after_copy (region_copy, n_region); + + /* Add phi nodes for definitions at exit. TODO -- once we have immediate + uses, it should be possible to emit phi nodes just for definitions that + are used outside region. */ + EXECUTE_IF_SET_IN_BITMAP (definitions, 0, ver, + { + tree name = ssa_name (ver); + + phi = create_phi_node (name, exit->dest); + add_phi_arg (&phi, name, exit); + add_phi_arg (&phi, name, exit_copy); + + SSA_NAME_DEF_STMT (name) = phi; + }); + + /* And create new definitions inside region and its copy. TODO -- once we + have immediate uses, it might be better to leave definitions in region + unchanged, create new ssa names for phi nodes on exit, and rewrite + the uses, to avoid changing the copied region. */ + allocate_ssa_names (definitions, &ssa_name_map); + rewrite_to_new_ssa_names (region, n_region, ssa_name_map); + allocate_ssa_names (definitions, &ssa_name_map); + rewrite_to_new_ssa_names (region_copy, n_region, ssa_name_map); + htab_delete (ssa_name_map); + + if (free_region_copy) + free (region_copy); + + unmark_all_for_rewrite (); + BITMAP_XFREE (definitions); + + return true; +} /* Dump FUNCTION_DECL FN to file FILE using FLAGS (see TDF_* in tree.h) */ @@ -4858,7 +5277,8 @@ execute_warn_function_return (void) && !TREE_THIS_VOLATILE (cfun->decl) && EDGE_COUNT (EXIT_BLOCK_PTR->preds) == 0 && !lang_hooks.function.missing_noreturn_ok_p (cfun->decl)) - warning ("%Jfunction might be possible candidate for attribute `noreturn'", + warning ("%Jfunction might be possible candidate for " + "attribute %", cfun->decl); /* If we have a path to EXIT, then we do return. */ @@ -4885,11 +5305,11 @@ execute_warn_function_return (void) #ifdef USE_MAPPED_LOCATION if (location == UNKNOWN_LOCATION) location = cfun->function_end_locus; - warning ("%H`noreturn' function does return", &location); + warning ("%H% function does return", &location); #else if (!locus) locus = &cfun->function_end_locus; - warning ("%H`noreturn' function does return", locus); + warning ("%H% function does return", locus); #endif } diff --git a/gcc/tree-chrec.c b/gcc/tree-chrec.c index 0929f69d6df..47419c2c3d7 100644 --- a/gcc/tree-chrec.c +++ b/gcc/tree-chrec.c @@ -932,7 +932,7 @@ chrec_convert (tree type, /* Don't propagate overflows. */ TREE_OVERFLOW (res) = 0; - if (TREE_CODE_CLASS (TREE_CODE (res)) == 'c') + if (CONSTANT_CLASS_P (res)) TREE_CONSTANT_OVERFLOW (res) = 0; return res; } @@ -949,21 +949,3 @@ chrec_type (tree chrec) return TREE_TYPE (chrec); } - -extern void initialize_scalar_evolutions_analyzer (void); - -/* Initializer. */ - -void -initialize_scalar_evolutions_analyzer (void) -{ - /* The elements below are unique. */ - if (chrec_dont_know == NULL_TREE) - { - chrec_not_analyzed_yet = NULL_TREE; - chrec_dont_know = make_node (SCEV_NOT_KNOWN); - chrec_known = make_node (SCEV_KNOWN); - TREE_TYPE (chrec_dont_know) = NULL_TREE; - TREE_TYPE (chrec_known) = NULL_TREE; - } -} diff --git a/gcc/tree-complex.c b/gcc/tree-complex.c index 363e3a2d578..5a4fdf5a668 100644 --- a/gcc/tree-complex.c +++ b/gcc/tree-complex.c @@ -425,7 +425,7 @@ expand_complex_operations_1 (block_stmt_iterator *bsi) ar = extract_component (bsi, ac, 0); ai = extract_component (bsi, ac, 1); - if (TREE_CODE_CLASS (code) == '1') + if (TREE_CODE_CLASS (code) == tcc_unary) bc = br = bi = NULL; else { @@ -776,8 +776,8 @@ expand_vector_operations_1 (block_stmt_iterator *bsi) return; code = TREE_CODE (rhs); - if (TREE_CODE_CLASS (code) != '1' - && TREE_CODE_CLASS (code) != '2') + if (TREE_CODE_CLASS (code) != tcc_unary + && TREE_CODE_CLASS (code) != tcc_binary) return; if (code == NOP_EXPR || code == VIEW_CONVERT_EXPR) @@ -872,7 +872,7 @@ expand_vector_operations_1 (block_stmt_iterator *bsi) break; } - if (TREE_CODE_CLASS (code) == '1') + if (TREE_CODE_CLASS (code) == tcc_unary) *p_rhs = expand_vector_piecewise (bsi, do_unop, type, compute_type, TREE_OPERAND (rhs, 0), NULL_TREE, code); diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c index db5dea62829..3436c3d33d2 100644 --- a/gcc/tree-data-ref.c +++ b/gcc/tree-data-ref.c @@ -146,7 +146,7 @@ array_base_name_differ_p (struct data_reference *a, /* at this point we know that base_a != base_b. However, pointer accesses of the form x=(*p) and y=(*q), which bases are p and q, may still by pointing to the same base. In SSAed GIMPLE p and q will be SSA_NAMES in this case. - Therefore, here we check if it's really two diferent declarations. */ + Therefore, here we check if it's really two different declarations. */ if (TREE_CODE (base_a) == VAR_DECL && TREE_CODE (base_b) == VAR_DECL) { *differ_p = true; @@ -492,8 +492,8 @@ dump_data_dependence_direction (FILE *file, /* Given an ARRAY_REF node REF, records its access functions. Example: given A[i][3], record in ACCESS_FNS the opnd1 function, - ie. the constant "3", then recursively call the function on opnd0, - ie. the ARRAY_REF "A[i]". The function returns the base name: + i.e. the constant "3", then recursively call the function on opnd0, + i.e. the ARRAY_REF "A[i]". The function returns the base name: "A". */ static tree @@ -525,7 +525,7 @@ analyze_array_indexes (struct loop *loop, return opnd0; } -/* For a data reference REF contained in the statemet STMT, initialize +/* For a data reference REF contained in the statement STMT, initialize a DATA_REFERENCE structure, and return it. IS_READ flag has to be set to true when REF is in the right hand side of an assignment. */ @@ -558,7 +558,7 @@ analyze_array (tree stmt, tree ref, bool is_read) return res; } -/* For a data reference REF contained in the statemet STMT, initialize +/* For a data reference REF contained in the statement STMT, initialize a DATA_REFERENCE structure, and return it. */ struct data_reference * @@ -958,7 +958,7 @@ analyze_subscript_affine_affine (tree chrec_a, For answering to the question: "Is there a dependence?" we have to prove that there exists a solution to the Diophantine equation, and that the solution is in the iteration domain, - ie. the solution is positive or zero, and that the solution + i.e. the solution is positive or zero, and that the solution happens before the upper bound loop.nb_iterations. Otherwise there is no dependence. This function outputs a description of the iterations that hold the intersections. */ @@ -1049,7 +1049,7 @@ analyze_subscript_affine_affine (tree chrec_a, if (!tree_fold_divides_p (integer_type_node, gcd_alpha_beta, gamma)) { /* The "gcd-test" has determined that there is no integer - solution, ie. there is no dependence. */ + solution, i.e. there is no dependence. */ *overlaps_a = chrec_known; *overlaps_b = chrec_known; } @@ -1717,7 +1717,7 @@ compute_affine_dependence (struct data_dependence_relation *ddr) /* Compute a subset of the data dependence relation graph. Don't compute read-read relations, and avoid the computation of the - opposite relation, ie. when AB has been computed, don't compute BA. + opposite relation, i.e. when AB has been computed, don't compute BA. DATAREFS contains a list of data references, and the result is set in DEPENDENCE_RELATIONS. */ diff --git a/gcc/tree-data-ref.h b/gcc/tree-data-ref.h index 5dacb3ec75f..8caafa43ffd 100644 --- a/gcc/tree-data-ref.h +++ b/gcc/tree-data-ref.h @@ -86,7 +86,7 @@ struct subscript /* Distance from the iteration that access a conflicting element in A to the iteration that access this same conflicting element in - B. The distance is a tree scalar expression, ie. a constant or a + B. The distance is a tree scalar expression, i.e. a constant or a symbolic expression, but certainly not a chrec function. */ tree distance; }; diff --git a/gcc/tree-dfa.c b/gcc/tree-dfa.c index 3ceb60afd3b..4e65c5dffc8 100644 --- a/gcc/tree-dfa.c +++ b/gcc/tree-dfa.c @@ -45,6 +45,7 @@ Boston, MA 02111-1307, USA. */ #include "tree-pass.h" #include "convert.h" #include "params.h" +#include "cgraph.h" /* Build and maintain data flow information for trees. */ @@ -107,6 +108,7 @@ find_referenced_vars (void) block_stmt_iterator si; struct walk_state walk_state; + cgraph_reset_static_var_maps (); vars_found = htab_create (50, htab_hash_pointer, htab_eq_pointer, NULL); memset (&walk_state, 0, sizeof (walk_state)); walk_state.vars_found = vars_found; @@ -186,28 +188,46 @@ compute_immediate_uses (int flags, bool (*calc_for)(tree)) } -/* Invalidates dataflow information for a statement STMT. */ +/* Invalidates dataflow information for a statement STMT. */ -static void +void free_df_for_stmt (tree stmt) { - stmt_ann_t ann = stmt_ann (stmt); + dataflow_t *df; - if (ann && ann->df) + if (TREE_CODE (stmt) == PHI_NODE) + df = &PHI_DF (stmt); + else { - /* If we have a varray of immediate uses, then go ahead and release - it for re-use. */ - if (ann->df->immediate_uses) - ggc_free (ann->df->immediate_uses); - - /* Similarly for the main dataflow structure. */ - ggc_free (ann->df); - ann->df = NULL; + stmt_ann_t ann = stmt_ann (stmt); + + if (!ann) + return; + + df = &ann->df; } + + if (!*df) + return; + + /* If we have a varray of immediate uses, then go ahead and release + it for re-use. */ + if ((*df)->immediate_uses) + ggc_free ((*df)->immediate_uses); + + /* Similarly for the main dataflow structure. */ + ggc_free (*df); + *df = NULL; } -/* Invalidate dataflow information for the whole function. */ +/* Invalidate dataflow information for the whole function. + + Note this only invalidates dataflow information on statements and + PHI nodes which are reachable. + + A deleted statement may still have attached dataflow information + on it. */ void free_df (void) @@ -302,28 +322,34 @@ compute_immediate_uses_for_stmt (tree stmt, int flags, bool (*calc_for)(tree)) static void add_immediate_use (tree stmt, tree use_stmt) { - stmt_ann_t ann = get_stmt_ann (stmt); - struct dataflow_d *df; + struct dataflow_d **df; + + if (TREE_CODE (stmt) == PHI_NODE) + df = &PHI_DF (stmt); + else + { + stmt_ann_t ann = get_stmt_ann (stmt); + df = &ann->df; + } - df = ann->df; - if (df == NULL) + if (*df == NULL) { - df = ann->df = ggc_alloc (sizeof (struct dataflow_d)); - memset ((void *) df, 0, sizeof (struct dataflow_d)); - df->uses[0] = use_stmt; + *df = ggc_alloc (sizeof (struct dataflow_d)); + memset ((void *) *df, 0, sizeof (struct dataflow_d)); + (*df)->uses[0] = use_stmt; return; } - if (!df->uses[1]) + if (!(*df)->uses[1]) { - df->uses[1] = use_stmt; + (*df)->uses[1] = use_stmt; return; } - if (ann->df->immediate_uses == NULL) - VARRAY_TREE_INIT (ann->df->immediate_uses, 4, "immediate_uses"); + if ((*df)->immediate_uses == NULL) + VARRAY_TREE_INIT ((*df)->immediate_uses, 4, "immediate_uses"); - VARRAY_PUSH_TREE (ann->df->immediate_uses, use_stmt); + VARRAY_PUSH_TREE ((*df)->immediate_uses, use_stmt); } @@ -333,7 +359,7 @@ static void redirect_immediate_use (tree use, tree old, tree new) { tree imm_stmt = SSA_NAME_DEF_STMT (use); - struct dataflow_d *df = get_stmt_ann (imm_stmt)->df; + struct dataflow_d *df = get_immediate_uses (imm_stmt); unsigned int num_uses = num_immediate_uses (df); unsigned int i; @@ -508,6 +534,9 @@ dump_variable (FILE *file, tree var) fprintf (file, ", UID %u", (unsigned) ann->uid); + fprintf (file, ", "); + print_generic_expr (file, TREE_TYPE (var), dump_flags); + if (ann->type_mem_tag) { fprintf (file, ", type memory tag: "); @@ -818,9 +847,7 @@ find_vars_r (tree *tp, int *walk_subtrees, void *data) /* Type, _DECL and constant nodes have no interesting children. Ignore them. */ - else if (DECL_P (*tp) - || TYPE_P (*tp) - || TREE_CODE_CLASS (TREE_CODE (*tp)) == 'c') + else if (IS_TYPE_OR_DECL_P (*tp) || CONSTANT_CLASS_P (*tp)) *walk_subtrees = 0; return NULL_TREE; diff --git a/gcc/tree-dump.c b/gcc/tree-dump.c index c09fc531a55..d8d370fc304 100644 --- a/gcc/tree-dump.c +++ b/gcc/tree-dump.c @@ -216,7 +216,7 @@ dequeue_and_dump (dump_info_p di) tree t; unsigned int index; enum tree_code code; - char code_class; + enum tree_code_class code_class; const char* code_name; /* Get the next node from the queue. */ @@ -292,19 +292,19 @@ dequeue_and_dump (dump_info_p di) switch (code_class) { - case '1': + case tcc_unary: dump_child ("op 0", TREE_OPERAND (t, 0)); break; - case '2': - case '<': + case tcc_binary: + case tcc_comparison: dump_child ("op 0", TREE_OPERAND (t, 0)); dump_child ("op 1", TREE_OPERAND (t, 1)); break; - case 'e': - case 'r': - case 's': + case tcc_expression: + case tcc_reference: + case tcc_statement: /* These nodes are handled explicitly below. */ break; @@ -346,7 +346,7 @@ dequeue_and_dump (dump_info_p di) if (TREE_CHAIN (t) && !dump_flag (di, TDF_SLIM, NULL)) dump_child ("chan", TREE_CHAIN (t)); } - else if (code_class == 't') + else if (code_class == tcc_type) { /* All types have qualifiers. */ int quals = lang_hooks.tree_dump.type_quals (t); @@ -373,7 +373,7 @@ dequeue_and_dump (dump_info_p di) /* All types have alignments. */ dump_int (di, "algn", TYPE_ALIGN (t)); } - else if (code_class == 'c') + else if (code_class == tcc_constant) /* All constants can have types. */ queue_and_dump_type (di, t); @@ -673,10 +673,11 @@ static struct dump_file_info dump_files[TDI_end] = {".nested", "tree-nested", TDF_TREE, 0, 4, 0}, {".inlined", "tree-inlined", TDF_TREE, 0, 5, 0}, {".vcg", "tree-vcg", TDF_TREE, 0, 6, 0}, - /* FIXME -fdump-call-graph is broken. Set TDF_TREE when it is fixed. */ - {".xml", "call-graph", 0, 0, 7, 0}, {NULL, "tree-all", TDF_TREE, 0, 0, 0}, {NULL, "rtl-all", TDF_RTL, 0, 0, 0}, + {NULL, "ipa-all", TDF_IPA, 0, 0, 0}, + + { ".cgraph", "ipa-cgraph", TDF_IPA, 0, 1, 0}, { ".sibling", "rtl-sibling", TDF_RTL, 0, 1, 'i'}, { ".eh", "rtl-eh", TDF_RTL, 0, 2, 'h'}, @@ -803,10 +804,21 @@ get_dump_file_name (enum tree_dump_index phase) if (dfi->state == 0) return NULL; - if (dfi->num < 0 - || snprintf (dump_id, sizeof (dump_id), ".%s%02d", - (dfi->flags & TDF_TREE) ? "t" : "", dfi->num) < 0) + if (dfi->num < 0) dump_id[0] = '\0'; + else + { + const char *template; + if (dfi->flags & TDF_TREE) + template = ".t%02d"; + else if (dfi->flags & TDF_IPA) + template = ".i%02d"; + else + template = ".%02d"; + + if (snprintf (dump_id, sizeof (dump_id), template, dfi->num) < 0) + dump_id[0] = '\0'; + } return concat (dump_base_name, dump_id, dfi->suffix, NULL); } @@ -830,7 +842,7 @@ dump_begin (enum tree_dump_index phase, int *flag_ptr) dfi = get_dump_file_info (phase); stream = fopen (name, dfi->state < 0 ? "w" : "a"); if (!stream) - error ("could not open dump file `%s': %s", name, strerror (errno)); + error ("could not open dump file %qs: %s", name, strerror (errno)); else dfi->state = 1; free (name); @@ -943,7 +955,7 @@ dump_switch_p_1 (const char *arg, struct dump_file_info *dfi) flags |= option_ptr->value; goto found; } - warning ("ignoring unknown option `%.*s' in `-fdump-%s'", + warning ("ignoring unknown option %q.*s in %<-fdump-%s%>", length, ptr, dfi->swtch); found:; ptr = end_ptr; diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c index 008632de728..b7bc7c3221b 100644 --- a/gcc/tree-eh.c +++ b/gcc/tree-eh.c @@ -1,5 +1,5 @@ /* Exception handling semantics and decomposition for trees. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2004 Free Software Foundation, Inc. This file is part of GCC. @@ -1719,9 +1719,9 @@ tree_could_trap_p (tree expr) bool honor_trapv = false; tree t, base, idx; - if (TREE_CODE_CLASS (code) == '<' - || TREE_CODE_CLASS (code) == '1' - || TREE_CODE_CLASS (code) == '2') + if (TREE_CODE_CLASS (code) == tcc_comparison + || TREE_CODE_CLASS (code) == tcc_unary + || TREE_CODE_CLASS (code) == tcc_binary) { t = TREE_TYPE (expr); fp_operation = FLOAT_TYPE_P (t); diff --git a/gcc/tree-flow-inline.h b/gcc/tree-flow-inline.h index cd2bf9ec082..61ed11268f7 100644 --- a/gcc/tree-flow-inline.h +++ b/gcc/tree-flow-inline.h @@ -78,7 +78,12 @@ ann_type (tree_ann_t ann) static inline basic_block bb_for_stmt (tree t) { - stmt_ann_t ann = stmt_ann (t); + stmt_ann_t ann; + + if (TREE_CODE (t) == PHI_NODE) + return PHI_BB (t); + + ann = stmt_ann (t); return ann ? ann->bb : NULL; } @@ -305,7 +310,12 @@ addresses_taken (tree stmt) static dataflow_t get_immediate_uses (tree stmt) { - stmt_ann_t ann = stmt_ann (stmt); + stmt_ann_t ann; + + if (TREE_CODE (stmt) == PHI_NODE) + return PHI_DF (stmt); + + ann = stmt_ann (stmt); return ann ? ann->df : NULL; } diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h index 837aaf9420a..bdcd4aa6879 100644 --- a/gcc/tree-flow.h +++ b/gcc/tree-flow.h @@ -28,6 +28,7 @@ Boston, MA 02111-1307, USA. */ #include "hashtab.h" #include "tree-gimple.h" #include "tree-ssa-operands.h" +#include "cgraph.h" /* Forward declare structures for the garbage collector GTY markers. */ #ifndef GCC_BASIC_BLOCK_H @@ -199,6 +200,11 @@ struct var_ann_d GTY(()) live at the same time and this can happen for each call to the dominator optimizer. */ tree current_def; + + /* Pointer to the structure that contains the sets of global + variables modified by function calls. This field is only used + for FUNCTION_DECLs. */ + static_vars_info_t static_vars_info; }; @@ -489,6 +495,13 @@ extern void clear_special_calls (void); extern void verify_stmts (void); extern tree tree_block_label (basic_block bb); extern void extract_true_false_edges_from_block (basic_block, edge *, edge *); +extern bool tree_duplicate_sese_region (edge, edge, basic_block *, unsigned, + basic_block *); +extern void add_phi_args_after_copy_bb (basic_block); +extern void add_phi_args_after_copy (basic_block *, unsigned); +extern void rewrite_to_new_ssa_names_bb (basic_block, struct htab *); +extern void rewrite_to_new_ssa_names (basic_block *, unsigned, htab_t); +extern void allocate_ssa_names (bitmap, struct htab **); extern bool tree_purge_dead_eh_edges (basic_block); extern bool tree_purge_all_dead_eh_edges (bitmap); extern tree gimplify_val (block_stmt_iterator *, tree, tree); @@ -524,6 +537,7 @@ extern void dump_immediate_uses_for (FILE *, tree); extern void debug_immediate_uses_for (tree); extern void compute_immediate_uses (int, bool (*)(tree)); extern void free_df (void); +extern void free_df_for_stmt (tree); extern tree get_virtual_var (tree); extern void add_referenced_tmp_var (tree var); extern void mark_new_vars_to_rename (tree, bitmap); @@ -601,7 +615,7 @@ extern bool may_propagate_copy (tree, tree); struct tree_niter_desc { - tree assumptions; /* The boolean expression. If this expression evalutes + tree assumptions; /* The boolean expression. If this expression evaluates to false, then the other fields in this structure should not be used; there is no guarantee that they will be correct. */ diff --git a/gcc/tree-gimple.c b/gcc/tree-gimple.c index 9211a65f164..d9fe0205b3c 100644 --- a/gcc/tree-gimple.c +++ b/gcc/tree-gimple.c @@ -201,9 +201,9 @@ is_gimple_formal_tmp_rhs (tree t) switch (TREE_CODE_CLASS (code)) { - case '1': - case '2': - case '<': + case tcc_unary: + case tcc_binary: + case tcc_comparison: return true; default: @@ -312,8 +312,7 @@ is_gimple_lvalue (tree t) bool is_gimple_condexpr (tree t) { - return (is_gimple_val (t) - || TREE_CODE_CLASS (TREE_CODE (t)) == '<'); + return (is_gimple_val (t) || COMPARISON_CLASS_P (t)); } /* Return true if T is something whose address can be taken. */ @@ -579,7 +578,7 @@ recalculate_side_effects (tree t) switch (TREE_CODE_CLASS (code)) { - case 'e': + case tcc_expression: switch (code) { case INIT_EXPR: @@ -598,10 +597,10 @@ recalculate_side_effects (tree t) } /* Fall through. */ - case '<': /* a comparison expression */ - case '1': /* a unary arithmetic expression */ - case '2': /* a binary arithmetic expression */ - case 'r': /* a reference */ + case tcc_comparison: /* a comparison expression */ + case tcc_unary: /* a unary arithmetic expression */ + case tcc_binary: /* a binary arithmetic expression */ + case tcc_reference: /* a reference */ TREE_SIDE_EFFECTS (t) = TREE_THIS_VOLATILE (t); for (i = 0; i < fro; ++i) { @@ -610,5 +609,9 @@ recalculate_side_effects (tree t) TREE_SIDE_EFFECTS (t) = 1; } break; + + default: + /* Can never be used with non-expressions. */ + gcc_unreachable (); } } diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index 6286f8ab380..707faaf75a3 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -619,6 +619,16 @@ copy_body_r (tree *tp, int *walk_subtrees, void *data) TREE_OPERAND (*tp, 1) = TREE_OPERAND (*tp, 3); TREE_OPERAND (*tp, 3) = NULL_TREE; } + + /* Variable substitution need not be simple. In particular, the + INDIRECT_REF substitution above. Make sure that TREE_CONSTANT + and friends are up-to-date. */ + else if (TREE_CODE (*tp) == ADDR_EXPR) + { + walk_tree (&TREE_OPERAND (*tp, 0), copy_body_r, id, NULL); + recompute_tree_invarant_for_addr_expr (*tp); + *walk_subtrees = 0; + } } /* Keep iterating. */ @@ -1149,7 +1159,7 @@ estimate_num_insns_1 (tree *tp, int *walk_subtrees, void *data) int *count = data; tree x = *tp; - if (TYPE_P (x) || DECL_P (x)) + if (IS_TYPE_OR_DECL_P (x)) { *walk_subtrees = 0; return NULL; @@ -1157,8 +1167,7 @@ estimate_num_insns_1 (tree *tp, int *walk_subtrees, void *data) /* Assume that constants and references counts nothing. These should be majorized by amount of operations among them we count later and are common target of CSE and similar optimizations. */ - else if (TREE_CODE_CLASS (TREE_CODE (x)) == 'c' - || TREE_CODE_CLASS (TREE_CODE (x)) == 'r') + else if (CONSTANT_CLASS_P (x) || REFERENCE_CLASS_P (x)) return NULL; switch (TREE_CODE (x)) @@ -2248,7 +2257,7 @@ copy_tree_r (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED) /* We make copies of most nodes. */ if (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (code)) - || TREE_CODE_CLASS (code) == 'c' + || TREE_CODE_CLASS (code) == tcc_constant || code == TREE_LIST || code == TREE_VEC || code == TYPE_DECL) @@ -2278,9 +2287,9 @@ copy_tree_r (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED) BIND_EXPR_BLOCK (*tp) = NULL_TREE; } - else if (TREE_CODE_CLASS (code) == 't') + else if (TREE_CODE_CLASS (code) == tcc_type) *walk_subtrees = 0; - else if (TREE_CODE_CLASS (code) == 'd') + else if (TREE_CODE_CLASS (code) == tcc_declaration) *walk_subtrees = 0; else gcc_assert (code != STATEMENT_LIST); diff --git a/gcc/tree-into-ssa.c b/gcc/tree-into-ssa.c index 1953455f03e..f72dc85f3c3 100644 --- a/gcc/tree-into-ssa.c +++ b/gcc/tree-into-ssa.c @@ -83,6 +83,34 @@ struct def_blocks_d computing PHI pruning heuristics. */ static htab_t def_blocks; +/* Stack of trees used to restore the global currdefs to its original + state after completing rewriting of a block and its dominator children. + + This varray is used in two contexts. The first is rewriting of _DECL + nodes into SSA_NAMEs. In that context it's elements have the + following properties: + + An SSA_NAME indicates that the current definition of the underlying + variable should be set to the given SSA_NAME. + + A _DECL node indicates that the underlying variable has no current + definition. + + A NULL node is used to mark the last node associated with the + current block. + + + This varray is also used when rewriting an SSA_NAME which has multiple + definition sites into multiple SSA_NAMEs. In that context entries come + in pairs. + + The top entry is an SSA_NAME and the top-1 entry is the + current value for that SSA_NAME. + + A NULL node at the top entry is used to mark the last node associated + with the current block. */ +static varray_type block_defs_stack; + /* Global data to attach to the main dominator walk structure. */ struct mark_def_sites_global_data { @@ -96,11 +124,6 @@ struct mark_def_sites_global_data sbitmap names_to_rename; }; -struct rewrite_block_data -{ - varray_type block_defs; -}; - /* Information stored for ssa names. */ struct ssa_name_info @@ -116,8 +139,6 @@ struct ssa_name_info /* Local functions. */ static void rewrite_finalize_block (struct dom_walk_data *, basic_block); -static void rewrite_initialize_block_local_data (struct dom_walk_data *, - basic_block, bool); static void rewrite_initialize_block (struct dom_walk_data *, basic_block); static void rewrite_add_phi_arguments (struct dom_walk_data *, basic_block); static void mark_def_sites (struct dom_walk_data *walk_data, @@ -638,44 +659,23 @@ insert_phi_nodes (bitmap *dfs, bitmap names_to_rename) definitions are restored to the names that were valid in the dominator parent of BB. */ -/* Initialize the local stacks. - - BLOCK_DEFS is used to save all the existing reaching definitions for - the new SSA names introduced in this block. Before registering a - new definition for a variable, the existing reaching definition is - pushed into this stack so that we can restore it in Step 5. */ - -static void -rewrite_initialize_block_local_data (struct dom_walk_data *walk_data ATTRIBUTE_UNUSED, - basic_block bb ATTRIBUTE_UNUSED, - bool recycled ATTRIBUTE_UNUSED) -{ - struct rewrite_block_data *bd - = (struct rewrite_block_data *)VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); - - /* We get cleared memory from the allocator, so if the memory is - not cleared, then we are re-using a previously allocated entry. In - that case, we can also re-use the underlying virtual arrays. Just - make sure we clear them before using them! */ - gcc_assert (!recycled || !bd->block_defs || !(VARRAY_ACTIVE_SIZE (bd->block_defs) > 0)); -} - - /* SSA Rewriting Step 1. Initialization, create a block local stack of reaching definitions for new SSA names produced in this block (BLOCK_DEFS). Register new definitions for every PHI node in the block. */ static void -rewrite_initialize_block (struct dom_walk_data *walk_data, basic_block bb) +rewrite_initialize_block (struct dom_walk_data *walk_data ATTRIBUTE_UNUSED, + basic_block bb) { tree phi; - struct rewrite_block_data *bd - = (struct rewrite_block_data *)VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); if (dump_file && (dump_flags & TDF_DETAILS)) fprintf (dump_file, "\n\nRenaming block #%d\n\n", bb->index); + /* Mark the unwind point for this block. */ + VARRAY_PUSH_TREE (block_defs_stack, NULL_TREE); + /* Step 1. Register new definitions for every PHI node in the block. Conceptually, all the PHI nodes are executed in parallel and each PHI node introduces a new version for the associated variable. */ @@ -683,7 +683,7 @@ rewrite_initialize_block (struct dom_walk_data *walk_data, basic_block bb) { tree result = PHI_RESULT (phi); - register_new_def (result, &bd->block_defs); + register_new_def (result, &block_defs_stack); } } @@ -692,7 +692,7 @@ rewrite_initialize_block (struct dom_walk_data *walk_data, basic_block bb) into the stack pointed by BLOCK_DEFS_P. */ static void -ssa_register_new_def (tree var, tree def, varray_type *block_defs_p) +ssa_register_new_def (tree var, tree def) { tree currdef; @@ -707,15 +707,13 @@ ssa_register_new_def (tree var, tree def, varray_type *block_defs_p) } currdef = get_current_def (var); - if (! *block_defs_p) - VARRAY_TREE_INIT (*block_defs_p, 20, "block_defs"); /* Push the current reaching definition into *BLOCK_DEFS_P. This stack is later used by the dominator tree callbacks to restore the reaching definitions for all the variables defined in the block after a recursive visit to all its immediately dominated blocks. */ - VARRAY_PUSH_TREE (*block_defs_p, var); - VARRAY_PUSH_TREE (*block_defs_p, currdef); + VARRAY_PUSH_TREE (block_defs_stack, currdef); + VARRAY_PUSH_TREE (block_defs_stack, var); /* Set the current reaching definition for VAR to be DEF. */ set_current_def (var, def); @@ -727,8 +725,6 @@ static void ssa_rewrite_initialize_block (struct dom_walk_data *walk_data, basic_block bb) { tree phi, new_name; - struct rewrite_block_data *bd - = (struct rewrite_block_data *)VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); sbitmap names_to_rename = walk_data->global_data; edge e; bool abnormal_phi; @@ -737,11 +733,12 @@ ssa_rewrite_initialize_block (struct dom_walk_data *walk_data, basic_block bb) if (dump_file && (dump_flags & TDF_DETAILS)) fprintf (dump_file, "\n\nRenaming block #%d\n\n", bb->index); + /* Mark the unwind point for this block. */ + VARRAY_PUSH_TREE (block_defs_stack, NULL_TREE); + FOR_EACH_EDGE (e, ei, bb->preds) - { - if (e->flags & EDGE_ABNORMAL) - break; - } + if (e->flags & EDGE_ABNORMAL) + break; abnormal_phi = (e != NULL); /* Step 1. Register new definitions for every PHI node in the block. @@ -762,7 +759,7 @@ ssa_rewrite_initialize_block (struct dom_walk_data *walk_data, basic_block bb) else new_name = result; - ssa_register_new_def (result, new_name, &bd->block_defs); + ssa_register_new_def (result, new_name); } } @@ -831,24 +828,28 @@ ssa_rewrite_phi_arguments (struct dom_walk_data *walk_data, basic_block bb) } } -/* SSA Rewriting Step 5. Restore the current reaching definition for each - variable referenced in the block (in reverse order). */ +/* Similar to restore_vars_to_original_value, except that it restores + CURRDEFS to its original value. */ static void -rewrite_finalize_block (struct dom_walk_data *walk_data, +rewrite_finalize_block (struct dom_walk_data *walk_data ATTRIBUTE_UNUSED, basic_block bb ATTRIBUTE_UNUSED) { - struct rewrite_block_data *bd - = (struct rewrite_block_data *)VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); - - /* Step 5. Restore the current reaching definition for each variable - referenced in the block (in reverse order). */ - while (bd->block_defs && VARRAY_ACTIVE_SIZE (bd->block_defs) > 0) + /* Restore CURRDEFS to its original state. */ + while (VARRAY_ACTIVE_SIZE (block_defs_stack) > 0) { - tree tmp = VARRAY_TOP_TREE (bd->block_defs); + tree tmp = VARRAY_TOP_TREE (block_defs_stack); tree saved_def, var; - VARRAY_POP (bd->block_defs); + VARRAY_POP (block_defs_stack); + + if (tmp == NULL_TREE) + break; + + /* If we recorded an SSA_NAME, then make the SSA_NAME the current + definition of its underlying variable. If we recorded anything + else, it must have been an _DECL node and its current reaching + definition must have been NULL. */ if (TREE_CODE (tmp) == SSA_NAME) { saved_def = tmp; @@ -859,7 +860,7 @@ rewrite_finalize_block (struct dom_walk_data *walk_data, saved_def = NULL; var = tmp; } - + set_current_def (var, saved_def); } } @@ -867,22 +868,24 @@ rewrite_finalize_block (struct dom_walk_data *walk_data, /* Ditto, for rewriting ssa names. */ static void -ssa_rewrite_finalize_block (struct dom_walk_data *walk_data, +ssa_rewrite_finalize_block (struct dom_walk_data *walk_data ATTRIBUTE_UNUSED, basic_block bb ATTRIBUTE_UNUSED) { - struct rewrite_block_data *bd - = (struct rewrite_block_data *)VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); /* Step 5. Restore the current reaching definition for each variable referenced in the block (in reverse order). */ - while (bd->block_defs && VARRAY_ACTIVE_SIZE (bd->block_defs) > 0) + while (VARRAY_ACTIVE_SIZE (block_defs_stack) > 0) { - tree var; - tree saved_def = VARRAY_TOP_TREE (bd->block_defs); - VARRAY_POP (bd->block_defs); + tree var = VARRAY_TOP_TREE (block_defs_stack); + tree saved_def; + + VARRAY_POP (block_defs_stack); - var = VARRAY_TOP_TREE (bd->block_defs); - VARRAY_POP (bd->block_defs); + if (var == NULL) + break; + + saved_def = VARRAY_TOP_TREE (block_defs_stack); + VARRAY_POP (block_defs_stack); set_current_def (var, saved_def); } @@ -1047,7 +1050,7 @@ insert_phi_nodes_for (tree var, bitmap *dfs, varray_type *work_stack) definition of a variable when a new real or virtual definition is found. */ static void -rewrite_stmt (struct dom_walk_data *walk_data, +rewrite_stmt (struct dom_walk_data *walk_data ATTRIBUTE_UNUSED, basic_block bb ATTRIBUTE_UNUSED, block_stmt_iterator si) { @@ -1056,9 +1059,6 @@ rewrite_stmt (struct dom_walk_data *walk_data, use_operand_p use_p; def_operand_p def_p; ssa_op_iter iter; - struct rewrite_block_data *bd; - - bd = VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); stmt = bsi_stmt (si); ann = stmt_ann (stmt); @@ -1086,7 +1086,7 @@ rewrite_stmt (struct dom_walk_data *walk_data, /* FIXME: We shouldn't be registering new defs if the variable doesn't need to be renamed. */ - register_new_def (DEF_FROM_PTR (def_p), &bd->block_defs); + register_new_def (DEF_FROM_PTR (def_p), &block_defs_stack); } } @@ -1102,11 +1102,8 @@ ssa_rewrite_stmt (struct dom_walk_data *walk_data, ssa_op_iter iter; use_operand_p use_p; def_operand_p def_p; - struct rewrite_block_data *bd; sbitmap names_to_rename = walk_data->global_data; - bd = VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); - stmt = bsi_stmt (si); ann = stmt_ann (stmt); @@ -1137,7 +1134,7 @@ ssa_rewrite_stmt (struct dom_walk_data *walk_data, continue; SET_DEF (def_p, duplicate_ssa_name (var, stmt)); - ssa_register_new_def (var, DEF_FROM_PTR (def_p), &bd->block_defs); + ssa_register_new_def (var, DEF_FROM_PTR (def_p)); } } @@ -1176,8 +1173,6 @@ register_new_def (tree def, varray_type *block_defs_p) } currdef = get_current_def (var); - if (! *block_defs_p) - VARRAY_TREE_INIT (*block_defs_p, 20, "block_defs"); /* Push the current reaching definition into *BLOCK_DEFS_P. This stack is later used by the dominator tree callbacks to restore the reaching @@ -1501,7 +1496,7 @@ rewrite_into_ssa (bool all) /* Setup callbacks for the generic dominator tree walker. */ walk_data.walk_stmts_backward = false; walk_data.dom_direction = CDI_DOMINATORS; - walk_data.initialize_block_local_data = rewrite_initialize_block_local_data; + walk_data.initialize_block_local_data = NULL; walk_data.before_dom_children_before_stmts = rewrite_initialize_block; walk_data.before_dom_children_walk_stmts = rewrite_stmt; walk_data.before_dom_children_after_stmts = rewrite_add_phi_arguments; @@ -1509,7 +1504,9 @@ rewrite_into_ssa (bool all) walk_data.after_dom_children_walk_stmts = NULL; walk_data.after_dom_children_after_stmts = rewrite_finalize_block; walk_data.global_data = NULL; - walk_data.block_local_data_size = sizeof (struct rewrite_block_data); + walk_data.block_local_data_size = 0; + + VARRAY_TREE_INIT (block_defs_stack, 10, "Block DEFS Stack"); /* Initialize the dominator walker. */ init_walk_dominator_tree (&walk_data); @@ -1604,6 +1601,8 @@ rewrite_ssa_into_ssa (void) mark_def_sites_global_data.names_to_rename = snames_to_rename; walk_data.global_data = &mark_def_sites_global_data; + VARRAY_TREE_INIT (block_defs_stack, 10, "Block DEFS Stack"); + /* We do not have any local data. */ walk_data.block_local_data_size = 0; @@ -1631,8 +1630,7 @@ rewrite_ssa_into_ssa (void) /* Setup callbacks for the generic dominator tree walker. */ walk_data.walk_stmts_backward = false; walk_data.dom_direction = CDI_DOMINATORS; - walk_data.initialize_block_local_data - = rewrite_initialize_block_local_data; + walk_data.initialize_block_local_data = NULL; walk_data.before_dom_children_before_stmts = ssa_rewrite_initialize_block; walk_data.before_dom_children_walk_stmts = ssa_rewrite_stmt; walk_data.before_dom_children_after_stmts = ssa_rewrite_phi_arguments; @@ -1640,7 +1638,7 @@ rewrite_ssa_into_ssa (void) walk_data.after_dom_children_walk_stmts = NULL; walk_data.after_dom_children_after_stmts = ssa_rewrite_finalize_block; walk_data.global_data = snames_to_rename; - walk_data.block_local_data_size = sizeof (struct rewrite_block_data); + walk_data.block_local_data_size = 0; /* Initialize the dominator walker. */ init_walk_dominator_tree (&walk_data); diff --git a/gcc/tree-loop-linear.c b/gcc/tree-loop-linear.c index 856867e9b66..de16a1ecf92 100644 --- a/gcc/tree-loop-linear.c +++ b/gcc/tree-loop-linear.c @@ -55,22 +55,56 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA transform matrix for locality purposes. TODO: Completion of partial transforms. */ -/* Gather statistics for loop interchange. Initializes SUM the sum of - all the data dependence distances carried by loop LOOP_NUMBER. - NB_DEPS_NOT_CARRIED_BY_LOOP is initialized to the number of - dependence relations for which the loop LOOP_NUMBER is not carrying - any dependence. */ +/* Gather statistics for loop interchange. LOOP_NUMBER is a relative + index in the considered loop nest. The first loop in the + considered loop nest is FIRST_LOOP, and consequently the index of + the considered loop is obtained by FIRST_LOOP + LOOP_NUMBER. + + Initializes: + - DEPENDENCE_STEPS the sum of all the data dependence distances + carried by loop LOOP_NUMBER, + + - NB_DEPS_NOT_CARRIED_BY_LOOP the number of dependence relations + for which the loop LOOP_NUMBER is not carrying any dependence, + + - ACCESS_STRIDES the sum of all the strides in LOOP_NUMBER. + + Example: for the following loop, + + | loop_1 runs 1335 times + | loop_2 runs 1335 times + | A[{{0, +, 1}_1, +, 1335}_2] + | B[{{0, +, 1}_1, +, 1335}_2] + | endloop_2 + | A[{0, +, 1336}_1] + | endloop_1 + + gather_interchange_stats (in loop_1) will return + DEPENDENCE_STEPS = 3002 + NB_DEPS_NOT_CARRIED_BY_LOOP = 5 + ACCESS_STRIDES = 10694 + + gather_interchange_stats (in loop_2) will return + DEPENDENCE_STEPS = 3000 + NB_DEPS_NOT_CARRIED_BY_LOOP = 7 + ACCESS_STRIDES = 8010 + */ static void gather_interchange_stats (varray_type dependence_relations, + varray_type datarefs, unsigned int loop_number, - unsigned int *sum, - unsigned int *nb_deps_not_carried_by_loop) + unsigned int first_loop, + unsigned int *dependence_steps, + unsigned int *nb_deps_not_carried_by_loop, + unsigned int *access_strides) { unsigned int i; - *sum = 0; + *dependence_steps = 0; *nb_deps_not_carried_by_loop = 0; + *access_strides = 0; + for (i = 0; i < VARRAY_ACTIVE_SIZE (dependence_relations); i++) { int dist; @@ -78,11 +112,11 @@ gather_interchange_stats (varray_type dependence_relations, (struct data_dependence_relation *) VARRAY_GENERIC_PTR (dependence_relations, i); + /* Compute the dependence strides. */ + if (DDR_ARE_DEPENDENT (ddr) == chrec_dont_know) { - /* Some constants will need tweaking, but not something that should - be user-accessible. Thus, no --param. */ - *sum += 100; + (*dependence_steps) += 0; continue; } @@ -90,34 +124,64 @@ gather_interchange_stats (varray_type dependence_relations, is no reuse of the data. */ if (DDR_ARE_DEPENDENT (ddr) == chrec_known) { - /* Ditto on the no --param here */ - *sum += 1000; + (*dependence_steps) += 0; continue; } dist = DDR_DIST_VECT (ddr)[loop_number]; if (dist == 0) - *nb_deps_not_carried_by_loop++; + (*nb_deps_not_carried_by_loop) += 1; else if (dist < 0) - *sum += -dist; + (*dependence_steps) += -dist; else - *sum += dist; + (*dependence_steps) += dist; + } + + /* Compute the access strides. */ + for (i = 0; i < VARRAY_ACTIVE_SIZE (datarefs); i++) + { + unsigned int it; + struct data_reference *dr = VARRAY_GENERIC_PTR (datarefs, i); + tree stmt = DR_STMT (dr); + struct loop *stmt_loop = loop_containing_stmt (stmt); + struct loop *inner_loop = current_loops->parray[first_loop + 1]; + + if (!flow_loop_nested_p (inner_loop, stmt_loop) + && inner_loop->num != stmt_loop->num) + continue; + + for (it = 0; it < DR_NUM_DIMENSIONS (dr); it++) + { + tree chrec = DR_ACCESS_FN (dr, it); + tree tstride = evolution_part_in_loop_num + (chrec, first_loop + loop_number); + + if (tstride == NULL_TREE + || TREE_CODE (tstride) != INTEGER_CST) + continue; + + (*access_strides) += int_cst_value (tstride); + } } } /* Apply to TRANS any loop interchange that minimize inner loop steps. - DEPTH is the depth of the loop nest, and DEPENDENCE_RELATIONS is an array - of dependence relations. Returns the new transform matrix. The smaller the reuse vector - distances in the inner loops, the fewer the cache misses. */ + distances in the inner loops, the fewer the cache misses. + FIRST_LOOP is the loop->num of the first loop in the analyzed loop + nest. */ + static lambda_trans_matrix try_interchange_loops (lambda_trans_matrix trans, unsigned int depth, - varray_type dependence_relations) + varray_type dependence_relations, + varray_type datarefs, + unsigned int first_loop) { unsigned int loop_i, loop_j; - unsigned int steps_i, steps_j; + unsigned int dependence_steps_i, dependence_steps_j; + unsigned int access_strides_i, access_strides_j; unsigned int nb_deps_not_carried_by_i, nb_deps_not_carried_by_j; struct data_dependence_relation *ddr; @@ -132,33 +196,40 @@ try_interchange_loops (lambda_trans_matrix trans, for (loop_j = 1; loop_j < depth; loop_j++) for (loop_i = 0; loop_i < loop_j; loop_i++) { - gather_interchange_stats (dependence_relations, loop_i, &steps_i, - &nb_deps_not_carried_by_i); - gather_interchange_stats (dependence_relations, loop_j, &steps_j, - &nb_deps_not_carried_by_j); + gather_interchange_stats (dependence_relations, datarefs, + loop_i, first_loop, + &dependence_steps_i, + &nb_deps_not_carried_by_i, + &access_strides_i); + gather_interchange_stats (dependence_relations, datarefs, + loop_j, first_loop, + &dependence_steps_j, + &nb_deps_not_carried_by_j, + &access_strides_j); /* Heuristics for loop interchange profitability: - 1. Inner loops should have smallest steps. - 2. Inner loops should contain more dependence relations not - carried by the loop. + + 1. (spatial locality) Inner loops should have smallest + dependence steps. + + 2. (spatial locality) Inner loops should contain more + dependence relations not carried by the loop. + + 3. (temporal locality) Inner loops should have smallest + array access strides. */ - if (steps_i < steps_j - || nb_deps_not_carried_by_i > nb_deps_not_carried_by_j) + if (dependence_steps_i < dependence_steps_j + || nb_deps_not_carried_by_i > nb_deps_not_carried_by_j + || access_strides_i < access_strides_j) { lambda_matrix_row_exchange (LTM_MATRIX (trans), loop_i, loop_j); - /* Validate the resulting matrix. When the transformation - is not valid, reverse to the previous matrix. - - FIXME: In this case of transformation it could be - faster to verify the validity of the interchange - without applying the transform to the matrix. But for - the moment do it cleanly: this is just a prototype. */ + is not valid, reverse to the previous transformation. */ if (!lambda_transform_legal_p (trans, depth, dependence_relations)) lambda_matrix_row_exchange (LTM_MATRIX (trans), loop_i, loop_j); } } - + return trans; } @@ -181,6 +252,7 @@ linear_transform_loops (struct loops *loops) lambda_loopnest before, after; lambda_trans_matrix trans; bool problem = false; + bool need_perfect_nest = false; /* If it's not a loop nest, we don't want it. We also don't handle sibling loops properly, which are loops of the following form: @@ -197,7 +269,8 @@ linear_transform_loops (struct loops *loops) } */ if (!loop_nest->inner) continue; - for (temp = loop_nest; temp; temp = temp->inner) + depth = 1; + for (temp = loop_nest->inner; temp; temp = temp->inner) { flow_loop_scan (temp, LOOP_ALL); /* If we have a sibling loop or multiple exit edges, jump ship. */ @@ -246,7 +319,15 @@ linear_transform_loops (struct loops *loops) /* Build the transformation matrix. */ trans = lambda_trans_matrix_new (depth, depth); lambda_matrix_id (LTM_MATRIX (trans), depth); - trans = try_interchange_loops (trans, depth, dependence_relations); + trans = try_interchange_loops (trans, depth, dependence_relations, + datarefs, loop_nest->num); + + if (lambda_trans_matrix_id_p (trans)) + { + if (dump_file) + fprintf (dump_file, "Won't transform loop. Optimal transform is the identity transform\n"); + continue; + } /* Check whether the transformation is legal. */ if (!lambda_transform_legal_p (trans, depth, dependence_relations)) @@ -255,8 +336,12 @@ linear_transform_loops (struct loops *loops) fprintf (dump_file, "Can't transform loop, transform is illegal:\n"); continue; } - before = gcc_loopnest_to_lambda_loopnest (loop_nest, &oldivs, - &invariants); + if (!perfect_nest_p (loop_nest)) + need_perfect_nest = true; + before = gcc_loopnest_to_lambda_loopnest (loops, + loop_nest, &oldivs, + &invariants, + need_perfect_nest); if (!before) continue; @@ -279,4 +364,6 @@ linear_transform_loops (struct loops *loops) free_dependence_relations (dependence_relations); free_data_refs (datarefs); } + rewrite_into_loop_closed_ssa (); + free_df (); } diff --git a/gcc/tree-mudflap.c b/gcc/tree-mudflap.c index 4fe6ecc929e..1410b2f3857 100644 --- a/gcc/tree-mudflap.c +++ b/gcc/tree-mudflap.c @@ -634,7 +634,7 @@ mf_build_check_statement_for (tree addr, tree size, The lowered GIMPLE tree representing this code is in the statement list starting at 'head'. - We can insert this now in the current basic block, ie. the one that + We can insert this now in the current basic block, i.e. the one that the statement we're instrumenting was originally in. */ bsi = bsi_last (cond_bb); for (tsi = head; ! tsi_end_p (tsi); tsi_next (&tsi)) @@ -1160,7 +1160,7 @@ mudflap_enqueue_decl (tree obj) for (i = 0; i < VARRAY_ACTIVE_SIZE (deferred_static_decls); i++) if (VARRAY_TREE (deferred_static_decls, i) == obj) { - warning ("mudflap cannot track lifetime of `%s'", + warning ("mudflap cannot track lifetime of %qs", IDENTIFIER_POINTER (DECL_NAME (obj))); return; } diff --git a/gcc/tree-nested.c b/gcc/tree-nested.c index 9f4a57d9921..135ac0486a8 100644 --- a/gcc/tree-nested.c +++ b/gcc/tree-nested.c @@ -831,7 +831,7 @@ convert_nonlocal_reference (tree *tp, int *walk_subtrees, void *data) break; default: - if (!DECL_P (t) && !TYPE_P (t)) + if (!IS_TYPE_OR_DECL_P (t)) { *walk_subtrees = 1; wi->val_only = true; @@ -945,7 +945,7 @@ convert_local_reference (tree *tp, int *walk_subtrees, void *data) break; default: - if (!DECL_P (t) && !TYPE_P (t)) + if (!IS_TYPE_OR_DECL_P (t)) { *walk_subtrees = 1; wi->val_only = true; @@ -1124,7 +1124,7 @@ convert_tramp_reference (tree *tp, int *walk_subtrees, void *data) break; default: - if (!DECL_P (t) && !TYPE_P (t)) + if (!IS_TYPE_OR_DECL_P (t)) *walk_subtrees = 1; break; } diff --git a/gcc/tree-optimize.c b/gcc/tree-optimize.c index c07701a9c06..fdb7e766a25 100644 --- a/gcc/tree-optimize.c +++ b/gcc/tree-optimize.c @@ -285,7 +285,7 @@ static struct tree_opt_pass ** next_pass_1 (struct tree_opt_pass **list, struct tree_opt_pass *pass) { - /* A non-zero static_pass_number indicates that the + /* A nonzero static_pass_number indicates that the pass is already in the list. */ if (pass->static_pass_number) { @@ -539,6 +539,24 @@ execute_pass_list (struct tree_opt_pass *pass) } while (pass); } + + +/* update recursivly all inlined_to pointers of functions + inlined into NODE to INLINED_TO. */ +static void +update_inlined_to_pointers (struct cgraph_node *node, + struct cgraph_node *inlined_to) +{ + struct cgraph_edge *e; + for (e = node->callees; e; e = e->next_callee) + { + if (e->callee->global.inlined_to) + { + e->callee->global.inlined_to = inlined_to; + update_inlined_to_pointers (e->callee, node); + } + } +} /* For functions-as-trees languages, this performs all optimization and @@ -630,6 +648,7 @@ tree_rest_of_compilation (tree fndecl, bool nested_p) if (!flag_unit_at_a_time) { struct cgraph_edge *e; + verify_cgraph (); while (node->callees) cgraph_remove_edge (node->callees); node->callees = saved_node->callees; @@ -637,7 +656,10 @@ tree_rest_of_compilation (tree fndecl, bool nested_p) for (e = node->callees; e; e = e->next_callee) { if (e->callee->global.inlined_to) - e->callee->global.inlined_to = node; + { + e->callee->global.inlined_to = node; + update_inlined_to_pointers (e->callee, node); + } e->caller = node; } cgraph_remove_node (saved_node); diff --git a/gcc/tree-outof-ssa.c b/gcc/tree-outof-ssa.c index c7793c38c84..98160fecf55 100644 --- a/gcc/tree-outof-ssa.c +++ b/gcc/tree-outof-ssa.c @@ -1753,7 +1753,7 @@ discover_nonconstant_array_refs_r (tree * tp, int *walk_subtrees, { tree t = *tp; - if (TYPE_P (t) || DECL_P (t)) + if (IS_TYPE_OR_DECL_P (t)) *walk_subtrees = 0; else if (TREE_CODE (t) == ARRAY_REF || TREE_CODE (t) == ARRAY_RANGE_REF) { diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c index 0e60099437b..0a75c0ed5fd 100644 --- a/gcc/tree-pretty-print.c +++ b/gcc/tree-pretty-print.c @@ -1,5 +1,5 @@ /* Pretty formatting of GENERIC trees in C syntax. - Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Adapted from c-pretty-print.c by Diego Novillo This file is part of GCC. @@ -70,7 +70,7 @@ do_niy (pretty_printer *buffer, tree node) pp_string (buffer, "<<< Unknown tree: "); pp_string (buffer, tree_code_name[(int) TREE_CODE (node)]); - if (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (node)))) + if (EXPR_P (node)) { len = first_rtl_op (TREE_CODE (node)); for (i = 0; i < len; ++i) @@ -162,16 +162,27 @@ dump_decl_name (pretty_printer *buffer, tree node, int flags) { if (TREE_CODE (node) == LABEL_DECL && LABEL_DECL_UID (node) != -1) - pp_printf (buffer, "", + pp_printf (buffer, "L." HOST_WIDE_INT_PRINT_DEC, LABEL_DECL_UID (node)); else { char c = TREE_CODE (node) == CONST_DECL ? 'C' : 'D'; - pp_printf (buffer, "<%c%u>", c, DECL_UID (node)); + pp_printf (buffer, "%c.%u", c, DECL_UID (node)); } } } +/* Like the above, but used for pretty printing function calls. */ + +static void +dump_function_name (pretty_printer *buffer, tree node) +{ + if (DECL_NAME (node)) + PRINT_FUNCTION_NAME (node); + else + dump_decl_name (buffer, node, 0); +} + /* Dump a function declaration. NODE is the FUNCTION_TYPE. BUFFER, SPC and FLAGS are as in dump_generic_node. */ @@ -292,7 +303,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, case CHAR_TYPE: { unsigned int quals = TYPE_QUALS (node); - char class; + enum tree_code_class class; if (quals & TYPE_QUAL_CONST) pp_string (buffer, "const "); @@ -303,14 +314,14 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, class = TREE_CODE_CLASS (TREE_CODE (node)); - if (class == 'd') + if (class == tcc_declaration) { if (DECL_NAME (node)) dump_decl_name (buffer, node, flags); else pp_string (buffer, ""); } - else if (class == 't') + else if (class == tcc_type) { if (TYPE_NAME (node)) { @@ -1319,9 +1330,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, case GOTO_EXPR: op0 = GOTO_DESTINATION (node); - if (TREE_CODE (op0) != SSA_NAME - && DECL_P (op0) - && DECL_NAME (op0)) + if (TREE_CODE (op0) != SSA_NAME && DECL_P (op0) && DECL_NAME (op0)) { const char *name = IDENTIFIER_POINTER (DECL_NAME (op0)); if (strcmp (name, "break") == 0 @@ -1892,7 +1901,7 @@ print_call_name (pretty_printer *buffer, tree node) { case VAR_DECL: case PARM_DECL: - PRINT_FUNCTION_NAME (op0); + dump_function_name (buffer, op0); break; case ADDR_EXPR: @@ -1914,7 +1923,7 @@ print_call_name (pretty_printer *buffer, tree node) /* The function is a pointer contained in a structure. */ if (TREE_CODE (TREE_OPERAND (op0, 0)) == INDIRECT_REF || TREE_CODE (TREE_OPERAND (op0, 0)) == VAR_DECL) - PRINT_FUNCTION_NAME (TREE_OPERAND (op0, 1)); + dump_function_name (buffer, TREE_OPERAND (op0, 1)); else dump_generic_node (buffer, TREE_OPERAND (op0, 0), 0, 0, false); /* else @@ -1925,7 +1934,7 @@ print_call_name (pretty_printer *buffer, tree node) case ARRAY_REF: if (TREE_CODE (TREE_OPERAND (op0, 0)) == VAR_DECL) - PRINT_FUNCTION_NAME (TREE_OPERAND (op0, 0)); + dump_function_name (buffer, TREE_OPERAND (op0, 0)); else dump_generic_node (buffer, op0, 0, 0, false); break; diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c index d1f16074183..35d2fe9ca8b 100644 --- a/gcc/tree-scalar-evolution.c +++ b/gcc/tree-scalar-evolution.c @@ -331,7 +331,7 @@ del_scev_info (void *e) /* Get the index corresponding to VAR in the current LOOP. If it's the first time we ask for this VAR, then we return - chrec_not_analysed_yet for this VAR and return its index. */ + chrec_not_analyzed_yet for this VAR and return its index. */ static tree * find_var_scev_info (tree var) @@ -1367,7 +1367,7 @@ follow_ssa_edge_in_condition_phi_branch (int i, } /* This case occurs when one of the condition branches sets - the variable to a constant: ie. a phi-node like + the variable to a constant: i.e. a phi-node like "a_2 = PHI ;". FIXME: This case have to be refined correctly: @@ -1491,7 +1491,7 @@ follow_ssa_edge (struct loop *loop, return true; /* Otherwise, the evolution of the HALTING_PHI depends - on the evolution of another loop-phi-node, ie. the + on the evolution of another loop-phi-node, i.e. the evolution function is a higher degree polynomial. */ if (def_loop == loop) return false; @@ -1564,7 +1564,7 @@ analyze_evolution_in_loop (tree loop_phi_node, /* When it is impossible to go back on the same loop_phi_node by following the ssa edges, the - evolution is represented by a peeled chrec, ie. the + evolution is represented by a peeled chrec, i.e. the first iteration, EV_FN has the value INIT_COND, then all the other iterations it has the value of ARG. For the moment, PEELED_CHREC nodes are not built. */ diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index 8683d00875c..e2b92d1fba7 100644 --- a/gcc/tree-sra.c +++ b/gcc/tree-sra.c @@ -132,7 +132,7 @@ struct sra_elt }; /* Random access to the child of a parent is performed by hashing. - This prevents quadratic behaviour, and allows SRA to function + This prevents quadratic behavior, and allows SRA to function reasonably on larger records. */ static htab_t sra_map; @@ -182,7 +182,7 @@ type_can_be_decomposed_p (tree type) if (bitmap_bit_p (sra_type_decomp_cache, cache+1)) return false; - /* The type must have a definite non-zero size. */ + /* The type must have a definite nonzero size. */ if (TYPE_SIZE (type) == NULL || integer_zerop (TYPE_SIZE (type))) goto fail; @@ -1534,7 +1534,7 @@ generate_element_zero (struct sra_elt *elt, tree *list_p) tree t; gcc_assert (elt->is_scalar); - t = build_int_cst (elt->type, 0); + t = fold_convert (elt->type, integer_zero_node); t = build (MODIFY_EXPR, void_type_node, elt->replacement, t); append_to_statement_list (t, list_p); @@ -1553,7 +1553,7 @@ find_new_referenced_vars_1 (tree *tp, int *walk_subtrees, if (TREE_CODE (t) == VAR_DECL && !var_ann (t)) add_referenced_tmp_var (t); - if (DECL_P (t) || TYPE_P (t)) + if (IS_TYPE_OR_DECL_P (t)) *walk_subtrees = 0; return NULL; @@ -1904,7 +1904,7 @@ mark_notrap (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED) TREE_THIS_NOTRAP (t) = 1; *walk_subtrees = 0; } - else if (DECL_P (t) || TYPE_P (t)) + else if (IS_TYPE_OR_DECL_P (t)) *walk_subtrees = 0; return NULL; diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c index f00fcc1e97b..ae06ea0680b 100644 --- a/gcc/tree-ssa-alias.c +++ b/gcc/tree-ssa-alias.c @@ -694,6 +694,9 @@ compute_points_to_and_addr_escape (struct alias_info *ai) bitmap_set_bit (ai->written_vars, ann->uid); if (may_be_aliased (var)) (VARRAY_UINT (ai->num_references, ann->uid))++; + + if (POINTER_TYPE_P (TREE_TYPE (op))) + collect_points_to_info_for (ai, op); } /* Mark variables in V_MAY_DEF operands as being written to. */ @@ -875,6 +878,7 @@ static void compute_flow_insensitive_aliasing (struct alias_info *ai) { size_t i; + sbitmap res; /* Initialize counter for the total number of virtual operands that aliasing will introduce. When AI->TOTAL_ALIAS_VOPS goes beyond the @@ -924,10 +928,6 @@ compute_flow_insensitive_aliasing (struct alias_info *ai) num_tag_refs = VARRAY_UINT (ai->num_references, tag_ann->uid); num_var_refs = VARRAY_UINT (ai->num_references, v_ann->uid); - /* If TAG is call clobbered, so is VAR. */ - if (is_call_clobbered (tag)) - mark_call_clobbered (var); - /* Add VAR to TAG's may-aliases set. */ add_may_alias (tag, var); @@ -947,6 +947,72 @@ compute_flow_insensitive_aliasing (struct alias_info *ai) } } + /* Since this analysis is based exclusively on symbols, it fails to + handle cases where two pointers P and Q have different memory + tags with conflicting alias set numbers but no aliased symbols in + common. + + For example, suppose that we have two memory tags TMT.1 and TMT.2 + such that + + may-aliases (TMT.1) = { a } + may-aliases (TMT.2) = { b } + + and the alias set number of TMT.1 conflicts with that of TMT.2. + Since they don't have symbols in common, loads and stores from + TMT.1 and TMT.2 will seem independent of each other, which will + lead to the optimizers making invalid transformations (see + testsuite/gcc.c-torture/execute/pr15262-[12].c). + + To avoid this problem, we do a final traversal of AI->POINTERS + looking for pairs of pointers that have no aliased symbols in + common and yet have conflicting alias set numbers. */ + res = sbitmap_alloc (num_referenced_vars); + + for (i = 0; i < ai->num_pointers; i++) + { + size_t j; + struct alias_map_d *p_map1 = ai->pointers[i]; + tree tag1 = var_ann (p_map1->var)->type_mem_tag; + sbitmap may_aliases1 = p_map1->may_aliases; + + for (j = i + 1; j < ai->num_pointers; j++) + { + struct alias_map_d *p_map2 = ai->pointers[j]; + tree tag2 = var_ann (p_map2->var)->type_mem_tag; + sbitmap may_aliases2 = p_map2->may_aliases; + + /* If the pointers may not point to each other, do nothing. */ + if (!may_alias_p (p_map1->var, p_map1->set, p_map2->var, p_map2->set)) + continue; + + /* The two pointers may alias each other. If they already have + symbols in common, do nothing. */ + sbitmap_a_and_b (res, may_aliases1, may_aliases2); + if (sbitmap_first_set_bit (res) >= 0) + continue; + + if (sbitmap_first_set_bit (may_aliases2) >= 0) + { + size_t k; + + /* Add all the aliases for TAG2 into TAG1's alias set. + FIXME, update grouping heuristic counters. */ + EXECUTE_IF_SET_IN_SBITMAP (may_aliases2, 0, k, + add_may_alias (tag1, referenced_var (k))); + sbitmap_a_or_b (may_aliases1, may_aliases1, may_aliases2); + } + else + { + /* Since TAG2 does not have any aliases of its own, add + TAG2 itself to the alias set of TAG1. */ + add_may_alias (tag1, tag2); + } + } + } + + sbitmap_free (res); + if (dump_file) fprintf (dump_file, "%s: Total number of aliased vops: %ld\n", get_name (current_function_decl), @@ -1120,29 +1186,8 @@ group_aliases (struct alias_info *ai) sbitmap_a_and_b (res, tag1_aliases, tag2_aliases); if (sbitmap_first_set_bit (res) >= 0) { - size_t k; - tree tag2 = var_ann (ai->pointers[j]->var)->type_mem_tag; - if (!is_call_clobbered (tag1) && is_call_clobbered (tag2)) - { - mark_call_clobbered (tag1); - EXECUTE_IF_SET_IN_SBITMAP (tag1_aliases, 0, k, - { - tree var = referenced_var (k); - mark_call_clobbered (var); - }); - } - else if (is_call_clobbered (tag1) && !is_call_clobbered (tag2)) - { - mark_call_clobbered (tag2); - EXECUTE_IF_SET_IN_SBITMAP (tag2_aliases, 0, k, - { - tree var = referenced_var (k); - mark_call_clobbered (var); - }); - } - sbitmap_a_or_b (tag1_aliases, tag1_aliases, tag2_aliases); /* TAG2 does not need its aliases anymore. */ @@ -1287,8 +1332,9 @@ setup_pointers_and_addressables (struct alias_info *ai) /* Name memory tags already have flow-sensitive aliasing information, so they need not be processed by - compute_may_aliases. Similarly, type memory tags are already - accounted for when we process their associated pointer. */ + compute_flow_insensitive_aliasing. Similarly, type memory + tags are already accounted for when we process their + associated pointer. */ if (v_ann->mem_tag_kind != NOT_A_TAG) continue; @@ -1392,41 +1438,6 @@ setup_pointers_and_addressables (struct alias_info *ai) } } } - - /* If we found no addressable variables, but we have more than one - pointer, we will need to check for conflicts between the - pointers. Otherwise, we would miss alias relations as in - testsuite/gcc.dg/tree-ssa/20040319-1.c: - - struct bar { int count; int *arr;}; - - void foo (struct bar *b) - { - b->count = 0; - *(b->arr) = 2; - if (b->count == 0) - abort (); - } - - b->count and *(b->arr) could be aliased if b->arr == &b->count. - To do this, we add all the memory tags for the pointers in - AI->POINTERS to AI->ADDRESSABLE_VARS, so that - compute_flow_insensitive_aliasing will naturally compare every - pointer to every type tag. */ - if (ai->num_addressable_vars == 0 - && ai->num_pointers > 1) - { - free (ai->addressable_vars); - ai->addressable_vars = xcalloc (ai->num_pointers, - sizeof (struct alias_map_d *)); - ai->num_addressable_vars = 0; - for (i = 0; i < ai->num_pointers; i++) - { - struct alias_map_d *p = ai->pointers[i]; - tree tag = var_ann (p->var)->type_mem_tag; - create_alias_map_for (tag, ai); - } - } } @@ -1547,7 +1558,8 @@ may_alias_p (tree ptr, HOST_WIDE_INT mem_alias_set, for PTR's alias set here, not its pointed-to type. We also can't do this check with relaxed aliasing enabled. */ if (POINTER_TYPE_P (TREE_TYPE (var)) - && var_alias_set != 0) + && var_alias_set != 0 + && mem_alias_set != 0) { HOST_WIDE_INT ptr_alias_set = get_alias_set (ptr); if (ptr_alias_set == var_alias_set) @@ -1561,58 +1573,9 @@ may_alias_p (tree ptr, HOST_WIDE_INT mem_alias_set, /* If the alias sets don't conflict then MEM cannot alias VAR. */ if (!alias_sets_conflict_p (mem_alias_set, var_alias_set)) { - /* Handle aliases to structure fields. If either VAR or MEM are - aggregate types, they may not have conflicting types, but one of - the structures could contain a pointer to the other one. - - For instance, given - - MEM -> struct P *p; - VAR -> struct Q *q; - - It may happen that '*p' and '*q' can't alias because 'struct P' - and 'struct Q' have non-conflicting alias sets. However, it could - happen that one of the fields in 'struct P' is a 'struct Q *' or - vice-versa. - - Therefore, we also need to check if 'struct P' aliases 'struct Q *' - or 'struct Q' aliases 'struct P *'. Notice, that since GIMPLE - does not have more than one-level pointers, we don't need to - recurse into the structures. */ - if (AGGREGATE_TYPE_P (TREE_TYPE (mem)) - || AGGREGATE_TYPE_P (TREE_TYPE (var))) - { - tree ptr_to_var; - - if (TREE_CODE (TREE_TYPE (var)) == ARRAY_TYPE) - ptr_to_var = TYPE_POINTER_TO (TREE_TYPE (TREE_TYPE (var))); - else - ptr_to_var = TYPE_POINTER_TO (TREE_TYPE (var)); - - /* If no pointer-to VAR exists, then MEM can't alias VAR. */ - if (ptr_to_var == NULL_TREE) - { - alias_stats.alias_noalias++; - alias_stats.tbaa_resolved++; - return false; - } - - /* If MEM doesn't alias a pointer to VAR and VAR doesn't alias - PTR, then PTR can't alias VAR. */ - if (!alias_sets_conflict_p (mem_alias_set, get_alias_set (ptr_to_var)) - && !alias_sets_conflict_p (var_alias_set, get_alias_set (ptr))) - { - alias_stats.alias_noalias++; - alias_stats.tbaa_resolved++; - return false; - } - } - else - { - alias_stats.alias_noalias++; - alias_stats.tbaa_resolved++; - return false; - } + alias_stats.alias_noalias++; + alias_stats.tbaa_resolved++; + return false; } alias_stats.alias_mayalias++; @@ -1639,6 +1602,16 @@ add_may_alias (tree var, tree alias) if (alias == VARRAY_TREE (v_ann->may_aliases, i)) return; + /* If VAR is a call-clobbered variable, so is its new ALIAS. + FIXME, call-clobbering should only depend on whether an address + escapes. It should be independent of aliasing. */ + if (is_call_clobbered (var)) + mark_call_clobbered (alias); + + /* Likewise. If ALIAS is call-clobbered, so is VAR. */ + else if (is_call_clobbered (alias)) + mark_call_clobbered (var); + VARRAY_PUSH_TREE (v_ann->may_aliases, alias); a_ann->is_alias_tag = 1; } @@ -1651,6 +1624,16 @@ replace_may_alias (tree var, size_t i, tree new_alias) { var_ann_t v_ann = var_ann (var); VARRAY_TREE (v_ann->may_aliases, i) = new_alias; + + /* If VAR is a call-clobbered variable, so is NEW_ALIAS. + FIXME, call-clobbering should only depend on whether an address + escapes. It should be independent of aliasing. */ + if (is_call_clobbered (var)) + mark_call_clobbered (new_alias); + + /* Likewise. If NEW_ALIAS is call-clobbered, so is VAR. */ + else if (is_call_clobbered (new_alias)) + mark_call_clobbered (var); } @@ -1707,8 +1690,6 @@ merge_pointed_to_info (struct alias_info *ai, tree dest, tree orig) if (orig_pi) { - dest_pi->pt_global_mem |= orig_pi->pt_global_mem; - /* Notice that we never merge PT_MALLOC. This attribute is only true if the pointer is the result of a malloc() call. Otherwise, we can end up in this situation: @@ -1809,7 +1790,7 @@ add_pointed_to_var (struct alias_info *ai, tree ptr, tree value) gcc_assert (TREE_CODE (value) == ADDR_EXPR); pt_var = TREE_OPERAND (value, 0); - if (TREE_CODE_CLASS (TREE_CODE (pt_var)) == 'r') + if (REFERENCE_CLASS_P (pt_var)) pt_var = get_base_address (pt_var); if (pt_var && SSA_VAR_P (pt_var)) @@ -1853,6 +1834,12 @@ collect_points_to_info_r (tree var, tree stmt, void *data) switch (TREE_CODE (stmt)) { + case RETURN_EXPR: + if (TREE_CODE (TREE_OPERAND (stmt, 0)) != MODIFY_EXPR) + abort (); + stmt = TREE_OPERAND (stmt, 0); + /* FALLTHRU */ + case MODIFY_EXPR: { tree rhs = TREE_OPERAND (stmt, 1); @@ -1876,7 +1863,8 @@ collect_points_to_info_r (tree var, tree stmt, void *data) /* Both operands may be of pointer type. FIXME: Shouldn't we just expect PTR + OFFSET always? */ - if (POINTER_TYPE_P (TREE_TYPE (op0))) + if (POINTER_TYPE_P (TREE_TYPE (op0)) + && TREE_CODE (op0) != INTEGER_CST) { if (TREE_CODE (op0) == SSA_NAME) merge_pointed_to_info (ai, var, op0); @@ -1886,7 +1874,8 @@ collect_points_to_info_r (tree var, tree stmt, void *data) add_pointed_to_expr (var, op0); } - if (POINTER_TYPE_P (TREE_TYPE (op1))) + if (POINTER_TYPE_P (TREE_TYPE (op1)) + && TREE_CODE (op1) != INTEGER_CST) { if (TREE_CODE (op1) == SSA_NAME) merge_pointed_to_info (ai, var, op1); @@ -1899,8 +1888,10 @@ collect_points_to_info_r (tree var, tree stmt, void *data) /* Neither operand is a pointer? VAR can be pointing anywhere. FIXME: Is this right? If we get here, we found PTR = INT_CST + INT_CST. */ - if (!POINTER_TYPE_P (TREE_TYPE (op0)) - && !POINTER_TYPE_P (TREE_TYPE (op1))) + if (!(POINTER_TYPE_P (TREE_TYPE (op0)) + && TREE_CODE (op0) != INTEGER_CST) + && !(POINTER_TYPE_P (TREE_TYPE (op1)) + && TREE_CODE (op1) != INTEGER_CST)) add_pointed_to_expr (var, rhs); } diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c index 54ff28a08dc..81ce67321c5 100644 --- a/gcc/tree-ssa-ccp.c +++ b/gcc/tree-ssa-ccp.c @@ -787,7 +787,7 @@ ccp_fold (tree stmt) { tree rhs = get_rhs (stmt); enum tree_code code = TREE_CODE (rhs); - int kind = TREE_CODE_CLASS (code); + enum tree_code_class kind = TREE_CODE_CLASS (code); tree retval = NULL_TREE; vuse_optype vuses; @@ -805,7 +805,7 @@ ccp_fold (tree stmt) /* Unary operators. Note that we know the single operand must be a constant. So this should almost always return a simplified RHS. */ - if (kind == '1') + if (kind == tcc_unary) { /* Handle unary operators which can appear in GIMPLE form. */ tree op0 = TREE_OPERAND (rhs, 0); @@ -845,8 +845,8 @@ ccp_fold (tree stmt) /* Binary and comparison operators. We know one or both of the operands are constants. */ - else if (kind == '2' - || kind == '<' + else if (kind == tcc_binary + || kind == tcc_comparison || code == TRUTH_AND_EXPR || code == TRUTH_OR_EXPR || code == TRUTH_XOR_EXPR) @@ -2035,7 +2035,8 @@ fold_stmt (tree *stmt_p) if (TREE_CODE (callee) == OBJ_TYPE_REF && lang_hooks.fold_obj_type_ref && TREE_CODE (OBJ_TYPE_REF_OBJECT (callee)) == ADDR_EXPR - && DECL_P (TREE_OPERAND (OBJ_TYPE_REF_OBJECT (callee), 0))) + && DECL_P (TREE_OPERAND + (OBJ_TYPE_REF_OBJECT (callee), 0))) { tree t; diff --git a/gcc/tree-ssa-copy.c b/gcc/tree-ssa-copy.c index 7b27c68b1bd..611bae77bad 100644 --- a/gcc/tree-ssa-copy.c +++ b/gcc/tree-ssa-copy.c @@ -112,8 +112,8 @@ may_propagate_copy (tree dest, tree orig) return false; else if (!lang_hooks.types_compatible_p (type_d, type_o)) return false; - else if (!alias_sets_conflict_p (get_alias_set (type_d), - get_alias_set (type_o))) + else if (!alias_sets_conflict_p (get_alias_set (TREE_TYPE (type_d)), + get_alias_set (TREE_TYPE (type_o)))) return false; } diff --git a/gcc/tree-ssa-copyrename.c b/gcc/tree-ssa-copyrename.c index 1db85ff9f08..49225d09b20 100644 --- a/gcc/tree-ssa-copyrename.c +++ b/gcc/tree-ssa-copyrename.c @@ -48,7 +48,7 @@ extern void rename_ssa_copies (void); Each copy is examined to determine if it is possible to rename the base variable of one of the operands to the same variable as the other operand. - ie. + i.e. T.3_5 = a_1 = T.3_5 @@ -116,8 +116,9 @@ copy_rename_partition_coalesce (var_map map, tree var1, tree var2, FILE *debug) { int p1, p2, p3; tree root1, root2; + tree rep1, rep2; var_ann_t ann1, ann2, ann3; - bool ign1, ign2; + bool ign1, ign2, abnorm; gcc_assert (TREE_CODE (var1) == SSA_NAME); gcc_assert (TREE_CODE (var2) == SSA_NAME); @@ -140,8 +141,10 @@ copy_rename_partition_coalesce (var_map map, tree var1, tree var2, FILE *debug) gcc_assert (p1 != NO_PARTITION); gcc_assert (p2 != NO_PARTITION); - root1 = SSA_NAME_VAR (partition_to_var (map, p1)); - root2 = SSA_NAME_VAR (partition_to_var (map, p2)); + rep1 = partition_to_var (map, p1); + rep2 = partition_to_var (map, p2); + root1 = SSA_NAME_VAR (rep1); + root2 = SSA_NAME_VAR (rep2); if (DECL_HARD_REGISTER (root1) || DECL_HARD_REGISTER (root2)) { @@ -166,6 +169,16 @@ copy_rename_partition_coalesce (var_map map, tree var1, tree var2, FILE *debug) return; } + /* Don't coalesce if one of the variables occurs in an abnormal PHI. */ + abnorm = (SSA_NAME_OCCURS_IN_ABNORMAL_PHI (rep1) + || SSA_NAME_OCCURS_IN_ABNORMAL_PHI (rep2)); + if (abnorm) + { + if (debug) + fprintf (debug, " : Abnormal PHI barrier. No coalesce.\n"); + return; + } + /* Partitions already have the same root, simply merge them. */ if (root1 == root2) { diff --git a/gcc/tree-ssa-dce.c b/gcc/tree-ssa-dce.c index 0631d3b545f..63aba16f9b5 100644 --- a/gcc/tree-ssa-dce.c +++ b/gcc/tree-ssa-dce.c @@ -402,7 +402,7 @@ mark_stmt_if_obviously_necessary (tree stmt, bool aggressive) a global variable. Otherwise, we check if the base variable is a global. */ lhs = TREE_OPERAND (stmt, 0); - if (TREE_CODE_CLASS (TREE_CODE (lhs)) == 'r') + if (REFERENCE_CLASS_P (lhs)) lhs = get_base_address (lhs); if (lhs == NULL_TREE) @@ -741,6 +741,8 @@ remove_dead_stmt (block_stmt_iterator *i, basic_block bb) /* Redirect the first edge out of BB to reach POST_DOM_BB. */ redirect_edge_and_branch (EDGE_SUCC (bb, 0), post_dom_bb); PENDING_STMT (EDGE_SUCC (bb, 0)) = NULL; + EDGE_SUCC (bb, 0)->probability = REG_BR_PROB_BASE; + EDGE_SUCC (bb, 0)->count = bb->count; /* The edge is no longer associated with a conditional, so it does not have TRUE/FALSE flags. */ diff --git a/gcc/tree-ssa-dom.c b/gcc/tree-ssa-dom.c index 449c458f177..86a33f2e6c7 100644 --- a/gcc/tree-ssa-dom.c +++ b/gcc/tree-ssa-dom.c @@ -40,6 +40,7 @@ Boston, MA 02111-1307, USA. */ #include "domwalk.h" #include "real.h" #include "tree-pass.h" +#include "tree-ssa-propagate.h" #include "langhooks.h" /* This file implements optimizations on the dominator tree. */ @@ -53,6 +54,35 @@ Boston, MA 02111-1307, USA. */ in this table. */ static htab_t avail_exprs; +/* Stack of available expressions in AVAIL_EXPRs. Each block pushes any + expressions it enters into the hash table along with a marker entry + (null). When we finish processing the block, we pop off entries and + remove the expressions from the global hash table until we hit the + marker. */ +static varray_type avail_exprs_stack; + +/* Stack of trees used to restore the global currdefs to its original + state after completing optimization of a block and its dominator children. + + An SSA_NAME indicates that the current definition of the underlying + variable should be set to the given SSA_NAME. + + A _DECL node indicates that the underlying variable has no current + definition. + + A NULL node is used to mark the last node associated with the + current block. */ +varray_type block_defs_stack; + +/* Stack of statements we need to rescan during finalization for newly + exposed variables. + + Statement rescanning must occur after the current block's available + expressions are removed from AVAIL_EXPRS. Else we may change the + hash code for an expression and be unable to find/remove it from + AVAIL_EXPRS. */ +varray_type stmts_to_rescan; + /* Structure for entries in the expression hash table. This requires more memory for the hash table entries, but allows us @@ -89,6 +119,12 @@ struct expr_hash_elt propagation). */ static varray_type const_and_copies; +/* Stack of dest,src pairs that need to be restored during finalization. + + A NULL entry is used to mark the end of pairs which need to be + restored during finalization of this block. */ +static varray_type const_and_copies_stack; + /* Bitmap of SSA_NAMEs known to have a nonzero value, even if we do not know their exact value. */ static bitmap nonzero_vars; @@ -171,33 +207,14 @@ static varray_type vrp_data; struct dom_walk_block_data { - /* Array of all the expressions entered into the global expression - hash table by this block. During finalization we use this array to - know what expressions to remove from the global expression hash - table. */ - varray_type avail_exprs; - - /* Array of dest, src pairs that need to be restored during finalization - into the global const/copies table during finalization. */ - varray_type const_and_copies; - /* Similarly for the nonzero state of variables that needs to be restored during finalization. */ varray_type nonzero_vars; - /* Array of statements we need to rescan during finalization for newly - exposed variables. */ - varray_type stmts_to_rescan; - /* Array of variables which have their values constrained by operations in this basic block. We use this during finalization to know which variables need their VRP data updated. */ varray_type vrp_variables; - - /* Array of tree pairs used to restore the global currdefs to its - original state after completing optimization of a block and its - dominator children. */ - varray_type block_defs; }; struct eq_expr_value @@ -212,23 +229,22 @@ static void optimize_stmt (struct dom_walk_data *, block_stmt_iterator); static inline tree get_value_for (tree, varray_type table); static inline void set_value_for (tree, tree, varray_type table); -static tree lookup_avail_expr (tree, varray_type *, bool); -static struct eq_expr_value get_eq_expr_value (tree, int, varray_type *, +static tree lookup_avail_expr (tree, bool); +static struct eq_expr_value get_eq_expr_value (tree, int, basic_block, varray_type *); static hashval_t avail_expr_hash (const void *); static hashval_t real_avail_expr_hash (const void *); static int avail_expr_eq (const void *, const void *); static void htab_statistics (FILE *, htab_t); -static void record_cond (tree, tree, varray_type *); -static void record_dominating_conditions (tree, varray_type *); -static void record_const_or_copy (tree, tree, varray_type *); -static void record_equality (tree, tree, varray_type *); -static tree update_rhs_and_lookup_avail_expr (tree, tree, varray_type *, bool); +static void record_cond (tree, tree); +static void record_dominating_conditions (tree); +static void record_const_or_copy (tree, tree); +static void record_equality (tree, tree); +static tree update_rhs_and_lookup_avail_expr (tree, tree, bool); static tree simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *, tree, int); -static tree simplify_cond_and_lookup_avail_expr (tree, varray_type *, - stmt_ann_t, int); -static tree simplify_switch_and_lookup_avail_expr (tree, varray_type *, int); +static tree simplify_cond_and_lookup_avail_expr (tree, stmt_ann_t, int); +static tree simplify_switch_and_lookup_avail_expr (tree, int); static tree find_equivalent_equality_comparison (tree); static void record_range (tree, basic_block, varray_type *); static bool extract_range_from_cond (tree, tree *, tree *, int *); @@ -237,7 +253,7 @@ static void record_equivalences_from_incoming_edge (struct dom_walk_data *, basic_block); static bool eliminate_redundant_computations (struct dom_walk_data *, tree, stmt_ann_t); -static void record_equivalences_from_stmt (tree, varray_type *, varray_type *, +static void record_equivalences_from_stmt (tree, varray_type *, int, stmt_ann_t); static void thread_across_edge (struct dom_walk_data *, edge); static void dom_opt_finalize_block (struct dom_walk_data *, basic_block); @@ -245,15 +261,10 @@ static void dom_opt_initialize_block_local_data (struct dom_walk_data *, basic_block, bool); static void dom_opt_initialize_block (struct dom_walk_data *, basic_block); static void cprop_into_phis (struct dom_walk_data *, basic_block); -static void remove_local_expressions_from_table (varray_type locals, - unsigned limit, - htab_t table); -static void restore_vars_to_original_value (varray_type locals, - unsigned limit, - varray_type table); -static void restore_currdefs_to_original_value (varray_type locals, - unsigned limit); -static void register_definitions_for_stmt (tree, varray_type *); +static void remove_local_expressions_from_table (void); +static void restore_vars_to_original_value (void); +static void restore_currdefs_to_original_value (void); +static void register_definitions_for_stmt (tree); static edge single_incoming_edge_ignoring_loop_edges (basic_block); /* Local version of fold that doesn't introduce cruft. */ @@ -309,10 +320,14 @@ tree_ssa_dominator_optimize (void) /* Create our hash tables. */ avail_exprs = htab_create (1024, real_avail_expr_hash, avail_expr_eq, free); + VARRAY_TREE_INIT (avail_exprs_stack, 20, "Available expression stack"); + VARRAY_TREE_INIT (block_defs_stack, 20, "Block DEFS stack"); VARRAY_TREE_INIT (const_and_copies, num_ssa_names, "const_and_copies"); + VARRAY_TREE_INIT (const_and_copies_stack, 20, "Block const_and_copies stack"); nonzero_vars = BITMAP_XMALLOC (); VARRAY_GENERIC_PTR_INIT (vrp_data, num_ssa_names, "vrp_data"); need_eh_cleanup = BITMAP_XMALLOC (); + VARRAY_TREE_INIT (stmts_to_rescan, 20, "Statements to rescan"); /* Setup callbacks for the generic dominator tree walker. */ walk_data.walk_stmts_backward = false; @@ -443,8 +458,6 @@ struct tree_opt_pass pass_dominator = static void thread_across_edge (struct dom_walk_data *walk_data, edge e) { - struct dom_walk_block_data *bd - = VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); block_stmt_iterator bsi; tree stmt = NULL; tree phi; @@ -454,8 +467,8 @@ thread_across_edge (struct dom_walk_data *walk_data, edge e) { tree src = PHI_ARG_DEF_FROM_EDGE (phi, e); tree dst = PHI_RESULT (phi); - record_const_or_copy (dst, src, &bd->const_and_copies); - register_new_def (dst, &bd->block_defs); + record_const_or_copy (dst, src); + register_new_def (dst, &block_defs_stack); } for (bsi = bsi_start (e->dest); ! bsi_end_p (bsi); bsi_next (&bsi)) @@ -483,7 +496,7 @@ thread_across_edge (struct dom_walk_data *walk_data, edge e) if (TREE_CODE (TREE_OPERAND (stmt, 1)) == SSA_NAME) cached_lhs = TREE_OPERAND (stmt, 1); else - cached_lhs = lookup_avail_expr (stmt, NULL, false); + cached_lhs = lookup_avail_expr (stmt, false); lhs = TREE_OPERAND (stmt, 0); @@ -529,7 +542,7 @@ thread_across_edge (struct dom_walk_data *walk_data, edge e) } /* Try to lookup the new expression. */ - cached_lhs = lookup_avail_expr (stmt, NULL, false); + cached_lhs = lookup_avail_expr (stmt, false); /* Restore the statement's original uses/defs. */ for (i = 0; i < NUM_USES (uses); i++) @@ -569,8 +582,8 @@ thread_across_edge (struct dom_walk_data *walk_data, edge e) We want to record an equivalence lhs = cache_lhs so that if the result of this statement is used later we can copy propagate suitably. */ - record_const_or_copy (lhs, cached_lhs, &bd->const_and_copies); - register_new_def (lhs, &bd->block_defs); + record_const_or_copy (lhs, cached_lhs); + register_new_def (lhs, &block_defs_stack); } /* If we stopped at a COND_EXPR or SWITCH_EXPR, then see if we know which @@ -606,7 +619,7 @@ thread_across_edge (struct dom_walk_data *walk_data, edge e) else cond = SWITCH_COND (stmt); - if (TREE_CODE_CLASS (TREE_CODE (cond)) == '<') + if (COMPARISON_CLASS_P (cond)) { tree dummy_cond, op0, op1; enum tree_code cond_code; @@ -651,12 +664,11 @@ thread_across_edge (struct dom_walk_data *walk_data, edge e) otherwise look it up in the hash tables. */ cached_lhs = local_fold (COND_EXPR_COND (dummy_cond)); if (! is_gimple_min_invariant (cached_lhs)) - cached_lhs = lookup_avail_expr (dummy_cond, NULL, false); + cached_lhs = lookup_avail_expr (dummy_cond, false); if (!cached_lhs || ! is_gimple_min_invariant (cached_lhs)) { cached_lhs = simplify_cond_and_lookup_avail_expr (dummy_cond, NULL, - NULL, false); } } @@ -671,7 +683,7 @@ thread_across_edge (struct dom_walk_data *walk_data, edge e) cached_lhs = 0; } else - cached_lhs = lookup_avail_expr (stmt, NULL, false); + cached_lhs = lookup_avail_expr (stmt, false); if (cached_lhs) { @@ -727,18 +739,10 @@ dom_opt_initialize_block_local_data (struct dom_walk_data *walk_data ATTRIBUTE_U make sure we clear them before using them! */ if (recycled) { - gcc_assert (!bd->avail_exprs - || VARRAY_ACTIVE_SIZE (bd->avail_exprs) == 0); - gcc_assert (!bd->const_and_copies - || VARRAY_ACTIVE_SIZE (bd->const_and_copies) == 0); gcc_assert (!bd->nonzero_vars || VARRAY_ACTIVE_SIZE (bd->nonzero_vars) == 0); - gcc_assert (!bd->stmts_to_rescan - || VARRAY_ACTIVE_SIZE (bd->stmts_to_rescan) == 0); gcc_assert (!bd->vrp_variables || VARRAY_ACTIVE_SIZE (bd->vrp_variables) == 0); - gcc_assert (!bd->block_defs - || VARRAY_ACTIVE_SIZE (bd->block_defs) == 0); } } @@ -752,6 +756,12 @@ dom_opt_initialize_block (struct dom_walk_data *walk_data, basic_block bb) if (dump_file && (dump_flags & TDF_DETAILS)) fprintf (dump_file, "\n\nOptimizing block #%d\n\n", bb->index); + /* Push a marker on the stacks of local information so that we know how + far to unwind when we finalize this block. */ + VARRAY_PUSH_TREE (avail_exprs_stack, NULL_TREE); + VARRAY_PUSH_TREE (block_defs_stack, NULL_TREE); + VARRAY_PUSH_TREE (const_and_copies_stack, NULL_TREE); + record_equivalences_from_incoming_edge (walk_data, bb); /* PHI nodes can create equivalences too. */ @@ -769,8 +779,7 @@ initialize_hash_element (tree expr, tree lhs, struct expr_hash_elt *element) For the former case, we have no annotation and we want to hash the conditional expression. In the latter case we have an annotation and we want to record the expression the statement evaluates. */ - if (TREE_CODE_CLASS (TREE_CODE (expr)) == '<' - || TREE_CODE (expr) == TRUTH_NOT_EXPR) + if (COMPARISON_CLASS_P (expr) || TREE_CODE (expr) == TRUTH_NOT_EXPR) { element->ann = NULL; element->rhs = expr; @@ -804,22 +813,20 @@ initialize_hash_element (tree expr, tree lhs, struct expr_hash_elt *element) LIMIT entries left in LOCALs. */ static void -remove_local_expressions_from_table (varray_type locals, - unsigned limit, - htab_t table) +remove_local_expressions_from_table (void) { - if (! locals) - return; - /* Remove all the expressions made available in this block. */ - while (VARRAY_ACTIVE_SIZE (locals) > limit) + while (VARRAY_ACTIVE_SIZE (avail_exprs_stack) > 0) { struct expr_hash_elt element; - tree expr = VARRAY_TOP_TREE (locals); - VARRAY_POP (locals); + tree expr = VARRAY_TOP_TREE (avail_exprs_stack); + VARRAY_POP (avail_exprs_stack); + + if (expr == NULL_TREE) + break; initialize_hash_element (expr, NULL, &element); - htab_remove_elt_with_hash (table, &element, element.hash); + htab_remove_elt_with_hash (avail_exprs, &element, element.hash); } } @@ -842,45 +849,45 @@ restore_nonzero_vars_to_original_value (varray_type locals, } } -/* Use the source/dest pairs in LOCALS to restore TABLE to its original - state, stopping when there are LIMIT entries left in LOCALs. */ +/* Use the source/dest pairs in CONST_AND_COPIES_STACK to restore + CONST_AND_COPIES to its original state, stopping when we hit a + NULL marker. */ static void -restore_vars_to_original_value (varray_type locals, - unsigned limit, - varray_type table) +restore_vars_to_original_value (void) { - if (! locals) - return; - - while (VARRAY_ACTIVE_SIZE (locals) > limit) + while (VARRAY_ACTIVE_SIZE (const_and_copies_stack) > 0) { tree prev_value, dest; - prev_value = VARRAY_TOP_TREE (locals); - VARRAY_POP (locals); - dest = VARRAY_TOP_TREE (locals); - VARRAY_POP (locals); + dest = VARRAY_TOP_TREE (const_and_copies_stack); + VARRAY_POP (const_and_copies_stack); + + if (dest == NULL) + break; - set_value_for (dest, prev_value, table); + prev_value = VARRAY_TOP_TREE (const_and_copies_stack); + VARRAY_POP (const_and_copies_stack); + + set_value_for (dest, prev_value, const_and_copies); } } /* Similar to restore_vars_to_original_value, except that it restores CURRDEFS to its original value. */ static void -restore_currdefs_to_original_value (varray_type locals, unsigned limit) +restore_currdefs_to_original_value (void) { - if (!locals) - return; - /* Restore CURRDEFS to its original state. */ - while (VARRAY_ACTIVE_SIZE (locals) > limit) + while (VARRAY_ACTIVE_SIZE (block_defs_stack) > 0) { - tree tmp = VARRAY_TOP_TREE (locals); + tree tmp = VARRAY_TOP_TREE (block_defs_stack); tree saved_def, var; - VARRAY_POP (locals); + VARRAY_POP (block_defs_stack); + + if (tmp == NULL_TREE) + break; /* If we recorded an SSA_NAME, then make the SSA_NAME the current definition of its underlying variable. If we recorded anything @@ -926,7 +933,7 @@ dom_opt_finalize_block (struct dom_walk_data *walk_data, basic_block bb) } else if ((last = last_stmt (bb)) && TREE_CODE (last) == COND_EXPR - && (TREE_CODE_CLASS (TREE_CODE (COND_EXPR_COND (last))) == '<' + && (COMPARISON_CLASS_P (COND_EXPR_COND (last)) || TREE_CODE (COND_EXPR_COND (last)) == SSA_NAME) && EDGE_COUNT (bb->succs) == 2 && (EDGE_SUCC (bb, 0)->flags & EDGE_ABNORMAL) == 0 @@ -941,7 +948,7 @@ dom_opt_finalize_block (struct dom_walk_data *walk_data, basic_block bb) cond = COND_EXPR_COND (last); cond_code = TREE_CODE (cond); - if (TREE_CODE_CLASS (cond_code) == '<') + if (TREE_CODE_CLASS (cond_code) == tcc_comparison) inverted = invert_truthvalue (cond); /* If the THEN arm is the end of a dominator tree or has PHI nodes, @@ -949,41 +956,31 @@ dom_opt_finalize_block (struct dom_walk_data *walk_data, basic_block bb) if (get_immediate_dominator (CDI_DOMINATORS, true_edge->dest) != bb || phi_nodes (true_edge->dest)) { - unsigned avail_expr_limit; - unsigned const_and_copies_limit; - unsigned currdefs_limit; - - avail_expr_limit - = bd->avail_exprs ? VARRAY_ACTIVE_SIZE (bd->avail_exprs) : 0; - const_and_copies_limit - = bd->const_and_copies ? VARRAY_ACTIVE_SIZE (bd->const_and_copies) - : 0; - currdefs_limit - = bd->block_defs ? VARRAY_ACTIVE_SIZE (bd->block_defs) : 0; + /* Push a marker onto the available expression stack so that we + unwind any expressions related to the TRUE arm before processing + the false arm below. */ + VARRAY_PUSH_TREE (avail_exprs_stack, NULL_TREE); + VARRAY_PUSH_TREE (block_defs_stack, NULL_TREE); + VARRAY_PUSH_TREE (const_and_copies_stack, NULL_TREE); /* Record any equivalences created by following this edge. */ - if (TREE_CODE_CLASS (cond_code) == '<') + if (TREE_CODE_CLASS (cond_code) == tcc_comparison) { - record_cond (cond, boolean_true_node, &bd->avail_exprs); - record_dominating_conditions (cond, &bd->avail_exprs); - record_cond (inverted, boolean_false_node, &bd->avail_exprs); + record_cond (cond, boolean_true_node); + record_dominating_conditions (cond); + record_cond (inverted, boolean_false_node); } else if (cond_code == SSA_NAME) - record_const_or_copy (cond, boolean_true_node, - &bd->const_and_copies); + record_const_or_copy (cond, boolean_true_node); /* Now thread the edge. */ thread_across_edge (walk_data, true_edge); /* And restore the various tables to their state before we threaded this edge. */ - remove_local_expressions_from_table (bd->avail_exprs, - avail_expr_limit, - avail_exprs); - restore_vars_to_original_value (bd->const_and_copies, - const_and_copies_limit, - const_and_copies); - restore_currdefs_to_original_value (bd->block_defs, currdefs_limit); + remove_local_expressions_from_table (); + restore_vars_to_original_value (); + restore_currdefs_to_original_value (); } /* Similarly for the ELSE arm. */ @@ -991,15 +988,14 @@ dom_opt_finalize_block (struct dom_walk_data *walk_data, basic_block bb) || phi_nodes (false_edge->dest)) { /* Record any equivalences created by following this edge. */ - if (TREE_CODE_CLASS (cond_code) == '<') + if (TREE_CODE_CLASS (cond_code) == tcc_comparison) { - record_cond (cond, boolean_false_node, &bd->avail_exprs); - record_cond (inverted, boolean_true_node, &bd->avail_exprs); - record_dominating_conditions (inverted, &bd->avail_exprs); + record_cond (cond, boolean_false_node); + record_cond (inverted, boolean_true_node); + record_dominating_conditions (inverted); } else if (cond_code == SSA_NAME) - record_const_or_copy (cond, boolean_false_node, - &bd->const_and_copies); + record_const_or_copy (cond, boolean_false_node); thread_across_edge (walk_data, false_edge); @@ -1009,10 +1005,10 @@ dom_opt_finalize_block (struct dom_walk_data *walk_data, basic_block bb) } } - remove_local_expressions_from_table (bd->avail_exprs, 0, avail_exprs); + remove_local_expressions_from_table (); restore_nonzero_vars_to_original_value (bd->nonzero_vars, 0, nonzero_vars); - restore_vars_to_original_value (bd->const_and_copies, 0, const_and_copies); - restore_currdefs_to_original_value (bd->block_defs, 0); + restore_vars_to_original_value (); + restore_currdefs_to_original_value (); /* Remove VRP records associated with this basic block. They are no longer valid. @@ -1046,12 +1042,17 @@ dom_opt_finalize_block (struct dom_walk_data *walk_data, basic_block bb) VARRAY_POP (bd->vrp_variables); } - /* Re-scan operands in all statements that may have had new symbols - exposed. */ - while (bd->stmts_to_rescan && VARRAY_ACTIVE_SIZE (bd->stmts_to_rescan) > 0) + /* If we queued any statements to rescan in this block, then + go ahead and rescan them now. */ + while (VARRAY_ACTIVE_SIZE (stmts_to_rescan) > 0) { - tree stmt = VARRAY_TOP_TREE (bd->stmts_to_rescan); - VARRAY_POP (bd->stmts_to_rescan); + tree stmt = VARRAY_TOP_TREE (stmts_to_rescan); + basic_block stmt_bb = bb_for_stmt (stmt); + + if (stmt_bb != bb) + break; + + VARRAY_POP (stmts_to_rescan); mark_new_vars_to_rename (stmt, vars_to_rename); } } @@ -1067,10 +1068,9 @@ dom_opt_finalize_block (struct dom_walk_data *walk_data, basic_block bb) even if we do not know its exact value. */ static void -record_equivalences_from_phis (struct dom_walk_data *walk_data, basic_block bb) +record_equivalences_from_phis (struct dom_walk_data *walk_data ATTRIBUTE_UNUSED, + basic_block bb) { - struct dom_walk_block_data *bd - = VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); tree phi; for (phi = phi_nodes (bb); phi; phi = PHI_CHAIN (phi)) @@ -1129,7 +1129,7 @@ record_equivalences_from_phis (struct dom_walk_data *walk_data, basic_block bb) if (i == PHI_NUM_ARGS (phi)) bitmap_set_bit (nonzero_vars, SSA_NAME_VERSION (PHI_RESULT (phi))); - register_new_def (lhs, &bd->block_defs); + register_new_def (lhs, &block_defs_stack); } } @@ -1220,7 +1220,6 @@ record_equivalences_from_incoming_edge (struct dom_walk_data *walk_data, && (edge_flags & (EDGE_TRUE_VALUE | EDGE_FALSE_VALUE))) eq_expr_value = get_eq_expr_value (parent_block_last_stmt, (edge_flags & EDGE_TRUE_VALUE) != 0, - &bd->avail_exprs, bb, &bd->vrp_variables); /* Similarly when the parent block ended in a SWITCH_EXPR. @@ -1273,8 +1272,7 @@ record_equivalences_from_incoming_edge (struct dom_walk_data *walk_data, new value for VAR, so that occurrences of VAR can be replaced with VALUE while re-writing the THEN arm of a COND_EXPR. */ if (eq_expr_value.src && eq_expr_value.dst) - record_equality (eq_expr_value.dst, eq_expr_value.src, - &bd->const_and_copies); + record_equality (eq_expr_value.dst, eq_expr_value.src); } /* Dump SSA statistics on FILE. */ @@ -1350,7 +1348,7 @@ record_var_is_nonzero (tree var, varray_type *block_nonzero_vars_p) that the condition COND has the value VALUE. */ static void -record_cond (tree cond, tree value, varray_type *block_avail_exprs_p) +record_cond (tree cond, tree value) { struct expr_hash_elt *element = xmalloc (sizeof (struct expr_hash_elt)); void **slot; @@ -1362,9 +1360,7 @@ record_cond (tree cond, tree value, varray_type *block_avail_exprs_p) if (*slot == NULL) { *slot = (void *) element; - if (! *block_avail_exprs_p) - VARRAY_TREE_INIT (*block_avail_exprs_p, 20, "block_avail_exprs"); - VARRAY_PUSH_TREE (*block_avail_exprs_p, cond); + VARRAY_PUSH_TREE (avail_exprs_stack, cond); } else free (element); @@ -1376,7 +1372,7 @@ record_cond (tree cond, tree value, varray_type *block_avail_exprs_p) For example, if a < b is true, then a <= b must also be true. */ static void -record_dominating_conditions (tree cond, varray_type *block_avail_exprs_p) +record_dominating_conditions (tree cond) { switch (TREE_CODE (cond)) { @@ -1384,46 +1380,38 @@ record_dominating_conditions (tree cond, varray_type *block_avail_exprs_p) record_cond (build2 (LE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (ORDERED_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (NE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (LTGT_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); break; case GT_EXPR: record_cond (build2 (GE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (ORDERED_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (NE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (LTGT_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); break; case GE_EXPR: @@ -1431,111 +1419,93 @@ record_dominating_conditions (tree cond, varray_type *block_avail_exprs_p) record_cond (build2 (ORDERED_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); break; case EQ_EXPR: record_cond (build2 (ORDERED_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (LE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (GE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); break; case UNORDERED_EXPR: record_cond (build2 (NE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (UNLE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (UNGE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (UNEQ_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (UNLT_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (UNGT_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); break; case UNLT_EXPR: record_cond (build2 (UNLE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (NE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); break; case UNGT_EXPR: record_cond (build2 (UNGE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (NE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); break; case UNEQ_EXPR: record_cond (build2 (UNLE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (UNGE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); break; case LTGT_EXPR: record_cond (build2 (NE_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); record_cond (build2 (ORDERED_EXPR, boolean_type_node, TREE_OPERAND (cond, 0), TREE_OPERAND (cond, 1)), - boolean_true_node, - block_avail_exprs_p); + boolean_true_node); default: break; @@ -1546,22 +1516,19 @@ record_dominating_conditions (tree cond, varray_type *block_avail_exprs_p) Do the work of recording the value and undo info. */ static void -record_const_or_copy_1 (tree x, tree y, tree prev_x, - varray_type *block_const_and_copies_p) +record_const_or_copy_1 (tree x, tree y, tree prev_x) { set_value_for (x, y, const_and_copies); - if (!*block_const_and_copies_p) - VARRAY_TREE_INIT (*block_const_and_copies_p, 2, "block_const_and_copies"); - VARRAY_PUSH_TREE (*block_const_and_copies_p, x); - VARRAY_PUSH_TREE (*block_const_and_copies_p, prev_x); + VARRAY_PUSH_TREE (const_and_copies_stack, prev_x); + VARRAY_PUSH_TREE (const_and_copies_stack, x); } /* Record that X is equal to Y in const_and_copies. Record undo information in the block-local varray. */ static void -record_const_or_copy (tree x, tree y, varray_type *block_const_and_copies_p) +record_const_or_copy (tree x, tree y) { tree prev_x = get_value_for (x, const_and_copies); @@ -1572,14 +1539,14 @@ record_const_or_copy (tree x, tree y, varray_type *block_const_and_copies_p) y = tmp; } - record_const_or_copy_1 (x, y, prev_x, block_const_and_copies_p); + record_const_or_copy_1 (x, y, prev_x); } /* Similarly, but assume that X and Y are the two operands of an EQ_EXPR. This constrains the cases in which we may treat this as assignment. */ static void -record_equality (tree x, tree y, varray_type *block_const_and_copies_p) +record_equality (tree x, tree y) { tree prev_x = NULL, prev_y = NULL; @@ -1613,7 +1580,7 @@ record_equality (tree x, tree y, varray_type *block_const_and_copies_p) || REAL_VALUES_EQUAL (dconst0, TREE_REAL_CST (y)))) return; - record_const_or_copy_1 (x, y, prev_x, block_const_and_copies_p); + record_const_or_copy_1 (x, y, prev_x); } /* STMT is a MODIFY_EXPR for which we were unable to find RHS in the @@ -1630,8 +1597,6 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, tree rhs = TREE_OPERAND (stmt, 1); enum tree_code rhs_code = TREE_CODE (rhs); tree result = NULL; - struct dom_walk_block_data *bd - = VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); /* If we have lhs = ~x, look and see if we earlier had x = ~y. In which case we can change this statement to be lhs = y. @@ -1657,7 +1622,6 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, && ! SSA_NAME_OCCURS_IN_ABNORMAL_PHI (rhs_def_operand)) result = update_rhs_and_lookup_avail_expr (stmt, rhs_def_operand, - &bd->avail_exprs, insert); } } @@ -1735,14 +1699,12 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, /* If the result is a suitable looking gimple expression, then use it instead of the original for STMT. */ if (TREE_CODE (t) == SSA_NAME - || (TREE_CODE_CLASS (TREE_CODE (t)) == '1' + || (UNARY_CLASS_P (t) && TREE_CODE (TREE_OPERAND (t, 0)) == SSA_NAME) - || ((TREE_CODE_CLASS (TREE_CODE (t)) == '2' - || TREE_CODE_CLASS (TREE_CODE (t)) == '<') + || ((BINARY_CLASS_P (t) || COMPARISON_CLASS_P (t)) && TREE_CODE (TREE_OPERAND (t, 0)) == SSA_NAME && is_gimple_val (TREE_OPERAND (t, 1)))) - result = update_rhs_and_lookup_avail_expr - (stmt, t, &bd->avail_exprs, insert); + result = update_rhs_and_lookup_avail_expr (stmt, t, insert); } } } @@ -1782,9 +1744,7 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, TREE_OPERAND (TREE_OPERAND (dummy_cond, 0), 1) = integer_zero_node; } - val = simplify_cond_and_lookup_avail_expr (dummy_cond, - &bd->avail_exprs, - NULL, false); + val = simplify_cond_and_lookup_avail_expr (dummy_cond, NULL, false); } if (val && integer_onep (val)) @@ -1801,8 +1761,7 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, local_fold (build (MINUS_EXPR, TREE_TYPE (op1), op1, integer_one_node))); - result = update_rhs_and_lookup_avail_expr (stmt, t, - &bd->avail_exprs, insert); + result = update_rhs_and_lookup_avail_expr (stmt, t, insert); } } @@ -1837,9 +1796,7 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, TREE_OPERAND (TREE_OPERAND (dummy_cond, 0), 1) = build_int_cst (type, 0); } - val = simplify_cond_and_lookup_avail_expr (dummy_cond, - &bd->avail_exprs, - NULL, false); + val = simplify_cond_and_lookup_avail_expr (dummy_cond, NULL, false); if (!val) { @@ -1849,7 +1806,6 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, = build_int_cst (type, 0); val = simplify_cond_and_lookup_avail_expr (dummy_cond, - &bd->avail_exprs, NULL, false); if (val) @@ -1872,8 +1828,7 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, else t = op; - result = update_rhs_and_lookup_avail_expr (stmt, t, - &bd->avail_exprs, insert); + result = update_rhs_and_lookup_avail_expr (stmt, t, insert); } } @@ -1884,8 +1839,7 @@ simplify_rhs_and_lookup_avail_expr (struct dom_walk_data *walk_data, tree t = fold_read_from_constant_string (rhs); if (t) - result = update_rhs_and_lookup_avail_expr (stmt, t, - &bd->avail_exprs, insert); + result = update_rhs_and_lookup_avail_expr (stmt, t, insert); } return result; @@ -1960,13 +1914,12 @@ find_equivalent_equality_comparison (tree cond) static tree simplify_cond_and_lookup_avail_expr (tree stmt, - varray_type *block_avail_exprs_p, stmt_ann_t ann, int insert) { tree cond = COND_EXPR_COND (stmt); - if (TREE_CODE_CLASS (TREE_CODE (cond)) == '<') + if (COMPARISON_CLASS_P (cond)) { tree op0 = TREE_OPERAND (cond, 0); tree op1 = TREE_OPERAND (cond, 1); @@ -2000,8 +1953,7 @@ simplify_cond_and_lookup_avail_expr (tree stmt, /* Lookup the condition and return its known value if it exists. */ - new_cond = lookup_avail_expr (stmt, block_avail_exprs_p, - insert); + new_cond = lookup_avail_expr (stmt, insert); if (new_cond) return new_cond; @@ -2190,9 +2142,7 @@ simplify_cond_and_lookup_avail_expr (tree stmt, condition which we may be able to optimize better. */ static tree -simplify_switch_and_lookup_avail_expr (tree stmt, - varray_type *block_avail_exprs_p, - int insert) +simplify_switch_and_lookup_avail_expr (tree stmt, int insert) { tree cond = SWITCH_COND (stmt); tree def, to, ti; @@ -2238,7 +2188,7 @@ simplify_switch_and_lookup_avail_expr (tree stmt, SWITCH_COND (stmt) = def; modify_stmt (stmt); - return lookup_avail_expr (stmt, block_avail_exprs_p, insert); + return lookup_avail_expr (stmt, insert); } } } @@ -2372,8 +2322,6 @@ eliminate_redundant_computations (struct dom_walk_data *walk_data, bool insert = true; tree cached_lhs; bool retval = false; - struct dom_walk_block_data *bd - = VARRAY_TOP_GENERIC_PTR (walk_data->block_data_stack); if (TREE_CODE (stmt) == MODIFY_EXPR) def = TREE_OPERAND (stmt, 0); @@ -2388,28 +2336,21 @@ eliminate_redundant_computations (struct dom_walk_data *walk_data, insert = false; /* Check if the expression has been computed before. */ - cached_lhs = lookup_avail_expr (stmt, &bd->avail_exprs, insert); + cached_lhs = lookup_avail_expr (stmt, insert); /* If this is an assignment and the RHS was not in the hash table, then try to simplify the RHS and lookup the new RHS in the hash table. */ if (! cached_lhs && TREE_CODE (stmt) == MODIFY_EXPR) - cached_lhs = simplify_rhs_and_lookup_avail_expr (walk_data, - stmt, - insert); + cached_lhs = simplify_rhs_and_lookup_avail_expr (walk_data, stmt, insert); /* Similarly if this is a COND_EXPR and we did not find its expression in the hash table, simplify the condition and try again. */ else if (! cached_lhs && TREE_CODE (stmt) == COND_EXPR) - cached_lhs = simplify_cond_and_lookup_avail_expr (stmt, - &bd->avail_exprs, - ann, - insert); + cached_lhs = simplify_cond_and_lookup_avail_expr (stmt, ann, insert); /* Similarly for a SWITCH_EXPR. */ else if (!cached_lhs && TREE_CODE (stmt) == SWITCH_EXPR) - cached_lhs = simplify_switch_and_lookup_avail_expr (stmt, - &bd->avail_exprs, - insert); + cached_lhs = simplify_switch_and_lookup_avail_expr (stmt, insert); opt_stats.num_exprs_considered++; @@ -2465,7 +2406,6 @@ eliminate_redundant_computations (struct dom_walk_data *walk_data, static void record_equivalences_from_stmt (tree stmt, - varray_type *block_avail_exprs_p, varray_type *block_nonzero_vars_p, int may_optimize_p, stmt_ann_t ann) @@ -2592,7 +2532,7 @@ record_equivalences_from_stmt (tree stmt, /* Finally enter the statement into the available expression table. */ - lookup_avail_expr (new, block_avail_exprs_p, true); + lookup_avail_expr (new, true); } } } @@ -2697,6 +2637,7 @@ cprop_into_stmt (tree stmt, varray_type const_and_copies) bool may_have_exposed_new_symbols = false; use_operand_p op_p; ssa_op_iter iter; + tree rhs; FOR_EACH_SSA_USE_OPERAND (op_p, stmt, iter, SSA_OP_ALL_USES) { @@ -2705,6 +2646,13 @@ cprop_into_stmt (tree stmt, varray_type const_and_copies) |= cprop_operand (stmt, op_p, const_and_copies); } + if (may_have_exposed_new_symbols) + { + rhs = get_rhs (stmt); + if (rhs && TREE_CODE (rhs) == ADDR_EXPR) + recompute_tree_invarant_for_addr_expr (rhs); + } + return may_have_exposed_new_symbols; } @@ -2797,12 +2745,11 @@ optimize_stmt (struct dom_walk_data *walk_data, basic_block bb, /* Record any additional equivalences created by this statement. */ if (TREE_CODE (stmt) == MODIFY_EXPR) record_equivalences_from_stmt (stmt, - &bd->avail_exprs, &bd->nonzero_vars, may_optimize_p, ann); - register_definitions_for_stmt (stmt, &bd->block_defs); + register_definitions_for_stmt (stmt); /* If STMT is a COND_EXPR and it was modified, then we may know where it goes. If that is the case, then mark the CFG as altered. @@ -2853,11 +2800,7 @@ optimize_stmt (struct dom_walk_data *walk_data, basic_block bb, } if (may_have_exposed_new_symbols) - { - if (! bd->stmts_to_rescan) - VARRAY_TREE_INIT (bd->stmts_to_rescan, 20, "stmts_to_rescan"); - VARRAY_PUSH_TREE (bd->stmts_to_rescan, bsi_stmt (si)); - } + VARRAY_PUSH_TREE (stmts_to_rescan, bsi_stmt (si)); } /* Replace the RHS of STMT with NEW_RHS. If RHS can be found in the @@ -2868,9 +2811,7 @@ optimize_stmt (struct dom_walk_data *walk_data, basic_block bb, hash table to account for the changes made to STMT. */ static tree -update_rhs_and_lookup_avail_expr (tree stmt, tree new_rhs, - varray_type *block_avail_exprs_p, - bool insert) +update_rhs_and_lookup_avail_expr (tree stmt, tree new_rhs, bool insert) { tree cached_lhs = NULL; @@ -2887,7 +2828,7 @@ update_rhs_and_lookup_avail_expr (tree stmt, tree new_rhs, TREE_OPERAND (stmt, 1) = new_rhs; /* Now lookup the updated statement in the hash table. */ - cached_lhs = lookup_avail_expr (stmt, block_avail_exprs_p, insert); + cached_lhs = lookup_avail_expr (stmt, insert); /* We have now called lookup_avail_expr twice with two different versions of this same statement, once in optimize_stmt, once here. @@ -2911,7 +2852,7 @@ update_rhs_and_lookup_avail_expr (tree stmt, tree new_rhs, we found a copy of this statement in the second hash table lookup we want _no_ copies of this statement in BLOCK_AVAIL_EXPRs. */ if (insert) - VARRAY_POP (*block_avail_exprs_p); + VARRAY_POP (avail_exprs_stack); /* And make sure we record the fact that we modified this statement. */ @@ -2933,7 +2874,7 @@ update_rhs_and_lookup_avail_expr (tree stmt, tree new_rhs, aliased references. */ static tree -lookup_avail_expr (tree stmt, varray_type *block_avail_exprs_p, bool insert) +lookup_avail_expr (tree stmt, bool insert) { void **slot; tree lhs; @@ -2987,9 +2928,7 @@ lookup_avail_expr (tree stmt, varray_type *block_avail_exprs_p, bool insert) if (*slot == NULL) { *slot = (void *) element; - if (! *block_avail_exprs_p) - VARRAY_TREE_INIT (*block_avail_exprs_p, 20, "block_avail_exprs"); - VARRAY_PUSH_TREE (*block_avail_exprs_p, stmt ? stmt : element->rhs); + VARRAY_PUSH_TREE (avail_exprs_stack, stmt ? stmt : element->rhs); return NULL_TREE; } @@ -3085,7 +3024,7 @@ record_range (tree cond, basic_block bb, varray_type *vrp_variables_p) { /* We explicitly ignore NE_EXPRs. They rarely allow for meaningful range optimizations and significantly complicate the implementation. */ - if (TREE_CODE_CLASS (TREE_CODE (cond)) == '<' + if (COMPARISON_CLASS_P (cond) && TREE_CODE (cond) != NE_EXPR && TREE_CODE (TREE_TYPE (TREE_OPERAND (cond, 1))) == INTEGER_TYPE) { @@ -3132,7 +3071,6 @@ record_range (tree cond, basic_block bb, varray_type *vrp_variables_p) static struct eq_expr_value get_eq_expr_value (tree if_stmt, int true_arm, - varray_type *block_avail_exprs_p, basic_block bb, varray_type *vrp_variables_p) { @@ -3154,7 +3092,7 @@ get_eq_expr_value (tree if_stmt, /* If we have a comparison expression, then record its result into the available expression table. */ - if (TREE_CODE_CLASS (TREE_CODE (cond)) == '<') + if (COMPARISON_CLASS_P (cond)) { tree op0 = TREE_OPERAND (cond, 0); tree op1 = TREE_OPERAND (cond, 1); @@ -3198,9 +3136,9 @@ get_eq_expr_value (tree if_stmt, condition into the hash table. */ if (true_arm) { - record_cond (cond, boolean_true_node, block_avail_exprs_p); - record_dominating_conditions (cond, block_avail_exprs_p); - record_cond (inverted, boolean_false_node, block_avail_exprs_p); + record_cond (cond, boolean_true_node); + record_dominating_conditions (cond); + record_cond (inverted, boolean_false_node); if (TREE_CONSTANT (op1)) record_range (cond, bb, vrp_variables_p); @@ -3217,9 +3155,9 @@ get_eq_expr_value (tree if_stmt, else { - record_cond (inverted, boolean_true_node, block_avail_exprs_p); - record_dominating_conditions (inverted, block_avail_exprs_p); - record_cond (cond, boolean_false_node, block_avail_exprs_p); + record_cond (inverted, boolean_true_node); + record_dominating_conditions (inverted); + record_cond (cond, boolean_false_node); if (TREE_CONSTANT (op1)) record_range (inverted, bb, vrp_variables_p); @@ -3342,7 +3280,7 @@ avail_expr_eq (const void *p1, const void *p2) and CURRDEFS. */ static void -register_definitions_for_stmt (tree stmt, varray_type *block_defs_p) +register_definitions_for_stmt (tree stmt) { tree def; ssa_op_iter iter; @@ -3352,7 +3290,7 @@ register_definitions_for_stmt (tree stmt, varray_type *block_defs_p) /* FIXME: We shouldn't be registering new defs if the variable doesn't need to be renamed. */ - register_new_def (def, block_defs_p); + register_new_def (def, &block_defs_stack); } } diff --git a/gcc/tree-ssa-dse.c b/gcc/tree-ssa-dse.c index 820b2c6378c..23487f28b8e 100644 --- a/gcc/tree-ssa-dse.c +++ b/gcc/tree-ssa-dse.c @@ -98,6 +98,21 @@ static void fix_phi_uses (tree, tree); static void fix_stmt_v_may_defs (tree, tree); static void record_voperand_set (bitmap, bitmap *, unsigned int); +static unsigned max_stmt_uid; /* Maximal uid of a statement. Uids to phi + nodes are assigned using the versions of + ssa names they define. */ + +/* Returns uid of statement STMT. */ + +static unsigned +get_stmt_uid (tree stmt) +{ + if (TREE_CODE (stmt) == PHI_NODE) + return SSA_NAME_VERSION (PHI_RESULT (stmt)) + max_stmt_uid; + + return stmt_ann (stmt)->uid; +} + /* Function indicating whether we ought to include information for 'var' when calculating immediate uses. For this pass we only want use information for virtual variables. */ @@ -270,7 +285,7 @@ dse_optimize_stmt (struct dom_walk_data *walk_data, same block. */ while (num_uses == 1 && TREE_CODE (use) == PHI_NODE - && bitmap_bit_p (dse_gd->stores, stmt_ann (use)->uid)) + && bitmap_bit_p (dse_gd->stores, get_stmt_uid (use))) { /* Record the first PHI we skip so that we can fix its uses if we find that STMT is a dead store. */ @@ -287,7 +302,7 @@ dse_optimize_stmt (struct dom_walk_data *walk_data, /* If we have precisely one immediate use at this point, then we may have found redundant store. */ if (num_uses == 1 - && bitmap_bit_p (dse_gd->stores, stmt_ann (use)->uid) + && bitmap_bit_p (dse_gd->stores, get_stmt_uid (use)) && operand_equal_p (TREE_OPERAND (stmt, 0), TREE_OPERAND (use, 0), 0)) { @@ -311,6 +326,14 @@ dse_optimize_stmt (struct dom_walk_data *walk_data, This allows us to cascade dead stores. */ redirect_immediate_uses (stmt, skipped_phi ? skipped_phi : use); + /* Be sure to remove any dataflow information attached to + this statement. */ + free_df_for_stmt (stmt); + + /* And release any SSA_NAMEs set in this statement back to the + SSA_NAME manager. */ + release_defs (stmt); + /* Finally remove the dead store. */ bsi_remove (&bsi); } @@ -333,7 +356,7 @@ dse_record_phis (struct dom_walk_data *walk_data, basic_block bb) if (need_imm_uses_for (PHI_RESULT (phi))) record_voperand_set (dse_gd->stores, &bd->stores, - get_stmt_ann (phi)->uid); + get_stmt_uid (phi)); } static void @@ -356,21 +379,17 @@ tree_ssa_dse (void) { struct dom_walk_data walk_data; struct dse_global_data dse_gd; - unsigned int uid = 0; basic_block bb; /* Create a UID for each statement in the function. Ordering of the UIDs is not important for this pass. */ + max_stmt_uid = 0; FOR_EACH_BB (bb) { block_stmt_iterator bsi; - tree phi; for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi)) - stmt_ann (bsi_stmt (bsi))->uid = uid++; - - for (phi = phi_nodes (bb); phi; phi = PHI_CHAIN (phi)) - stmt_ann (phi)->uid = uid++; + stmt_ann (bsi_stmt (bsi))->uid = max_stmt_uid++; } /* We might consider making this a property of each pass so that it diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c index 9343ec2f50a..52c386001c9 100644 --- a/gcc/tree-ssa-forwprop.c +++ b/gcc/tree-ssa-forwprop.c @@ -172,7 +172,7 @@ record_single_argument_cond_exprs (varray_type cond_worklist, if (cond_code == SSA_NAME || ((cond_code == EQ_EXPR || cond_code == NE_EXPR) && TREE_CODE (TREE_OPERAND (cond, 0)) == SSA_NAME - && TREE_CODE_CLASS (TREE_CODE (TREE_OPERAND (cond, 1))) == 'c' + && CONSTANT_CLASS_P (TREE_OPERAND (cond, 1)) && INTEGRAL_TYPE_P (TREE_TYPE (TREE_OPERAND (cond, 1))))) { tree def; @@ -209,7 +209,7 @@ record_single_argument_cond_exprs (varray_type cond_worklist, /* The first operand must be an SSA_NAME and the second operand must be a constant. */ if (TREE_CODE (op0) != SSA_NAME - || TREE_CODE_CLASS (TREE_CODE (op1)) != 'c' + || !CONSTANT_CLASS_P (op1) || !INTEGRAL_TYPE_P (TREE_TYPE (op1))) continue; } @@ -223,7 +223,7 @@ record_single_argument_cond_exprs (varray_type cond_worklist, /* If TEST_VAR is set from a relational operation between two SSA_NAMEs or a combination of an SSA_NAME and a constant, then it is interesting. */ - if (TREE_CODE_CLASS (TREE_CODE (def_rhs)) == '<') + if (COMPARISON_CLASS_P (def_rhs)) { tree op0 = TREE_OPERAND (def_rhs, 0); tree op1 = TREE_OPERAND (def_rhs, 1); @@ -364,7 +364,7 @@ substitute_single_use_vars (varray_type *cond_worklist, new_cond = build (cond_code, boolean_type_node, op0, t); } /* If the variable is defined by a conditional expression... */ - else if (TREE_CODE_CLASS (def_rhs_code) == '<') + else if (TREE_CODE_CLASS (def_rhs_code) == tcc_comparison) { /* TEST_VAR was set from a relational operator. */ tree op0 = TREE_OPERAND (def_rhs, 0); @@ -382,7 +382,7 @@ substitute_single_use_vars (varray_type *cond_worklist, /* If we did not get a simple relational expression or bare SSA_NAME, then we can not optimize this case. */ - if (TREE_CODE_CLASS (TREE_CODE (new_cond)) != '<' + if (!COMPARISON_CLASS_P (new_cond) && TREE_CODE (new_cond) != SSA_NAME) continue; } diff --git a/gcc/tree-ssa-live.c b/gcc/tree-ssa-live.c index 2c2fa28b854..843c5cdb24e 100644 --- a/gcc/tree-ssa-live.c +++ b/gcc/tree-ssa-live.c @@ -1,5 +1,5 @@ /* Liveness for SSA trees. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2004 Free Software Foundation, Inc. Contributed by Andrew MacLeod This file is part of GCC. @@ -133,7 +133,7 @@ var_union (var_map map, tree var1, tree var2) if (map->compact_to_partition) p2 = map->compact_to_partition[p2]; - /* If there is no root_var set, or its not a user variable, set the + /* If there is no root_var set, or it's not a user variable, set the root_var to this one. */ if (!root_var || (DECL_P (root_var) && DECL_IGNORED_P (root_var))) { @@ -297,7 +297,7 @@ mark_all_vars_used_1 (tree *tp, int *walk_subtrees, if (TREE_CODE (t) == VAR_DECL) set_is_used (t); - if (DECL_P (t) || TYPE_P (t)) + if (IS_TYPE_OR_DECL_P (t)) *walk_subtrees = 0; return NULL; diff --git a/gcc/tree-ssa-live.h b/gcc/tree-ssa-live.h index eb93305ffd9..5bba958088c 100644 --- a/gcc/tree-ssa-live.h +++ b/gcc/tree-ssa-live.h @@ -130,7 +130,7 @@ static inline tree version_to_var (var_map map, int version) /* Given VAR, return the partition number in MAP which contains it. - NO_PARTITION is returned if its not in any partition. */ + NO_PARTITION is returned if it's not in any partition. */ static inline int var_to_partition (var_map map, tree var) diff --git a/gcc/tree-ssa-loop-ch.c b/gcc/tree-ssa-loop-ch.c index ff680cb5dbb..ecdf6f2cc2c 100644 --- a/gcc/tree-ssa-loop-ch.c +++ b/gcc/tree-ssa-loop-ch.c @@ -40,7 +40,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA /* Duplicates headers of loops if they are small enough, so that the statements in the loop body are always executed when the loop is entered. This - increases effectivity of code motion optimizations, and reduces the need + increases effectiveness of code motion optimizations, and reduces the need for loop preconditioning. */ /* Check whether we should duplicate HEADER of LOOP. At most *LIMIT @@ -95,67 +95,6 @@ should_duplicate_loop_header_p (basic_block header, struct loop *loop, return true; } -/* Duplicates destinations of edges in BBS_TO_DUPLICATE. */ - -static void -duplicate_blocks (varray_type bbs_to_duplicate) -{ - unsigned i; - edge_iterator ei; - edge preheader_edge, e; - basic_block header, new_header; - tree phi, new_phi, var; - - /* TODO: It should be quite easy to keep the dominance information - up-to-date. */ - free_dominance_info (CDI_DOMINATORS); - - for (i = 0; i < VARRAY_ACTIVE_SIZE (bbs_to_duplicate); i++) - { - preheader_edge = VARRAY_GENERIC_PTR_NOGC (bbs_to_duplicate, i); - header = preheader_edge->dest; - - gcc_assert (header->aux); - header->aux = NULL; - - new_header = duplicate_block (header, preheader_edge); - - /* Create the phi nodes on on entry to new_header. */ - for (phi = phi_nodes (header), var = PENDING_STMT (preheader_edge); - phi; - phi = TREE_CHAIN (phi), var = TREE_CHAIN (var)) - { - new_phi = create_phi_node (PHI_RESULT (phi), new_header); - add_phi_arg (&new_phi, TREE_VALUE (var), preheader_edge); - } - PENDING_STMT (preheader_edge) = NULL; - - /* Add the phi arguments to the outgoing edges. */ - FOR_EACH_EDGE (e, ei, header->succs) - { - edge e1; - edge_iterator ei; - FOR_EACH_EDGE (e1, ei, new_header->succs) - { - if (e1->dest == e->dest) - break; - } - if (e1 == NULL) - abort (); - - for (phi = phi_nodes (e->dest); phi; phi = TREE_CHAIN (phi)) - { - tree def = PHI_ARG_DEF_FROM_EDGE (phi, e); - add_phi_arg (&phi, def, e1); - } - } - } - - calculate_dominance_info (CDI_DOMINATORS); - - rewrite_ssa_into_ssa (); -} - /* Checks whether LOOP is a do-while style loop. */ static bool @@ -188,12 +127,14 @@ copy_loop_headers (void) unsigned i; struct loop *loop; basic_block header; - edge preheader_edge; - varray_type bbs_to_duplicate = NULL; + edge exit; + basic_block *bbs; + unsigned n_bbs; loops = loop_optimizer_init (dump_file); if (!loops) return; + rewrite_into_loop_closed_ssa (); /* We do not try to keep the information about irreducible regions up-to-date. */ @@ -203,14 +144,15 @@ copy_loop_headers (void) verify_loop_structure (loops); #endif + bbs = xmalloc (sizeof (basic_block) * n_basic_blocks); + for (i = 1; i < loops->num; i++) { /* Copy at most 20 insns. */ int limit = 20; loop = loops->parray[i]; - preheader_edge = loop_preheader_edge (loop); - header = preheader_edge->dest; + header = loop->header; /* If the loop is already a do-while style one (either because it was written as such, or because jump threading transformed it into one), @@ -223,44 +165,56 @@ copy_loop_headers (void) like while (a && b) {...}, where we want to have both of the conditions copied. TODO -- handle while (a || b) - like cases, by not requiring the header to have just a single successor and copying up to - postdominator. - - We do not really copy the blocks immediately, so that we do not have - to worry about updating loop structures, and also so that we do not - have to rewrite variables out of and into ssa form for each block. - Instead we just record the block into worklist and duplicate all of - them at once. */ + postdominator. */ + + exit = NULL; + n_bbs = 0; while (should_duplicate_loop_header_p (header, loop, &limit)) { - if (!bbs_to_duplicate) - VARRAY_GENERIC_PTR_NOGC_INIT (bbs_to_duplicate, 10, - "bbs_to_duplicate"); - VARRAY_PUSH_GENERIC_PTR_NOGC (bbs_to_duplicate, preheader_edge); - header->aux = &header->aux; - - if (dump_file && (dump_flags & TDF_DETAILS)) - fprintf (dump_file, - "Scheduled basic block %d for duplication.\n", - header->index); - /* Find a successor of header that is inside a loop; i.e. the new header after the condition is copied. */ if (flow_bb_inside_loop_p (loop, EDGE_SUCC (header, 0)->dest)) - preheader_edge = EDGE_SUCC (header, 0); + exit = EDGE_SUCC (header, 0); else - preheader_edge = EDGE_SUCC (header, 1); - header = preheader_edge->dest; + exit = EDGE_SUCC (header, 1); + bbs[n_bbs++] = header; + header = exit->dest; } - } - loop_optimizer_finalize (loops, NULL); + if (!exit) + continue; - if (bbs_to_duplicate) - { - duplicate_blocks (bbs_to_duplicate); - VARRAY_FREE (bbs_to_duplicate); + if (dump_file && (dump_flags & TDF_DETAILS)) + fprintf (dump_file, + "Duplicating header of the loop %d up to edge %d->%d.\n", + loop->num, exit->src->index, exit->dest->index); + + /* Ensure that the header will have just the latch as a predecessor + inside the loop. */ + if (EDGE_COUNT (exit->dest->preds) > 1) + exit = EDGE_SUCC (loop_split_edge_with (exit, NULL), 0); + + if (!tree_duplicate_sese_region (loop_preheader_edge (loop), exit, + bbs, n_bbs, NULL)) + { + fprintf (dump_file, "Duplication failed.\n"); + continue; + } + + /* Ensure that the latch and the preheader is simple (we know that they + are not now, since there was the loop exit condition. */ + loop_split_edge_with (loop_preheader_edge (loop), NULL); + loop_split_edge_with (loop_latch_edge (loop), NULL); } + free (bbs); + +#ifdef ENABLE_CHECKING + verify_loop_closed_ssa (); +#endif + + loop_optimizer_finalize (loops, NULL); + /* Run cleanup_tree_cfg here regardless of whether we have done anything, so that we cleanup the blocks created in order to get the loops into a canonical shape. */ @@ -282,7 +236,7 @@ struct tree_opt_pass pass_ch = NULL, /* next */ 0, /* static_pass_number */ TV_TREE_CH, /* tv_id */ - PROP_cfg | PROP_ssa | PROP_alias, /* properties_required */ + PROP_cfg | PROP_ssa, /* properties_required */ 0, /* properties_provided */ 0, /* properties_destroyed */ 0, /* todo_flags_start */ diff --git a/gcc/tree-ssa-loop-im.c b/gcc/tree-ssa-loop-im.c index b06e1d6a358..4f0c105ccb4 100644 --- a/gcc/tree-ssa-loop-im.c +++ b/gcc/tree-ssa-loop-im.c @@ -1,5 +1,5 @@ /* Loop invariant motion. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2004 Free Software Foundation, Inc. This file is part of GCC. @@ -76,7 +76,9 @@ struct lim_aux_data MAX_LOOP loop. */ }; -#define LIM_DATA(STMT) ((struct lim_aux_data *) (stmt_ann (STMT)->common.aux)) +#define LIM_DATA(STMT) (TREE_CODE (STMT) == PHI_NODE \ + ? NULL \ + : (struct lim_aux_data *) (stmt_ann (STMT)->common.aux)) /* Description of a memory reference for store motion. */ @@ -94,9 +96,20 @@ struct mem_ref block will be executed. */ #define ALWAYS_EXECUTED_IN(BB) ((struct loop *) (BB)->aux) -/* Maximum uid in the statement in the function. */ +static unsigned max_stmt_uid; /* Maximal uid of a statement. Uids to phi + nodes are assigned using the versions of + ssa names they define. */ -static unsigned max_uid; +/* Returns uid of statement STMT. */ + +static unsigned +get_stmt_uid (tree stmt) +{ + if (TREE_CODE (stmt) == PHI_NODE) + return SSA_NAME_VERSION (PHI_RESULT (stmt)) + max_stmt_uid; + + return stmt_ann (stmt)->uid; +} /* Calls CBCK for each index in memory reference ADDR_P. There are two kinds situations handled; in each of these cases, the memory reference @@ -243,7 +256,7 @@ outermost_invariant_loop (tree def, struct loop *loop) static struct loop * outermost_invariant_loop_expr (tree expr, struct loop *loop) { - char class = TREE_CODE_CLASS (TREE_CODE (expr)); + enum tree_code_class class = TREE_CODE_CLASS (TREE_CODE (expr)); unsigned i, nops; struct loop *max_loop = superloop_at_depth (loop, 1), *aloop; @@ -252,10 +265,10 @@ outermost_invariant_loop_expr (tree expr, struct loop *loop) || is_gimple_min_invariant (expr)) return outermost_invariant_loop (expr, loop); - if (class != '1' - && class != '2' - && class != 'e' - && class != '<') + if (class != tcc_unary + && class != tcc_binary + && class != tcc_expression + && class != tcc_comparison) return NULL; nops = first_rtl_op (TREE_CODE (expr)); @@ -701,7 +714,7 @@ may_move_till (tree ref, tree *index, void *data) static void force_move_till_expr (tree expr, struct loop *orig_loop, struct loop *loop) { - char class = TREE_CODE_CLASS (TREE_CODE (expr)); + enum tree_code_class class = TREE_CODE_CLASS (TREE_CODE (expr)); unsigned i, nops; if (TREE_CODE (expr) == SSA_NAME) @@ -714,10 +727,10 @@ force_move_till_expr (tree expr, struct loop *orig_loop, struct loop *loop) return; } - if (class != '1' - && class != '2' - && class != 'e' - && class != '<') + if (class != tcc_unary + && class != tcc_binary + && class != tcc_expression + && class != tcc_comparison) return; nops = first_rtl_op (TREE_CODE (expr)); @@ -805,10 +818,10 @@ maybe_queue_var (tree var, struct loop *loop, if (!def_bb || !flow_bb_inside_loop_p (loop, def_bb) - || TEST_BIT (seen, stmt_ann (stmt)->uid)) + || TEST_BIT (seen, get_stmt_uid (stmt))) return; - SET_BIT (seen, stmt_ann (stmt)->uid); + SET_BIT (seen, get_stmt_uid (stmt)); queue[(*in_queue)++] = stmt; } @@ -900,6 +913,7 @@ single_reachable_address (struct loop *loop, tree stmt, struct mem_ref **mem_refs, bool *seen_call_stmt) { + unsigned max_uid = max_stmt_uid + num_ssa_names; tree *queue = xmalloc (sizeof (tree) * max_uid); sbitmap seen = sbitmap_alloc (max_uid); unsigned in_queue = 1; @@ -917,7 +931,7 @@ single_reachable_address (struct loop *loop, tree stmt, sra_data.common_ref = NULL_TREE; queue[0] = stmt; - SET_BIT (seen, stmt_ann (stmt)->uid); + SET_BIT (seen, get_stmt_uid (stmt)); *seen_call_stmt = false; while (in_queue) @@ -975,9 +989,9 @@ single_reachable_address (struct loop *loop, tree stmt, if (!flow_bb_inside_loop_p (loop, bb_for_stmt (stmt))) continue; - if (TEST_BIT (seen, stmt_ann (stmt)->uid)) + if (TEST_BIT (seen, get_stmt_uid (stmt))) continue; - SET_BIT (seen, stmt_ann (stmt)->uid); + SET_BIT (seen, get_stmt_uid (stmt)); queue[in_queue++] = stmt; } @@ -1230,17 +1244,13 @@ determine_lsm (struct loops *loops) /* Create a UID for each statement in the function. Ordering of the UIDs is not important for this pass. */ - max_uid = 0; + max_stmt_uid = 0; FOR_EACH_BB (bb) { block_stmt_iterator bsi; - tree phi; for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi)) - stmt_ann (bsi_stmt (bsi))->uid = max_uid++; - - for (phi = phi_nodes (bb); phi; phi = TREE_CHAIN (phi)) - stmt_ann (phi)->uid = max_uid++; + stmt_ann (bsi_stmt (bsi))->uid = max_stmt_uid++; } compute_immediate_uses (TDFA_USE_VOPS, NULL); diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c index 224a68ff3bc..6bc9ae872ed 100644 --- a/gcc/tree-ssa-loop-ivopts.c +++ b/gcc/tree-ssa-loop-ivopts.c @@ -1,5 +1,5 @@ /* Induction variable optimizations. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2004 Free Software Foundation, Inc. This file is part of GCC. @@ -305,6 +305,10 @@ dump_iv (FILE *file, struct iv *iv) print_generic_expr (file, iv->ssa_name, TDF_SLIM); fprintf (file, "\n"); + fprintf (file, " type "); + print_generic_expr (file, TREE_TYPE (iv->base), TDF_SLIM); + fprintf (file, "\n"); + if (iv->step) { fprintf (file, " base "); @@ -358,34 +362,38 @@ dump_use (FILE *file, struct iv_use *use) gcc_unreachable (); } - fprintf (file, " in statement "); - print_generic_expr (file, use->stmt, TDF_SLIM); - fprintf (file, "\n"); - - fprintf (file, " at position "); - if (use->op_p) - print_generic_expr (file, *use->op_p, TDF_SLIM); - fprintf (file, "\n"); - - if (iv->step) - { - fprintf (file, " base "); - print_generic_expr (file, iv->base, TDF_SLIM); - fprintf (file, "\n"); - - fprintf (file, " step "); - print_generic_expr (file, iv->step, TDF_SLIM); - fprintf (file, "\n"); - } - else - { - fprintf (file, " invariant "); - print_generic_expr (file, iv->base, TDF_SLIM); - fprintf (file, "\n"); - } - - fprintf (file, " related candidates "); - dump_bitmap (file, use->related_cands); + fprintf (file, " in statement "); + print_generic_expr (file, use->stmt, TDF_SLIM); + fprintf (file, "\n"); + + fprintf (file, " at position "); + if (use->op_p) + print_generic_expr (file, *use->op_p, TDF_SLIM); + fprintf (file, "\n"); + + fprintf (file, " type "); + print_generic_expr (file, TREE_TYPE (iv->base), TDF_SLIM); + fprintf (file, "\n"); + + if (iv->step) + { + fprintf (file, " base "); + print_generic_expr (file, iv->base, TDF_SLIM); + fprintf (file, "\n"); + + fprintf (file, " step "); + print_generic_expr (file, iv->step, TDF_SLIM); + fprintf (file, "\n"); + } + else + { + fprintf (file, " invariant "); + print_generic_expr (file, iv->base, TDF_SLIM); + fprintf (file, "\n"); + } + + fprintf (file, " related candidates "); + dump_bitmap (file, use->related_cands); } /* Dumps information about the uses to FILE. */ @@ -438,22 +446,26 @@ dump_cand (FILE *file, struct iv_cand *cand) break; } - if (iv->step) - { - fprintf (file, " base "); - print_generic_expr (file, iv->base, TDF_SLIM); - fprintf (file, "\n"); - - fprintf (file, " step "); - print_generic_expr (file, iv->step, TDF_SLIM); - fprintf (file, "\n"); - } - else - { - fprintf (file, " invariant "); - print_generic_expr (file, iv->base, TDF_SLIM); - fprintf (file, "\n"); - } + fprintf (file, " type "); + print_generic_expr (file, TREE_TYPE (iv->base), TDF_SLIM); + fprintf (file, "\n"); + + if (iv->step) + { + fprintf (file, " base "); + print_generic_expr (file, iv->base, TDF_SLIM); + fprintf (file, "\n"); + + fprintf (file, " step "); + print_generic_expr (file, iv->step, TDF_SLIM); + fprintf (file, "\n"); + } + else + { + fprintf (file, " invariant "); + print_generic_expr (file, iv->base, TDF_SLIM); + fprintf (file, "\n"); + } } /* Returns the info for ssa version VER. */ @@ -709,7 +721,7 @@ static bool contains_abnormal_ssa_name_p (tree expr) { enum tree_code code = TREE_CODE (expr); - char class = TREE_CODE_CLASS (code); + enum tree_code_class class = TREE_CODE_CLASS (code); if (code == SSA_NAME) return SSA_NAME_OCCURS_IN_ABNORMAL_PHI (expr) != 0; @@ -725,13 +737,13 @@ contains_abnormal_ssa_name_p (tree expr) switch (class) { - case '2': - case '<': + case tcc_binary: + case tcc_comparison: if (contains_abnormal_ssa_name_p (TREE_OPERAND (expr, 1))) return true; /* Fallthru. */ - case '1': + case tcc_unary: if (contains_abnormal_ssa_name_p (TREE_OPERAND (expr, 0))) return true; @@ -1150,7 +1162,9 @@ idx_find_step (tree base, tree *idx, void *data) { struct ifs_ivopts_data *dta = data; struct iv *iv; - tree step, type, iv_type, iv_step; + tree step, type, iv_type, iv_step, lbound; + basic_block def_bb; + struct loop *loop = dta->ivopts_data->current_loop; if (TREE_CODE (*idx) != SSA_NAME) return true; @@ -1167,7 +1181,30 @@ idx_find_step (tree base, tree *idx, void *data) iv_type = TREE_TYPE (iv->base); type = build_pointer_type (TREE_TYPE (base)); if (TREE_CODE (base) == ARRAY_REF) - step = array_ref_element_size (base); + { + step = array_ref_element_size (base); + lbound = array_ref_low_bound (base); + + /* We only handle addresses whose step is an integer constant. */ + if (TREE_CODE (step) != INTEGER_CST) + return false; + + /* We need the lower bound to be invariant in loop, since otherwise + we are unable to initialize a new induction variable created + in strength reduction -- we need to take the address of the + reference in front of the loop. */ + if (is_gimple_min_invariant (lbound)) + ; /* Nothing to do. */ + else if (TREE_CODE (lbound) != SSA_NAME) + return false; + else + { + def_bb = bb_for_stmt (SSA_NAME_DEF_STMT (lbound)); + if (def_bb + && flow_bb_inside_loop_p (loop, def_bb)) + return false; + } + } else /* The step for pointer arithmetics already is 1 byte. */ step = build_int_cst (type, 1); @@ -1198,10 +1235,15 @@ idx_find_step (tree base, tree *idx, void *data) object is passed to it in DATA. */ static bool -idx_record_use (tree base ATTRIBUTE_UNUSED, tree *idx, +idx_record_use (tree base, tree *idx, void *data) { find_interesting_uses_op (data, *idx); + if (TREE_CODE (base) == ARRAY_REF) + { + find_interesting_uses_op (data, array_ref_element_size (base)); + find_interesting_uses_op (data, array_ref_low_bound (base)); + } return true; } @@ -1305,25 +1347,34 @@ find_interesting_uses_stmt (struct ivopts_data *data, tree stmt) switch (TREE_CODE_CLASS (TREE_CODE (rhs))) { - case '<': + case tcc_comparison: find_interesting_uses_cond (data, stmt, &TREE_OPERAND (stmt, 1)); return; - case 'r': + case tcc_reference: find_interesting_uses_address (data, stmt, &TREE_OPERAND (stmt, 1)); - if (TREE_CODE_CLASS (TREE_CODE (lhs)) == 'r') + if (REFERENCE_CLASS_P (lhs)) find_interesting_uses_address (data, stmt, &TREE_OPERAND (stmt, 0)); return; default: ; } - if (TREE_CODE_CLASS (TREE_CODE (lhs)) == 'r') + if (REFERENCE_CLASS_P (lhs) + && is_gimple_val (rhs)) { find_interesting_uses_address (data, stmt, &TREE_OPERAND (stmt, 0)); find_interesting_uses_op (data, rhs); return; } + + /* TODO -- we should also handle address uses of type + + memory = call (whatever); + + and + + call (memory). */ } if (TREE_CODE (stmt) == PHI_NODE @@ -1562,7 +1613,7 @@ add_standard_iv_candidates (struct ivopts_data *data) build_int_cst (unsigned_intSI_type_node, 1), true, NULL); - /* The same for a long type if it is still fast enought. */ + /* The same for a long type if it is still fast enough. */ if (BITS_PER_WORD > 32) add_candidate (data, build_int_cst (unsigned_intDI_type_node, 0), @@ -1998,10 +2049,10 @@ static tree get_computation_at (struct loop *loop, struct iv_use *use, struct iv_cand *cand, tree at) { - tree ubase = unsave_expr_now (use->iv->base); - tree ustep = unsave_expr_now (use->iv->step); - tree cbase = unsave_expr_now (cand->iv->base); - tree cstep = unsave_expr_now (cand->iv->step); + tree ubase = use->iv->base; + tree ustep = use->iv->step; + tree cbase = cand->iv->base; + tree cstep = cand->iv->step; tree utype = TREE_TYPE (ubase), ctype = TREE_TYPE (cbase); tree uutype; tree expr, delta; @@ -2503,98 +2554,6 @@ force_var_cost (struct ivopts_data *data, return target_spill_cost; } -/* Peels a single layer of ADDR. If DIFF is not NULL, do it only if the - offset is constant and add the offset to DIFF. */ - -static tree -peel_address (tree addr, unsigned HOST_WIDE_INT *diff) -{ - tree off, size; - HOST_WIDE_INT bit_offset; - - switch (TREE_CODE (addr)) - { - case SSA_NAME: - case INDIRECT_REF: - case BIT_FIELD_REF: - case VAR_DECL: - case PARM_DECL: - case RESULT_DECL: - case STRING_CST: - case REALPART_EXPR: - case IMAGPART_EXPR: - return NULL_TREE; - - case COMPONENT_REF: - off = DECL_FIELD_BIT_OFFSET (TREE_OPERAND (addr, 1)); - bit_offset = TREE_INT_CST_LOW (off); - - gcc_assert ((bit_offset % BITS_PER_UNIT) == 0); - - if (diff) - *diff += bit_offset / BITS_PER_UNIT; - - return TREE_OPERAND (addr, 0); - - case VIEW_CONVERT_EXPR: - return TREE_OPERAND (addr, 0); - - case ARRAY_REF: - off = TREE_OPERAND (addr, 1); - - if (diff) - { - if (!cst_and_fits_in_hwi (off)) - return NULL_TREE; - - size = TYPE_SIZE_UNIT (TREE_TYPE (addr)); - if (!cst_and_fits_in_hwi (size)) - return NULL_TREE; - - *diff += TREE_INT_CST_LOW (off) * TREE_INT_CST_LOW (size); - } - - return TREE_OPERAND (addr, 0); - - default: - gcc_unreachable (); - } -} - -/* Checks whether E1 and E2 have constant difference, and if they do, - store it in *DIFF. */ - -static bool -ptr_difference_const (tree e1, tree e2, unsigned HOST_WIDE_INT *diff) -{ - int d1 = 0, d2 = 0; - tree x; - unsigned HOST_WIDE_INT delta1 = 0, delta2 = 0; - - /* Find depths of E1 and E2. */ - for (x = e1; x; x = peel_address (x, NULL)) - d1++; - for (x = e2; x; x = peel_address (x, NULL)) - d2++; - - for (; e1 && d1 > d2; e1 = peel_address (e1, &delta1)) - d1--; - for (; e2 && d2 > d1; e2 = peel_address (e2, &delta2)) - d2--; - - while (e1 && e2 && !operand_equal_p (e1, e2, 0)) - { - e1 = peel_address (e1, &delta1); - e2 = peel_address (e2, &delta1); - } - - if (!e1 || !e2) - return false; - - *diff = delta1 - delta2; - return true; -} - /* Estimates cost of expressing address ADDR as var + symbol + offset. The value of offset is added to OFFSET, SYMBOL_PRESENT and VAR_PRESENT are set to false if the corresponding part is missing. DEPENDS_ON is a set of the @@ -2605,21 +2564,28 @@ split_address_cost (struct ivopts_data *data, tree addr, bool *symbol_present, bool *var_present, unsigned HOST_WIDE_INT *offset, bitmap *depends_on) { - tree core = addr; - - while (core - && TREE_CODE (core) != VAR_DECL) - core = peel_address (core, offset); + tree core; + HOST_WIDE_INT bitsize; + HOST_WIDE_INT bitpos; + tree toffset; + enum machine_mode mode; + int unsignedp, volatilep; + + core = get_inner_reference (addr, &bitsize, &bitpos, &toffset, &mode, + &unsignedp, &volatilep); - if (!core) + if (toffset != 0 + || bitpos % BITS_PER_UNIT != 0 + || TREE_CODE (core) != VAR_DECL) { *symbol_present = false; *var_present = true; fd_ivopts_data = data; walk_tree (&addr, find_depends, depends_on, NULL); return target_spill_cost; - } - + } + + *offset += bitpos / BITS_PER_UNIT; if (TREE_STATIC (core) || DECL_EXTERNAL (core)) { @@ -2644,7 +2610,7 @@ ptr_difference_cost (struct ivopts_data *data, tree e1, tree e2, bool *symbol_present, bool *var_present, unsigned HOST_WIDE_INT *offset, bitmap *depends_on) { - unsigned HOST_WIDE_INT diff = 0; + HOST_WIDE_INT diff = 0; unsigned cost; gcc_assert (TREE_CODE (e1) == ADDR_EXPR); @@ -2908,7 +2874,7 @@ iv_value (struct iv *iv, tree niter) tree type = TREE_TYPE (iv->base); niter = fold_convert (type, niter); - val = fold (build2 (MULT_EXPR, type, iv->step, unsave_expr_now (niter))); + val = fold (build2 (MULT_EXPR, type, iv->step, niter)); return fold (build2 (PLUS_EXPR, type, iv->base, val)); } @@ -4128,6 +4094,7 @@ rewrite_use_outer (struct ivopts_data *data, value = get_computation_at (data->current_loop, use, cand, last_stmt (exit->src)); + value = unshare_expr (value); op = force_gimple_operand (value, &stmts, true, SSA_NAME_VAR (tgt)); /* If we will preserve the iv anyway and we would need to perform diff --git a/gcc/tree-ssa-loop-manip.c b/gcc/tree-ssa-loop-manip.c index 1eba9f8654e..7d1edc44aa3 100644 --- a/gcc/tree-ssa-loop-manip.c +++ b/gcc/tree-ssa-loop-manip.c @@ -397,17 +397,26 @@ split_loop_exit_edge (edge exit) { basic_block dest = exit->dest; basic_block bb = loop_split_edge_with (exit, NULL); - tree phi, new_phi, new_name; + tree phi, new_phi, new_name, name; use_operand_p op_p; for (phi = phi_nodes (dest); phi; phi = TREE_CHAIN (phi)) { op_p = PHI_ARG_DEF_PTR_FROM_EDGE (phi, EDGE_SUCC (bb, 0)); - new_name = duplicate_ssa_name (USE_FROM_PTR (op_p), NULL); + name = USE_FROM_PTR (op_p); + + /* If the argument of the phi node is a constant, we do not need + to keep it inside loop. */ + if (TREE_CODE (name) != SSA_NAME) + continue; + + /* Otherwise create an auxiliary phi node that will copy the value + of the ssa name out of the loop. */ + new_name = duplicate_ssa_name (name, NULL); new_phi = create_phi_node (new_name, bb); SSA_NAME_DEF_STMT (new_name) = new_phi; - add_phi_arg (&new_phi, USE_FROM_PTR (op_p), exit); + add_phi_arg (&new_phi, name, exit); SET_USE (op_p, new_name); } } diff --git a/gcc/tree-ssa-loop-niter.c b/gcc/tree-ssa-loop-niter.c index 822c8564d51..381456cc8d8 100644 --- a/gcc/tree-ssa-loop-niter.c +++ b/gcc/tree-ssa-loop-niter.c @@ -84,22 +84,6 @@ inverse (tree x, tree mask) return rslt; } -/* Returns unsigned variant of TYPE. */ - -tree -unsigned_type_for (tree type) -{ - return make_unsigned_type (TYPE_PRECISION (type)); -} - -/* Returns signed variant of TYPE. */ - -static tree -signed_type_for (tree type) -{ - return make_signed_type (TYPE_PRECISION (type)); -} - /* Determine the number of iterations according to condition (for staying inside loop) which compares two induction variables using comparison operator CODE. The induction variable on left side of the comparison diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c index 6b234c13f89..8aae4ca1c6d 100644 --- a/gcc/tree-ssa-operands.c +++ b/gcc/tree-ssa-operands.c @@ -1,5 +1,5 @@ /* SSA operands management for trees. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2004 Free Software Foundation, Inc. This file is part of GCC. @@ -32,11 +32,13 @@ Boston, MA 02111-1307, USA. */ #include "tree-pass.h" #include "ggc.h" #include "timevar.h" +#include "cgraph.h" +#include "langhooks.h" -/* This file contains the code required to mnage the operands cache of the +/* This file contains the code required to manage the operands cache of the SSA optimizer. For every stmt, we maintain an operand cache in the stmt - annotation. This cache contains operands that will be of interets to + annotation. This cache contains operands that will be of interest to optimizers and other passes wishing to manipulate the IL. The operand type are broken up into REAL and VIRTUAL operands. The real @@ -133,8 +135,8 @@ static inline void append_def (tree *); static inline void append_use (tree *); static void append_v_may_def (tree); static void append_v_must_def (tree); -static void add_call_clobber_ops (tree); -static void add_call_read_ops (tree); +static void add_call_clobber_ops (tree, tree); +static void add_call_read_ops (tree, tree); static void add_stmt_operand (tree *, tree, int); /* Return a vector of contiguous memory for NUM def operands. */ @@ -795,7 +797,7 @@ append_v_must_def (tree var) will be destroyed. It is appropriate to call free_stmt_operands() on the value returned in old_ops. - The rationale for this: Certain optimizations wish to exmaine the difference + The rationale for this: Certain optimizations wish to examine the difference between new_ops and old_ops after processing. If a set of operands don't change, new_ops will simply assume the pointer in old_ops, and the old_ops pointer will be set to NULL, indicating no memory needs to be cleared. @@ -965,7 +967,7 @@ static void get_expr_operands (tree stmt, tree *expr_p, int flags) { enum tree_code code; - char class; + enum tree_code_class class; tree expr = *expr_p; if (expr == NULL || expr == error_mark_node) @@ -1168,11 +1170,11 @@ get_expr_operands (tree stmt, tree *expr_p, int flags) return; default: - if (class == '1') + if (class == tcc_unary) goto do_unary; - if (class == '2' || class == '<') + if (class == tcc_binary || class == tcc_comparison) goto do_binary; - if (class == 'c' || class == 't') + if (class == tcc_constant || class == tcc_type) return; } @@ -1187,7 +1189,7 @@ get_expr_operands (tree stmt, tree *expr_p, int flags) } -/* Scan operands in the ASM_EXPR stmt refered to in INFO. */ +/* Scan operands in the ASM_EXPR stmt referred to in INFO. */ static void get_asm_expr_operands (tree stmt) @@ -1380,6 +1382,7 @@ get_call_expr_operands (tree stmt, tree expr) { tree op; int call_flags = call_expr_flags (expr); + tree callee = get_callee_fndecl (expr); /* Find uses in the called function. */ get_expr_operands (stmt, &TREE_OPERAND (expr, 0), opf_none); @@ -1396,9 +1399,9 @@ get_call_expr_operands (tree stmt, tree expr) there is no point in recording that. */ if (TREE_SIDE_EFFECTS (expr) && !(call_flags & (ECF_PURE | ECF_CONST | ECF_NORETURN))) - add_call_clobber_ops (stmt); + add_call_clobber_ops (stmt, callee); else if (!(call_flags & ECF_CONST)) - add_call_read_ops (stmt); + add_call_read_ops (stmt, callee); } } @@ -1562,7 +1565,7 @@ note_addressable (tree var, stmt_ann_t s_ann) clobbered variables in the function. */ static void -add_call_clobber_ops (tree stmt) +add_call_clobber_ops (tree stmt, tree callee) { /* Functions that are not const, pure or never return may clobber call-clobbered variables. */ @@ -1578,17 +1581,58 @@ add_call_clobber_ops (tree stmt) else { size_t i; + bitmap not_read_b = NULL, not_written_b = NULL; + + /* Get info for module level statics. There is a bit set for + each static if the call being processed does not read or + write that variable. */ + + /* ??? Turn off the optimization until it gets fixed. */ + if (0 && callee) + { + not_read_b = get_global_statics_not_read (callee); + not_written_b = get_global_statics_not_written (callee); + } EXECUTE_IF_SET_IN_BITMAP (call_clobbered_vars, 0, i, { tree var = referenced_var (i); - /* If VAR is read-only, don't add a V_MAY_DEF, just a - VUSE operand. */ - if (!TREE_READONLY (var)) - add_stmt_operand (&var, stmt, opf_is_def); + bool not_read + = not_read_b ? bitmap_bit_p (not_read_b, i) : false; + bool not_written + = not_written_b ? bitmap_bit_p (not_written_b, i) : false; + + if (not_read) + { + /* The var is not read during the call. */ + if (!not_written) + add_stmt_operand (&var, stmt, opf_is_def); + } else - add_stmt_operand (&var, stmt, opf_none); + { + /* The var is read during the call. */ + if (not_written) + add_stmt_operand (&var, stmt, opf_none); + + /* The not_read and not_written bits are only set for module + static variables. Neither is set here, so we may be dealing + with a module static or we may not. So we still must look + anywhere else we can (such as the TREE_READONLY) to get + better info. */ + + /* If VAR is read-only, don't add a V_MAY_DEF, just a + VUSE operand. FIXME, this is quirky. TREE_READONLY + by itself is not enough here. We can only decide + that the call will not affect VAR if all these + conditions are met. One would think that + TREE_READONLY should be sufficient. */ + else if (TREE_READONLY (var) + && (TREE_STATIC (var) || DECL_EXTERNAL (var))) + add_stmt_operand (&var, stmt, opf_none); + else + add_stmt_operand (&var, stmt, opf_is_def); + } }); } } @@ -1598,7 +1642,7 @@ add_call_clobber_ops (tree stmt) function. */ static void -add_call_read_ops (tree stmt) +add_call_read_ops (tree stmt, tree callee) { /* Otherwise, if the function is not pure, it may reference memory. Add a VUSE for .GLOBAL_VAR if it has been created. Otherwise, add a VUSE @@ -1609,10 +1653,15 @@ add_call_read_ops (tree stmt) else { size_t i; + bitmap not_read_b = callee + ? get_global_statics_not_read (callee) : NULL; EXECUTE_IF_SET_IN_BITMAP (call_clobbered_vars, 0, i, { tree var = referenced_var (i); + bool not_read = not_read_b + ? bitmap_bit_p(not_read_b, i) : false; + if (!not_read) add_stmt_operand (&var, stmt, opf_none); }); } diff --git a/gcc/tree-ssa-phiopt.c b/gcc/tree-ssa-phiopt.c index 5e548282b37..7f060da50c0 100644 --- a/gcc/tree-ssa-phiopt.c +++ b/gcc/tree-ssa-phiopt.c @@ -337,7 +337,7 @@ conditional_replacement (basic_block bb, tree phi, tree arg0, tree arg1) if (old_result) { tree new1; - if (TREE_CODE_CLASS (TREE_CODE (old_result)) != '<') + if (!COMPARISON_CLASS_P (old_result)) return false; new1 = build (TREE_CODE (old_result), TREE_TYPE (result), diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index 56bed5cb93c..e298ae162eb 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -848,15 +848,21 @@ phi_translate (tree expr, value_set_t set, basic_block pred, if (expr == NULL) return NULL; + if (is_gimple_min_invariant (expr)) + return expr; + /* Phi translations of a given expression don't change, */ phitrans = phi_trans_lookup (expr, pred); if (phitrans) return phitrans; - switch (TREE_CODE_CLASS (TREE_CODE (expr))) { - case '2': + case tcc_reference: + /* XXX: Until we have PRE of loads working, none will be ANTIC. */ + return NULL; + + case tcc_binary: { tree oldop1 = TREE_OPERAND (expr, 0); tree oldop2 = TREE_OPERAND (expr, 1); @@ -884,13 +890,9 @@ phi_translate (tree expr, value_set_t set, basic_block pred, phi_trans_add (oldexpr, newexpr, pred); } } - break; - /* XXX: Until we have PRE of loads working, none will be ANTIC. - */ - case 'r': - return NULL; - break; - case '1': + return expr; + + case tcc_unary: { tree oldop1 = TREE_OPERAND (expr, 0); tree newop1; @@ -911,10 +913,9 @@ phi_translate (tree expr, value_set_t set, basic_block pred, phi_trans_add (oldexpr, newexpr, pred); } } - break; - case 'd': - gcc_unreachable (); - case 'x': + return expr; + + case tcc_exceptional: { tree phi = NULL; int i; @@ -934,9 +935,11 @@ phi_translate (tree expr, value_set_t set, basic_block pred, return PHI_ARG_DEF (phi, i); } } - break; + return expr; + + default: + gcc_unreachable (); } - return expr; } static void @@ -1046,34 +1049,31 @@ valid_in_set (value_set_t set, tree expr) { switch (TREE_CODE_CLASS (TREE_CODE (expr))) { - case '2': + case tcc_binary: { tree op1 = TREE_OPERAND (expr, 0); tree op2 = TREE_OPERAND (expr, 1); return set_contains_value (set, op1) && set_contains_value (set, op2); } - break; - case '1': + + case tcc_unary: { tree op1 = TREE_OPERAND (expr, 0); return set_contains_value (set, op1); } - break; - /* XXX: Until PRE of loads works, no reference nodes are ANTIC. - */ - case 'r': - { - return false; - } - case 'x': - { - gcc_assert (TREE_CODE (expr) == SSA_NAME); - return true; - } - case 'c': - gcc_unreachable (); - } - return false; + + case tcc_reference: + /* XXX: Until PRE of loads works, no reference nodes are ANTIC. */ + return false; + + case tcc_exceptional: + gcc_assert (TREE_CODE (expr) == SSA_NAME); + return true; + + default: + /* No other cases should be encountered. */ + gcc_unreachable (); + } } /* Clean the set of expressions that are no longer valid in SET. This @@ -1294,9 +1294,9 @@ find_or_generate_expression (basic_block block, tree expr, tree stmts) if (genop == NULL) { genop = VALUE_HANDLE_EXPR_SET (expr)->head->expr; - gcc_assert (TREE_CODE_CLASS (TREE_CODE (genop)) == '1' - || TREE_CODE_CLASS (TREE_CODE (genop)) == '2' - || TREE_CODE_CLASS (TREE_CODE (genop)) == 'r'); + gcc_assert (UNARY_CLASS_P (genop) + || BINARY_CLASS_P (genop) + || REFERENCE_CLASS_P (genop)); genop = create_expression_by_pieces (block, genop, stmts); } return genop; @@ -1326,7 +1326,7 @@ create_expression_by_pieces (basic_block block, tree expr, tree stmts) switch (TREE_CODE_CLASS (TREE_CODE (expr))) { - case '2': + case tcc_binary: { tree_stmt_iterator tsi; tree genop1, genop2; @@ -1348,7 +1348,7 @@ create_expression_by_pieces (basic_block block, tree expr, tree stmts) pre_stats.insertions++; break; } - case '1': + case tcc_unary: { tree_stmt_iterator tsi; tree genop1; @@ -1426,8 +1426,8 @@ insert_aux (basic_block block) node; node = node->next) { - if (TREE_CODE_CLASS (TREE_CODE (node->expr)) == '2' - || TREE_CODE_CLASS (TREE_CODE (node->expr)) == '1') + if (BINARY_CLASS_P (node->expr) + || UNARY_CLASS_P (node->expr)) { tree *avail; tree val; @@ -1530,8 +1530,8 @@ insert_aux (basic_block block) tree builtexpr; bprime = pred->src; eprime = avail[bprime->index]; - if (TREE_CODE_CLASS (TREE_CODE (eprime)) == '2' - || TREE_CODE_CLASS (TREE_CODE (eprime)) == '1') + if (BINARY_CLASS_P (eprime) + || UNARY_CLASS_P (eprime)) { builtexpr = create_expression_by_pieces (bprime, eprime, @@ -1671,13 +1671,13 @@ create_value_expr_from (tree expr, basic_block block, vuse_optype vuses) enum tree_code code = TREE_CODE (expr); tree vexpr; - gcc_assert (TREE_CODE_CLASS (code) == '1' - || TREE_CODE_CLASS (code) == '2' - || TREE_CODE_CLASS (code) == 'r'); + gcc_assert (TREE_CODE_CLASS (code) == tcc_unary + || TREE_CODE_CLASS (code) == tcc_binary + || TREE_CODE_CLASS (code) == tcc_reference); - if (TREE_CODE_CLASS (code) == '1') + if (TREE_CODE_CLASS (code) == tcc_unary) vexpr = pool_alloc (unary_node_pool); - else if (TREE_CODE_CLASS (code) == 'r') + else if (TREE_CODE_CLASS (code) == tcc_reference) vexpr = pool_alloc (reference_node_pool); else vexpr = pool_alloc (binary_node_pool); @@ -1794,8 +1794,7 @@ compute_avail (basic_block block) value_insert_into_set (EXP_GEN (block), rhs); continue; } - else if (TREE_CODE_CLASS (TREE_CODE (rhs)) == '1' - || TREE_CODE_CLASS (TREE_CODE (rhs)) == '2' + else if (UNARY_CLASS_P (rhs) || BINARY_CLASS_P (rhs) || TREE_CODE (rhs) == INDIRECT_REF) { /* For binary, unary, and reference expressions, @@ -1908,7 +1907,6 @@ eliminate (void) static void init_pre (void) { - size_t tsize; basic_block bb; connect_infinite_loops_to_exit (); @@ -1940,13 +1938,12 @@ init_pre (void) sizeof (struct value_set_node), 30); calculate_dominance_info (CDI_POST_DOMINATORS); calculate_dominance_info (CDI_DOMINATORS); - tsize = tree_size (build (PLUS_EXPR, void_type_node, NULL_TREE, NULL_TREE)); - binary_node_pool = create_alloc_pool ("Binary tree nodes", tsize, 30); - tsize = tree_size (build1 (NEGATE_EXPR, void_type_node, NULL_TREE)); - unary_node_pool = create_alloc_pool ("Unary tree nodes", tsize, 30); - tsize = tree_size (build (COMPONENT_REF, void_type_node, NULL_TREE, - NULL_TREE, NULL_TREE)); - reference_node_pool = create_alloc_pool ("Reference tree nodes", tsize, 30); + binary_node_pool = create_alloc_pool ("Binary tree nodes", + tree_code_size (PLUS_EXPR), 30); + unary_node_pool = create_alloc_pool ("Unary tree nodes", + tree_code_size (NEGATE_EXPR), 30); + reference_node_pool = create_alloc_pool ("Reference tree nodes", + tree_code_size (COMPONENT_REF), 30); FOR_ALL_BB (bb) { EXP_GEN (bb) = set_new (true); diff --git a/gcc/tree-ssa-propagate.c b/gcc/tree-ssa-propagate.c index 5910d633fa4..0801b393b87 100644 --- a/gcc/tree-ssa-propagate.c +++ b/gcc/tree-ssa-propagate.c @@ -567,13 +567,13 @@ set_rhs (tree *stmt_p, tree expr) ssa_op_iter iter; /* Verify the constant folded result is valid gimple. */ - if (TREE_CODE_CLASS (code) == '2') + if (TREE_CODE_CLASS (code) == tcc_binary) { if (!is_gimple_val (TREE_OPERAND (expr, 0)) || !is_gimple_val (TREE_OPERAND (expr, 1))) return false; } - else if (TREE_CODE_CLASS (code) == '1') + else if (TREE_CODE_CLASS (code) == tcc_unary) { if (!is_gimple_val (TREE_OPERAND (expr, 0))) return false; diff --git a/gcc/tree-ssa-threadupdate.c b/gcc/tree-ssa-threadupdate.c index bf178e9d0f9..0d770ee0912 100644 --- a/gcc/tree-ssa-threadupdate.c +++ b/gcc/tree-ssa-threadupdate.c @@ -205,7 +205,7 @@ create_block_for_threading (basic_block bb, struct redirection_data *rd) and may expose new optimization opportunities. Note that we have to update dominator tree and SSA graph after such changes. - The key to keeping the SSA graph update managable is to duplicate + The key to keeping the SSA graph update manageable is to duplicate the side effects occurring in BB so that those side effects still occur on the paths which bypass BB after redirecting edges. diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index 8ccea165fc7..b1aa7d23497 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -207,11 +207,15 @@ err: arguments). IS_VIRTUAL is true if SSA_NAME is created by a V_MAY_DEF or a - V_MUST_DEF. */ + V_MUST_DEF. + + If NAMES_DEFINED_IN_BB is not NULL, it contains a bitmap of ssa names + that are defined before STMT in basic block BB. */ static bool verify_use (basic_block bb, basic_block def_bb, tree ssa_name, - tree stmt, bool check_abnormal, bool is_virtual) + tree stmt, bool check_abnormal, bool is_virtual, + bitmap names_defined_in_bb) { bool err = false; @@ -232,6 +236,13 @@ verify_use (basic_block bb, basic_block def_bb, tree ssa_name, def_bb->index, bb->index); err = true; } + else if (bb == def_bb + && names_defined_in_bb != NULL + && !bitmap_bit_p (names_defined_in_bb, SSA_NAME_VERSION (ssa_name))) + { + error ("Definition in block %i follows the use", def_bb->index); + err = true; + } if (check_abnormal && !SSA_NAME_OCCURS_IN_ABNORMAL_PHI (ssa_name)) @@ -284,7 +295,8 @@ verify_phi_args (tree phi, basic_block bb, basic_block *definition_block) if (TREE_CODE (op) == SSA_NAME) err = verify_use (e->src, definition_block[SSA_NAME_VERSION (op)], op, phi, e->flags & EDGE_ABNORMAL, - !is_gimple_reg (PHI_RESULT (phi))); + !is_gimple_reg (PHI_RESULT (phi)), + NULL); if (e->dest != bb) { @@ -508,6 +520,8 @@ verify_ssa (void) basic_block *definition_block = xcalloc (num_ssa_names, sizeof (basic_block)); ssa_op_iter iter; tree op; + enum dom_state orig_dom_state = dom_computed[CDI_DOMINATORS]; + bitmap names_defined_in_bb = BITMAP_XMALLOC (); timevar_push (TV_TREE_SSA_VERIFY); @@ -581,8 +595,12 @@ verify_ssa (void) /* Verify the arguments for every PHI node in the block. */ for (phi = phi_nodes (bb); phi; phi = PHI_CHAIN (phi)) - if (verify_phi_args (phi, bb, definition_block)) - goto err; + { + if (verify_phi_args (phi, bb, definition_block)) + goto err; + bitmap_set_bit (names_defined_in_bb, + SSA_NAME_VERSION (PHI_RESULT (phi))); + } /* Now verify all the uses and vuses in every statement of the block. */ for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi)) @@ -592,23 +610,58 @@ verify_ssa (void) FOR_EACH_SSA_TREE_OPERAND (op, stmt, iter, SSA_OP_VIRTUAL_USES) { if (verify_use (bb, definition_block[SSA_NAME_VERSION (op)], - op, stmt, false, true)) + op, stmt, false, true, + names_defined_in_bb)) goto err; } FOR_EACH_SSA_TREE_OPERAND (op, stmt, iter, SSA_OP_USE) { if (verify_use (bb, definition_block[SSA_NAME_VERSION (op)], - op, stmt, false, false)) + op, stmt, false, false, + names_defined_in_bb)) + goto err; + } + + FOR_EACH_SSA_TREE_OPERAND (op, stmt, iter, SSA_OP_ALL_DEFS) + { + bitmap_set_bit (names_defined_in_bb, SSA_NAME_VERSION (op)); + } + } + + /* Verify the uses in arguments of PHI nodes at the exits from the + block. */ + FOR_EACH_EDGE (e, ei, bb->succs) + { + for (phi = phi_nodes (e->dest); phi; phi = PHI_CHAIN (phi)) + { + bool virtual = !is_gimple_reg (PHI_RESULT (phi)); + op = PHI_ARG_DEF_FROM_EDGE (phi, e); + if (TREE_CODE (op) != SSA_NAME) + continue; + + if (verify_use (bb, definition_block[SSA_NAME_VERSION (op)], + op, phi, false, virtual, + names_defined_in_bb)) goto err; } } + + bitmap_clear (names_defined_in_bb); } /* Finally, verify alias information. */ verify_alias_info (); free (definition_block); + /* Restore the dominance information to its prior known state, so + that we do not perturb the compiler's subsequent behavior. */ + if (orig_dom_state == DOM_NONE) + free_dominance_info (CDI_DOMINATORS); + else + dom_computed[CDI_DOMINATORS] = orig_dom_state; + + BITMAP_XFREE (names_defined_in_bb); timevar_pop (TV_TREE_SSA_VERIFY); return; @@ -920,7 +973,6 @@ replace_immediate_uses (tree var, tree repl) int i, j, n; dataflow_t df; tree stmt; - stmt_ann_t ann; bool mark_new_vars; ssa_op_iter iter; use_operand_p use_p; @@ -931,7 +983,6 @@ replace_immediate_uses (tree var, tree repl) for (i = 0; i < n; i++) { stmt = immediate_use (df, i); - ann = stmt_ann (stmt); if (TREE_CODE (stmt) == PHI_NODE) { @@ -971,6 +1022,25 @@ replace_immediate_uses (tree var, tree repl) propagate_value (use_p, repl); } + /* FIXME. If REPL is a constant, we need to fold STMT. + However, fold_stmt wants a pointer to the statement, because + it may happen that it needs to replace the whole statement + with a new expression. Since the current def-use machinery + does not return pointers to statements, we call fold_stmt + with the address of a local temporary, if that call changes + the temporary then we fall on our swords. + + Note that all this will become unnecessary soon. This + pass is being replaced with a proper copy propagation pass + for 4.1 (dnovillo, 2004-09-17). */ + if (TREE_CODE (repl) != SSA_NAME) + { + tree tmp = stmt; + fold_stmt (&tmp); + if (tmp != stmt) + abort (); + } + /* If REPL is a pointer, it may have different memory tags associated with it. For instance, VAR may have had a name tag while REPL only had a type tag. In these cases, the virtual operands (if @@ -1230,7 +1300,7 @@ warn_uninitialized_var (tree *tp, int *walk_subtrees, void *data) warn_uninit (t, "%H'%D' is used uninitialized in this function", locus); *walk_subtrees = 0; } - else if (DECL_P (t) || TYPE_P (t)) + else if (IS_TYPE_OR_DECL_P (t)) *walk_subtrees = 0; return NULL_TREE; diff --git a/gcc/tree-ssanames.c b/gcc/tree-ssanames.c index d138a793ebf..55ba145c35a 100644 --- a/gcc/tree-ssanames.c +++ b/gcc/tree-ssanames.c @@ -1,5 +1,5 @@ /* Generic routines for manipulating SSA_NAME expressions - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2004 Free Software Foundation, Inc. This file is part of GCC. @@ -184,9 +184,7 @@ make_ssa_name (tree var, tree stmt) gcc_assert (DECL_P (var) || TREE_CODE (var) == INDIRECT_REF); - gcc_assert (!stmt - || IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (stmt))) - || TREE_CODE (stmt) == PHI_NODE); + gcc_assert (!stmt || EXPR_P (stmt) || TREE_CODE (stmt) == PHI_NODE); /* If our free list has an element, then use it. Also reuse the SSA version number of the element on the free list which helps diff --git a/gcc/tree-tailcall.c b/gcc/tree-tailcall.c index 067e43981aa..990c35f1c8d 100644 --- a/gcc/tree-tailcall.c +++ b/gcc/tree-tailcall.c @@ -1,5 +1,5 @@ /* Tail call optimization on trees. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2004 Free Software Foundation, Inc. This file is part of GCC. @@ -283,9 +283,16 @@ process_assignment (tree ass, tree stmt, block_stmt_iterator call, tree *m, return true; } - if (TREE_CODE_CLASS (code) != '2') + if (TREE_CODE_CLASS (code) != tcc_binary) return false; + /* Accumulator optimizations will reverse the order of operations. + We can only do that for floating-point types if we're assuming + that addition and multiplication are associative. */ + if (!flag_unsafe_math_optimizations) + if (FLOAT_TYPE_P (TREE_TYPE (DECL_RESULT (current_function_decl)))) + return false; + /* We only handle the code like x = call (); @@ -623,7 +630,7 @@ adjust_return_value (basic_block bb, tree m, tree a) var = make_ssa_name (tmp, stmt); TREE_OPERAND (stmt, 0) = var; - bsi_insert_before (&bsi, stmt, BSI_NEW_STMT); + bsi_insert_before (&bsi, stmt, BSI_SAME_STMT); } else var = ret_var; @@ -638,7 +645,7 @@ adjust_return_value (basic_block bb, tree m, tree a) var = make_ssa_name (tmp, stmt); TREE_OPERAND (stmt, 0) = var; - bsi_insert_before (&bsi, stmt, BSI_NEW_STMT); + bsi_insert_before (&bsi, stmt, BSI_SAME_STMT); } TREE_OPERAND (ret_stmt, 0) = var; @@ -685,12 +692,14 @@ eliminate_tail_call (struct tailcall *t) bsi_next (&bsi); while (!bsi_end_p (bsi)) { + tree t = bsi_stmt (bsi); /* Do not remove the return statement, so that redirect_edge_and_branch sees how the block ends. */ - if (TREE_CODE (bsi_stmt (bsi)) == RETURN_EXPR) + if (TREE_CODE (t) == RETURN_EXPR) break; bsi_remove (&bsi); + release_defs (t); } /* Replace the call by a jump to the start of function. */ @@ -774,6 +783,7 @@ eliminate_tail_call (struct tailcall *t) } bsi_remove (&t->call_bsi); + release_defs (call); } /* Optimizes the tailcall described by T. If OPT_TAILCALLS is true, also diff --git a/gcc/tree-vectorizer.c b/gcc/tree-vectorizer.c index 78a5ee01b0f..d83ef98daa3 100644 --- a/gcc/tree-vectorizer.c +++ b/gcc/tree-vectorizer.c @@ -1524,7 +1524,7 @@ vect_transform_loop (loop_vec_info loop_vinfo, Returns whether a stmt with OPERAND can be vectorized. Supportable operands are constants, loop invariants, and operands that are - defined by the current iteration of the loop. Unsupportable opernads are + defined by the current iteration of the loop. Unsupportable operands are those that are defined by a previous iteration of the loop (as is the case in reduction/induction computations). */ diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index 98c2ac82713..eb8a5868a77 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -52,7 +52,7 @@ typedef struct _stmt_vec_info { /* The stmt to which this info struct refers to. */ tree stmt; - /* The loop with resprct to which STMT is vectorized. */ + /* The loop with respect to which STMT is vectorized. */ struct loop *loop; /* Not all stmts in the loop need to be vectorized. e.g, the incrementation diff --git a/gcc/tree.c b/gcc/tree.c index c7031e16cbe..02d2ee9b0ad 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -50,6 +50,23 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "tree-flow.h" #include "params.h" +/* Each tree code class has an associated string representation. + These must correspond to the tree_code_class entries. */ + +const char *const tree_code_class_strings[] = +{ + "exceptional", + "constant", + "type", + "declaration", + "reference", + "comparison", + "unary", + "binary", + "statement", + "expression", +}; + /* obstack.[ch] explicitly declined to prototype this. */ extern int _obstack_allocated_p (struct obstack *h, void *obj); @@ -142,31 +159,35 @@ decl_assembler_name (tree decl) return DECL_CHECK (decl)->decl.assembler_name; } -/* Compute the number of bytes occupied by 'node'. This routine only - looks at TREE_CODE and, if the code is TREE_VEC, TREE_VEC_LENGTH. */ +/* Compute the number of bytes occupied by a tree with code CODE. This + function cannot be used for TREE_VEC or PHI_NODE codes, which are of + variable length. */ size_t -tree_size (tree node) +tree_code_size (enum tree_code code) { - enum tree_code code = TREE_CODE (node); + /* We can't state the size of a TREE_VEC or PHI_NODE + without knowing how many elements it will have. */ + gcc_assert (code != TREE_VEC); + gcc_assert (code != PHI_NODE); switch (TREE_CODE_CLASS (code)) { - case 'd': /* A decl node */ + case tcc_declaration: /* A decl node */ return sizeof (struct tree_decl); - case 't': /* a type node */ + case tcc_type: /* a type node */ return sizeof (struct tree_type); - case 'r': /* a reference */ - case 'e': /* an expression */ - case 's': /* an expression with side effects */ - case '<': /* a comparison expression */ - case '1': /* a unary arithmetic expression */ - case '2': /* a binary arithmetic expression */ + case tcc_reference: /* a reference */ + case tcc_expression: /* an expression */ + case tcc_statement: /* an expression with side effects */ + case tcc_comparison: /* a comparison expression */ + case tcc_unary: /* a unary arithmetic expression */ + case tcc_binary: /* a binary arithmetic expression */ return (sizeof (struct tree_exp) - + TREE_CODE_LENGTH (code) * sizeof (char *) - sizeof (char *)); + + (TREE_CODE_LENGTH (code) - 1) * sizeof (char *)); - case 'c': /* a constant */ + case tcc_constant: /* a constant */ switch (code) { case INTEGER_CST: return sizeof (struct tree_int_cst); @@ -178,21 +199,16 @@ tree_size (tree node) return lang_hooks.tree_size (code); } - case 'x': /* something random, like an identifier. */ + case tcc_exceptional: /* something random, like an identifier. */ switch (code) { case IDENTIFIER_NODE: return lang_hooks.identifier_size; case TREE_LIST: return sizeof (struct tree_list); - case TREE_VEC: return (sizeof (struct tree_vec) - + TREE_VEC_LENGTH(node) * sizeof(char *) - - sizeof (char *)); case ERROR_MARK: case PLACEHOLDER_EXPR: return sizeof (struct tree_common); - case PHI_NODE: return (sizeof (struct tree_phi_node) - + (PHI_ARG_CAPACITY (node) - 1) * - sizeof (struct phi_arg_d)); + case PHI_NODE: case SSA_NAME: return sizeof (struct tree_ssa_name); @@ -209,9 +225,31 @@ tree_size (tree node) } } -/* Return a newly allocated node of code CODE. - For decl and type nodes, some other fields are initialized. - The rest of the node is initialized to zero. +/* Compute the number of bytes occupied by NODE. This routine only + looks at TREE_CODE, except for PHI_NODE and TREE_VEC nodes. */ +size_t +tree_size (tree node) +{ + enum tree_code code = TREE_CODE (node); + switch (code) + { + case PHI_NODE: + return (sizeof (struct tree_phi_node) + + (PHI_ARG_CAPACITY (node) - 1) * sizeof (struct phi_arg_d)); + + case TREE_VEC: + return (sizeof (struct tree_vec) + + (TREE_VEC_LENGTH (node) - 1) * sizeof(char *)); + + default: + return tree_code_size (code); + } +} + +/* Return a newly allocated node of code CODE. For decl and type + nodes, some other fields are initialized. The rest of the node is + initialized to zero. This function cannot be used for PHI_NODE or + TREE_VEC nodes, which is enforced by asserts in tree_code_size. Achoo! I got a code in the node. */ @@ -219,52 +257,41 @@ tree make_node_stat (enum tree_code code MEM_STAT_DECL) { tree t; - int type = TREE_CODE_CLASS (code); - size_t length; + enum tree_code_class type = TREE_CODE_CLASS (code); + size_t length = tree_code_size (code); #ifdef GATHER_STATISTICS tree_node_kind kind; -#endif - struct tree_common ttmp; - /* We can't allocate a TREE_VEC, PHI_NODE, or STRING_CST - without knowing how many elements it will have. */ - gcc_assert (code != TREE_VEC); - gcc_assert (code != PHI_NODE); - - TREE_SET_CODE ((tree)&ttmp, code); - length = tree_size ((tree)&ttmp); - -#ifdef GATHER_STATISTICS switch (type) { - case 'd': /* A decl node */ + case tcc_declaration: /* A decl node */ kind = d_kind; break; - case 't': /* a type node */ + case tcc_type: /* a type node */ kind = t_kind; break; - case 's': /* an expression with side effects */ + case tcc_statement: /* an expression with side effects */ kind = s_kind; break; - case 'r': /* a reference */ + case tcc_reference: /* a reference */ kind = r_kind; break; - case 'e': /* an expression */ - case '<': /* a comparison expression */ - case '1': /* a unary arithmetic expression */ - case '2': /* a binary arithmetic expression */ + case tcc_expression: /* an expression */ + case tcc_comparison: /* a comparison expression */ + case tcc_unary: /* a unary arithmetic expression */ + case tcc_binary: /* a binary arithmetic expression */ kind = e_kind; break; - case 'c': /* a constant */ + case tcc_constant: /* a constant */ kind = c_kind; break; - case 'x': /* something random, like an identifier. */ + case tcc_exceptional: /* something random, like an identifier. */ if (code == IDENTIFIER_NODE) kind = id_kind; else if (code == TREE_VEC) @@ -280,9 +307,6 @@ make_node_stat (enum tree_code code MEM_STAT_DECL) else kind = x_kind; break; - - default: - gcc_unreachable (); } tree_node_counts[(int) kind]++; @@ -297,11 +321,11 @@ make_node_stat (enum tree_code code MEM_STAT_DECL) switch (type) { - case 's': + case tcc_statement: TREE_SIDE_EFFECTS (t) = 1; break; - case 'd': + case tcc_declaration: if (code != FUNCTION_DECL) DECL_ALIGN (t) = 1; DECL_USER_ALIGN (t) = 0; @@ -313,7 +337,7 @@ make_node_stat (enum tree_code code MEM_STAT_DECL) DECL_POINTER_ALIAS_SET (t) = -1; break; - case 't': + case tcc_type: TYPE_UID (t) = next_type_uid++; TYPE_ALIGN (t) = char_type_node ? TYPE_ALIGN (char_type_node) : 0; TYPE_USER_ALIGN (t) = 0; @@ -327,12 +351,12 @@ make_node_stat (enum tree_code code MEM_STAT_DECL) TYPE_ALIAS_SET (t) = -1; break; - case 'c': + case tcc_constant: TREE_CONSTANT (t) = 1; TREE_INVARIANT (t) = 1; break; - case 'e': + case tcc_expression: switch (code) { case INIT_EXPR: @@ -351,6 +375,10 @@ make_node_stat (enum tree_code code MEM_STAT_DECL) break; } break; + + default: + /* Other classes need no special treatment. */ + break; } return t; @@ -377,9 +405,9 @@ copy_node_stat (tree node MEM_STAT_DECL) TREE_VISITED (t) = 0; t->common.ann = 0; - if (TREE_CODE_CLASS (code) == 'd') + if (TREE_CODE_CLASS (code) == tcc_declaration) DECL_UID (t) = next_decl_uid++; - else if (TREE_CODE_CLASS (code) == 't') + else if (TREE_CODE_CLASS (code) == tcc_type) { TYPE_UID (t) = next_type_uid++; /* The following is so that the debug code for @@ -1556,9 +1584,9 @@ skip_simple_arithmetic (tree expr) inner = expr; while (1) { - if (TREE_CODE_CLASS (TREE_CODE (inner)) == '1') + if (UNARY_CLASS_P (inner)) inner = TREE_OPERAND (inner, 0); - else if (TREE_CODE_CLASS (TREE_CODE (inner)) == '2') + else if (BINARY_CLASS_P (inner)) { if (TREE_INVARIANT (TREE_OPERAND (inner, 1))) inner = TREE_OPERAND (inner, 0); @@ -1596,22 +1624,29 @@ tree_node_structure (tree t) switch (TREE_CODE_CLASS (code)) { - case 'd': return TS_DECL; - case 't': return TS_TYPE; - case 'r': case '<': case '1': case '2': case 'e': case 's': + case tcc_declaration: + return TS_DECL; + case tcc_type: + return TS_TYPE; + case tcc_reference: + case tcc_comparison: + case tcc_unary: + case tcc_binary: + case tcc_expression: + case tcc_statement: return TS_EXP; - default: /* 'c' and 'x' */ + default: /* tcc_constant and tcc_exceptional */ break; } switch (code) { - /* 'c' cases. */ + /* tcc_constant cases. */ case INTEGER_CST: return TS_INT_CST; case REAL_CST: return TS_REAL_CST; case COMPLEX_CST: return TS_COMPLEX; case VECTOR_CST: return TS_VECTOR; case STRING_CST: return TS_STRING; - /* 'x' cases. */ + /* tcc_exceptional cases. */ case ERROR_MARK: return TS_COMMON; case IDENTIFIER_NODE: return TS_IDENTIFIER; case TREE_LIST: return TS_LIST; @@ -1646,22 +1681,23 @@ contains_placeholder_p (tree exp) switch (TREE_CODE_CLASS (code)) { - case 'r': + case tcc_reference: /* Don't look at any PLACEHOLDER_EXPRs that might be in index or bit position computations since they will be converted into a WITH_RECORD_EXPR involving the reference, which will assume here will be valid. */ return CONTAINS_PLACEHOLDER_P (TREE_OPERAND (exp, 0)); - case 'x': + case tcc_exceptional: if (code == TREE_LIST) return (CONTAINS_PLACEHOLDER_P (TREE_VALUE (exp)) || CONTAINS_PLACEHOLDER_P (TREE_CHAIN (exp))); break; - case '1': - case '2': case '<': - case 'e': + case tcc_unary: + case tcc_binary: + case tcc_comparison: + case tcc_expression: switch (code) { case COMPOUND_EXPR: @@ -1694,12 +1730,12 @@ contains_placeholder_p (tree exp) return 0; } -/* Return 1 if any part of the computation of TYPE involves a PLACEHOLDER_EXPR. - This includes size, bounds, qualifiers (for QUAL_UNION_TYPE) and field - positions. */ +/* Return true if any part of the computation of TYPE involves a + PLACEHOLDER_EXPR. This includes size, bounds, qualifiers + (for QUAL_UNION_TYPE) and field positions. */ -bool -type_contains_placeholder_p (tree type) +static bool +type_contains_placeholder_1 (tree type) { /* If the size contains a placeholder or the parent type (component type in the case of arrays) type involves a placeholder, this type does. */ @@ -1707,7 +1743,7 @@ type_contains_placeholder_p (tree type) || CONTAINS_PLACEHOLDER_P (TYPE_SIZE_UNIT (type)) || (TREE_TYPE (type) != 0 && type_contains_placeholder_p (TREE_TYPE (type)))) - return 1; + return true; /* Now do type-specific checks. Note that the last part of the check above greatly limits what we have to do below. */ @@ -1724,7 +1760,7 @@ type_contains_placeholder_p (tree type) case METHOD_TYPE: case FILE_TYPE: case FUNCTION_TYPE: - return 0; + return false; case INTEGER_TYPE: case REAL_TYPE: @@ -1743,33 +1779,7 @@ type_contains_placeholder_p (tree type) case UNION_TYPE: case QUAL_UNION_TYPE: { - static tree seen_types = 0; tree field; - bool ret = 0; - - /* We have to be careful here that we don't end up in infinite - recursions due to a field of a type being a pointer to that type - or to a mutually-recursive type. So we store a list of record - types that we've seen and see if this type is in them. To save - memory, we don't use a list for just one type. Here we check - whether we've seen this type before and store it if not. */ - if (seen_types == 0) - seen_types = type; - else if (TREE_CODE (seen_types) != TREE_LIST) - { - if (seen_types == type) - return 0; - - seen_types = tree_cons (NULL_TREE, type, - build_tree_list (NULL_TREE, seen_types)); - } - else - { - if (value_member (type, seen_types) != 0) - return 0; - - seen_types = tree_cons (NULL_TREE, type, seen_types); - } for (field = TYPE_FIELDS (type); field; field = TREE_CHAIN (field)) if (TREE_CODE (field) == FIELD_DECL @@ -1777,18 +1787,9 @@ type_contains_placeholder_p (tree type) || (TREE_CODE (type) == QUAL_UNION_TYPE && CONTAINS_PLACEHOLDER_P (DECL_QUALIFIER (field))) || type_contains_placeholder_p (TREE_TYPE (field)))) - { - ret = true; - break; - } + return true; - /* Now remove us from seen_types and return the result. */ - if (seen_types == type) - seen_types = 0; - else - seen_types = TREE_CHAIN (seen_types); - - return ret; + return false; } default: @@ -1796,65 +1797,27 @@ type_contains_placeholder_p (tree type) } } -/* Return 1 if EXP contains any expressions that produce cleanups for an - outer scope to deal with. Used by fold. */ - -int -has_cleanups (tree exp) +bool +type_contains_placeholder_p (tree type) { - int i, nops, cmp; + bool result; - if (! TREE_SIDE_EFFECTS (exp)) - return 0; - - switch (TREE_CODE (exp)) - { - case TARGET_EXPR: - case WITH_CLEANUP_EXPR: - return 1; + /* If the contains_placeholder_bits field has been initialized, + then we know the answer. */ + if (TYPE_CONTAINS_PLACEHOLDER_INTERNAL (type) > 0) + return TYPE_CONTAINS_PLACEHOLDER_INTERNAL (type) - 1; - case CLEANUP_POINT_EXPR: - return 0; - - case CALL_EXPR: - for (exp = TREE_OPERAND (exp, 1); exp; exp = TREE_CHAIN (exp)) - { - cmp = has_cleanups (TREE_VALUE (exp)); - if (cmp) - return cmp; - } - return 0; - - case DECL_EXPR: - return (DECL_INITIAL (DECL_EXPR_DECL (exp)) - && has_cleanups (DECL_INITIAL (DECL_EXPR_DECL (exp)))); - - default: - break; - } + /* Indicate that we've seen this type node, and the answer is false. + This is what we want to return if we run into recursion via fields. */ + TYPE_CONTAINS_PLACEHOLDER_INTERNAL (type) = 1; - /* This general rule works for most tree codes. All exceptions should be - handled above. If this is a language-specific tree code, we can't - trust what might be in the operand, so say we don't know - the situation. */ - if ((int) TREE_CODE (exp) >= (int) LAST_AND_UNUSED_TREE_CODE) - return -1; + /* Compute the real value. */ + result = type_contains_placeholder_1 (type); - nops = first_rtl_op (TREE_CODE (exp)); - for (i = 0; i < nops; i++) - if (TREE_OPERAND (exp, i) != 0) - { - int type = TREE_CODE_CLASS (TREE_CODE (TREE_OPERAND (exp, i))); - if (type == 'e' || type == '<' || type == '1' || type == '2' - || type == 'r' || type == 's') - { - cmp = has_cleanups (TREE_OPERAND (exp, i)); - if (cmp) - return cmp; - } - } + /* Store the real value. */ + TYPE_CONTAINS_PLACEHOLDER_INTERNAL (type) = result + 1; - return 0; + return result; } /* Given a tree EXP, a FIELD_DECL F, and a replacement value R, @@ -1886,7 +1849,7 @@ substitute_in_expr (tree exp, tree f, tree r) /* If this expression is getting a value from a PLACEHOLDER_EXPR and it is the right field, replace it with R. */ for (inner = TREE_OPERAND (exp, 0); - TREE_CODE_CLASS (TREE_CODE (inner)) == 'r'; + REFERENCE_CLASS_P (inner); inner = TREE_OPERAND (inner, 0)) ; if (TREE_CODE (inner) == PLACEHOLDER_EXPR @@ -1907,16 +1870,16 @@ substitute_in_expr (tree exp, tree f, tree r) else switch (TREE_CODE_CLASS (code)) { - case 'c': - case 'd': + case tcc_constant: + case tcc_declaration: return exp; - case 'x': - case '1': - case '2': - case '<': - case 'e': - case 'r': + case tcc_exceptional: + case tcc_unary: + case tcc_binary: + case tcc_comparison: + case tcc_expression: + case tcc_reference: switch (first_rtl_op (code)) { case 0: @@ -1985,10 +1948,10 @@ substitute_placeholder_in_expr (tree exp, tree obj) elt = ((TREE_CODE (elt) == COMPOUND_EXPR || TREE_CODE (elt) == COND_EXPR) ? TREE_OPERAND (elt, 1) - : (TREE_CODE_CLASS (TREE_CODE (elt)) == 'r' - || TREE_CODE_CLASS (TREE_CODE (elt)) == '1' - || TREE_CODE_CLASS (TREE_CODE (elt)) == '2' - || TREE_CODE_CLASS (TREE_CODE (elt)) == 'e') + : (REFERENCE_CLASS_P (elt) + || UNARY_CLASS_P (elt) + || BINARY_CLASS_P (elt) + || EXPRESSION_CLASS_P (elt)) ? TREE_OPERAND (elt, 0) : 0)) if (TYPE_MAIN_VARIANT (TREE_TYPE (elt)) == need_type) return elt; @@ -1997,10 +1960,10 @@ substitute_placeholder_in_expr (tree exp, tree obj) elt = ((TREE_CODE (elt) == COMPOUND_EXPR || TREE_CODE (elt) == COND_EXPR) ? TREE_OPERAND (elt, 1) - : (TREE_CODE_CLASS (TREE_CODE (elt)) == 'r' - || TREE_CODE_CLASS (TREE_CODE (elt)) == '1' - || TREE_CODE_CLASS (TREE_CODE (elt)) == '2' - || TREE_CODE_CLASS (TREE_CODE (elt)) == 'e') + : (REFERENCE_CLASS_P (elt) + || UNARY_CLASS_P (elt) + || BINARY_CLASS_P (elt) + || EXPRESSION_CLASS_P (elt)) ? TREE_OPERAND (elt, 0) : 0)) if (POINTER_TYPE_P (TREE_TYPE (elt)) && (TYPE_MAIN_VARIANT (TREE_TYPE (TREE_TYPE (elt))) @@ -2026,17 +1989,17 @@ substitute_placeholder_in_expr (tree exp, tree obj) else switch (TREE_CODE_CLASS (code)) { - case 'c': - case 'd': + case tcc_constant: + case tcc_declaration: return exp; - case 'x': - case '1': - case '2': - case '<': - case 'e': - case 'r': - case 's': + case tcc_exceptional: + case tcc_unary: + case tcc_binary: + case tcc_comparison: + case tcc_expression: + case tcc_reference: + case tcc_statement: switch (first_rtl_op (code)) { case 0: @@ -2208,13 +2171,13 @@ stabilize_reference_1 (tree e) switch (TREE_CODE_CLASS (code)) { - case 'x': - case 't': - case 'd': - case '<': - case 's': - case 'e': - case 'r': + case tcc_exceptional: + case tcc_type: + case tcc_declaration: + case tcc_comparison: + case tcc_statement: + case tcc_expression: + case tcc_reference: /* If the expression has side-effects, then encase it in a SAVE_EXPR so that it will only be evaluated once. */ /* The reference (r) and comparison (<) classes could be handled as @@ -2223,12 +2186,12 @@ stabilize_reference_1 (tree e) return save_expr (e); return e; - case 'c': + case tcc_constant: /* Constants need no processing. In fact, we should never reach here. */ return e; - case '2': + case tcc_binary: /* Division is slow and tends to be compiled with jumps, especially the division by powers of 2 that is often found inside of an array reference. So do it just once. */ @@ -2242,7 +2205,7 @@ stabilize_reference_1 (tree e) stabilize_reference_1 (TREE_OPERAND (e, 1))); break; - case '1': + case tcc_unary: /* Recursively stabilize each operand. */ result = build_nt (code, stabilize_reference_1 (TREE_OPERAND (e, 0))); break; @@ -2334,7 +2297,7 @@ do { tree _node = (NODE); \ else ti = tc = false; } - else if (TREE_CODE_CLASS (TREE_CODE (node)) == 'c') + else if (CONSTANT_CLASS_P (node)) ; else { @@ -2382,10 +2345,10 @@ build1_stat (enum tree_code code, tree type, tree node MEM_STAT_DECL) #ifdef GATHER_STATISTICS switch (TREE_CODE_CLASS (code)) { - case 's': /* an expression with side effects */ + case tcc_statement: /* an expression with side effects */ kind = s_kind; break; - case 'r': /* a reference */ + case tcc_reference: /* a reference */ kind = r_kind; break; default: @@ -2420,7 +2383,7 @@ build1_stat (enum tree_code code, tree type, tree node MEM_STAT_DECL) TREE_READONLY (t) = TREE_READONLY (node); } - if (TREE_CODE_CLASS (code) == 's') + if (TREE_CODE_CLASS (code) == tcc_statement) TREE_SIDE_EFFECTS (t) = 1; else switch (code) { @@ -2449,12 +2412,15 @@ build1_stat (enum tree_code code, tree type, tree node MEM_STAT_DECL) break; default: - if (TREE_CODE_CLASS (code) == '1' && node && !TYPE_P (node) + if (TREE_CODE_CLASS (code) == tcc_unary + && node && !TYPE_P (node) && TREE_CONSTANT (node)) TREE_CONSTANT (t) = 1; - if (TREE_CODE_CLASS (code) == '1' && node && TREE_INVARIANT (node)) + if (TREE_CODE_CLASS (code) == tcc_unary + && node && TREE_INVARIANT (node)) TREE_INVARIANT (t) = 1; - if (TREE_CODE_CLASS (code) == 'r' && node && TREE_THIS_VOLATILE (node)) + if (TREE_CODE_CLASS (code) == tcc_reference + && node && TREE_THIS_VOLATILE (node)) TREE_THIS_VOLATILE (t) = 1; break; } @@ -2498,8 +2464,8 @@ build2_stat (enum tree_code code, tree tt, tree arg0, tree arg1 MEM_STAT_DECL) /* Expressions without side effects may be constant if their arguments are as well. */ - constant = (TREE_CODE_CLASS (code) == '<' - || TREE_CODE_CLASS (code) == '2'); + constant = (TREE_CODE_CLASS (code) == tcc_comparison + || TREE_CODE_CLASS (code) == tcc_binary); read_only = 1; side_effects = TREE_SIDE_EFFECTS (t); invariant = constant; @@ -2512,7 +2478,8 @@ build2_stat (enum tree_code code, tree tt, tree arg0, tree arg1 MEM_STAT_DECL) TREE_INVARIANT (t) = invariant; TREE_SIDE_EFFECTS (t) = side_effects; TREE_THIS_VOLATILE (t) - = TREE_CODE_CLASS (code) == 'r' && arg0 && TREE_THIS_VOLATILE (arg0); + = (TREE_CODE_CLASS (code) == tcc_reference + && arg0 && TREE_THIS_VOLATILE (arg0)); return t; } @@ -2560,7 +2527,8 @@ build3_stat (enum tree_code code, tree tt, tree arg0, tree arg1, TREE_SIDE_EFFECTS (t) = side_effects; TREE_THIS_VOLATILE (t) - = TREE_CODE_CLASS (code) == 'r' && arg0 && TREE_THIS_VOLATILE (arg0); + = (TREE_CODE_CLASS (code) == tcc_reference + && arg0 && TREE_THIS_VOLATILE (arg0)); return t; } @@ -2589,7 +2557,8 @@ build4_stat (enum tree_code code, tree tt, tree arg0, tree arg1, TREE_SIDE_EFFECTS (t) = side_effects; TREE_THIS_VOLATILE (t) - = TREE_CODE_CLASS (code) == 'r' && arg0 && TREE_THIS_VOLATILE (arg0); + = (TREE_CODE_CLASS (code) == tcc_reference + && arg0 && TREE_THIS_VOLATILE (arg0)); return t; } @@ -3135,7 +3104,7 @@ handle_dll_attribute (tree * pnode, tree name, tree args, int flags, } if (TREE_CODE (node) != RECORD_TYPE && TREE_CODE (node) != UNION_TYPE) { - warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name)); + warning ("%qs attribute ignored", IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -3153,7 +3122,7 @@ handle_dll_attribute (tree * pnode, tree name, tree args, int flags, if (TREE_CODE (node) == FUNCTION_DECL && DECL_INITIAL (node) && !DECL_DECLARED_INLINE_P (node)) { - error ("%Jfunction `%D' definition is marked dllimport.", node, node); + error ("%Jfunction %qD definition is marked dllimport.", node, node); *no_add_attrs = true; } @@ -3161,7 +3130,7 @@ handle_dll_attribute (tree * pnode, tree name, tree args, int flags, { if (DECL_INITIAL (node)) { - error ("%Jvariable `%D' definition is marked dllimport.", + error ("%Jvariable %qD definition is marked dllimport.", node, node); *no_add_attrs = true; } @@ -3181,8 +3150,8 @@ handle_dll_attribute (tree * pnode, tree name, tree args, int flags, && (TREE_CODE (node) == VAR_DECL || TREE_CODE (node) == FUNCTION_DECL)) { - error ("%Jexternal linkage required for symbol '%D' because of " - "'%s' attribute.", node, node, IDENTIFIER_POINTER (name)); + error ("%Jexternal linkage required for symbol %qD because of " + "%qs attribute.", node, node, IDENTIFIER_POINTER (name)); *no_add_attrs = true; } @@ -3892,12 +3861,12 @@ simple_cst_equal (tree t1, tree t2) switch (TREE_CODE_CLASS (code1)) { - case '1': - case '2': - case '<': - case 'e': - case 'r': - case 's': + case tcc_unary: + case tcc_binary: + case tcc_comparison: + case tcc_expression: + case tcc_reference: + case tcc_statement: cmp = 1; for (i = 0; i < TREE_CODE_LENGTH (code1); i++) { @@ -4039,7 +4008,7 @@ iterative_hash_expr (tree t, hashval_t val) default: class = TREE_CODE_CLASS (code); - if (class == 'd') + if (class == tcc_declaration) { /* Decls we can just compare by pointer. */ val = iterative_hash_pointer (t, val); @@ -4837,7 +4806,8 @@ find_var_from_fn (tree *tp, int *walk_subtrees, void *data) if (TYPE_P (*tp)) *walk_subtrees = 0; - else if (DECL_P (*tp) && lang_hooks.tree_inlining.auto_var_in_fn_p (*tp, fn)) + else if (DECL_P (*tp) + && lang_hooks.tree_inlining.auto_var_in_fn_p (*tp, fn)) return *tp; return NULL_TREE; @@ -5375,12 +5345,13 @@ tree_not_check_failed (const tree node, const char *file, code, given in CL. */ void -tree_class_check_failed (const tree node, int cl, const char *file, - int line, const char *function) +tree_class_check_failed (const tree node, const enum tree_code_class cl, + const char *file, int line, const char *function) { internal_error - ("tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d", - cl, TREE_CODE_CLASS (TREE_CODE (node)), + ("tree check: expected class %qs, have %qs (%s) in %s, at %s:%d", + TREE_CODE_CLASS_STRING (cl), + TREE_CODE_CLASS_STRING (TREE_CODE_CLASS (TREE_CODE (node))), tree_code_name[TREE_CODE (node)], function, trim_filename (file), line); } @@ -5929,4 +5900,20 @@ tree_fold_gcd (tree a, tree b) } } +/* Returns unsigned variant of TYPE. */ + +tree +unsigned_type_for (tree type) +{ + return lang_hooks.types.unsigned_type (type); +} + +/* Returns signed variant of TYPE. */ + +tree +signed_type_for (tree type) +{ + return lang_hooks.types.signed_type (type); +} + #include "gt-tree.h" diff --git a/gcc/tree.def b/gcc/tree.def index fc7ed81a54f..c0507423671 100644 --- a/gcc/tree.def +++ b/gcc/tree.def @@ -21,49 +21,37 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* The third argument can be: - 'x' for an exceptional code (fits no category). - 't' for a type object code. - 'c' for codes for constants. - 'd' for codes for declarations (also serving as variable refs). - 'r' for codes for references to storage. - '<' for codes for comparison expressions. - '1' for codes for unary arithmetic expressions. - '2' for codes for binary arithmetic expressions. - 's' for codes for "statement" expressions, which have side-effects, - but usually no interesting value. - 'e' for codes for other kinds of expressions. */ - -/* For `r', `e', `<', `1', `2', and `s' nodes, which use struct - tree_exp, the 4th element is the number of argument slots to - allocate. This determines the size of the tree node object. - Other nodes use different structures, and the size is determined - by the tree_union member structure; the 4th element should be - zero. Languages that define language-specific 'x' or 'c' codes - must define the tree_size langhook to say how big they are. */ +/* For tcc_references, tcc_expression, tcc_comparison, tcc_unary, + tcc_binary, and tcc_statement nodes, which use struct tree_exp, the + 4th element is the number of argument slots to allocate. This + determines the size of the tree node object. Other nodes use + different structures, and the size is determined by the tree_union + member structure; the 4th element should be zero. Languages that + define language-specific tcc_exceptional or tcc_constant codes must + define the tree_size langhook to say how big they are. */ /* Any erroneous construct is parsed into a node of this type. This type of node is accepted without complaint in all contexts by later parsing activities, to avoid multiple error messages for one error. No fields in these nodes are used except the TREE_CODE. */ -DEFTREECODE (ERROR_MARK, "error_mark", 'x', 0) +DEFTREECODE (ERROR_MARK, "error_mark", tcc_exceptional, 0) /* Used to represent a name (such as, in the DECL_NAME of a decl node). Internally it looks like a STRING_CST node. There is only one IDENTIFIER_NODE ever made for any particular name. Use `get_identifier' to get it (or create it, the first time). */ -DEFTREECODE (IDENTIFIER_NODE, "identifier_node", 'x', 0) +DEFTREECODE (IDENTIFIER_NODE, "identifier_node", tcc_exceptional, 0) /* Has the TREE_VALUE and TREE_PURPOSE fields. */ /* These nodes are made into lists by chaining through the TREE_CHAIN field. The elements of the list live in the TREE_VALUE fields, while TREE_PURPOSE fields are occasionally used as well to get the effect of Lisp association lists. */ -DEFTREECODE (TREE_LIST, "tree_list", 'x', 0) +DEFTREECODE (TREE_LIST, "tree_list", tcc_exceptional, 0) /* These nodes contain an array of tree nodes. */ -DEFTREECODE (TREE_VEC, "tree_vec", 'x', 0) +DEFTREECODE (TREE_VEC, "tree_vec", tcc_exceptional, 0) /* A symbol binding block. These are arranged in a tree, where the BLOCK_SUBBLOCKS field contains a chain of subblocks @@ -85,7 +73,7 @@ DEFTREECODE (TREE_VEC, "tree_vec", 'x', 0) instance of an inline function). TREE_ASM_WRITTEN is nonzero if the block was actually referenced in the generated assembly. */ -DEFTREECODE (BLOCK, "block", 'x', 0) +DEFTREECODE (BLOCK, "block", tcc_exceptional, 0) /* Each data type is represented by a tree node whose code is one of the following: */ @@ -130,7 +118,8 @@ DEFTREECODE (BLOCK, "block", 'x', 0) ENUMERAL_TYPE, RECORD_TYPE, UNION_TYPE, and QUAL_UNION_TYPE nodes; see below. */ -DEFTREECODE (VOID_TYPE, "void_type", 't', 0) /* The void type in C */ +DEFTREECODE (VOID_TYPE, "void_type", tcc_type, 0) + /* The void type in C */ /* Integer types in all languages, including char in C. Also used for sub-ranges of other discrete types. @@ -140,20 +129,20 @@ DEFTREECODE (VOID_TYPE, "void_type", 't', 0) /* The void type in C */ of this will point at the supertype (another INTEGER_TYPE, or an ENUMERAL_TYPE, CHAR_TYPE, or BOOLEAN_TYPE). Otherwise, the TREE_TYPE is zero. */ -DEFTREECODE (INTEGER_TYPE, "integer_type", 't', 0) +DEFTREECODE (INTEGER_TYPE, "integer_type", tcc_type, 0) /* C's float and double. Different floating types are distinguished by machine mode and by the TYPE_SIZE and the TYPE_PRECISION. */ -DEFTREECODE (REAL_TYPE, "real_type", 't', 0) +DEFTREECODE (REAL_TYPE, "real_type", tcc_type, 0) /* Complex number types. The TREE_TYPE field is the data type of the real and imaginary parts. */ -DEFTREECODE (COMPLEX_TYPE, "complex_type", 't', 0) +DEFTREECODE (COMPLEX_TYPE, "complex_type", tcc_type, 0) /* Vector types. The TREE_TYPE field is the data type of the vector elements. The TYPE_PRECISION field is the number of subparts of the vector. */ -DEFTREECODE (VECTOR_TYPE, "vector_type", 't', 0) +DEFTREECODE (VECTOR_TYPE, "vector_type", tcc_type, 0) /* C enums. The type node looks just like an INTEGER_TYPE node. The symbols for the values of the enum type are defined by @@ -166,39 +155,39 @@ DEFTREECODE (VECTOR_TYPE, "vector_type", 't', 0) fields are filled in. RECORD_TYPE, UNION_TYPE, and QUAL_UNION_TYPE forward refs are treated similarly. */ -DEFTREECODE (ENUMERAL_TYPE, "enumeral_type", 't', 0) +DEFTREECODE (ENUMERAL_TYPE, "enumeral_type", tcc_type, 0) /* Pascal's boolean type (true or false are the only values); no special fields needed. */ -DEFTREECODE (BOOLEAN_TYPE, "boolean_type", 't', 0) +DEFTREECODE (BOOLEAN_TYPE, "boolean_type", tcc_type, 0) /* CHAR in Pascal; not used in C. No special fields needed. */ -DEFTREECODE (CHAR_TYPE, "char_type", 't', 0) +DEFTREECODE (CHAR_TYPE, "char_type", tcc_type, 0) /* All pointer-to-x types have code POINTER_TYPE. The TREE_TYPE points to the node for the type pointed to. */ -DEFTREECODE (POINTER_TYPE, "pointer_type", 't', 0) +DEFTREECODE (POINTER_TYPE, "pointer_type", tcc_type, 0) /* An offset is a pointer relative to an object. The TREE_TYPE field is the type of the object at the offset. The TYPE_OFFSET_BASETYPE points to the node for the type of object that the offset is relative to. */ -DEFTREECODE (OFFSET_TYPE, "offset_type", 't', 0) +DEFTREECODE (OFFSET_TYPE, "offset_type", tcc_type, 0) /* A reference is like a pointer except that it is coerced automatically to the value it points to. Used in C++. */ -DEFTREECODE (REFERENCE_TYPE, "reference_type", 't', 0) +DEFTREECODE (REFERENCE_TYPE, "reference_type", tcc_type, 0) /* METHOD_TYPE is the type of a function which takes an extra first argument for "self", which is not present in the declared argument list. The TREE_TYPE is the return type of the method. The TYPE_METHOD_BASETYPE is the type of "self". TYPE_ARG_TYPES is the real argument list, which includes the hidden argument for "self". */ -DEFTREECODE (METHOD_TYPE, "method_type", 't', 0) +DEFTREECODE (METHOD_TYPE, "method_type", tcc_type, 0) /* Used for Pascal; details not determined right now. */ -DEFTREECODE (FILE_TYPE, "file_type", 't', 0) +DEFTREECODE (FILE_TYPE, "file_type", tcc_type, 0) /* Types of arrays. Special fields: TREE_TYPE Type of an array element. @@ -209,13 +198,13 @@ DEFTREECODE (FILE_TYPE, "file_type", 't', 0) TYPE_STRING_FLAG indicates a string (in contrast to an array of chars) in languages (such as Chill) that make a distinction. */ /* Array types in C or Pascal */ -DEFTREECODE (ARRAY_TYPE, "array_type", 't', 0) +DEFTREECODE (ARRAY_TYPE, "array_type", tcc_type, 0) /* Types of sets for Pascal. Special fields are the same as in an array type. The target type is always a boolean type. Used for both bitstrings and powersets in Chill; TYPE_STRING_FLAG indicates a bitstring. */ -DEFTREECODE (SET_TYPE, "set_type", 't', 0) +DEFTREECODE (SET_TYPE, "set_type", tcc_type, 0) /* Struct in C, or record in Pascal. */ /* Special fields: @@ -225,19 +214,19 @@ DEFTREECODE (SET_TYPE, "set_type", 't', 0) A few may need to be added for Pascal. */ /* See the comment above, before ENUMERAL_TYPE, for how forward references to struct tags are handled in C. */ -DEFTREECODE (RECORD_TYPE, "record_type", 't', 0) +DEFTREECODE (RECORD_TYPE, "record_type", tcc_type, 0) /* Union in C. Like a struct, except that the offsets of the fields will all be zero. */ /* See the comment above, before ENUMERAL_TYPE, for how forward references to union tags are handled in C. */ -DEFTREECODE (UNION_TYPE, "union_type", 't', 0) /* C union type */ +DEFTREECODE (UNION_TYPE, "union_type", tcc_type, 0) /* C union type */ /* Similar to UNION_TYPE, except that the expressions in DECL_QUALIFIER in each FIELD_DECL determine what the union contains. The first field whose DECL_QUALIFIER expression is true is deemed to occupy the union. */ -DEFTREECODE (QUAL_UNION_TYPE, "qual_union_type", 't', 0) +DEFTREECODE (QUAL_UNION_TYPE, "qual_union_type", tcc_type, 0) /* Type of functions. Special fields: TREE_TYPE type of value returned. @@ -245,13 +234,13 @@ DEFTREECODE (QUAL_UNION_TYPE, "qual_union_type", 't', 0) this list is made of TREE_LIST nodes. Types of "Procedures" in languages where they are different from functions have code FUNCTION_TYPE also, but then TREE_TYPE is zero or void type. */ -DEFTREECODE (FUNCTION_TYPE, "function_type", 't', 0) +DEFTREECODE (FUNCTION_TYPE, "function_type", tcc_type, 0) /* This is a language-specific kind of type. Its meaning is defined by the language front end. layout_type does not know how to lay this out, so the front-end must do so manually. */ -DEFTREECODE (LANG_TYPE, "lang_type", 't', 0) +DEFTREECODE (LANG_TYPE, "lang_type", tcc_type, 0) /* Expressions */ @@ -265,20 +254,20 @@ DEFTREECODE (LANG_TYPE, "lang_type", 't', 0) TREE_CONSTANT_OVERFLOW already set, it is known to be unique. INTEGER_CST nodes are created for the integral types, for pointer types and for vector and float types in some circumstances. */ -DEFTREECODE (INTEGER_CST, "integer_cst", 'c', 0) +DEFTREECODE (INTEGER_CST, "integer_cst", tcc_constant, 0) /* Contents are in TREE_REAL_CST field. */ -DEFTREECODE (REAL_CST, "real_cst", 'c', 0) +DEFTREECODE (REAL_CST, "real_cst", tcc_constant, 0) /* Contents are in TREE_REALPART and TREE_IMAGPART fields, whose contents are other constant nodes. */ -DEFTREECODE (COMPLEX_CST, "complex_cst", 'c', 0) +DEFTREECODE (COMPLEX_CST, "complex_cst", tcc_constant, 0) /* Contents are in TREE_VECTOR_CST_ELTS field. */ -DEFTREECODE (VECTOR_CST, "vector_cst", 'c', 0) +DEFTREECODE (VECTOR_CST, "vector_cst", tcc_constant, 0) /* Contents are TREE_STRING_LENGTH and TREE_STRING_POINTER fields. */ -DEFTREECODE (STRING_CST, "string_cst", 'c', 0) +DEFTREECODE (STRING_CST, "string_cst", tcc_constant, 0) /* Declarations. All references to names are represented as ..._DECL nodes. The decls in one binding context are chained through the @@ -338,22 +327,23 @@ DEFTREECODE (STRING_CST, "string_cst", 'c', 0) of a decl (i.e. one which is nested within an abstract instance of a inline function. */ -DEFTREECODE (FUNCTION_DECL, "function_decl", 'd', 0) -DEFTREECODE (LABEL_DECL, "label_decl", 'd', 0) -DEFTREECODE (CONST_DECL, "const_decl", 'd', 0) -DEFTREECODE (TYPE_DECL, "type_decl", 'd', 0) -DEFTREECODE (VAR_DECL, "var_decl", 'd', 0) -DEFTREECODE (PARM_DECL, "parm_decl", 'd', 0) -DEFTREECODE (RESULT_DECL, "result_decl", 'd', 0) -DEFTREECODE (FIELD_DECL, "field_decl", 'd', 0) +DEFTREECODE (FUNCTION_DECL, "function_decl", tcc_declaration, 0) +DEFTREECODE (LABEL_DECL, "label_decl", tcc_declaration, 0) +DEFTREECODE (CONST_DECL, "const_decl", tcc_declaration, 0) +DEFTREECODE (TYPE_DECL, "type_decl", tcc_declaration, 0) +DEFTREECODE (VAR_DECL, "var_decl", tcc_declaration, 0) +DEFTREECODE (PARM_DECL, "parm_decl", tcc_declaration, 0) +DEFTREECODE (RESULT_DECL, "result_decl", tcc_declaration, 0) +DEFTREECODE (FIELD_DECL, "field_decl", tcc_declaration, 0) /* A namespace declaration. Namespaces appear in DECL_CONTEXT of other _DECLs, providing a hierarchy of names. */ -DEFTREECODE (NAMESPACE_DECL, "namespace_decl", 'd', 0) +DEFTREECODE (NAMESPACE_DECL, "namespace_decl", tcc_declaration, 0) /* A translation unit. This is not technically a declaration, since it can't be looked up, but it's close enough. */ -DEFTREECODE (TRANSLATION_UNIT_DECL, "translation_unit_decl", 'd', 0) +DEFTREECODE (TRANSLATION_UNIT_DECL, "translation_unit_decl",\ + tcc_declaration, 0) /* References to storage. */ @@ -362,7 +352,7 @@ DEFTREECODE (TRANSLATION_UNIT_DECL, "translation_unit_decl", 'd', 0) Operand 1 is the field (a node of type FIELD_DECL). Operand 2, if present, is the value of DECL_FIELD_OFFSET, measured in units of DECL_OFFSET_ALIGN / BITS_PER_UNIT. */ -DEFTREECODE (COMPONENT_REF, "component_ref", 'r', 3) +DEFTREECODE (COMPONENT_REF, "component_ref", tcc_reference, 3) /* Reference to a group of bits within an object. Similar to COMPONENT_REF except the position is given explicitly rather than via a FIELD_DECL. @@ -371,22 +361,22 @@ DEFTREECODE (COMPONENT_REF, "component_ref", 'r', 3) operand 2 is a tree giving the position of the first referenced bit. The field can be either a signed or unsigned field; BIT_FIELD_REF_UNSIGNED says which. */ -DEFTREECODE (BIT_FIELD_REF, "bit_field_ref", 'r', 3) +DEFTREECODE (BIT_FIELD_REF, "bit_field_ref", tcc_reference, 3) /* C unary `*' or Pascal `^'. One operand, an expression for a pointer. */ -DEFTREECODE (INDIRECT_REF, "indirect_ref", 'r', 1) +DEFTREECODE (INDIRECT_REF, "indirect_ref", tcc_reference, 1) /* Array indexing. Operand 0 is the array; operand 1 is a (single) array index. Operand 2, if present, is a copy of TYPE_MIN_VALUE of the index. Operand 3, if present, is the element size, measured in units of the alignment of the element type. */ -DEFTREECODE (ARRAY_REF, "array_ref", 'r', 4) +DEFTREECODE (ARRAY_REF, "array_ref", tcc_reference, 4) /* Likewise, except that the result is a range ("slice") of the array. The starting index of the resulting array is taken from operand 1 and the size of the range is taken from the type of the expression. */ -DEFTREECODE (ARRAY_RANGE_REF, "array_range_ref", 'r', 4) +DEFTREECODE (ARRAY_RANGE_REF, "array_range_ref", tcc_reference, 4) /* Used to represent lookup of runtime type dependent data. Often this is a reference to a vtable, but it needn't be. Operands are: @@ -398,13 +388,13 @@ DEFTREECODE (ARRAY_RANGE_REF, "array_range_ref", 'r', 4) reference to something simpler, usually to the address of a DECL. Never touched by the middle-end. Good choices would be either an identifier or a vtable index. */ -DEFTREECODE (OBJ_TYPE_REF, "obj_type_ref", 'e', 3) +DEFTREECODE (OBJ_TYPE_REF, "obj_type_ref", tcc_expression, 3) /* The exception object from the runtime. */ -DEFTREECODE (EXC_PTR_EXPR, "exc_ptr_expr", 'e', 0) +DEFTREECODE (EXC_PTR_EXPR, "exc_ptr_expr", tcc_expression, 0) /* The filter object from the runtime. */ -DEFTREECODE (FILTER_EXPR, "filter_expr", 'e', 0) +DEFTREECODE (FILTER_EXPR, "filter_expr", tcc_expression, 0) /* Constructor: return an aggregate value made from specified components. In C, this is used only for structure and array initializers. @@ -426,7 +416,7 @@ DEFTREECODE (FILTER_EXPR, "filter_expr", 'e', 0) The TREE_VALUE specifies a value (index) in the set that is true. If TREE_PURPOSE is non-NULL, it specifies the lower limit of a range of true values. Elements not listed are false (not in the set). */ -DEFTREECODE (CONSTRUCTOR, "constructor", 'e', 1) +DEFTREECODE (CONSTRUCTOR, "constructor", tcc_expression, 1) /* The expression types are mostly straightforward, with the fourth argument of DEFTREECODE saying how many operands there are. @@ -436,14 +426,14 @@ DEFTREECODE (CONSTRUCTOR, "constructor", 'e', 1) /* Contains two expressions to compute, one followed by the other. the first value is ignored. The second one's value is used. The type of the first expression need not agree with the other types. */ -DEFTREECODE (COMPOUND_EXPR, "compound_expr", 'e', 2) +DEFTREECODE (COMPOUND_EXPR, "compound_expr", tcc_expression, 2) /* Assignment expression. Operand 0 is the what to set; 1, the new value. */ -DEFTREECODE (MODIFY_EXPR, "modify_expr", 'e', 2) +DEFTREECODE (MODIFY_EXPR, "modify_expr", tcc_expression, 2) /* Initialization expression. Operand 0 is the variable to initialize; Operand 1 is the initializer. */ -DEFTREECODE (INIT_EXPR, "init_expr", 'e', 2) +DEFTREECODE (INIT_EXPR, "init_expr", tcc_expression, 2) /* For TARGET_EXPR, operand 0 is the target of an initialization, operand 1 is the initializer for the target, which may be void @@ -451,7 +441,7 @@ DEFTREECODE (INIT_EXPR, "init_expr", 'e', 2) operand 2 is the cleanup for this node, if any. operand 3 is the saved initializer after this node has been expanded once; this is so we can re-expand the tree later. */ -DEFTREECODE (TARGET_EXPR, "target_expr", 'e', 4) +DEFTREECODE (TARGET_EXPR, "target_expr", tcc_expression, 4) /* Conditional expression ( ... ? ... : ... in C). Operand 0 is the condition. @@ -461,7 +451,7 @@ DEFTREECODE (TARGET_EXPR, "target_expr", 'e', 4) Operand 1 must have the same type as the entire expression, unless it unconditionally throws an exception, in which case it should have VOID_TYPE. The same constraints apply to operand 2. */ -DEFTREECODE (COND_EXPR, "cond_expr", 'e', 3) +DEFTREECODE (COND_EXPR, "cond_expr", tcc_expression, 3) /* Declare local variables, including making RTL and allocating space. BIND_EXPR_VARS is a chain of VAR_DECL nodes for the variables. @@ -484,25 +474,25 @@ DEFTREECODE (COND_EXPR, "cond_expr", 'e', 3) In order for the BIND_EXPR to be known at all, the code that creates it must also install it as a subblock in the tree of BLOCK nodes for the function. */ -DEFTREECODE (BIND_EXPR, "bind_expr", 'e', 3) +DEFTREECODE (BIND_EXPR, "bind_expr", tcc_expression, 3) /* A labeled block. Operand 0 is the label that will be generated to mark the end of the block. Operand 1 is the labeled block body. */ -DEFTREECODE (LABELED_BLOCK_EXPR, "labeled_block_expr", 'e', 2) +DEFTREECODE (LABELED_BLOCK_EXPR, "labeled_block_expr", tcc_expression, 2) /* Function call. Operand 0 is the function. Operand 1 is the argument list, a list of expressions made out of a chain of TREE_LIST nodes. Operand 2 is the static chain argument, or NULL. */ -DEFTREECODE (CALL_EXPR, "call_expr", 'e', 3) +DEFTREECODE (CALL_EXPR, "call_expr", tcc_expression, 3) /* Specify a value to compute along with its corresponding cleanup. Operand 0 is the cleanup expression. The cleanup is executed by the first enclosing CLEANUP_POINT_EXPR, which must exist. This differs from TRY_CATCH_EXPR in that operand 1 is always evaluated when cleanups are run. */ -DEFTREECODE (WITH_CLEANUP_EXPR, "with_cleanup_expr", 'e', 1) +DEFTREECODE (WITH_CLEANUP_EXPR, "with_cleanup_expr", tcc_expression, 1) /* Specify a cleanup point. Operand 0 is an expression that may have cleanups. If it does, those @@ -519,7 +509,7 @@ DEFTREECODE (WITH_CLEANUP_EXPR, "with_cleanup_expr", 'e', 1) As a consequence, the operand of a CLEANUP_POINT_EXPR must not have BLKmode, because it will not be forced out of memory. */ -DEFTREECODE (CLEANUP_POINT_EXPR, "cleanup_point_expr", 'e', 1) +DEFTREECODE (CLEANUP_POINT_EXPR, "cleanup_point_expr", tcc_expression, 1) /* The following two codes are used in languages that have types where some field in an object of the type contains a value that is used in @@ -571,62 +561,62 @@ DEFTREECODE (CLEANUP_POINT_EXPR, "cleanup_point_expr", 'e', 1) /* Denotes a record to later be substituted before evaluating this expression. The type of this expression is used to find the record to replace it. */ -DEFTREECODE (PLACEHOLDER_EXPR, "placeholder_expr", 'x', 0) +DEFTREECODE (PLACEHOLDER_EXPR, "placeholder_expr", tcc_exceptional, 0) /* Simple arithmetic. */ -DEFTREECODE (PLUS_EXPR, "plus_expr", '2', 2) -DEFTREECODE (MINUS_EXPR, "minus_expr", '2', 2) -DEFTREECODE (MULT_EXPR, "mult_expr", '2', 2) +DEFTREECODE (PLUS_EXPR, "plus_expr", tcc_binary, 2) +DEFTREECODE (MINUS_EXPR, "minus_expr", tcc_binary, 2) +DEFTREECODE (MULT_EXPR, "mult_expr", tcc_binary, 2) /* Division for integer result that rounds the quotient toward zero. */ -DEFTREECODE (TRUNC_DIV_EXPR, "trunc_div_expr", '2', 2) +DEFTREECODE (TRUNC_DIV_EXPR, "trunc_div_expr", tcc_binary, 2) /* Division for integer result that rounds the quotient toward infinity. */ -DEFTREECODE (CEIL_DIV_EXPR, "ceil_div_expr", '2', 2) +DEFTREECODE (CEIL_DIV_EXPR, "ceil_div_expr", tcc_binary, 2) /* Division for integer result that rounds toward minus infinity. */ -DEFTREECODE (FLOOR_DIV_EXPR, "floor_div_expr", '2', 2) +DEFTREECODE (FLOOR_DIV_EXPR, "floor_div_expr", tcc_binary, 2) /* Division for integer result that rounds toward nearest integer. */ -DEFTREECODE (ROUND_DIV_EXPR, "round_div_expr", '2', 2) +DEFTREECODE (ROUND_DIV_EXPR, "round_div_expr", tcc_binary, 2) /* Four kinds of remainder that go with the four kinds of division. */ -DEFTREECODE (TRUNC_MOD_EXPR, "trunc_mod_expr", '2', 2) -DEFTREECODE (CEIL_MOD_EXPR, "ceil_mod_expr", '2', 2) -DEFTREECODE (FLOOR_MOD_EXPR, "floor_mod_expr", '2', 2) -DEFTREECODE (ROUND_MOD_EXPR, "round_mod_expr", '2', 2) +DEFTREECODE (TRUNC_MOD_EXPR, "trunc_mod_expr", tcc_binary, 2) +DEFTREECODE (CEIL_MOD_EXPR, "ceil_mod_expr", tcc_binary, 2) +DEFTREECODE (FLOOR_MOD_EXPR, "floor_mod_expr", tcc_binary, 2) +DEFTREECODE (ROUND_MOD_EXPR, "round_mod_expr", tcc_binary, 2) /* Division for real result. */ -DEFTREECODE (RDIV_EXPR, "rdiv_expr", '2', 2) +DEFTREECODE (RDIV_EXPR, "rdiv_expr", tcc_binary, 2) /* Division which is not supposed to need rounding. Used for pointer subtraction in C. */ -DEFTREECODE (EXACT_DIV_EXPR, "exact_div_expr", '2', 2) +DEFTREECODE (EXACT_DIV_EXPR, "exact_div_expr", tcc_binary, 2) /* Conversion of real to fixed point: four ways to round, like the four ways to divide. CONVERT_EXPR can also be used to convert a real to an integer, and that is what is used in languages that do not have ways of specifying which of these is wanted. Maybe these are not needed. */ -DEFTREECODE (FIX_TRUNC_EXPR, "fix_trunc_expr", '1', 1) -DEFTREECODE (FIX_CEIL_EXPR, "fix_ceil_expr", '1', 1) -DEFTREECODE (FIX_FLOOR_EXPR, "fix_floor_expr", '1', 1) -DEFTREECODE (FIX_ROUND_EXPR, "fix_round_expr", '1', 1) +DEFTREECODE (FIX_TRUNC_EXPR, "fix_trunc_expr", tcc_unary, 1) +DEFTREECODE (FIX_CEIL_EXPR, "fix_ceil_expr", tcc_unary, 1) +DEFTREECODE (FIX_FLOOR_EXPR, "fix_floor_expr", tcc_unary, 1) +DEFTREECODE (FIX_ROUND_EXPR, "fix_round_expr", tcc_unary, 1) /* Conversion of an integer to a real. */ -DEFTREECODE (FLOAT_EXPR, "float_expr", '1', 1) +DEFTREECODE (FLOAT_EXPR, "float_expr", tcc_unary, 1) /* Unary negation. */ -DEFTREECODE (NEGATE_EXPR, "negate_expr", '1', 1) +DEFTREECODE (NEGATE_EXPR, "negate_expr", tcc_unary, 1) -DEFTREECODE (MIN_EXPR, "min_expr", '2', 2) -DEFTREECODE (MAX_EXPR, "max_expr", '2', 2) +DEFTREECODE (MIN_EXPR, "min_expr", tcc_binary, 2) +DEFTREECODE (MAX_EXPR, "max_expr", tcc_binary, 2) /* Represents the absolute value of the operand. An ABS_EXPR must have either an INTEGER_TYPE or a REAL_TYPE. The operand of the ABS_EXPR must have the same type. */ -DEFTREECODE (ABS_EXPR, "abs_expr", '1', 1) +DEFTREECODE (ABS_EXPR, "abs_expr", tcc_unary, 1) /* Shift operations for shift and rotate. Shift means logical shift if done on an @@ -635,16 +625,16 @@ DEFTREECODE (ABS_EXPR, "abs_expr", '1', 1) shift by; it need not be the same type as the first operand and result. Note that the result is undefined if the second operand is larger than the first operand's type size. */ -DEFTREECODE (LSHIFT_EXPR, "lshift_expr", '2', 2) -DEFTREECODE (RSHIFT_EXPR, "rshift_expr", '2', 2) -DEFTREECODE (LROTATE_EXPR, "lrotate_expr", '2', 2) -DEFTREECODE (RROTATE_EXPR, "rrotate_expr", '2', 2) +DEFTREECODE (LSHIFT_EXPR, "lshift_expr", tcc_binary, 2) +DEFTREECODE (RSHIFT_EXPR, "rshift_expr", tcc_binary, 2) +DEFTREECODE (LROTATE_EXPR, "lrotate_expr", tcc_binary, 2) +DEFTREECODE (RROTATE_EXPR, "rrotate_expr", tcc_binary, 2) /* Bitwise operations. Operands have same mode as result. */ -DEFTREECODE (BIT_IOR_EXPR, "bit_ior_expr", '2', 2) -DEFTREECODE (BIT_XOR_EXPR, "bit_xor_expr", '2', 2) -DEFTREECODE (BIT_AND_EXPR, "bit_and_expr", '2', 2) -DEFTREECODE (BIT_NOT_EXPR, "bit_not_expr", '1', 1) +DEFTREECODE (BIT_IOR_EXPR, "bit_ior_expr", tcc_binary, 2) +DEFTREECODE (BIT_XOR_EXPR, "bit_xor_expr", tcc_binary, 2) +DEFTREECODE (BIT_AND_EXPR, "bit_and_expr", tcc_binary, 2) +DEFTREECODE (BIT_NOT_EXPR, "bit_not_expr", tcc_unary, 1) /* ANDIF and ORIF allow the second operand not to be computed if the value of the expression is determined from the first operand. AND, @@ -655,12 +645,12 @@ DEFTREECODE (BIT_NOT_EXPR, "bit_not_expr", '1', 1) an INTEGER_TYPE VAR_DECL as its argument; instead, a NE_EXPR will be used to compare the VAR_DECL to zero, thereby obtaining a node with value zero or one. */ -DEFTREECODE (TRUTH_ANDIF_EXPR, "truth_andif_expr", 'e', 2) -DEFTREECODE (TRUTH_ORIF_EXPR, "truth_orif_expr", 'e', 2) -DEFTREECODE (TRUTH_AND_EXPR, "truth_and_expr", 'e', 2) -DEFTREECODE (TRUTH_OR_EXPR, "truth_or_expr", 'e', 2) -DEFTREECODE (TRUTH_XOR_EXPR, "truth_xor_expr", 'e', 2) -DEFTREECODE (TRUTH_NOT_EXPR, "truth_not_expr", 'e', 1) +DEFTREECODE (TRUTH_ANDIF_EXPR, "truth_andif_expr", tcc_expression, 2) +DEFTREECODE (TRUTH_ORIF_EXPR, "truth_orif_expr", tcc_expression, 2) +DEFTREECODE (TRUTH_AND_EXPR, "truth_and_expr", tcc_expression, 2) +DEFTREECODE (TRUTH_OR_EXPR, "truth_or_expr", tcc_expression, 2) +DEFTREECODE (TRUTH_XOR_EXPR, "truth_xor_expr", tcc_expression, 2) +DEFTREECODE (TRUTH_NOT_EXPR, "truth_not_expr", tcc_expression, 1) /* Relational operators. `EQ_EXPR' and `NE_EXPR' are allowed for any types. @@ -668,39 +658,39 @@ DEFTREECODE (TRUTH_NOT_EXPR, "truth_not_expr", 'e', 1) or real types. In all cases the operands will have the same type, and the value is always the type used by the language for booleans. */ -DEFTREECODE (LT_EXPR, "lt_expr", '<', 2) -DEFTREECODE (LE_EXPR, "le_expr", '<', 2) -DEFTREECODE (GT_EXPR, "gt_expr", '<', 2) -DEFTREECODE (GE_EXPR, "ge_expr", '<', 2) -DEFTREECODE (EQ_EXPR, "eq_expr", '<', 2) -DEFTREECODE (NE_EXPR, "ne_expr", '<', 2) +DEFTREECODE (LT_EXPR, "lt_expr", tcc_comparison, 2) +DEFTREECODE (LE_EXPR, "le_expr", tcc_comparison, 2) +DEFTREECODE (GT_EXPR, "gt_expr", tcc_comparison, 2) +DEFTREECODE (GE_EXPR, "ge_expr", tcc_comparison, 2) +DEFTREECODE (EQ_EXPR, "eq_expr", tcc_comparison, 2) +DEFTREECODE (NE_EXPR, "ne_expr", tcc_comparison, 2) /* Additional relational operators for floating point unordered. */ -DEFTREECODE (UNORDERED_EXPR, "unordered_expr", '<', 2) -DEFTREECODE (ORDERED_EXPR, "ordered_expr", '<', 2) +DEFTREECODE (UNORDERED_EXPR, "unordered_expr", tcc_comparison, 2) +DEFTREECODE (ORDERED_EXPR, "ordered_expr", tcc_comparison, 2) /* These are equivalent to unordered or ... */ -DEFTREECODE (UNLT_EXPR, "unlt_expr", '<', 2) -DEFTREECODE (UNLE_EXPR, "unle_expr", '<', 2) -DEFTREECODE (UNGT_EXPR, "ungt_expr", '<', 2) -DEFTREECODE (UNGE_EXPR, "unge_expr", '<', 2) -DEFTREECODE (UNEQ_EXPR, "uneq_expr", '<', 2) +DEFTREECODE (UNLT_EXPR, "unlt_expr", tcc_comparison, 2) +DEFTREECODE (UNLE_EXPR, "unle_expr", tcc_comparison, 2) +DEFTREECODE (UNGT_EXPR, "ungt_expr", tcc_comparison, 2) +DEFTREECODE (UNGE_EXPR, "unge_expr", tcc_comparison, 2) +DEFTREECODE (UNEQ_EXPR, "uneq_expr", tcc_comparison, 2) /* This is the reverse of uneq_expr. */ -DEFTREECODE (LTGT_EXPR, "ltgt_expr", '<', 2) +DEFTREECODE (LTGT_EXPR, "ltgt_expr", tcc_comparison, 2) -DEFTREECODE (RANGE_EXPR, "range_expr", '2', 2) +DEFTREECODE (RANGE_EXPR, "range_expr", tcc_binary, 2) /* Represents a conversion of type of a value. All conversions, including implicit ones, must be represented by CONVERT_EXPR or NOP_EXPR nodes. */ -DEFTREECODE (CONVERT_EXPR, "convert_expr", '1', 1) +DEFTREECODE (CONVERT_EXPR, "convert_expr", tcc_unary, 1) /* Represents a conversion expected to require no code to be generated. */ -DEFTREECODE (NOP_EXPR, "nop_expr", '1', 1) +DEFTREECODE (NOP_EXPR, "nop_expr", tcc_unary, 1) /* Value is same as argument, but guaranteed not an lvalue. */ -DEFTREECODE (NON_LVALUE_EXPR, "non_lvalue_expr", '1', 1) +DEFTREECODE (NON_LVALUE_EXPR, "non_lvalue_expr", tcc_unary, 1) /* Represents viewing something of one type as being of a second type. This corresponds to an "Unchecked Conversion" in Ada and roughly to @@ -712,91 +702,91 @@ DEFTREECODE (NON_LVALUE_EXPR, "non_lvalue_expr", '1', 1) case no actual data motion may occur. TREE_ADDRESSABLE will be set in this case and GCC must abort if it could not do the operation without generating insns. */ -DEFTREECODE (VIEW_CONVERT_EXPR, "view_convert_expr", 'r', 1) +DEFTREECODE (VIEW_CONVERT_EXPR, "view_convert_expr", tcc_reference, 1) /* Represents something we computed once and will use multiple times. First operand is that expression. After it is evaluated once, it will be replaced by the temporary variable that holds the value. */ -DEFTREECODE (SAVE_EXPR, "save_expr", 'e', 1) +DEFTREECODE (SAVE_EXPR, "save_expr", tcc_expression, 1) /* & in C. Value is the address at which the operand's value resides. Operand may have any mode. Result mode is Pmode. */ -DEFTREECODE (ADDR_EXPR, "addr_expr", 'e', 1) +DEFTREECODE (ADDR_EXPR, "addr_expr", tcc_expression, 1) /* Operand0 is a function constant; result is part N of a function descriptor of type ptr_mode. */ -DEFTREECODE (FDESC_EXPR, "fdesc_expr", 'e', 2) +DEFTREECODE (FDESC_EXPR, "fdesc_expr", tcc_expression, 2) /* Given two real or integer operands of the same type, returns a complex value of the corresponding complex type. */ -DEFTREECODE (COMPLEX_EXPR, "complex_expr", '2', 2) +DEFTREECODE (COMPLEX_EXPR, "complex_expr", tcc_binary, 2) /* Complex conjugate of operand. Used only on complex types. */ -DEFTREECODE (CONJ_EXPR, "conj_expr", '1', 1) +DEFTREECODE (CONJ_EXPR, "conj_expr", tcc_unary, 1) /* Used only on an operand of complex type, these return a value of the corresponding component type. */ -DEFTREECODE (REALPART_EXPR, "realpart_expr", 'r', 1) -DEFTREECODE (IMAGPART_EXPR, "imagpart_expr", 'r', 1) +DEFTREECODE (REALPART_EXPR, "realpart_expr", tcc_reference, 1) +DEFTREECODE (IMAGPART_EXPR, "imagpart_expr", tcc_reference, 1) /* Nodes for ++ and -- in C. The second arg is how much to increment or decrement by. For a pointer, it would be the size of the object pointed to. */ -DEFTREECODE (PREDECREMENT_EXPR, "predecrement_expr", 'e', 2) -DEFTREECODE (PREINCREMENT_EXPR, "preincrement_expr", 'e', 2) -DEFTREECODE (POSTDECREMENT_EXPR, "postdecrement_expr", 'e', 2) -DEFTREECODE (POSTINCREMENT_EXPR, "postincrement_expr", 'e', 2) +DEFTREECODE (PREDECREMENT_EXPR, "predecrement_expr", tcc_expression, 2) +DEFTREECODE (PREINCREMENT_EXPR, "preincrement_expr", tcc_expression, 2) +DEFTREECODE (POSTDECREMENT_EXPR, "postdecrement_expr", tcc_expression, 2) +DEFTREECODE (POSTINCREMENT_EXPR, "postincrement_expr", tcc_expression, 2) /* Used to implement `va_arg'. */ -DEFTREECODE (VA_ARG_EXPR, "va_arg_expr", 'e', 1) +DEFTREECODE (VA_ARG_EXPR, "va_arg_expr", tcc_expression, 1) /* Evaluate operand 1. If and only if an exception is thrown during the evaluation of operand 1, evaluate operand 2. This differs from TRY_FINALLY_EXPR in that operand 2 is not evaluated on a normal or jump exit, only on an exception. */ -DEFTREECODE (TRY_CATCH_EXPR, "try_catch_expr", 's', 2) +DEFTREECODE (TRY_CATCH_EXPR, "try_catch_expr", tcc_statement, 2) /* Evaluate the first operand. The second operand is a cleanup expression which is evaluated on any exit (normal, exception, or jump out) from this expression. */ -DEFTREECODE (TRY_FINALLY_EXPR, "try_finally", 's', 2) +DEFTREECODE (TRY_FINALLY_EXPR, "try_finally", tcc_statement, 2) /* These types of expressions have no useful value, and always have side effects. */ /* Used to represent a local declaration. The operand is DECL_EXPR_DECL. */ -DEFTREECODE (DECL_EXPR, "decl_expr", 's', 1) +DEFTREECODE (DECL_EXPR, "decl_expr", tcc_statement, 1) /* A label definition, encapsulated as a statement. Operand 0 is the LABEL_DECL node for the label that appears here. The type should be void and the value should be ignored. */ -DEFTREECODE (LABEL_EXPR, "label_expr", 's', 1) +DEFTREECODE (LABEL_EXPR, "label_expr", tcc_statement, 1) /* GOTO. Operand 0 is a LABEL_DECL node or an expression. The type should be void and the value should be ignored. */ -DEFTREECODE (GOTO_EXPR, "goto_expr", 's', 1) +DEFTREECODE (GOTO_EXPR, "goto_expr", tcc_statement, 1) /* RETURN. Evaluates operand 0, then returns from the current function. Presumably that operand is an assignment that stores into the RESULT_DECL that hold the value to be returned. The operand may be null. The type should be void and the value should be ignored. */ -DEFTREECODE (RETURN_EXPR, "return_expr", 's', 1) +DEFTREECODE (RETURN_EXPR, "return_expr", tcc_statement, 1) /* Exit the inner most loop conditionally. Operand 0 is the condition. The type should be void and the value should be ignored. */ -DEFTREECODE (EXIT_EXPR, "exit_expr", 's', 1) +DEFTREECODE (EXIT_EXPR, "exit_expr", tcc_statement, 1) /* A loop. Operand 0 is the body of the loop. It must contain an EXIT_EXPR or is an infinite loop. The type should be void and the value should be ignored. */ -DEFTREECODE (LOOP_EXPR, "loop_expr", 's', 1) +DEFTREECODE (LOOP_EXPR, "loop_expr", tcc_statement, 1) /* Exit a labeled block, possibly returning a value. Operand 0 is a LABELED_BLOCK_EXPR to exit. Operand 1 is the value to return. It may be left null. */ -DEFTREECODE (EXIT_BLOCK_EXPR, "exit_block_expr", 's', 2) +DEFTREECODE (EXIT_BLOCK_EXPR, "exit_block_expr", tcc_statement, 2) /* Switch expression. @@ -810,28 +800,28 @@ DEFTREECODE (EXIT_BLOCK_EXPR, "exit_block_expr", 's', 2) must not be NULL. Operand 2 is either NULL_TREE or a TREE_VEC of the CASE_LABEL_EXPRs of all the cases. */ -DEFTREECODE (SWITCH_EXPR, "switch_expr", 's', 3) +DEFTREECODE (SWITCH_EXPR, "switch_expr", tcc_statement, 3) /* Used to represent a case label. The operands are CASE_LOW and CASE_HIGH, respectively. If CASE_LOW is NULL_TREE, the label is a 'default' label. If CASE_HIGH is NULL_TREE, the label is a normal case label. CASE_LABEL is the corresponding LABEL_DECL. */ -DEFTREECODE (CASE_LABEL_EXPR, "case_label_expr", 's', 3) +DEFTREECODE (CASE_LABEL_EXPR, "case_label_expr", tcc_statement, 3) /* RESX. Resume execution after an exception. Operand 0 is a number indicating the exception region that is being left. */ -DEFTREECODE (RESX_EXPR, "resx_expr", 's', 1) +DEFTREECODE (RESX_EXPR, "resx_expr", tcc_statement, 1) /* Used to represent an inline assembly statement. ASM_STRING returns a STRING_CST for the instruction (e.g., "mov x, y"). ASM_OUTPUTS, ASM_INPUTS, and ASM_CLOBBERS represent the outputs, inputs, and clobbers for the statement. */ -DEFTREECODE (ASM_EXPR, "asm_expr", 's', 4) +DEFTREECODE (ASM_EXPR, "asm_expr", tcc_statement, 4) /* Variable references for SSA analysis. New SSA names are created every time a variable is assigned a new value. The SSA builder uses SSA_NAME nodes to implement SSA versioning. */ -DEFTREECODE (SSA_NAME, "ssa_name", 'x', 0) +DEFTREECODE (SSA_NAME, "ssa_name", tcc_exceptional, 0) /* SSA PHI operator. PHI_RESULT is the new SSA_NAME node created by the PHI node. PHI_ARG_LENGTH is the number of arguments. @@ -839,50 +829,50 @@ DEFTREECODE (SSA_NAME, "ssa_name", 'x', 0) argument list. Each tuple contains the incoming reaching definition (SSA_NAME node) and the edge via which that definition is coming through. */ -DEFTREECODE (PHI_NODE, "phi_node", 'x', 0) +DEFTREECODE (PHI_NODE, "phi_node", tcc_exceptional, 0) /* Used to represent a typed exception handler. CATCH_TYPES is the type (or list of types) handled, and CATCH_BODY is the code for the handler. */ -DEFTREECODE (CATCH_EXPR, "catch_expr", 's', 2) +DEFTREECODE (CATCH_EXPR, "catch_expr", tcc_statement, 2) /* Used to represent an exception specification. EH_FILTER_TYPES is a list of allowed types, and EH_FILTER_FAILURE is an expression to evaluate on failure. EH_FILTER_MUST_NOT_THROW controls which range type to use when expanding. */ -DEFTREECODE (EH_FILTER_EXPR, "eh_filter_expr", 's', 2) +DEFTREECODE (EH_FILTER_EXPR, "eh_filter_expr", tcc_statement, 2) /* Node used for describing a property that is known at compile time. */ -DEFTREECODE (SCEV_KNOWN, "scev_known", 'e', 0) +DEFTREECODE (SCEV_KNOWN, "scev_known", tcc_expression, 0) /* Node used for describing a property that is not known at compile time. */ -DEFTREECODE (SCEV_NOT_KNOWN, "scev_not_known", 'e', 0) +DEFTREECODE (SCEV_NOT_KNOWN, "scev_not_known", tcc_expression, 0) /* Polynomial chains of recurrences. Under the form: cr = {CHREC_LEFT (cr), +, CHREC_RIGHT (cr)}. */ -DEFTREECODE (POLYNOMIAL_CHREC, "polynomial_chrec", 'e', 3) +DEFTREECODE (POLYNOMIAL_CHREC, "polynomial_chrec", tcc_expression, 3) /* Used to chain children of container statements together. Use the interface in tree-iterator.h to access this node. */ -DEFTREECODE (STATEMENT_LIST, "statement_list", 'x', 0) +DEFTREECODE (STATEMENT_LIST, "statement_list", tcc_exceptional, 0) /* Value handles. Artificial nodes to represent expressions in partial redundancy elimination (tree-ssa-pre.c). These nodes are used for expression canonicalization. If two expressions compute the same value, they will be assigned the same value handle. */ -DEFTREECODE (VALUE_HANDLE, "value_handle", 'x', 0) +DEFTREECODE (VALUE_HANDLE, "value_handle", tcc_exceptional, 0) /* Base class information. Holds information about a class as a baseclass of itself or another class. */ -DEFTREECODE (TREE_BINFO, "tree_binfo", 'x', 0) +DEFTREECODE (TREE_BINFO, "tree_binfo", tcc_exceptional, 0) /* Records the size for an expression of variable size type. This is for use in contexts in which we are accessing the entire object, such as for a function call, or block copy. Operand 0 is the real expression. Operand 1 is the size of the type in the expression. */ -DEFTREECODE (WITH_SIZE_EXPR, "with_size_expr", 'e', 2) +DEFTREECODE (WITH_SIZE_EXPR, "with_size_expr", tcc_expression, 2) /* Local variables: diff --git a/gcc/tree.h b/gcc/tree.h index 432a170b6de..289d275d23f 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -43,25 +43,103 @@ enum tree_code { /* Number of language-independent tree codes. */ #define NUM_TREE_CODES ((int) LAST_AND_UNUSED_TREE_CODE) -/* Indexed by enum tree_code, contains a character which is - `<' for a comparison expression, `1', for a unary arithmetic - expression, `2' for a binary arithmetic expression, `e' for - other types of expressions, `r' for a reference, `c' for a - constant, `d' for a decl, `t' for a type, `s' for a statement, - and `x' for anything else (TREE_LIST, IDENTIFIER, etc). */ +/* Tree code classes. */ + +/* Each tree_code has an associated code class represented by a + TREE_CODE_CLASS. */ + +enum tree_code_class { + tcc_exceptional, /* An exceptional code (fits no category). */ + tcc_constant, /* A constant. */ + tcc_type, /* A type object code. */ + tcc_declaration, /* A declaration (also serving as variable refs). */ + tcc_reference, /* A reference to storage. */ + tcc_comparison, /* A comparison expression. */ + tcc_unary, /* A unary arithmetic expression. */ + tcc_binary, /* A binary arithmetic expression. */ + tcc_statement, /* A statement expression, which have side effects + but usually no interesting value. */ + tcc_expression /* Any other expression. */ +}; + +/* Each tree code class has an associated string representation. + These must correspond to the tree_code_class entries. */ + +extern const char *const tree_code_class_strings[]; + +/* Returns the string representing CLASS. */ + +#define TREE_CODE_CLASS_STRING(CLASS)\ + tree_code_class_strings[(int) (CLASS)] #define MAX_TREE_CODES 256 -extern const char tree_code_type[]; +extern const enum tree_code_class tree_code_type[]; #define TREE_CODE_CLASS(CODE) tree_code_type[(int) (CODE)] +/* Nonzero if CODE represents an exceptional code. */ + +#define EXCEPTIONAL_CLASS_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_exceptional) + +/* Nonzero if CODE represents a constant. */ + +#define CONSTANT_CLASS_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_constant) + +/* Nonzero if CODE represents a type. */ + +#define TYPE_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_type) + +/* Nonzero if CODE represents a declaration. */ + +#define DECL_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_declaration) + +/* Nonzero if CODE represents a reference. */ + +#define REFERENCE_CLASS_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_reference) + +/* Nonzero if CODE represents a comparison. */ + +#define COMPARISON_CLASS_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_comparison) + +/* Nonzero if CODE represents a unary arithmetic expression. */ + +#define UNARY_CLASS_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_unary) + +/* Nonzero if CODE represents a binary arithmetic expression. */ + +#define BINARY_CLASS_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_binary) + +/* Nonzero if CODE represents a statement expression. */ + +#define STATEMENT_CLASS_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_statement) + +/* Nonzero if CODE represents any other expression. */ + +#define EXPRESSION_CLASS_P(CODE)\ + (TREE_CODE_CLASS (TREE_CODE (CODE)) == tcc_expression) + /* Returns nonzero iff CLASS is not the tree code of a type. */ -#define IS_NON_TYPE_CODE_CLASS(CLASS) ((CLASS) != 't') +#define IS_NON_TYPE_CODE_CLASS(CLASS) ((CLASS) != tcc_type) + +/* Returns nonzero iff CODE represents a type or declaration. */ + +#define IS_TYPE_OR_DECL_P(CODE)\ + (TYPE_P (CODE) || DECL_P (CODE)) /* Returns nonzero iff CLASS is the tree-code class of an expression. */ -#define IS_EXPR_CODE_CLASS(CLASS) (strchr ("<12ers", (CLASS)) != 0) +#define IS_EXPR_CODE_CLASS(CLASS)\ + (((CLASS) >= tcc_reference) && ((CLASS) <= tcc_expression)) /* Returns nonzero iff NODE is an expression of some kind. */ @@ -448,7 +526,7 @@ struct tree_common GTY(()) ({ const tree __t = (T); \ char const __c = TREE_CODE_CLASS (TREE_CODE (__t)); \ if (!IS_EXPR_CODE_CLASS (__c)) \ - tree_class_check_failed (__t, 'E', __FILE__, __LINE__, \ + tree_class_check_failed (__t, tcc_expression, __FILE__, __LINE__, \ __FUNCTION__); \ __t; }) @@ -457,7 +535,7 @@ struct tree_common GTY(()) ({ const tree __t = (T); \ char const __c = TREE_CODE_CLASS (TREE_CODE (__t)); \ if (!IS_NON_TYPE_CODE_CLASS (__c)) \ - tree_class_check_failed (__t, 'T', __FILE__, __LINE__, \ + tree_class_check_failed (__t, tcc_type, __FILE__, __LINE__, \ __FUNCTION__); \ __t; }) @@ -517,7 +595,7 @@ extern void tree_check_failed (const tree, const char *, int, const char *, ...) ATTRIBUTE_NORETURN; extern void tree_not_check_failed (const tree, const char *, int, const char *, ...) ATTRIBUTE_NORETURN; -extern void tree_class_check_failed (const tree, int, +extern void tree_class_check_failed (const tree, const enum tree_code_class, const char *, int, const char *) ATTRIBUTE_NORETURN; extern void tree_vec_elt_check_failed (int, int, const char *, @@ -557,10 +635,10 @@ extern void tree_operand_check_failed (int, enum tree_code, #include "tree-check.h" -#define TYPE_CHECK(T) TREE_CLASS_CHECK (T, 't') -#define DECL_CHECK(T) TREE_CLASS_CHECK (T, 'd') -#define CST_CHECK(T) TREE_CLASS_CHECK (T, 'c') -#define STMT_CHECK(T) TREE_CLASS_CHECK (T, 's') +#define TYPE_CHECK(T) TREE_CLASS_CHECK (T, tcc_type) +#define DECL_CHECK(T) TREE_CLASS_CHECK (T, tcc_declaration) +#define CST_CHECK(T) TREE_CLASS_CHECK (T, tcc_constant) +#define STMT_CHECK(T) TREE_CLASS_CHECK (T, tcc_statement) #define FUNC_OR_METHOD_CHECK(T) TREE_CHECK2 (T, FUNCTION_TYPE, METHOD_TYPE) #define PTR_OR_REF_CHECK(T) TREE_CHECK2 (T, POINTER_TYPE, REFERENCE_TYPE) @@ -712,9 +790,6 @@ extern void tree_operand_check_failed (int, enum tree_code, #define COMPLETE_OR_UNBOUND_ARRAY_TYPE_P(NODE) \ (COMPLETE_TYPE_P (TREE_CODE (NODE) == ARRAY_TYPE ? TREE_TYPE (NODE) : (NODE))) -/* Nonzero if TYPE represents a type. */ - -#define TYPE_P(TYPE) (TREE_CODE_CLASS (TREE_CODE (TYPE)) == 't') /* Define many boolean fields that all tree nodes have. */ @@ -839,7 +914,8 @@ extern void tree_operand_check_failed (int, enum tree_code, #define TREE_READONLY(NODE) (NON_TYPE_CHECK (NODE)->common.readonly_flag) /* Nonzero if NODE is a _DECL with TREE_READONLY set. */ -#define TREE_READONLY_DECL_P(NODE) (DECL_P (NODE) && TREE_READONLY (NODE)) +#define TREE_READONLY_DECL_P(NODE)\ + (DECL_P (NODE) && TREE_READONLY (NODE)) /* Value of expression is constant. Always on in all ..._CST nodes. May also appear in an expression or decl where the value is constant. */ @@ -1091,17 +1167,13 @@ struct tree_vec GTY(()) decls and constants can be shared among multiple locations, so return nothing. */ #define EXPR_LOCATION(NODE) \ - (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (NODE))) \ - ? (NODE)->exp.locus \ - : UNKNOWN_LOCATION) + (EXPR_P (NODE) ? (NODE)->exp.locus : UNKNOWN_LOCATION) #define SET_EXPR_LOCATION(NODE, FROM) \ (EXPR_CHECK (NODE)->exp.locus = (FROM)) #define EXPR_HAS_LOCATION(NODE) (EXPR_LOCATION (NODE) != UNKNOWN_LOCATION) /* EXPR_LOCUS and SET_EXPR_LOCUS are deprecated. */ #define EXPR_LOCUS(NODE) \ - (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (NODE))) \ - ? &(NODE)->exp.locus \ - : (location_t *)NULL) + (EXPR_P (NODE) ? &(NODE)->exp.locus : (location_t *)NULL) #define SET_EXPR_LOCUS(NODE, FROM) \ do { source_location *loc_tmp = FROM; \ EXPR_CHECK (NODE)->exp.locus \ @@ -1115,9 +1187,7 @@ struct tree_vec GTY(()) decls and constants can be shared among multiple locations, so return nothing. */ #define EXPR_LOCUS(NODE) \ - (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (NODE))) \ - ? (NODE)->exp.locus \ - : (location_t *)NULL) + (EXPR_P (NODE) ? (NODE)->exp.locus : (location_t *)NULL) #define SET_EXPR_LOCUS(NODE, FROM) \ (EXPR_CHECK (NODE)->exp.locus = (FROM)) #define SET_EXPR_LOCATION(NODE, FROM) annotate_with_locus (NODE, FROM) @@ -1293,6 +1363,8 @@ struct tree_ssa_name GTY(()) #define PHI_ARG_ELT(NODE, I) PHI_NODE_ELT_CHECK (NODE, I) #define PHI_ARG_EDGE(NODE, I) PHI_NODE_ELT_CHECK (NODE, I).e #define PHI_ARG_NONZERO(NODE, I) PHI_NODE_ELT_CHECK (NODE, I).nonzero +#define PHI_BB(NODE) PHI_NODE_CHECK (NODE)->phi.bb +#define PHI_DF(NODE) PHI_NODE_CHECK (NODE)->phi.df struct edge_def; @@ -1314,6 +1386,12 @@ struct tree_phi_node GTY(()) SSA renamer. */ int rewritten; + /* Basic block to that the phi node belongs. */ + struct basic_block_def *bb; + + /* Dataflow information. */ + struct dataflow_d *df; + struct phi_arg_d GTY ((length ("((tree)&%h)->phi.capacity"))) a[1]; }; @@ -1564,6 +1642,12 @@ struct tree_block GTY(()) compact a way as possible. */ #define TYPE_PACKED(NODE) (TYPE_CHECK (NODE)->type.packed_flag) +/* Used by type_contains_placeholder_p to avoid recomputation. + Values are: 0 (unknown), 1 (false), 2 (true). Never access + this field directly. */ +#define TYPE_CONTAINS_PLACEHOLDER_INTERNAL(NODE) \ + (TYPE_CHECK (NODE)->type.contains_placeholder_bits) + struct die_struct; struct tree_type GTY(()) @@ -1584,7 +1668,7 @@ struct tree_type GTY(()) unsigned transparent_union_flag : 1; unsigned packed_flag : 1; unsigned restrict_flag : 1; - unsigned spare : 2; + unsigned contains_placeholder_bits : 2; unsigned lang_flag_0 : 1; unsigned lang_flag_1 : 1; @@ -1739,9 +1823,6 @@ struct tree_binfo GTY (()) /* Define fields and accessors for nodes representing declared names. */ -/* Nonzero if DECL represents a decl. */ -#define DECL_P(DECL) (TREE_CODE_CLASS (TREE_CODE (DECL)) == 'd') - /* Nonzero if DECL represents a variable for the SSA passes. */ #define SSA_VAR_P(DECL) \ (TREE_CODE (DECL) == VAR_DECL \ @@ -2642,6 +2723,11 @@ extern tree decl_assembler_name (tree); extern size_t tree_size (tree); +/* Compute the number of bytes occupied by a tree with code CODE. This + function cannot be used for TREE_VEC or PHI_NODE codes, which are of + variable length. */ +extern size_t tree_code_size (enum tree_code); + /* Lowest level primitive for allocating a node. The TREE_CODE is the only argument. Contents are initialized to zero except for a few of the common fields. */ @@ -2773,6 +2859,7 @@ extern tree build_empty_stmt (void); extern tree make_signed_type (int); extern tree make_unsigned_type (int); +extern tree signed_type_for (tree); extern tree unsigned_type_for (tree); extern void initialize_sizetypes (bool); extern void set_sizetype (tree); @@ -3227,11 +3314,6 @@ extern bool contains_placeholder_p (tree); extern bool type_contains_placeholder_p (tree); -/* Return 1 if EXP contains any expressions that produce cleanups for an - outer scope to deal with. Used by fold. */ - -extern int has_cleanups (tree); - /* Given a tree EXP, a FIELD_DECL F, and a replacement value R, return a tree with all occurrences of references to F in a PLACEHOLDER_EXPR replaced by R. Note that we assume here that EXP @@ -3350,7 +3432,7 @@ extern int pedantic_lvalues; extern GTY(()) tree current_function_decl; /* Nonzero means a FUNC_BEGIN label was emitted. */ -extern GTY(()) tree current_function_func_begin_label; +extern GTY(()) const char * current_function_func_begin_label; /* In tree.c */ extern unsigned crc32_string (unsigned, const char *); @@ -3450,6 +3532,8 @@ extern tree constant_boolean_node (int, tree); extern bool tree_swap_operands_p (tree, tree, bool); extern enum tree_code swap_tree_comparison (enum tree_code); +extern bool ptr_difference_const (tree, tree, HOST_WIDE_INT *); + /* In builtins.c */ extern tree fold_builtin (tree, bool); extern tree fold_builtin_fputs (tree, bool, bool, tree); @@ -3714,9 +3798,11 @@ enum tree_dump_index within it. */ TDI_vcg, /* create a VCG graph file for each function's flowgraph. */ - TDI_xml, /* dump function call graph. */ TDI_tree_all, /* enable all the GENERIC/GIMPLE dumps. */ TDI_rtl_all, /* enable all the RTL dumps. */ + TDI_ipa_all, /* enable all the IPA dumps. */ + + TDI_cgraph, /* dump function call graph. */ DFI_MIN, /* For now, RTL dumps are placed here. */ DFI_sibling = DFI_MIN, @@ -3776,6 +3862,7 @@ enum tree_dump_index #define TDF_TREE (1 << 9) /* is a tree dump */ #define TDF_RTL (1 << 10) /* is a RTL dump */ +#define TDF_IPA (1 << 11) /* is an IPA dump */ typedef struct dump_info *dump_info_p; diff --git a/gcc/treelang/ChangeLog b/gcc/treelang/ChangeLog index 837af4f7d07..773a50a5e46 100644 --- a/gcc/treelang/ChangeLog +++ b/gcc/treelang/ChangeLog @@ -1,3 +1,12 @@ +2004-09-17 Jeffrey D. Oldham + Zack Weinberg + + * treetree.c: Update for new tree-class enumeration constants. + +2004-09-15 Zack Weinberg + + * Make-lang.in (treelang-warn): Set to $(STRICT_WARN). + 2004-08-26 Nathan Sidwell * treetree.c (tree_code_get_integer_value): Fix build_int_cst call. @@ -100,7 +109,7 @@ 2004-01-30 Kelley Cook - * Make-lang.in (doc/treelang.dvi): Use $(abs_docdir). + * Make-lang.in (doc/treelang.dvi): Use $(abs_docdir). 2004-01-20 Kelley Cook @@ -111,7 +120,7 @@ 2004-01-15 Kelley Cook * Make-lang.in (TREE_GENERATED): Delete reference to $(parsedir). - (treelang/parse.o, treelang/lex.o): Look for sources in build + (treelang/parse.o, treelang/lex.o): Look for sources in build directory. Use implicit rule. (treelang/parse.c, treelang/parse.h treelang/lex.c): Always build in doc directory. diff --git a/gcc/treelang/Make-lang.in b/gcc/treelang/Make-lang.in index 2ea3b656c38..2625ef1d1a4 100644 --- a/gcc/treelang/Make-lang.in +++ b/gcc/treelang/Make-lang.in @@ -56,9 +56,8 @@ GCC_EXTRAS = -B./ -B$(build_tooldir)/bin/ -isystem $(build_tooldir)/include TREE_GENERATED = lex.c parse.c parse.h parse.output TREE_EXES = tree1 -#no -Wtraditional warnings, allow long long -treelang-warn = $(LOOSE_WARN) -pedantic -Wno-long-long -Wmissing-prototypes \ - -Wmissing-declarations -Wno-variadic-macros $(WERROR) +#strict warnings for treelang +treelang-warn = $(STRICT_WARN) # bison emits some unused static arrays (yytoknum) treelang/parse.o-warn = -Wno-error # flex produces 'no previous prototype' warnings diff --git a/gcc/treelang/treetree.c b/gcc/treelang/treetree.c index c86918c7f6c..e0a220fe65d 100644 --- a/gcc/treelang/treetree.c +++ b/gcc/treelang/treetree.c @@ -199,9 +199,9 @@ const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; #define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE, -const char tree_code_type[] = { +const enum tree_code_class tree_code_type[] = { #include "tree.def" - 'x' + tcc_exceptional }; #undef DEFTREECODE diff --git a/gcc/unroll.c b/gcc/unroll.c deleted file mode 100644 index cef4c6ecca3..00000000000 --- a/gcc/unroll.c +++ /dev/null @@ -1,3840 +0,0 @@ -/* Try to unroll loops, and split induction variables. - Copyright (C) 1992, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004 - Free Software Foundation, Inc. - Contributed by James E. Wilson, Cygnus Support/UC Berkeley. - -This file is part of GCC. - -GCC 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. - -GCC 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 GCC; see the file COPYING. If not, write to the Free -Software Foundation, 59 Temple Place - Suite 330, Boston, MA -02111-1307, USA. */ - -/* Try to unroll a loop, and split induction variables. - - Loops for which the number of iterations can be calculated exactly are - handled specially. If the number of iterations times the insn_count is - less than MAX_UNROLLED_INSNS, then the loop is unrolled completely. - Otherwise, we try to unroll the loop a number of times modulo the number - of iterations, so that only one exit test will be needed. It is unrolled - a number of times approximately equal to MAX_UNROLLED_INSNS divided by - the insn count. - - Otherwise, if the number of iterations can be calculated exactly at - run time, and the loop is always entered at the top, then we try to - precondition the loop. That is, at run time, calculate how many times - the loop will execute, and then execute the loop body a few times so - that the remaining iterations will be some multiple of 4 (or 2 if the - loop is large). Then fall through to a loop unrolled 4 (or 2) times, - with only one exit test needed at the end of the loop. - - Otherwise, if the number of iterations can not be calculated exactly, - not even at run time, then we still unroll the loop a number of times - approximately equal to MAX_UNROLLED_INSNS divided by the insn count, - but there must be an exit test after each copy of the loop body. - - For each induction variable, which is dead outside the loop (replaceable) - or for which we can easily calculate the final value, if we can easily - calculate its value at each place where it is set as a function of the - current loop unroll count and the variable's value at loop entry, then - the induction variable is split into `N' different variables, one for - each copy of the loop body. One variable is live across the backward - branch, and the others are all calculated as a function of this variable. - This helps eliminate data dependencies, and leads to further opportunities - for cse. */ - -/* Possible improvements follow: */ - -/* ??? Add an extra pass somewhere to determine whether unrolling will - give any benefit. E.g. after generating all unrolled insns, compute the - cost of all insns and compare against cost of insns in rolled loop. - - - On traditional architectures, unrolling a non-constant bound loop - is a win if there is a giv whose only use is in memory addresses, the - memory addresses can be split, and hence giv increments can be - eliminated. - - It is also a win if the loop is executed many times, and preconditioning - can be performed for the loop. - Add code to check for these and similar cases. */ - -/* ??? Improve control of which loops get unrolled. Could use profiling - info to only unroll the most commonly executed loops. Perhaps have - a user specifiable option to control the amount of code expansion, - or the percent of loops to consider for unrolling. Etc. */ - -/* ??? Look at the register copies inside the loop to see if they form a - simple permutation. If so, iterate the permutation until it gets back to - the start state. This is how many times we should unroll the loop, for - best results, because then all register copies can be eliminated. - For example, the lisp nreverse function should be unrolled 3 times - while (this) - { - next = this->cdr; - this->cdr = prev; - prev = this; - this = next; - } - - ??? The number of times to unroll the loop may also be based on data - references in the loop. For example, if we have a loop that references - x[i-1], x[i], and x[i+1], we should unroll it a multiple of 3 times. */ - -/* ??? Add some simple linear equation solving capability so that we can - determine the number of loop iterations for more complex loops. - For example, consider this loop from gdb - #define SWAP_TARGET_AND_HOST(buffer,len) - { - char tmp; - char *p = (char *) buffer; - char *q = ((char *) buffer) + len - 1; - int iterations = (len + 1) >> 1; - int i; - for (p; p < q; p++, q--;) - { - tmp = *q; - *q = *p; - *p = tmp; - } - } - Note that: - start value = p = &buffer + current_iteration - end value = q = &buffer + len - 1 - current_iteration - Given the loop exit test of "p < q", then there must be "q - p" iterations, - set equal to zero and solve for number of iterations: - q - p = len - 1 - 2*current_iteration = 0 - current_iteration = (len - 1) / 2 - Hence, there are (len - 1) / 2 (rounded up to the nearest integer) - iterations of this loop. */ - -/* ??? Currently, no labels are marked as loop invariant when doing loop - unrolling. This is because an insn inside the loop, that loads the address - of a label inside the loop into a register, could be moved outside the loop - by the invariant code motion pass if labels were invariant. If the loop - is subsequently unrolled, the code will be wrong because each unrolled - body of the loop will use the same address, whereas each actually needs a - different address. A case where this happens is when a loop containing - a switch statement is unrolled. - - It would be better to let labels be considered invariant. When we - unroll loops here, check to see if any insns using a label local to the - loop were moved before the loop. If so, then correct the problem, by - moving the insn back into the loop, or perhaps replicate the insn before - the loop, one copy for each time the loop is unrolled. */ - -#include "config.h" -#include "system.h" -#include "coretypes.h" -#include "tm.h" -#include "rtl.h" -#include "tm_p.h" -#include "insn-config.h" -#include "integrate.h" -#include "regs.h" -#include "recog.h" -#include "flags.h" -#include "function.h" -#include "expr.h" -#include "loop.h" -#include "toplev.h" -#include "hard-reg-set.h" -#include "basic-block.h" -#include "predict.h" -#include "params.h" -#include "cfgloop.h" - -/* The prime factors looked for when trying to unroll a loop by some - number which is modulo the total number of iterations. Just checking - for these 4 prime factors will find at least one factor for 75% of - all numbers theoretically. Practically speaking, this will succeed - almost all of the time since loops are generally a multiple of 2 - and/or 5. */ - -#define NUM_FACTORS 4 - -static struct _factor { const int factor; int count; } -factors[NUM_FACTORS] = { {2, 0}, {3, 0}, {5, 0}, {7, 0}}; - -/* Describes the different types of loop unrolling performed. */ - -enum unroll_types -{ - UNROLL_COMPLETELY, - UNROLL_MODULO, - UNROLL_NAIVE -}; - -/* Indexed by register number, if nonzero, then it contains a pointer - to a struct induction for a DEST_REG giv which has been combined with - one of more address givs. This is needed because whenever such a DEST_REG - giv is modified, we must modify the value of all split address givs - that were combined with this DEST_REG giv. */ - -static struct induction **addr_combined_regs; - -/* Indexed by register number, if this is a splittable induction variable, - then this will hold the current value of the register, which depends on the - iteration number. */ - -static rtx *splittable_regs; - -/* Indexed by register number, if this is a splittable induction variable, - then this will hold the number of instructions in the loop that modify - the induction variable. Used to ensure that only the last insn modifying - a split iv will update the original iv of the dest. */ - -static int *splittable_regs_updates; - -/* Forward declarations. */ - -static rtx simplify_cmp_and_jump_insns (enum rtx_code, enum machine_mode, - rtx, rtx, rtx); -static void init_reg_map (struct inline_remap *, int); -static rtx calculate_giv_inc (rtx, rtx, unsigned int); -static rtx initial_reg_note_copy (rtx, struct inline_remap *); -static void final_reg_note_copy (rtx *, struct inline_remap *); -static void copy_loop_body (struct loop *, rtx, rtx, - struct inline_remap *, rtx, int, - enum unroll_types, rtx, rtx, rtx, rtx); -static int find_splittable_regs (const struct loop *, enum unroll_types, - int); -static int find_splittable_givs (const struct loop *, struct iv_class *, - enum unroll_types, rtx, int); -static int reg_dead_after_loop (const struct loop *, rtx); -static rtx fold_rtx_mult_add (rtx, rtx, rtx, enum machine_mode); -static rtx remap_split_bivs (struct loop *, rtx); -static rtx find_common_reg_term (rtx, rtx); -static rtx loop_find_equiv_value (const struct loop *, rtx); - -/* Try to unroll one loop and split induction variables in the loop. - - The loop is described by the arguments LOOP and INSN_COUNT. - STRENGTH_REDUCTION_P indicates whether information generated in the - strength reduction pass is available. - - This function is intended to be called from within `strength_reduce' - in loop.c. */ - -void -unroll_loop (struct loop *loop, int insn_count, int strength_reduce_p) -{ - struct loop_info *loop_info = LOOP_INFO (loop); - struct loop_ivs *ivs = LOOP_IVS (loop); - int i, j; - unsigned int r; - unsigned HOST_WIDE_INT temp; - int unroll_number = 1; - rtx copy_start, copy_end; - rtx insn, sequence, pattern, tem; - int max_labelno, max_insnno; - rtx insert_before; - struct inline_remap *map; - char *local_label = NULL; - char *local_regno; - unsigned int max_local_regnum; - unsigned int maxregnum; - rtx exit_label = 0; - rtx start_label; - struct iv_class *bl; - int splitting_not_safe = 0; - enum unroll_types unroll_type = UNROLL_NAIVE; - int loop_preconditioned = 0; - rtx safety_label; - /* This points to the last real insn in the loop, which should be either - a JUMP_INSN (for conditional jumps) or a BARRIER (for unconditional - jumps). */ - rtx last_loop_insn; - rtx loop_start = loop->start; - rtx loop_end = loop->end; - - /* Don't bother unrolling huge loops. Since the minimum factor is - two, loops greater than one half of MAX_UNROLLED_INSNS will never - be unrolled. */ - if (insn_count > MAX_UNROLLED_INSNS / 2) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, "Unrolling failure: Loop too big.\n"); - return; - } - - /* Determine type of unroll to perform. Depends on the number of iterations - and the size of the loop. */ - - /* If there is no strength reduce info, then set - loop_info->n_iterations to zero. This can happen if - strength_reduce can't find any bivs in the loop. A value of zero - indicates that the number of iterations could not be calculated. */ - - if (! strength_reduce_p) - loop_info->n_iterations = 0; - - if (loop_dump_stream && loop_info->n_iterations > 0) - fprintf (loop_dump_stream, "Loop unrolling: " HOST_WIDE_INT_PRINT_DEC - " iterations.\n", loop_info->n_iterations); - - /* Find and save a pointer to the last nonnote insn in the loop. */ - - last_loop_insn = prev_nonnote_insn (loop_end); - - /* Calculate how many times to unroll the loop. Indicate whether or - not the loop is being completely unrolled. */ - - if (loop_info->n_iterations == 1) - { - /* Handle the case where the loop begins with an unconditional - jump to the loop condition. Make sure to delete the jump - insn, otherwise the loop body will never execute. */ - - /* If the last instruction is not a BARRIER or a JUMP_INSN, then - don't do anything. */ - - if (BARRIER_P (last_loop_insn)) - { - /* Delete the jump insn. This will delete the barrier also. */ - last_loop_insn = PREV_INSN (last_loop_insn); - } - } - - if (loop_info->n_iterations > 0 - /* Avoid overflow in the next expression. */ - && loop_info->n_iterations < (unsigned) MAX_UNROLLED_INSNS - && loop_info->n_iterations * insn_count < (unsigned) MAX_UNROLLED_INSNS) - { - unroll_number = loop_info->n_iterations; - unroll_type = UNROLL_COMPLETELY; - } - else if (loop_info->n_iterations > 0) - { - /* Try to factor the number of iterations. Don't bother with the - general case, only using 2, 3, 5, and 7 will get 75% of all - numbers theoretically, and almost all in practice. */ - - for (i = 0; i < NUM_FACTORS; i++) - factors[i].count = 0; - - temp = loop_info->n_iterations; - for (i = NUM_FACTORS - 1; i >= 0; i--) - while (temp % factors[i].factor == 0) - { - factors[i].count++; - temp = temp / factors[i].factor; - } - - /* Start with the larger factors first so that we generally - get lots of unrolling. */ - - unroll_number = 1; - temp = insn_count; - for (i = 3; i >= 0; i--) - while (factors[i].count--) - { - if (temp * factors[i].factor < (unsigned) MAX_UNROLLED_INSNS) - { - unroll_number *= factors[i].factor; - temp *= factors[i].factor; - } - else - break; - } - - /* If we couldn't find any factors, then unroll as in the normal - case. */ - if (unroll_number == 1) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, "Loop unrolling: No factors found.\n"); - } - else - unroll_type = UNROLL_MODULO; - } - - /* Default case, calculate number of times to unroll loop based on its - size. */ - if (unroll_type == UNROLL_NAIVE) - { - if (8 * insn_count < MAX_UNROLLED_INSNS) - unroll_number = 8; - else if (4 * insn_count < MAX_UNROLLED_INSNS) - unroll_number = 4; - else - unroll_number = 2; - } - - /* Now we know how many times to unroll the loop. */ - - if (loop_dump_stream) - fprintf (loop_dump_stream, "Unrolling loop %d times.\n", unroll_number); - - if (unroll_type == UNROLL_COMPLETELY || unroll_type == UNROLL_MODULO) - { - /* Loops of these types can start with jump down to the exit condition - in rare circumstances. - - Consider a pair of nested loops where the inner loop is part - of the exit code for the outer loop. - - In this case jump.c will not duplicate the exit test for the outer - loop, so it will start with a jump to the exit code. - - Then consider if the inner loop turns out to iterate once and - only once. We will end up deleting the jumps associated with - the inner loop. However, the loop notes are not removed from - the instruction stream. - - And finally assume that we can compute the number of iterations - for the outer loop. - - In this case unroll may want to unroll the outer loop even though - it starts with a jump to the outer loop's exit code. - - We could try to optimize this case, but it hardly seems worth it. - Just return without unrolling the loop in such cases. */ - - insn = loop_start; - while (!LABEL_P (insn) && !JUMP_P (insn)) - insn = NEXT_INSN (insn); - if (JUMP_P (insn)) - return; - } - - if (unroll_type == UNROLL_COMPLETELY) - { - /* Completely unrolling the loop: Delete the compare and branch at - the end (the last two instructions). This delete must done at the - very end of loop unrolling, to avoid problems with calls to - back_branch_in_range_p, which is called by find_splittable_regs. - All increments of splittable bivs/givs are changed to load constant - instructions. */ - - copy_start = loop_start; - - /* Set insert_before to the instruction immediately after the JUMP_INSN - (or BARRIER), so that any NOTEs between the JUMP_INSN and the end of - the loop will be correctly handled by copy_loop_body. */ - insert_before = NEXT_INSN (last_loop_insn); - - /* Set copy_end to the insn before the jump at the end of the loop. */ - if (BARRIER_P (last_loop_insn)) - copy_end = PREV_INSN (PREV_INSN (last_loop_insn)); - else if (JUMP_P (last_loop_insn)) - { - copy_end = PREV_INSN (last_loop_insn); -#ifdef HAVE_cc0 - /* The instruction immediately before the JUMP_INSN may be a compare - instruction which we do not want to copy. */ - if (sets_cc0_p (PREV_INSN (copy_end))) - copy_end = PREV_INSN (copy_end); -#endif - } - else - { - /* We currently can't unroll a loop if it doesn't end with a - JUMP_INSN. There would need to be a mechanism that recognizes - this case, and then inserts a jump after each loop body, which - jumps to after the last loop body. */ - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Unrolling failure: loop does not end with a JUMP_INSN.\n"); - return; - } - } - else if (unroll_type == UNROLL_MODULO) - { - /* Partially unrolling the loop: The compare and branch at the end - (the last two instructions) must remain. Don't copy the compare - and branch instructions at the end of the loop. Insert the unrolled - code immediately before the compare/branch at the end so that the - code will fall through to them as before. */ - - copy_start = loop_start; - - /* Set insert_before to the jump insn at the end of the loop. - Set copy_end to before the jump insn at the end of the loop. */ - if (BARRIER_P (last_loop_insn)) - { - insert_before = PREV_INSN (last_loop_insn); - copy_end = PREV_INSN (insert_before); - } - else if (JUMP_P (last_loop_insn)) - { - insert_before = last_loop_insn; -#ifdef HAVE_cc0 - /* The instruction immediately before the JUMP_INSN may be a compare - instruction which we do not want to copy or delete. */ - if (sets_cc0_p (PREV_INSN (insert_before))) - insert_before = PREV_INSN (insert_before); -#endif - copy_end = PREV_INSN (insert_before); - } - else - { - /* We currently can't unroll a loop if it doesn't end with a - JUMP_INSN. There would need to be a mechanism that recognizes - this case, and then inserts a jump after each loop body, which - jumps to after the last loop body. */ - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Unrolling failure: loop does not end with a JUMP_INSN.\n"); - return; - } - } - else - { - /* Normal case: Must copy the compare and branch instructions at the - end of the loop. */ - - if (BARRIER_P (last_loop_insn)) - { - /* Loop ends with an unconditional jump and a barrier. - Handle this like above, don't copy jump and barrier. - This is not strictly necessary, but doing so prevents generating - unconditional jumps to an immediately following label. - - This will be corrected below if the target of this jump is - not the start_label. */ - - insert_before = PREV_INSN (last_loop_insn); - copy_end = PREV_INSN (insert_before); - } - else if (JUMP_P (last_loop_insn)) - { - /* Set insert_before to immediately after the JUMP_INSN, so that - NOTEs at the end of the loop will be correctly handled by - copy_loop_body. */ - insert_before = NEXT_INSN (last_loop_insn); - copy_end = last_loop_insn; - } - else - { - /* We currently can't unroll a loop if it doesn't end with a - JUMP_INSN. There would need to be a mechanism that recognizes - this case, and then inserts a jump after each loop body, which - jumps to after the last loop body. */ - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Unrolling failure: loop does not end with a JUMP_INSN.\n"); - return; - } - - /* If copying exit test branches because they can not be eliminated, - then must convert the fall through case of the branch to a jump past - the end of the loop. Create a label to emit after the loop and save - it for later use. Do not use the label after the loop, if any, since - it might be used by insns outside the loop, or there might be insns - added before it later by final_[bg]iv_value which must be after - the real exit label. */ - exit_label = gen_label_rtx (); - - insn = loop_start; - while (!LABEL_P (insn) && !JUMP_P (insn)) - insn = NEXT_INSN (insn); - - if (JUMP_P (insn)) - { - /* The loop starts with a jump down to the exit condition test. - Start copying the loop after the barrier following this - jump insn. */ - copy_start = NEXT_INSN (insn); - - /* Splitting induction variables doesn't work when the loop is - entered via a jump to the bottom, because then we end up doing - a comparison against a new register for a split variable, but - we did not execute the set insn for the new register because - it was skipped over. */ - splitting_not_safe = 1; - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Splitting not safe, because loop not entered at top.\n"); - } - else - copy_start = loop_start; - } - - /* This should always be the first label in the loop. */ - start_label = NEXT_INSN (copy_start); - /* There may be a line number note and/or a loop continue note here. */ - while (NOTE_P (start_label)) - start_label = NEXT_INSN (start_label); - if (!LABEL_P (start_label)) - { - /* This can happen as a result of jump threading. If the first insns in - the loop test the same condition as the loop's backward jump, or the - opposite condition, then the backward jump will be modified to point - to elsewhere, and the loop's start label is deleted. - - This case currently can not be handled by the loop unrolling code. */ - - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Unrolling failure: unknown insns between BEG note and loop label.\n"); - return; - } - if (LABEL_NAME (start_label)) - { - /* The jump optimization pass must have combined the original start label - with a named label for a goto. We can't unroll this case because - jumps which go to the named label must be handled differently than - jumps to the loop start, and it is impossible to differentiate them - in this case. */ - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Unrolling failure: loop start label is gone\n"); - return; - } - - if (unroll_type == UNROLL_NAIVE - && BARRIER_P (last_loop_insn) - && JUMP_P (PREV_INSN (last_loop_insn)) - && start_label != JUMP_LABEL (PREV_INSN (last_loop_insn))) - { - /* In this case, we must copy the jump and barrier, because they will - not be converted to jumps to an immediately following label. */ - - insert_before = NEXT_INSN (last_loop_insn); - copy_end = last_loop_insn; - } - - if (unroll_type == UNROLL_NAIVE - && JUMP_P (last_loop_insn) - && start_label != JUMP_LABEL (last_loop_insn)) - { - /* ??? The loop ends with a conditional branch that does not branch back - to the loop start label. In this case, we must emit an unconditional - branch to the loop exit after emitting the final branch. - copy_loop_body does not have support for this currently, so we - give up. It doesn't seem worthwhile to unroll anyways since - unrolling would increase the number of branch instructions - executed. */ - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Unrolling failure: final conditional branch not to loop start\n"); - return; - } - - /* Allocate a translation table for the labels and insn numbers. - They will be filled in as we copy the insns in the loop. */ - - max_labelno = max_label_num (); - max_insnno = get_max_uid (); - - /* Various paths through the unroll code may reach the "egress" label - without initializing fields within the map structure. - - To be safe, we use xcalloc to zero the memory. */ - map = xcalloc (1, sizeof (struct inline_remap)); - - /* Allocate the label map. */ - - if (max_labelno > 0) - { - map->label_map = xcalloc (max_labelno, sizeof (rtx)); - local_label = xcalloc (max_labelno, sizeof (char)); - } - - /* Search the loop and mark all local labels, i.e. the ones which have to - be distinct labels when copied. For all labels which might be - non-local, set their label_map entries to point to themselves. - If they happen to be local their label_map entries will be overwritten - before the loop body is copied. The label_map entries for local labels - will be set to a different value each time the loop body is copied. */ - - for (insn = copy_start; insn != loop_end; insn = NEXT_INSN (insn)) - { - rtx note; - - if (LABEL_P (insn)) - local_label[CODE_LABEL_NUMBER (insn)] = 1; - else if (JUMP_P (insn)) - { - if (JUMP_LABEL (insn)) - set_label_in_map (map, - CODE_LABEL_NUMBER (JUMP_LABEL (insn)), - JUMP_LABEL (insn)); - else if (GET_CODE (PATTERN (insn)) == ADDR_VEC - || GET_CODE (PATTERN (insn)) == ADDR_DIFF_VEC) - { - rtx pat = PATTERN (insn); - int diff_vec_p = GET_CODE (PATTERN (insn)) == ADDR_DIFF_VEC; - int len = XVECLEN (pat, diff_vec_p); - rtx label; - - for (i = 0; i < len; i++) - { - label = XEXP (XVECEXP (pat, diff_vec_p, i), 0); - set_label_in_map (map, CODE_LABEL_NUMBER (label), label); - } - } - } - if ((note = find_reg_note (insn, REG_LABEL, NULL_RTX))) - set_label_in_map (map, CODE_LABEL_NUMBER (XEXP (note, 0)), - XEXP (note, 0)); - } - - /* Allocate space for the insn map. */ - - map->insn_map = xmalloc (max_insnno * sizeof (rtx)); - - /* The register and constant maps depend on the number of registers - present, so the final maps can't be created until after - find_splittable_regs is called. However, they are needed for - preconditioning, so we create temporary maps when preconditioning - is performed. */ - - /* The preconditioning code may allocate two new pseudo registers. */ - maxregnum = max_reg_num (); - - /* local_regno is only valid for regnos < max_local_regnum. */ - max_local_regnum = maxregnum; - - /* Allocate and zero out the splittable_regs and addr_combined_regs - arrays. These must be zeroed here because they will be used if - loop preconditioning is performed, and must be zero for that case. - - It is safe to do this here, since the extra registers created by the - preconditioning code and find_splittable_regs will never be used - to access the splittable_regs[] and addr_combined_regs[] arrays. */ - - splittable_regs = xcalloc (maxregnum, sizeof (rtx)); - splittable_regs_updates = xcalloc (maxregnum, sizeof (int)); - addr_combined_regs = xcalloc (maxregnum, sizeof (struct induction *)); - local_regno = xcalloc (maxregnum, sizeof (char)); - - /* Mark all local registers, i.e. the ones which are referenced only - inside the loop. */ - if (INSN_UID (copy_end) < max_uid_for_loop) - { - int copy_start_luid = INSN_LUID (copy_start); - int copy_end_luid = INSN_LUID (copy_end); - - /* If a register is used in the jump insn, we must not duplicate it - since it will also be used outside the loop. */ - if (JUMP_P (copy_end)) - copy_end_luid--; - - /* If we have a target that uses cc0, then we also must not duplicate - the insn that sets cc0 before the jump insn, if one is present. */ -#ifdef HAVE_cc0 - if (JUMP_P (copy_end) - && sets_cc0_p (PREV_INSN (copy_end))) - copy_end_luid--; -#endif - - /* If copy_start points to the NOTE that starts the loop, then we must - use the next luid, because invariant pseudo-regs moved out of the loop - have their lifetimes modified to start here, but they are not safe - to duplicate. */ - if (copy_start == loop_start) - copy_start_luid++; - - /* If a pseudo's lifetime is entirely contained within this loop, then we - can use a different pseudo in each unrolled copy of the loop. This - results in better code. */ - /* We must limit the generic test to max_reg_before_loop, because only - these pseudo registers have valid regno_first_uid info. */ - for (r = FIRST_PSEUDO_REGISTER; r < max_reg_before_loop; ++r) - if (REGNO_FIRST_UID (r) > 0 && REGNO_FIRST_UID (r) < max_uid_for_loop - && REGNO_FIRST_LUID (r) >= copy_start_luid - && REGNO_LAST_UID (r) > 0 && REGNO_LAST_UID (r) < max_uid_for_loop - && REGNO_LAST_LUID (r) <= copy_end_luid) - { - /* However, we must also check for loop-carried dependencies. - If the value the pseudo has at the end of iteration X is - used by iteration X+1, then we can not use a different pseudo - for each unrolled copy of the loop. */ - /* A pseudo is safe if regno_first_uid is a set, and this - set dominates all instructions from regno_first_uid to - regno_last_uid. */ - /* ??? This check is simplistic. We would get better code if - this check was more sophisticated. */ - if (set_dominates_use (r, REGNO_FIRST_UID (r), REGNO_LAST_UID (r), - copy_start, copy_end)) - local_regno[r] = 1; - - if (loop_dump_stream) - { - if (local_regno[r]) - fprintf (loop_dump_stream, "Marked reg %d as local\n", r); - else - fprintf (loop_dump_stream, "Did not mark reg %d as local\n", - r); - } - } - } - - /* If this loop requires exit tests when unrolled, check to see if we - can precondition the loop so as to make the exit tests unnecessary. - Just like variable splitting, this is not safe if the loop is entered - via a jump to the bottom. Also, can not do this if no strength - reduce info, because precondition_loop_p uses this info. */ - - /* Must copy the loop body for preconditioning before the following - find_splittable_regs call since that will emit insns which need to - be after the preconditioned loop copies, but immediately before the - unrolled loop copies. */ - - /* Also, it is not safe to split induction variables for the preconditioned - copies of the loop body. If we split induction variables, then the code - assumes that each induction variable can be represented as a function - of its initial value and the loop iteration number. This is not true - in this case, because the last preconditioned copy of the loop body - could be any iteration from the first up to the `unroll_number-1'th, - depending on the initial value of the iteration variable. Therefore - we can not split induction variables here, because we can not calculate - their value. Hence, this code must occur before find_splittable_regs - is called. */ - - if (unroll_type == UNROLL_NAIVE && ! splitting_not_safe && strength_reduce_p) - { - rtx initial_value, final_value, increment; - enum machine_mode mode; - - if (precondition_loop_p (loop, - &initial_value, &final_value, &increment, - &mode)) - { - rtx diff, insn; - rtx *labels; - int abs_inc, neg_inc; - enum rtx_code cc = loop_info->comparison_code; - int less_p = (cc == LE || cc == LEU || cc == LT || cc == LTU); - int unsigned_p = (cc == LEU || cc == GEU || cc == LTU || cc == GTU); - - map->reg_map = xmalloc (maxregnum * sizeof (rtx)); - - VARRAY_CONST_EQUIV_INIT (map->const_equiv_varray, maxregnum, - "unroll_loop_precondition"); - global_const_equiv_varray = map->const_equiv_varray; - - init_reg_map (map, maxregnum); - - /* Limit loop unrolling to 4, since this will make 7 copies of - the loop body. */ - if (unroll_number > 4) - unroll_number = 4; - - /* Save the absolute value of the increment, and also whether or - not it is negative. */ - neg_inc = 0; - abs_inc = INTVAL (increment); - if (abs_inc < 0) - { - abs_inc = -abs_inc; - neg_inc = 1; - } - - start_sequence (); - - /* We must copy the final and initial values here to avoid - improperly shared rtl. */ - final_value = copy_rtx (final_value); - initial_value = copy_rtx (initial_value); - - /* Final value may have form of (PLUS val1 const1_rtx). We need - to convert it into general operand, so compute the real value. */ - - final_value = force_operand (final_value, NULL_RTX); - if (!nonmemory_operand (final_value, VOIDmode)) - final_value = force_reg (mode, final_value); - - /* Calculate the difference between the final and initial values. - Final value may be a (plus (reg x) (const_int 1)) rtx. - - We have to deal with for (i = 0; --i < 6;) type loops. - For such loops the real final value is the first time the - loop variable overflows, so the diff we calculate is the - distance from the overflow value. This is 0 or ~0 for - unsigned loops depending on the direction, or INT_MAX, - INT_MAX+1 for signed loops. We really do not need the - exact value, since we are only interested in the diff - modulo the increment, and the increment is a power of 2, - so we can pretend that the overflow value is 0/~0. */ - - if (cc == NE || less_p != neg_inc) - diff = simplify_gen_binary (MINUS, mode, final_value, - initial_value); - else - diff = simplify_gen_unary (neg_inc ? NOT : NEG, mode, - initial_value, mode); - diff = force_operand (diff, NULL_RTX); - - /* Now calculate (diff % (unroll * abs (increment))) by using an - and instruction. */ - diff = simplify_gen_binary (AND, mode, diff, - GEN_INT (unroll_number*abs_inc - 1)); - diff = force_operand (diff, NULL_RTX); - - /* Now emit a sequence of branches to jump to the proper precond - loop entry point. */ - - labels = xmalloc (sizeof (rtx) * unroll_number); - for (i = 0; i < unroll_number; i++) - labels[i] = gen_label_rtx (); - - /* Check for the case where the initial value is greater than or - equal to the final value. In that case, we want to execute - exactly one loop iteration. The code below will fail for this - case. This check does not apply if the loop has a NE - comparison at the end. */ - - if (cc != NE) - { - rtx incremented_initval; - enum rtx_code cmp_code; - - incremented_initval - = simplify_gen_binary (PLUS, mode, initial_value, increment); - incremented_initval - = force_operand (incremented_initval, NULL_RTX); - - cmp_code = (less_p - ? (unsigned_p ? GEU : GE) - : (unsigned_p ? LEU : LE)); - - insn = simplify_cmp_and_jump_insns (cmp_code, mode, - incremented_initval, - final_value, labels[1]); - if (insn) - predict_insn_def (insn, PRED_LOOP_CONDITION, TAKEN); - } - - /* Assuming the unroll_number is 4, and the increment is 2, then - for a negative increment: for a positive increment: - diff = 0,1 precond 0 diff = 0,7 precond 0 - diff = 2,3 precond 3 diff = 1,2 precond 1 - diff = 4,5 precond 2 diff = 3,4 precond 2 - diff = 6,7 precond 1 diff = 5,6 precond 3 */ - - /* We only need to emit (unroll_number - 1) branches here, the - last case just falls through to the following code. */ - - /* ??? This would give better code if we emitted a tree of branches - instead of the current linear list of branches. */ - - for (i = 0; i < unroll_number - 1; i++) - { - int cmp_const; - enum rtx_code cmp_code; - - /* For negative increments, must invert the constant compared - against, except when comparing against zero. */ - if (i == 0) - { - cmp_const = 0; - cmp_code = EQ; - } - else if (neg_inc) - { - cmp_const = unroll_number - i; - cmp_code = GE; - } - else - { - cmp_const = i; - cmp_code = LE; - } - - insn = simplify_cmp_and_jump_insns (cmp_code, mode, diff, - GEN_INT (abs_inc*cmp_const), - labels[i]); - if (insn) - predict_insn (insn, PRED_LOOP_PRECONDITIONING, - REG_BR_PROB_BASE / (unroll_number - i)); - } - - /* If the increment is greater than one, then we need another branch, - to handle other cases equivalent to 0. */ - - /* ??? This should be merged into the code above somehow to help - simplify the code here, and reduce the number of branches emitted. - For the negative increment case, the branch here could easily - be merged with the `0' case branch above. For the positive - increment case, it is not clear how this can be simplified. */ - - if (abs_inc != 1) - { - int cmp_const; - enum rtx_code cmp_code; - - if (neg_inc) - { - cmp_const = abs_inc - 1; - cmp_code = LE; - } - else - { - cmp_const = abs_inc * (unroll_number - 1) + 1; - cmp_code = GE; - } - - simplify_cmp_and_jump_insns (cmp_code, mode, diff, - GEN_INT (cmp_const), labels[0]); - } - - sequence = get_insns (); - end_sequence (); - loop_insn_hoist (loop, sequence); - - /* Only the last copy of the loop body here needs the exit - test, so set copy_end to exclude the compare/branch here, - and then reset it inside the loop when get to the last - copy. */ - - if (BARRIER_P (last_loop_insn)) - copy_end = PREV_INSN (PREV_INSN (last_loop_insn)); - else if (JUMP_P (last_loop_insn)) - { - copy_end = PREV_INSN (last_loop_insn); -#ifdef HAVE_cc0 - /* The immediately preceding insn may be a compare which - we do not want to copy. */ - if (sets_cc0_p (PREV_INSN (copy_end))) - copy_end = PREV_INSN (copy_end); -#endif - } - else - abort (); - - for (i = 1; i < unroll_number; i++) - { - emit_label_after (labels[unroll_number - i], - PREV_INSN (loop_start)); - - memset (map->insn_map, 0, max_insnno * sizeof (rtx)); - memset (&VARRAY_CONST_EQUIV (map->const_equiv_varray, 0), - 0, (VARRAY_SIZE (map->const_equiv_varray) - * sizeof (struct const_equiv_data))); - map->const_age = 0; - - for (j = 0; j < max_labelno; j++) - if (local_label[j]) - set_label_in_map (map, j, gen_label_rtx ()); - - for (r = FIRST_PSEUDO_REGISTER; r < max_local_regnum; r++) - if (local_regno[r]) - { - map->reg_map[r] - = gen_reg_rtx (GET_MODE (regno_reg_rtx[r])); - record_base_value (REGNO (map->reg_map[r]), - regno_reg_rtx[r], 0); - } - /* The last copy needs the compare/branch insns at the end, - so reset copy_end here if the loop ends with a conditional - branch. */ - - if (i == unroll_number - 1) - { - if (BARRIER_P (last_loop_insn)) - copy_end = PREV_INSN (PREV_INSN (last_loop_insn)); - else - copy_end = last_loop_insn; - } - - /* None of the copies are the `last_iteration', so just - pass zero for that parameter. */ - copy_loop_body (loop, copy_start, copy_end, map, exit_label, 0, - unroll_type, start_label, loop_end, - loop_start, copy_end); - } - emit_label_after (labels[0], PREV_INSN (loop_start)); - - if (BARRIER_P (last_loop_insn)) - { - insert_before = PREV_INSN (last_loop_insn); - copy_end = PREV_INSN (insert_before); - } - else - { - insert_before = last_loop_insn; -#ifdef HAVE_cc0 - /* The instruction immediately before the JUMP_INSN may - be a compare instruction which we do not want to copy - or delete. */ - if (sets_cc0_p (PREV_INSN (insert_before))) - insert_before = PREV_INSN (insert_before); -#endif - copy_end = PREV_INSN (insert_before); - } - - /* Set unroll type to MODULO now. */ - unroll_type = UNROLL_MODULO; - loop_preconditioned = 1; - - /* Clean up. */ - free (labels); - } - } - - /* If reach here, and the loop type is UNROLL_NAIVE, then don't unroll - the loop unless all loops are being unrolled. */ - if (unroll_type == UNROLL_NAIVE && ! flag_old_unroll_all_loops) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Unrolling failure: Naive unrolling not being done.\n"); - goto egress; - } - - /* At this point, we are guaranteed to unroll the loop. */ - - /* Keep track of the unroll factor for the loop. */ - loop_info->unroll_number = unroll_number; - - /* And whether the loop has been preconditioned. */ - loop_info->preconditioned = loop_preconditioned; - - /* Remember whether it was preconditioned for the second loop pass. */ - NOTE_PRECONDITIONED (loop->end) = loop_preconditioned; - - /* For each biv and giv, determine whether it can be safely split into - a different variable for each unrolled copy of the loop body. - We precalculate and save this info here, since computing it is - expensive. - - Do this before deleting any instructions from the loop, so that - back_branch_in_range_p will work correctly. */ - - if (splitting_not_safe) - temp = 0; - else - temp = find_splittable_regs (loop, unroll_type, unroll_number); - - /* find_splittable_regs may have created some new registers, so must - reallocate the reg_map with the new larger size, and must realloc - the constant maps also. */ - - maxregnum = max_reg_num (); - map->reg_map = xmalloc (maxregnum * sizeof (rtx)); - - init_reg_map (map, maxregnum); - - if (map->const_equiv_varray == 0) - VARRAY_CONST_EQUIV_INIT (map->const_equiv_varray, - maxregnum + temp * unroll_number * 2, - "unroll_loop"); - global_const_equiv_varray = map->const_equiv_varray; - - /* Search the list of bivs and givs to find ones which need to be remapped - when split, and set their reg_map entry appropriately. */ - - for (bl = ivs->list; bl; bl = bl->next) - { - if (REGNO (bl->biv->src_reg) != bl->regno) - map->reg_map[bl->regno] = bl->biv->src_reg; -#if 0 - /* Currently, non-reduced/final-value givs are never split. */ - for (v = bl->giv; v; v = v->next_iv) - if (REGNO (v->src_reg) != bl->regno) - map->reg_map[REGNO (v->dest_reg)] = v->src_reg; -#endif - } - - /* Use our current register alignment and pointer flags. */ - map->regno_pointer_align = cfun->emit->regno_pointer_align; - map->x_regno_reg_rtx = cfun->emit->x_regno_reg_rtx; - - /* If the loop is being partially unrolled, and the iteration variables - are being split, and are being renamed for the split, then must fix up - the compare/jump instruction at the end of the loop to refer to the new - registers. This compare isn't copied, so the registers used in it - will never be replaced if it isn't done here. */ - - if (unroll_type == UNROLL_MODULO) - { - insn = NEXT_INSN (copy_end); - if (NONJUMP_INSN_P (insn) || JUMP_P (insn)) - PATTERN (insn) = remap_split_bivs (loop, PATTERN (insn)); - } - - /* For unroll_number times, make a copy of each instruction - between copy_start and copy_end, and insert these new instructions - before the end of the loop. */ - - for (i = 0; i < unroll_number; i++) - { - memset (map->insn_map, 0, max_insnno * sizeof (rtx)); - memset (&VARRAY_CONST_EQUIV (map->const_equiv_varray, 0), 0, - VARRAY_SIZE (map->const_equiv_varray) * sizeof (struct const_equiv_data)); - map->const_age = 0; - - for (j = 0; j < max_labelno; j++) - if (local_label[j]) - set_label_in_map (map, j, gen_label_rtx ()); - - for (r = FIRST_PSEUDO_REGISTER; r < max_local_regnum; r++) - if (local_regno[r]) - { - map->reg_map[r] = gen_reg_rtx (GET_MODE (regno_reg_rtx[r])); - record_base_value (REGNO (map->reg_map[r]), - regno_reg_rtx[r], 0); - } - - /* If loop starts with a branch to the test, then fix it so that - it points to the test of the first unrolled copy of the loop. */ - if (i == 0 && loop_start != copy_start) - { - insn = PREV_INSN (copy_start); - pattern = PATTERN (insn); - - tem = get_label_from_map (map, - CODE_LABEL_NUMBER - (XEXP (SET_SRC (pattern), 0))); - SET_SRC (pattern) = gen_rtx_LABEL_REF (VOIDmode, tem); - - /* Set the jump label so that it can be used by later loop unrolling - passes. */ - JUMP_LABEL (insn) = tem; - LABEL_NUSES (tem)++; - } - - copy_loop_body (loop, copy_start, copy_end, map, exit_label, - i == unroll_number - 1, unroll_type, start_label, - loop_end, insert_before, insert_before); - } - - /* Before deleting any insns, emit a CODE_LABEL immediately after the last - insn to be deleted. This prevents any runaway delete_insn call from - more insns that it should, as it always stops at a CODE_LABEL. */ - - /* Delete the compare and branch at the end of the loop if completely - unrolling the loop. Deleting the backward branch at the end also - deletes the code label at the start of the loop. This is done at - the very end to avoid problems with back_branch_in_range_p. */ - - if (unroll_type == UNROLL_COMPLETELY) - safety_label = emit_label_after (gen_label_rtx (), last_loop_insn); - else - safety_label = emit_label_after (gen_label_rtx (), copy_end); - - /* Delete all of the original loop instructions. Don't delete the - LOOP_BEG note, or the first code label in the loop. */ - - insn = NEXT_INSN (copy_start); - while (insn != safety_label) - { - /* ??? Don't delete named code labels. They will be deleted when the - jump that references them is deleted. Otherwise, we end up deleting - them twice, which causes them to completely disappear instead of turn - into NOTE_INSN_DELETED_LABEL notes. This in turn causes aborts in - dwarfout.c/dwarf2out.c. We could perhaps fix the dwarf*out.c files - to handle deleted labels instead. Or perhaps fix DECL_RTL of the - associated LABEL_DECL to point to one of the new label instances. */ - /* ??? Likewise, we can't delete a NOTE_INSN_DELETED_LABEL note. */ - if (insn != start_label - && ! (LABEL_P (insn) && LABEL_NAME (insn)) - && ! (NOTE_P (insn) - && NOTE_LINE_NUMBER (insn) == NOTE_INSN_DELETED_LABEL)) - insn = delete_related_insns (insn); - else - insn = NEXT_INSN (insn); - } - - /* Can now delete the 'safety' label emitted to protect us from runaway - delete_related_insns calls. */ - if (INSN_DELETED_P (safety_label)) - abort (); - delete_related_insns (safety_label); - - /* If exit_label exists, emit it after the loop. Doing the emit here - forces it to have a higher INSN_UID than any insn in the unrolled loop. - This is needed so that mostly_true_jump in reorg.c will treat jumps - to this loop end label correctly, i.e. predict that they are usually - not taken. */ - if (exit_label) - emit_label_after (exit_label, loop_end); - - egress: - if (unroll_type == UNROLL_COMPLETELY) - { - /* Remove the loop notes since this is no longer a loop. */ - if (loop_start) - delete_related_insns (loop_start); - if (loop_end) - delete_related_insns (loop_end); - } - - if (map->const_equiv_varray) - VARRAY_FREE (map->const_equiv_varray); - if (map->label_map) - { - free (map->label_map); - free (local_label); - } - free (map->insn_map); - free (splittable_regs); - free (splittable_regs_updates); - free (addr_combined_regs); - free (local_regno); - if (map->reg_map) - free (map->reg_map); - free (map); -} - -/* A helper function for unroll_loop. Emit a compare and branch to - satisfy (CMP OP1 OP2), but pass this through the simplifier first. - If the branch turned out to be conditional, return it, otherwise - return NULL. */ - -static rtx -simplify_cmp_and_jump_insns (enum rtx_code code, enum machine_mode mode, - rtx op0, rtx op1, rtx label) -{ - rtx t, insn; - - t = simplify_const_relational_operation (code, mode, op0, op1); - if (!t) - { - enum rtx_code scode = signed_condition (code); - emit_cmp_and_jump_insns (op0, op1, scode, NULL_RTX, mode, - code != scode, label); - insn = get_last_insn (); - - JUMP_LABEL (insn) = label; - LABEL_NUSES (label) += 1; - - return insn; - } - else if (t == const_true_rtx) - { - insn = emit_jump_insn (gen_jump (label)); - emit_barrier (); - JUMP_LABEL (insn) = label; - LABEL_NUSES (label) += 1; - } - - return NULL_RTX; -} - -/* Return true if the loop can be safely, and profitably, preconditioned - so that the unrolled copies of the loop body don't need exit tests. - - This only works if final_value, initial_value and increment can be - determined, and if increment is a constant power of 2. - If increment is not a power of 2, then the preconditioning modulo - operation would require a real modulo instead of a boolean AND, and this - is not considered `profitable'. */ - -/* ??? If the loop is known to be executed very many times, or the machine - has a very cheap divide instruction, then preconditioning is a win even - when the increment is not a power of 2. Use RTX_COST to compute - whether divide is cheap. - ??? A divide by constant doesn't actually need a divide, look at - expand_divmod. The reduced cost of this optimized modulo is not - reflected in RTX_COST. */ - -int -precondition_loop_p (const struct loop *loop, rtx *initial_value, - rtx *final_value, rtx *increment, - enum machine_mode *mode) -{ - rtx loop_start = loop->start; - struct loop_info *loop_info = LOOP_INFO (loop); - - if (loop_info->n_iterations > 0) - { - if (INTVAL (loop_info->increment) > 0) - { - *initial_value = const0_rtx; - *increment = const1_rtx; - *final_value = GEN_INT (loop_info->n_iterations); - } - else - { - *initial_value = GEN_INT (loop_info->n_iterations); - *increment = constm1_rtx; - *final_value = const0_rtx; - } - *mode = word_mode; - - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Success, number of iterations known, " - HOST_WIDE_INT_PRINT_DEC ".\n", - loop_info->n_iterations); - return 1; - } - - if (loop_info->iteration_var == 0) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Could not find iteration variable.\n"); - return 0; - } - else if (loop_info->initial_value == 0) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Could not find initial value.\n"); - return 0; - } - else if (loop_info->increment == 0) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Could not find increment value.\n"); - return 0; - } - else if (GET_CODE (loop_info->increment) != CONST_INT) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Increment not a constant.\n"); - return 0; - } - else if ((exact_log2 (INTVAL (loop_info->increment)) < 0) - && (exact_log2 (-INTVAL (loop_info->increment)) < 0)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Increment not a constant power of 2.\n"); - return 0; - } - - /* Unsigned_compare and compare_dir can be ignored here, since they do - not matter for preconditioning. */ - - if (loop_info->final_value == 0) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: EQ comparison loop.\n"); - return 0; - } - - /* Must ensure that final_value is invariant, so call - loop_invariant_p to check. Before doing so, must check regno - against max_reg_before_loop to make sure that the register is in - the range covered by loop_invariant_p. If it isn't, then it is - most likely a biv/giv which by definition are not invariant. */ - if ((REG_P (loop_info->final_value) - && REGNO (loop_info->final_value) >= max_reg_before_loop) - || (GET_CODE (loop_info->final_value) == PLUS - && REGNO (XEXP (loop_info->final_value, 0)) >= max_reg_before_loop) - || ! loop_invariant_p (loop, loop_info->final_value)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Final value not invariant.\n"); - return 0; - } - - /* Fail for floating point values, since the caller of this function - does not have code to deal with them. */ - if (GET_MODE_CLASS (GET_MODE (loop_info->final_value)) == MODE_FLOAT - || GET_MODE_CLASS (GET_MODE (loop_info->initial_value)) == MODE_FLOAT) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Floating point final or initial value.\n"); - return 0; - } - - /* Fail if loop_info->iteration_var is not live before loop_start, - since we need to test its value in the preconditioning code. */ - - if (REGNO_FIRST_LUID (REGNO (loop_info->iteration_var)) - > INSN_LUID (loop_start)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Preconditioning: Iteration var not live before loop start.\n"); - return 0; - } - - /* Note that loop_iterations biases the initial value for GIV iterators - such as "while (i-- > 0)" so that we can calculate the number of - iterations just like for BIV iterators. - - Also note that the absolute values of initial_value and - final_value are unimportant as only their difference is used for - calculating the number of loop iterations. */ - *initial_value = loop_info->initial_value; - *increment = loop_info->increment; - *final_value = loop_info->final_value; - - /* Decide what mode to do these calculations in. Choose the larger - of final_value's mode and initial_value's mode, or a full-word if - both are constants. */ - *mode = GET_MODE (*final_value); - if (*mode == VOIDmode) - { - *mode = GET_MODE (*initial_value); - if (*mode == VOIDmode) - *mode = word_mode; - } - else if (*mode != GET_MODE (*initial_value) - && (GET_MODE_SIZE (*mode) - < GET_MODE_SIZE (GET_MODE (*initial_value)))) - *mode = GET_MODE (*initial_value); - - /* Success! */ - if (loop_dump_stream) - fprintf (loop_dump_stream, "Preconditioning: Successful.\n"); - return 1; -} - -/* All pseudo-registers must be mapped to themselves. Two hard registers - must be mapped, VIRTUAL_STACK_VARS_REGNUM and VIRTUAL_INCOMING_ARGS_ - REGNUM, to avoid function-inlining specific conversions of these - registers. All other hard regs can not be mapped because they may be - used with different - modes. */ - -static void -init_reg_map (struct inline_remap *map, int maxregnum) -{ - int i; - - for (i = maxregnum - 1; i > LAST_VIRTUAL_REGISTER; i--) - map->reg_map[i] = regno_reg_rtx[i]; - /* Just clear the rest of the entries. */ - for (i = LAST_VIRTUAL_REGISTER; i >= 0; i--) - map->reg_map[i] = 0; - - map->reg_map[VIRTUAL_STACK_VARS_REGNUM] - = regno_reg_rtx[VIRTUAL_STACK_VARS_REGNUM]; - map->reg_map[VIRTUAL_INCOMING_ARGS_REGNUM] - = regno_reg_rtx[VIRTUAL_INCOMING_ARGS_REGNUM]; -} - -/* Strength-reduction will often emit code for optimized biv/givs which - calculates their value in a temporary register, and then copies the result - to the iv. This procedure reconstructs the pattern computing the iv; - verifying that all operands are of the proper form. - - PATTERN must be the result of single_set. - The return value is the amount that the giv is incremented by. */ - -static rtx -calculate_giv_inc (rtx pattern, rtx src_insn, unsigned int regno) -{ - rtx increment; - rtx increment_total = 0; - int tries = 0; - - retry: - /* Verify that we have an increment insn here. First check for a plus - as the set source. */ - if (GET_CODE (SET_SRC (pattern)) != PLUS) - { - /* SR sometimes computes the new giv value in a temp, then copies it - to the new_reg. */ - src_insn = PREV_INSN (src_insn); - pattern = single_set (src_insn); - if (GET_CODE (SET_SRC (pattern)) != PLUS) - abort (); - - /* The last insn emitted is not needed, so delete it to avoid confusing - the second cse pass. This insn sets the giv unnecessarily. */ - delete_related_insns (get_last_insn ()); - } - - /* Verify that we have a constant as the second operand of the plus. */ - increment = XEXP (SET_SRC (pattern), 1); - if (GET_CODE (increment) != CONST_INT) - { - /* SR sometimes puts the constant in a register, especially if it is - too big to be an add immed operand. */ - increment = find_last_value (increment, &src_insn, NULL_RTX, 0); - - /* SR may have used LO_SUM to compute the constant if it is too large - for a load immed operand. In this case, the constant is in operand - one of the LO_SUM rtx. */ - if (GET_CODE (increment) == LO_SUM) - increment = XEXP (increment, 1); - - /* Some ports store large constants in memory and add a REG_EQUAL - note to the store insn. */ - else if (MEM_P (increment)) - { - rtx note = find_reg_note (src_insn, REG_EQUAL, 0); - if (note) - increment = XEXP (note, 0); - } - - else if (GET_CODE (increment) == IOR - || GET_CODE (increment) == PLUS - || GET_CODE (increment) == ASHIFT - || GET_CODE (increment) == LSHIFTRT) - { - /* The rs6000 port loads some constants with IOR. - The alpha port loads some constants with ASHIFT and PLUS. - The sparc64 port loads some constants with LSHIFTRT. */ - rtx second_part = XEXP (increment, 1); - enum rtx_code code = GET_CODE (increment); - - increment = find_last_value (XEXP (increment, 0), - &src_insn, NULL_RTX, 0); - /* Don't need the last insn anymore. */ - delete_related_insns (get_last_insn ()); - - if (GET_CODE (second_part) != CONST_INT - || GET_CODE (increment) != CONST_INT) - abort (); - - if (code == IOR) - increment = GEN_INT (INTVAL (increment) | INTVAL (second_part)); - else if (code == PLUS) - increment = GEN_INT (INTVAL (increment) + INTVAL (second_part)); - else if (code == ASHIFT) - increment = GEN_INT (INTVAL (increment) << INTVAL (second_part)); - else - increment = GEN_INT ((unsigned HOST_WIDE_INT) INTVAL (increment) >> INTVAL (second_part)); - } - - if (GET_CODE (increment) != CONST_INT) - abort (); - - /* The insn loading the constant into a register is no longer needed, - so delete it. */ - delete_related_insns (get_last_insn ()); - } - - if (increment_total) - increment_total = GEN_INT (INTVAL (increment_total) + INTVAL (increment)); - else - increment_total = increment; - - /* Check that the source register is the same as the register we expected - to see as the source. If not, something is seriously wrong. */ - if (!REG_P (XEXP (SET_SRC (pattern), 0)) - || REGNO (XEXP (SET_SRC (pattern), 0)) != regno) - { - /* Some machines (e.g. the romp), may emit two add instructions for - certain constants, so lets try looking for another add immediately - before this one if we have only seen one add insn so far. */ - - if (tries == 0) - { - tries++; - - src_insn = PREV_INSN (src_insn); - pattern = single_set (src_insn); - - delete_related_insns (get_last_insn ()); - - goto retry; - } - - abort (); - } - - return increment_total; -} - -/* Copy REG_NOTES, except for insn references, because not all insn_map - entries are valid yet. We do need to copy registers now though, because - the reg_map entries can change during copying. */ - -static rtx -initial_reg_note_copy (rtx notes, struct inline_remap *map) -{ - rtx copy; - - if (notes == 0) - return 0; - - copy = rtx_alloc (GET_CODE (notes)); - PUT_REG_NOTE_KIND (copy, REG_NOTE_KIND (notes)); - - if (GET_CODE (notes) == EXPR_LIST) - XEXP (copy, 0) = copy_rtx_and_substitute (XEXP (notes, 0), map, 0); - else if (GET_CODE (notes) == INSN_LIST) - /* Don't substitute for these yet. */ - XEXP (copy, 0) = copy_rtx (XEXP (notes, 0)); - else - abort (); - - XEXP (copy, 1) = initial_reg_note_copy (XEXP (notes, 1), map); - - return copy; -} - -/* Fixup insn references in copied REG_NOTES. */ - -static void -final_reg_note_copy (rtx *notesp, struct inline_remap *map) -{ - while (*notesp) - { - rtx note = *notesp; - - if (GET_CODE (note) == INSN_LIST) - { - rtx insn = map->insn_map[INSN_UID (XEXP (note, 0))]; - - /* If we failed to remap the note, something is awry. - Allow REG_LABEL as it may reference label outside - the unrolled loop. */ - if (!insn) - { - if (REG_NOTE_KIND (note) != REG_LABEL) - abort (); - } - else - XEXP (note, 0) = insn; - } - - notesp = &XEXP (note, 1); - } -} - -/* Copy each instruction in the loop, substituting from map as appropriate. - This is very similar to a loop in expand_inline_function. */ - -static void -copy_loop_body (struct loop *loop, rtx copy_start, rtx copy_end, - struct inline_remap *map, rtx exit_label, - int last_iteration, enum unroll_types unroll_type, - rtx start_label, rtx loop_end, rtx insert_before, - rtx copy_notes_from) -{ - struct loop_ivs *ivs = LOOP_IVS (loop); - rtx insn, pattern; - rtx set, tem, copy = NULL_RTX; - int dest_reg_was_split, i; -#ifdef HAVE_cc0 - rtx cc0_insn = 0; -#endif - rtx final_label = 0; - rtx giv_inc, giv_dest_reg, giv_src_reg; - - /* If this isn't the last iteration, then map any references to the - start_label to final_label. Final label will then be emitted immediately - after the end of this loop body if it was ever used. - - If this is the last iteration, then map references to the start_label - to itself. */ - if (! last_iteration) - { - final_label = gen_label_rtx (); - set_label_in_map (map, CODE_LABEL_NUMBER (start_label), final_label); - } - else - set_label_in_map (map, CODE_LABEL_NUMBER (start_label), start_label); - - start_sequence (); - - insn = copy_start; - do - { - insn = NEXT_INSN (insn); - - map->orig_asm_operands_vector = 0; - - switch (GET_CODE (insn)) - { - case INSN: - pattern = PATTERN (insn); - copy = 0; - giv_inc = 0; - - /* Check to see if this is a giv that has been combined with - some split address givs. (Combined in the sense that - `combine_givs' in loop.c has put two givs in the same register.) - In this case, we must search all givs based on the same biv to - find the address givs. Then split the address givs. - Do this before splitting the giv, since that may map the - SET_DEST to a new register. */ - - if ((set = single_set (insn)) - && REG_P (SET_DEST (set)) - && addr_combined_regs[REGNO (SET_DEST (set))]) - { - struct iv_class *bl; - struct induction *v, *tv; - unsigned int regno = REGNO (SET_DEST (set)); - - v = addr_combined_regs[REGNO (SET_DEST (set))]; - bl = REG_IV_CLASS (ivs, REGNO (v->src_reg)); - - /* Although the giv_inc amount is not needed here, we must call - calculate_giv_inc here since it might try to delete the - last insn emitted. If we wait until later to call it, - we might accidentally delete insns generated immediately - below by emit_unrolled_add. */ - - giv_inc = calculate_giv_inc (set, insn, regno); - - /* Now find all address giv's that were combined with this - giv 'v'. */ - for (tv = bl->giv; tv; tv = tv->next_iv) - if (tv->giv_type == DEST_ADDR && tv->same == v) - { - int this_giv_inc; - - /* If this DEST_ADDR giv was not split, then ignore it. */ - if (*tv->location != tv->dest_reg) - continue; - - /* Scale this_giv_inc if the multiplicative factors of - the two givs are different. */ - this_giv_inc = INTVAL (giv_inc); - if (tv->mult_val != v->mult_val) - this_giv_inc = (this_giv_inc / INTVAL (v->mult_val) - * INTVAL (tv->mult_val)); - - tv->dest_reg = plus_constant (tv->dest_reg, this_giv_inc); - *tv->location = tv->dest_reg; - - if (last_iteration && unroll_type != UNROLL_COMPLETELY) - { - /* Must emit an insn to increment the split address - giv. Add in the const_adjust field in case there - was a constant eliminated from the address. */ - rtx value, dest_reg; - - /* tv->dest_reg will be either a bare register, - or else a register plus a constant. */ - if (REG_P (tv->dest_reg)) - dest_reg = tv->dest_reg; - else - dest_reg = XEXP (tv->dest_reg, 0); - - /* Check for shared address givs, and avoid - incrementing the shared pseudo reg more than - once. */ - if (! tv->same_insn && ! tv->shared) - { - /* tv->dest_reg may actually be a (PLUS (REG) - (CONST)) here, so we must call plus_constant - to add the const_adjust amount before calling - emit_unrolled_add below. */ - value = plus_constant (tv->dest_reg, - tv->const_adjust); - - if (GET_CODE (value) == PLUS) - { - /* The constant could be too large for an add - immediate, so can't directly emit an insn - here. */ - emit_unrolled_add (dest_reg, XEXP (value, 0), - XEXP (value, 1)); - } - } - - /* Reset the giv to be just the register again, in case - it is used after the set we have just emitted. - We must subtract the const_adjust factor added in - above. */ - tv->dest_reg = plus_constant (dest_reg, - -tv->const_adjust); - *tv->location = tv->dest_reg; - } - } - } - - /* If this is a setting of a splittable variable, then determine - how to split the variable, create a new set based on this split, - and set up the reg_map so that later uses of the variable will - use the new split variable. */ - - dest_reg_was_split = 0; - - if ((set = single_set (insn)) - && REG_P (SET_DEST (set)) - && splittable_regs[REGNO (SET_DEST (set))]) - { - unsigned int regno = REGNO (SET_DEST (set)); - unsigned int src_regno; - - dest_reg_was_split = 1; - - giv_dest_reg = SET_DEST (set); - giv_src_reg = giv_dest_reg; - /* Compute the increment value for the giv, if it wasn't - already computed above. */ - if (giv_inc == 0) - giv_inc = calculate_giv_inc (set, insn, regno); - - src_regno = REGNO (giv_src_reg); - - if (unroll_type == UNROLL_COMPLETELY) - { - /* Completely unrolling the loop. Set the induction - variable to a known constant value. */ - - /* The value in splittable_regs may be an invariant - value, so we must use plus_constant here. */ - splittable_regs[regno] - = plus_constant (splittable_regs[src_regno], - INTVAL (giv_inc)); - - if (GET_CODE (splittable_regs[regno]) == PLUS) - { - giv_src_reg = XEXP (splittable_regs[regno], 0); - giv_inc = XEXP (splittable_regs[regno], 1); - } - else - { - /* The splittable_regs value must be a REG or a - CONST_INT, so put the entire value in the giv_src_reg - variable. */ - giv_src_reg = splittable_regs[regno]; - giv_inc = const0_rtx; - } - } - else - { - /* Partially unrolling loop. Create a new pseudo - register for the iteration variable, and set it to - be a constant plus the original register. Except - on the last iteration, when the result has to - go back into the original iteration var register. */ - - /* Handle bivs which must be mapped to a new register - when split. This happens for bivs which need their - final value set before loop entry. The new register - for the biv was stored in the biv's first struct - induction entry by find_splittable_regs. */ - - if (regno < ivs->n_regs - && REG_IV_TYPE (ivs, regno) == BASIC_INDUCT) - { - giv_src_reg = REG_IV_CLASS (ivs, regno)->biv->src_reg; - giv_dest_reg = giv_src_reg; - } - -#if 0 - /* If non-reduced/final-value givs were split, then - this would have to remap those givs also. See - find_splittable_regs. */ -#endif - - splittable_regs[regno] - = simplify_gen_binary (PLUS, GET_MODE (giv_src_reg), - giv_inc, - splittable_regs[src_regno]); - giv_inc = splittable_regs[regno]; - - /* Now split the induction variable by changing the dest - of this insn to a new register, and setting its - reg_map entry to point to this new register. - - If this is the last iteration, and this is the last insn - that will update the iv, then reuse the original dest, - to ensure that the iv will have the proper value when - the loop exits or repeats. - - Using splittable_regs_updates here like this is safe, - because it can only be greater than one if all - instructions modifying the iv are always executed in - order. */ - - if (! last_iteration - || (splittable_regs_updates[regno]-- != 1)) - { - tem = gen_reg_rtx (GET_MODE (giv_src_reg)); - giv_dest_reg = tem; - map->reg_map[regno] = tem; - record_base_value (REGNO (tem), - giv_inc == const0_rtx - ? giv_src_reg - : gen_rtx_PLUS (GET_MODE (giv_src_reg), - giv_src_reg, giv_inc), - 1); - } - else - map->reg_map[regno] = giv_src_reg; - } - - /* The constant being added could be too large for an add - immediate, so can't directly emit an insn here. */ - emit_unrolled_add (giv_dest_reg, giv_src_reg, giv_inc); - copy = get_last_insn (); - pattern = PATTERN (copy); - } - else - { - pattern = copy_rtx_and_substitute (pattern, map, 0); - copy = emit_insn (pattern); - } - REG_NOTES (copy) = initial_reg_note_copy (REG_NOTES (insn), map); - INSN_LOCATOR (copy) = INSN_LOCATOR (insn); - - /* If there is a REG_EQUAL note present whose value - is not loop invariant, then delete it, since it - may cause problems with later optimization passes. */ - if ((tem = find_reg_note (copy, REG_EQUAL, NULL_RTX)) - && !loop_invariant_p (loop, XEXP (tem, 0))) - remove_note (copy, tem); - -#ifdef HAVE_cc0 - /* If this insn is setting CC0, it may need to look at - the insn that uses CC0 to see what type of insn it is. - In that case, the call to recog via validate_change will - fail. So don't substitute constants here. Instead, - do it when we emit the following insn. - - For example, see the pyr.md file. That machine has signed and - unsigned compares. The compare patterns must check the - following branch insn to see which what kind of compare to - emit. - - If the previous insn set CC0, substitute constants on it as - well. */ - if (sets_cc0_p (PATTERN (copy)) != 0) - cc0_insn = copy; - else - { - if (cc0_insn) - try_constants (cc0_insn, map); - cc0_insn = 0; - try_constants (copy, map); - } -#else - try_constants (copy, map); -#endif - - /* Make split induction variable constants `permanent' since we - know there are no backward branches across iteration variable - settings which would invalidate this. */ - if (dest_reg_was_split) - { - int regno = REGNO (SET_DEST (set)); - - if ((size_t) regno < VARRAY_SIZE (map->const_equiv_varray) - && (VARRAY_CONST_EQUIV (map->const_equiv_varray, regno).age - == map->const_age)) - VARRAY_CONST_EQUIV (map->const_equiv_varray, regno).age = -1; - } - break; - - case JUMP_INSN: - pattern = copy_rtx_and_substitute (PATTERN (insn), map, 0); - copy = emit_jump_insn (pattern); - REG_NOTES (copy) = initial_reg_note_copy (REG_NOTES (insn), map); - INSN_LOCATOR (copy) = INSN_LOCATOR (insn); - - if (JUMP_LABEL (insn)) - { - JUMP_LABEL (copy) = get_label_from_map (map, - CODE_LABEL_NUMBER - (JUMP_LABEL (insn))); - LABEL_NUSES (JUMP_LABEL (copy))++; - } - if (JUMP_LABEL (insn) == start_label && insn == copy_end - && ! last_iteration) - { - - /* This is a branch to the beginning of the loop; this is the - last insn being copied; and this is not the last iteration. - In this case, we want to change the original fall through - case to be a branch past the end of the loop, and the - original jump label case to fall_through. */ - - if (!invert_jump (copy, exit_label, 0)) - { - rtx jmp; - rtx lab = gen_label_rtx (); - /* Can't do it by reversing the jump (probably because we - couldn't reverse the conditions), so emit a new - jump_insn after COPY, and redirect the jump around - that. */ - jmp = emit_jump_insn_after (gen_jump (exit_label), copy); - JUMP_LABEL (jmp) = exit_label; - LABEL_NUSES (exit_label)++; - jmp = emit_barrier_after (jmp); - emit_label_after (lab, jmp); - LABEL_NUSES (lab) = 0; - if (!redirect_jump (copy, lab, 0)) - abort (); - } - } - -#ifdef HAVE_cc0 - if (cc0_insn) - try_constants (cc0_insn, map); - cc0_insn = 0; -#endif - try_constants (copy, map); - - /* Set the jump label of COPY correctly to avoid problems with - later passes of unroll_loop, if INSN had jump label set. */ - if (JUMP_LABEL (insn)) - { - rtx label = 0; - - /* Can't use the label_map for every insn, since this may be - the backward branch, and hence the label was not mapped. */ - if ((set = single_set (copy))) - { - tem = SET_SRC (set); - if (GET_CODE (tem) == LABEL_REF) - label = XEXP (tem, 0); - else if (GET_CODE (tem) == IF_THEN_ELSE) - { - if (XEXP (tem, 1) != pc_rtx) - label = XEXP (XEXP (tem, 1), 0); - else - label = XEXP (XEXP (tem, 2), 0); - } - } - - if (label && LABEL_P (label)) - JUMP_LABEL (copy) = label; - else - { - /* An unrecognizable jump insn, probably the entry jump - for a switch statement. This label must have been mapped, - so just use the label_map to get the new jump label. */ - JUMP_LABEL (copy) - = get_label_from_map (map, - CODE_LABEL_NUMBER (JUMP_LABEL (insn))); - } - - /* If this is a non-local jump, then must increase the label - use count so that the label will not be deleted when the - original jump is deleted. */ - LABEL_NUSES (JUMP_LABEL (copy))++; - } - else if (GET_CODE (PATTERN (copy)) == ADDR_VEC - || GET_CODE (PATTERN (copy)) == ADDR_DIFF_VEC) - { - rtx pat = PATTERN (copy); - int diff_vec_p = GET_CODE (pat) == ADDR_DIFF_VEC; - int len = XVECLEN (pat, diff_vec_p); - int i; - - for (i = 0; i < len; i++) - LABEL_NUSES (XEXP (XVECEXP (pat, diff_vec_p, i), 0))++; - } - - /* If this used to be a conditional jump insn but whose branch - direction is now known, we must do something special. */ - if (any_condjump_p (insn) && onlyjump_p (insn) && map->last_pc_value) - { -#ifdef HAVE_cc0 - /* If the previous insn set cc0 for us, delete it. */ - if (only_sets_cc0_p (PREV_INSN (copy))) - delete_related_insns (PREV_INSN (copy)); -#endif - - /* If this is now a no-op, delete it. */ - if (map->last_pc_value == pc_rtx) - { - delete_insn (copy); - copy = 0; - } - else - /* Otherwise, this is unconditional jump so we must put a - BARRIER after it. We could do some dead code elimination - here, but jump.c will do it just as well. */ - emit_barrier (); - } - break; - - case CALL_INSN: - pattern = copy_rtx_and_substitute (PATTERN (insn), map, 0); - copy = emit_call_insn (pattern); - REG_NOTES (copy) = initial_reg_note_copy (REG_NOTES (insn), map); - INSN_LOCATOR (copy) = INSN_LOCATOR (insn); - SIBLING_CALL_P (copy) = SIBLING_CALL_P (insn); - CONST_OR_PURE_CALL_P (copy) = CONST_OR_PURE_CALL_P (insn); - - /* Because the USAGE information potentially contains objects other - than hard registers, we need to copy it. */ - CALL_INSN_FUNCTION_USAGE (copy) - = copy_rtx_and_substitute (CALL_INSN_FUNCTION_USAGE (insn), - map, 0); - -#ifdef HAVE_cc0 - if (cc0_insn) - try_constants (cc0_insn, map); - cc0_insn = 0; -#endif - try_constants (copy, map); - - /* Be lazy and assume CALL_INSNs clobber all hard registers. */ - for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) - VARRAY_CONST_EQUIV (map->const_equiv_varray, i).rtx = 0; - break; - - case CODE_LABEL: - /* If this is the loop start label, then we don't need to emit a - copy of this label since no one will use it. */ - - if (insn != start_label) - { - copy = emit_label (get_label_from_map (map, - CODE_LABEL_NUMBER (insn))); - map->const_age++; - } - break; - - case BARRIER: - copy = emit_barrier (); - break; - - case NOTE: - /* BASIC_BLOCK notes exist to stabilize basic block structures with - the associated rtl. We do not want to share the structure in - this new block. */ - - if (NOTE_LINE_NUMBER (insn) != NOTE_INSN_DELETED - && NOTE_LINE_NUMBER (insn) != NOTE_INSN_DELETED_LABEL - && NOTE_LINE_NUMBER (insn) != NOTE_INSN_BASIC_BLOCK) - copy = emit_note_copy (insn); - else - copy = 0; - break; - - default: - abort (); - } - - map->insn_map[INSN_UID (insn)] = copy; - } - while (insn != copy_end); - - /* Now finish coping the REG_NOTES. */ - insn = copy_start; - do - { - insn = NEXT_INSN (insn); - if (INSN_P (insn) - && map->insn_map[INSN_UID (insn)]) - final_reg_note_copy (®_NOTES (map->insn_map[INSN_UID (insn)]), map); - } - while (insn != copy_end); - - /* There may be notes between copy_notes_from and loop_end. Emit a copy of - each of these notes here, since there may be some important ones, such as - NOTE_INSN_BLOCK_END notes, in this group. We don't do this on the last - iteration, because the original notes won't be deleted. - - We can't use insert_before here, because when from preconditioning, - insert_before points before the loop. We can't use copy_end, because - there may be insns already inserted after it (which we don't want to - copy) when not from preconditioning code. */ - - if (! last_iteration) - { - for (insn = copy_notes_from; insn != loop_end; insn = NEXT_INSN (insn)) - { - if (NOTE_P (insn) - && NOTE_LINE_NUMBER (insn) != NOTE_INSN_DELETED - && NOTE_LINE_NUMBER (insn) != NOTE_INSN_BASIC_BLOCK) - emit_note_copy (insn); - } - } - - if (final_label && LABEL_NUSES (final_label) > 0) - emit_label (final_label); - - tem = get_insns (); - end_sequence (); - loop_insn_emit_before (loop, 0, insert_before, tem); -} - -/* Emit an insn, using the expand_binop to ensure that a valid insn is - emitted. This will correctly handle the case where the increment value - won't fit in the immediate field of a PLUS insns. */ - -void -emit_unrolled_add (rtx dest_reg, rtx src_reg, rtx increment) -{ - rtx result; - - result = expand_simple_binop (GET_MODE (dest_reg), PLUS, src_reg, increment, - dest_reg, 0, OPTAB_LIB_WIDEN); - - if (dest_reg != result) - emit_move_insn (dest_reg, result); -} - -/* Searches the insns between INSN and LOOP->END. Returns 1 if there - is a backward branch in that range that branches to somewhere between - LOOP->START and INSN. Returns 0 otherwise. */ - -/* ??? This is quadratic algorithm. Could be rewritten to be linear. - In practice, this is not a problem, because this function is seldom called, - and uses a negligible amount of CPU time on average. */ - -int -back_branch_in_range_p (const struct loop *loop, rtx insn) -{ - rtx p, q, target_insn; - rtx loop_start = loop->start; - rtx loop_end = loop->end; - rtx orig_loop_end = loop->end; - - /* Stop before we get to the backward branch at the end of the loop. */ - loop_end = prev_nonnote_insn (loop_end); - if (BARRIER_P (loop_end)) - loop_end = PREV_INSN (loop_end); - - /* Check in case insn has been deleted, search forward for first non - deleted insn following it. */ - while (INSN_DELETED_P (insn)) - insn = NEXT_INSN (insn); - - /* Check for the case where insn is the last insn in the loop. Deal - with the case where INSN was a deleted loop test insn, in which case - it will now be the NOTE_LOOP_END. */ - if (insn == loop_end || insn == orig_loop_end) - return 0; - - for (p = NEXT_INSN (insn); p != loop_end; p = NEXT_INSN (p)) - { - if (JUMP_P (p)) - { - target_insn = JUMP_LABEL (p); - - /* Search from loop_start to insn, to see if one of them is - the target_insn. We can't use INSN_LUID comparisons here, - since insn may not have an LUID entry. */ - for (q = loop_start; q != insn; q = NEXT_INSN (q)) - if (q == target_insn) - return 1; - } - } - - return 0; -} - -/* Try to generate the simplest rtx for the expression - (PLUS (MULT mult1 mult2) add1). This is used to calculate the initial - value of giv's. */ - -static rtx -fold_rtx_mult_add (rtx mult1, rtx mult2, rtx add1, enum machine_mode mode) -{ - rtx temp, mult_res; - rtx result; - - /* The modes must all be the same. This should always be true. For now, - check to make sure. */ - if ((GET_MODE (mult1) != mode && GET_MODE (mult1) != VOIDmode) - || (GET_MODE (mult2) != mode && GET_MODE (mult2) != VOIDmode) - || (GET_MODE (add1) != mode && GET_MODE (add1) != VOIDmode)) - abort (); - - /* Ensure that if at least one of mult1/mult2 are constant, then mult2 - will be a constant. */ - if (GET_CODE (mult1) == CONST_INT) - { - temp = mult2; - mult2 = mult1; - mult1 = temp; - } - - mult_res = simplify_binary_operation (MULT, mode, mult1, mult2); - if (! mult_res) - mult_res = gen_rtx_MULT (mode, mult1, mult2); - - /* Again, put the constant second. */ - if (GET_CODE (add1) == CONST_INT) - { - temp = add1; - add1 = mult_res; - mult_res = temp; - } - - result = simplify_binary_operation (PLUS, mode, add1, mult_res); - if (! result) - result = gen_rtx_PLUS (mode, add1, mult_res); - - return result; -} - -/* Searches the list of induction struct's for the biv BL, to try to calculate - the total increment value for one iteration of the loop as a constant. - - Returns the increment value as an rtx, simplified as much as possible, - if it can be calculated. Otherwise, returns 0. */ - -rtx -biv_total_increment (const struct iv_class *bl) -{ - struct induction *v; - rtx result; - - /* For increment, must check every instruction that sets it. Each - instruction must be executed only once each time through the loop. - To verify this, we check that the insn is always executed, and that - there are no backward branches after the insn that branch to before it. - Also, the insn must have a mult_val of one (to make sure it really is - an increment). */ - - result = const0_rtx; - for (v = bl->biv; v; v = v->next_iv) - { - if (v->always_computable && v->mult_val == const1_rtx - && ! v->maybe_multiple - && SCALAR_INT_MODE_P (v->mode)) - { - /* If we have already counted it, skip it. */ - if (v->same) - continue; - - result = fold_rtx_mult_add (result, const1_rtx, v->add_val, v->mode); - } - else - return 0; - } - - return result; -} - -/* For each biv and giv, determine whether it can be safely split into - a different variable for each unrolled copy of the loop body. If it - is safe to split, then indicate that by saving some useful info - in the splittable_regs array. - - If the loop is being completely unrolled, then splittable_regs will hold - the current value of the induction variable while the loop is unrolled. - It must be set to the initial value of the induction variable here. - Otherwise, splittable_regs will hold the difference between the current - value of the induction variable and the value the induction variable had - at the top of the loop. It must be set to the value 0 here. - - Returns the total number of instructions that set registers that are - splittable. */ - -/* ?? If the loop is only unrolled twice, then most of the restrictions to - constant values are unnecessary, since we can easily calculate increment - values in this case even if nothing is constant. The increment value - should not involve a multiply however. */ - -/* ?? Even if the biv/giv increment values aren't constant, it may still - be beneficial to split the variable if the loop is only unrolled a few - times, since multiplies by small integers (1,2,3,4) are very cheap. */ - -static int -find_splittable_regs (const struct loop *loop, - enum unroll_types unroll_type, int unroll_number) -{ - struct loop_ivs *ivs = LOOP_IVS (loop); - struct iv_class *bl; - struct induction *v; - rtx increment, tem; - rtx biv_final_value; - int biv_splittable; - int result = 0; - - for (bl = ivs->list; bl; bl = bl->next) - { - /* Biv_total_increment must return a constant value, - otherwise we can not calculate the split values. */ - - increment = biv_total_increment (bl); - if (! increment || GET_CODE (increment) != CONST_INT) - continue; - - /* The loop must be unrolled completely, or else have a known number - of iterations and only one exit, or else the biv must be dead - outside the loop, or else the final value must be known. Otherwise, - it is unsafe to split the biv since it may not have the proper - value on loop exit. */ - - /* loop_number_exit_count is nonzero if the loop has an exit other than - a fall through at the end. */ - - biv_splittable = 1; - biv_final_value = 0; - if (unroll_type != UNROLL_COMPLETELY - && (loop->exit_count || unroll_type == UNROLL_NAIVE) - && (REGNO_LAST_LUID (bl->regno) >= INSN_LUID (loop->end) - || ! bl->init_insn - || INSN_UID (bl->init_insn) >= max_uid_for_loop - || (REGNO_FIRST_LUID (bl->regno) - < INSN_LUID (bl->init_insn)) - || reg_mentioned_p (bl->biv->dest_reg, SET_SRC (bl->init_set))) - && ! (biv_final_value = final_biv_value (loop, bl))) - biv_splittable = 0; - - /* If any of the insns setting the BIV don't do so with a simple - PLUS, we don't know how to split it. */ - for (v = bl->biv; biv_splittable && v; v = v->next_iv) - if ((tem = single_set (v->insn)) == 0 - || !REG_P (SET_DEST (tem)) - || REGNO (SET_DEST (tem)) != bl->regno - || GET_CODE (SET_SRC (tem)) != PLUS) - biv_splittable = 0; - - /* If final value is nonzero, then must emit an instruction which sets - the value of the biv to the proper value. This is done after - handling all of the givs, since some of them may need to use the - biv's value in their initialization code. */ - - /* This biv is splittable. If completely unrolling the loop, save - the biv's initial value. Otherwise, save the constant zero. */ - - if (biv_splittable == 1) - { - if (unroll_type == UNROLL_COMPLETELY) - { - /* If the initial value of the biv is itself (i.e. it is too - complicated for strength_reduce to compute), or is a hard - register, or it isn't invariant, then we must create a new - pseudo reg to hold the initial value of the biv. */ - - if (REG_P (bl->initial_value) - && (REGNO (bl->initial_value) == bl->regno - || REGNO (bl->initial_value) < FIRST_PSEUDO_REGISTER - || ! loop_invariant_p (loop, bl->initial_value))) - { - rtx tem = gen_reg_rtx (bl->biv->mode); - - record_base_value (REGNO (tem), bl->biv->add_val, 0); - loop_insn_hoist (loop, - gen_move_insn (tem, bl->biv->src_reg)); - - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Biv %d initial value remapped to %d.\n", - bl->regno, REGNO (tem)); - - splittable_regs[bl->regno] = tem; - } - else - splittable_regs[bl->regno] = bl->initial_value; - } - else - splittable_regs[bl->regno] = const0_rtx; - - /* Save the number of instructions that modify the biv, so that - we can treat the last one specially. */ - - splittable_regs_updates[bl->regno] = bl->biv_count; - result += bl->biv_count; - - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Biv %d safe to split.\n", bl->regno); - } - - /* Check every giv that depends on this biv to see whether it is - splittable also. Even if the biv isn't splittable, givs which - depend on it may be splittable if the biv is live outside the - loop, and the givs aren't. */ - - result += find_splittable_givs (loop, bl, unroll_type, increment, - unroll_number); - - /* If final value is nonzero, then must emit an instruction which sets - the value of the biv to the proper value. This is done after - handling all of the givs, since some of them may need to use the - biv's value in their initialization code. */ - if (biv_final_value) - { - /* If the loop has multiple exits, emit the insns before the - loop to ensure that it will always be executed no matter - how the loop exits. Otherwise emit the insn after the loop, - since this is slightly more efficient. */ - if (! loop->exit_count) - loop_insn_sink (loop, gen_move_insn (bl->biv->src_reg, - biv_final_value)); - else - { - /* Create a new register to hold the value of the biv, and then - set the biv to its final value before the loop start. The biv - is set to its final value before loop start to ensure that - this insn will always be executed, no matter how the loop - exits. */ - rtx tem = gen_reg_rtx (bl->biv->mode); - record_base_value (REGNO (tem), bl->biv->add_val, 0); - - loop_insn_hoist (loop, gen_move_insn (tem, bl->biv->src_reg)); - loop_insn_hoist (loop, gen_move_insn (bl->biv->src_reg, - biv_final_value)); - - if (loop_dump_stream) - fprintf (loop_dump_stream, "Biv %d mapped to %d for split.\n", - REGNO (bl->biv->src_reg), REGNO (tem)); - - /* Set up the mapping from the original biv register to the new - register. */ - bl->biv->src_reg = tem; - } - } - } - return result; -} - -/* For every giv based on the biv BL, check to determine whether it is - splittable. This is a subroutine to find_splittable_regs (). - - Return the number of instructions that set splittable registers. */ - -static int -find_splittable_givs (const struct loop *loop, struct iv_class *bl, - enum unroll_types unroll_type, rtx increment, - int unroll_number ATTRIBUTE_UNUSED) -{ - struct loop_ivs *ivs = LOOP_IVS (loop); - struct induction *v, *v2; - rtx final_value; - rtx tem; - int result = 0; - - /* Scan the list of givs, and set the same_insn field when there are - multiple identical givs in the same insn. */ - for (v = bl->giv; v; v = v->next_iv) - for (v2 = v->next_iv; v2; v2 = v2->next_iv) - if (v->insn == v2->insn && rtx_equal_p (v->new_reg, v2->new_reg) - && ! v2->same_insn) - v2->same_insn = v; - - for (v = bl->giv; v; v = v->next_iv) - { - rtx giv_inc, value; - - /* Only split the giv if it has already been reduced, or if the loop is - being completely unrolled. */ - if (unroll_type != UNROLL_COMPLETELY && v->ignore) - continue; - - /* The giv can be split if the insn that sets the giv is executed once - and only once on every iteration of the loop. */ - /* An address giv can always be split. v->insn is just a use not a set, - and hence it does not matter whether it is always executed. All that - matters is that all the biv increments are always executed, and we - won't reach here if they aren't. */ - if (v->giv_type != DEST_ADDR - && (! v->always_computable - || back_branch_in_range_p (loop, v->insn))) - continue; - - /* The giv increment value must be a constant. */ - giv_inc = fold_rtx_mult_add (v->mult_val, increment, const0_rtx, - v->mode); - if (! giv_inc || GET_CODE (giv_inc) != CONST_INT) - continue; - - /* The loop must be unrolled completely, or else have a known number of - iterations and only one exit, or else the giv must be dead outside - the loop, or else the final value of the giv must be known. - Otherwise, it is not safe to split the giv since it may not have the - proper value on loop exit. */ - - /* The used outside loop test will fail for DEST_ADDR givs. They are - never used outside the loop anyways, so it is always safe to split a - DEST_ADDR giv. */ - - final_value = 0; - if (unroll_type != UNROLL_COMPLETELY - && (loop->exit_count || unroll_type == UNROLL_NAIVE) - && v->giv_type != DEST_ADDR - /* The next part is true if the pseudo is used outside the loop. - We assume that this is true for any pseudo created after loop - starts, because we don't have a reg_n_info entry for them. */ - && (REGNO (v->dest_reg) >= max_reg_before_loop - || (REGNO_FIRST_UID (REGNO (v->dest_reg)) != INSN_UID (v->insn) - /* Check for the case where the pseudo is set by a shift/add - sequence, in which case the first insn setting the pseudo - is the first insn of the shift/add sequence. */ - && (! (tem = find_reg_note (v->insn, REG_RETVAL, NULL_RTX)) - || (REGNO_FIRST_UID (REGNO (v->dest_reg)) - != INSN_UID (XEXP (tem, 0))))) - /* Line above always fails if INSN was moved by loop opt. */ - || (REGNO_LAST_LUID (REGNO (v->dest_reg)) - >= INSN_LUID (loop->end))) - && ! (final_value = v->final_value)) - continue; - -#if 0 - /* Currently, non-reduced/final-value givs are never split. */ - /* Should emit insns after the loop if possible, as the biv final value - code below does. */ - - /* If the final value is nonzero, and the giv has not been reduced, - then must emit an instruction to set the final value. */ - if (final_value && !v->new_reg) - { - /* Create a new register to hold the value of the giv, and then set - the giv to its final value before the loop start. The giv is set - to its final value before loop start to ensure that this insn - will always be executed, no matter how we exit. */ - tem = gen_reg_rtx (v->mode); - loop_insn_hoist (loop, gen_move_insn (tem, v->dest_reg)); - loop_insn_hoist (loop, gen_move_insn (v->dest_reg, final_value)); - - if (loop_dump_stream) - fprintf (loop_dump_stream, "Giv %d mapped to %d for split.\n", - REGNO (v->dest_reg), REGNO (tem)); - - v->src_reg = tem; - } -#endif - - /* This giv is splittable. If completely unrolling the loop, save the - giv's initial value. Otherwise, save the constant zero for it. */ - - if (unroll_type == UNROLL_COMPLETELY) - { - /* It is not safe to use bl->initial_value here, because it may not - be invariant. It is safe to use the initial value stored in - the splittable_regs array if it is set. In rare cases, it won't - be set, so then we do exactly the same thing as - find_splittable_regs does to get a safe value. */ - rtx biv_initial_value; - - if (splittable_regs[bl->regno]) - biv_initial_value = splittable_regs[bl->regno]; - else if (!REG_P (bl->initial_value) - || (REGNO (bl->initial_value) != bl->regno - && REGNO (bl->initial_value) >= FIRST_PSEUDO_REGISTER)) - biv_initial_value = bl->initial_value; - else - { - rtx tem = gen_reg_rtx (bl->biv->mode); - - record_base_value (REGNO (tem), bl->biv->add_val, 0); - loop_insn_hoist (loop, gen_move_insn (tem, bl->biv->src_reg)); - biv_initial_value = tem; - } - biv_initial_value = extend_value_for_giv (v, biv_initial_value); - value = fold_rtx_mult_add (v->mult_val, biv_initial_value, - v->add_val, v->mode); - } - else - value = const0_rtx; - - if (v->new_reg) - { - /* If a giv was combined with another giv, then we can only split - this giv if the giv it was combined with was reduced. This - is because the value of v->new_reg is meaningless in this - case. */ - if (v->same && ! v->same->new_reg) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "giv combined with unreduced giv not split.\n"); - continue; - } - /* If the giv is an address destination, it could be something other - than a simple register, these have to be treated differently. */ - else if (v->giv_type == DEST_REG) - { - /* If value is not a constant, register, or register plus - constant, then compute its value into a register before - loop start. This prevents invalid rtx sharing, and should - generate better code. We can use bl->initial_value here - instead of splittable_regs[bl->regno] because this code - is going before the loop start. */ - if (unroll_type == UNROLL_COMPLETELY - && GET_CODE (value) != CONST_INT - && !REG_P (value) - && (GET_CODE (value) != PLUS - || !REG_P (XEXP (value, 0)) - || GET_CODE (XEXP (value, 1)) != CONST_INT)) - { - rtx tem = gen_reg_rtx (v->mode); - record_base_value (REGNO (tem), v->add_val, 0); - loop_iv_add_mult_hoist (loop, - extend_value_for_giv (v, bl->initial_value), - v->mult_val, v->add_val, tem); - value = tem; - } - - splittable_regs[reg_or_subregno (v->new_reg)] = value; - } - else - continue; - } - else - { -#if 0 - /* Currently, unreduced giv's can't be split. This is not too much - of a problem since unreduced giv's are not live across loop - iterations anyways. When unrolling a loop completely though, - it makes sense to reduce&split givs when possible, as this will - result in simpler instructions, and will not require that a reg - be live across loop iterations. */ - - splittable_regs[REGNO (v->dest_reg)] = value; - fprintf (stderr, "Giv %d at insn %d not reduced\n", - REGNO (v->dest_reg), INSN_UID (v->insn)); -#else - continue; -#endif - } - - /* Unreduced givs are only updated once by definition. Reduced givs - are updated as many times as their biv is. Mark it so if this is - a splittable register. Don't need to do anything for address givs - where this may not be a register. */ - - if (REG_P (v->new_reg)) - { - int count = 1; - if (! v->ignore) - count = REG_IV_CLASS (ivs, REGNO (v->src_reg))->biv_count; - - splittable_regs_updates[reg_or_subregno (v->new_reg)] = count; - } - - result++; - - if (loop_dump_stream) - { - int regnum; - - if (GET_CODE (v->dest_reg) == CONST_INT) - regnum = -1; - else if (!REG_P (v->dest_reg)) - regnum = REGNO (XEXP (v->dest_reg, 0)); - else - regnum = REGNO (v->dest_reg); - fprintf (loop_dump_stream, "Giv %d at insn %d safe to split.\n", - regnum, INSN_UID (v->insn)); - } - } - - return result; -} - -/* Try to prove that the register is dead after the loop exits. Trace every - loop exit looking for an insn that will always be executed, which sets - the register to some value, and appears before the first use of the register - is found. If successful, then return 1, otherwise return 0. */ - -/* ?? Could be made more intelligent in the handling of jumps, so that - it can search past if statements and other similar structures. */ - -static int -reg_dead_after_loop (const struct loop *loop, rtx reg) -{ - rtx insn, label; - int jump_count = 0; - int label_count = 0; - - /* In addition to checking all exits of this loop, we must also check - all exits of inner nested loops that would exit this loop. We don't - have any way to identify those, so we just give up if there are any - such inner loop exits. */ - - for (label = loop->exit_labels; label; label = LABEL_NEXTREF (label)) - label_count++; - - if (label_count != loop->exit_count) - return 0; - - /* HACK: Must also search the loop fall through exit, create a label_ref - here which points to the loop->end, and append the loop_number_exit_labels - list to it. */ - label = gen_rtx_LABEL_REF (VOIDmode, loop->end); - LABEL_NEXTREF (label) = loop->exit_labels; - - for (; label; label = LABEL_NEXTREF (label)) - { - /* Succeed if find an insn which sets the biv or if reach end of - function. Fail if find an insn that uses the biv, or if come to - a conditional jump. */ - - insn = NEXT_INSN (XEXP (label, 0)); - while (insn) - { - if (INSN_P (insn)) - { - rtx set, note; - - if (reg_referenced_p (reg, PATTERN (insn))) - return 0; - - note = find_reg_equal_equiv_note (insn); - if (note && reg_overlap_mentioned_p (reg, XEXP (note, 0))) - return 0; - - set = single_set (insn); - if (set && rtx_equal_p (SET_DEST (set), reg)) - break; - - if (JUMP_P (insn)) - { - if (GET_CODE (PATTERN (insn)) == RETURN) - break; - else if (!any_uncondjump_p (insn) - /* Prevent infinite loop following infinite loops. */ - || jump_count++ > 20) - return 0; - else - insn = JUMP_LABEL (insn); - } - } - - insn = NEXT_INSN (insn); - } - } - - /* Success, the register is dead on all loop exits. */ - return 1; -} - -/* Try to calculate the final value of the biv, the value it will have at - the end of the loop. If we can do it, return that value. */ - -rtx -final_biv_value (const struct loop *loop, struct iv_class *bl) -{ - unsigned HOST_WIDE_INT n_iterations = LOOP_INFO (loop)->n_iterations; - rtx increment, tem; - - /* ??? This only works for MODE_INT biv's. Reject all others for now. */ - - if (GET_MODE_CLASS (bl->biv->mode) != MODE_INT) - return 0; - - /* The final value for reversed bivs must be calculated differently than - for ordinary bivs. In this case, there is already an insn after the - loop which sets this biv's final value (if necessary), and there are - no other loop exits, so we can return any value. */ - if (bl->reversed) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Final biv value for %d, reversed biv.\n", bl->regno); - - return const0_rtx; - } - - /* Try to calculate the final value as initial value + (number of iterations - * increment). For this to work, increment must be invariant, the only - exit from the loop must be the fall through at the bottom (otherwise - it may not have its final value when the loop exits), and the initial - value of the biv must be invariant. */ - - if (n_iterations != 0 - && ! loop->exit_count - && loop_invariant_p (loop, bl->initial_value)) - { - increment = biv_total_increment (bl); - - if (increment && loop_invariant_p (loop, increment)) - { - /* Can calculate the loop exit value, emit insns after loop - end to calculate this value into a temporary register in - case it is needed later. */ - - tem = gen_reg_rtx (bl->biv->mode); - record_base_value (REGNO (tem), bl->biv->add_val, 0); - loop_iv_add_mult_sink (loop, increment, GEN_INT (n_iterations), - bl->initial_value, tem); - - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Final biv value for %d, calculated.\n", bl->regno); - - return tem; - } - } - - /* Check to see if the biv is dead at all loop exits. */ - if (reg_dead_after_loop (loop, bl->biv->src_reg)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Final biv value for %d, biv dead after loop exit.\n", - bl->regno); - - return const0_rtx; - } - - return 0; -} - -/* Try to calculate the final value of the giv, the value it will have at - the end of the loop. If we can do it, return that value. */ - -rtx -final_giv_value (const struct loop *loop, struct induction *v) -{ - struct loop_ivs *ivs = LOOP_IVS (loop); - struct iv_class *bl; - rtx insn; - rtx increment, tem; - rtx seq; - rtx loop_end = loop->end; - unsigned HOST_WIDE_INT n_iterations = LOOP_INFO (loop)->n_iterations; - - bl = REG_IV_CLASS (ivs, REGNO (v->src_reg)); - - /* The final value for givs which depend on reversed bivs must be calculated - differently than for ordinary givs. In this case, there is already an - insn after the loop which sets this giv's final value (if necessary), - and there are no other loop exits, so we can return any value. */ - if (bl->reversed) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Final giv value for %d, depends on reversed biv\n", - REGNO (v->dest_reg)); - return const0_rtx; - } - - /* Try to calculate the final value as a function of the biv it depends - upon. The only exit from the loop must be the fall through at the bottom - and the insn that sets the giv must be executed on every iteration - (otherwise the giv may not have its final value when the loop exits). */ - - /* ??? Can calculate the final giv value by subtracting off the - extra biv increments times the giv's mult_val. The loop must have - only one exit for this to work, but the loop iterations does not need - to be known. */ - - if (n_iterations != 0 - && ! loop->exit_count - && v->always_executed) - { - /* ?? It is tempting to use the biv's value here since these insns will - be put after the loop, and hence the biv will have its final value - then. However, this fails if the biv is subsequently eliminated. - Perhaps determine whether biv's are eliminable before trying to - determine whether giv's are replaceable so that we can use the - biv value here if it is not eliminable. */ - - /* We are emitting code after the end of the loop, so we must make - sure that bl->initial_value is still valid then. It will still - be valid if it is invariant. */ - - increment = biv_total_increment (bl); - - if (increment && loop_invariant_p (loop, increment) - && loop_invariant_p (loop, bl->initial_value)) - { - /* Can calculate the loop exit value of its biv as - (n_iterations * increment) + initial_value */ - - /* The loop exit value of the giv is then - (final_biv_value - extra increments) * mult_val + add_val. - The extra increments are any increments to the biv which - occur in the loop after the giv's value is calculated. - We must search from the insn that sets the giv to the end - of the loop to calculate this value. */ - - /* Put the final biv value in tem. */ - tem = gen_reg_rtx (v->mode); - record_base_value (REGNO (tem), bl->biv->add_val, 0); - loop_iv_add_mult_sink (loop, extend_value_for_giv (v, increment), - GEN_INT (n_iterations), - extend_value_for_giv (v, bl->initial_value), - tem); - - /* Subtract off extra increments as we find them. */ - for (insn = NEXT_INSN (v->insn); insn != loop_end; - insn = NEXT_INSN (insn)) - { - struct induction *biv; - - for (biv = bl->biv; biv; biv = biv->next_iv) - if (biv->insn == insn) - { - start_sequence (); - tem = expand_simple_binop (GET_MODE (tem), MINUS, tem, - biv->add_val, NULL_RTX, 0, - OPTAB_LIB_WIDEN); - seq = get_insns (); - end_sequence (); - loop_insn_sink (loop, seq); - } - } - - /* Now calculate the giv's final value. */ - loop_iv_add_mult_sink (loop, tem, v->mult_val, v->add_val, tem); - - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Final giv value for %d, calc from biv's value.\n", - REGNO (v->dest_reg)); - - return tem; - } - } - - /* Replaceable giv's should never reach here. */ - if (v->replaceable) - abort (); - - /* Check to see if the biv is dead at all loop exits. */ - if (reg_dead_after_loop (loop, v->dest_reg)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Final giv value for %d, giv dead after loop exit.\n", - REGNO (v->dest_reg)); - - return const0_rtx; - } - - return 0; -} - -/* Look back before LOOP->START for the insn that sets REG and return - the equivalent constant if there is a REG_EQUAL note otherwise just - the SET_SRC of REG. */ - -static rtx -loop_find_equiv_value (const struct loop *loop, rtx reg) -{ - rtx loop_start = loop->start; - rtx insn, set; - rtx ret; - - ret = reg; - for (insn = PREV_INSN (loop_start); insn; insn = PREV_INSN (insn)) - { - if (LABEL_P (insn)) - break; - - else if (INSN_P (insn) && reg_set_p (reg, insn)) - { - /* We found the last insn before the loop that sets the register. - If it sets the entire register, and has a REG_EQUAL note, - then use the value of the REG_EQUAL note. */ - if ((set = single_set (insn)) - && (SET_DEST (set) == reg)) - { - rtx note = find_reg_note (insn, REG_EQUAL, NULL_RTX); - - /* Only use the REG_EQUAL note if it is a constant. - Other things, divide in particular, will cause - problems later if we use them. */ - if (note && GET_CODE (XEXP (note, 0)) != EXPR_LIST - && CONSTANT_P (XEXP (note, 0))) - ret = XEXP (note, 0); - else - ret = SET_SRC (set); - - /* We cannot do this if it changes between the - assignment and loop start though. */ - if (modified_between_p (ret, insn, loop_start)) - ret = reg; - } - break; - } - } - return ret; -} - -/* Find and return register term common to both expressions OP0 and - OP1 or NULL_RTX if no such term exists. Each expression must be a - REG or a PLUS of a REG. */ - -static rtx -find_common_reg_term (rtx op0, rtx op1) -{ - if ((REG_P (op0) || GET_CODE (op0) == PLUS) - && (REG_P (op1) || GET_CODE (op1) == PLUS)) - { - rtx op00; - rtx op01; - rtx op10; - rtx op11; - - if (GET_CODE (op0) == PLUS) - op01 = XEXP (op0, 1), op00 = XEXP (op0, 0); - else - op01 = const0_rtx, op00 = op0; - - if (GET_CODE (op1) == PLUS) - op11 = XEXP (op1, 1), op10 = XEXP (op1, 0); - else - op11 = const0_rtx, op10 = op1; - - /* Find and return common register term if present. */ - if (REG_P (op00) && (op00 == op10 || op00 == op11)) - return op00; - else if (REG_P (op01) && (op01 == op10 || op01 == op11)) - return op01; - } - - /* No common register term found. */ - return NULL_RTX; -} - -/* Determine the loop iterator and calculate the number of loop - iterations. Returns the exact number of loop iterations if it can - be calculated, otherwise returns zero. */ - -unsigned HOST_WIDE_INT -loop_iterations (struct loop *loop) -{ - struct loop_info *loop_info = LOOP_INFO (loop); - struct loop_ivs *ivs = LOOP_IVS (loop); - rtx comparison, comparison_value; - rtx iteration_var, initial_value, increment, final_value; - enum rtx_code comparison_code; - HOST_WIDE_INT inc; - unsigned HOST_WIDE_INT abs_inc; - unsigned HOST_WIDE_INT abs_diff; - int off_by_one; - int increment_dir; - int unsigned_p, compare_dir, final_larger; - rtx last_loop_insn; - struct iv_class *bl; - - loop_info->n_iterations = 0; - loop_info->initial_value = 0; - loop_info->initial_equiv_value = 0; - loop_info->comparison_value = 0; - loop_info->final_value = 0; - loop_info->final_equiv_value = 0; - loop_info->increment = 0; - loop_info->iteration_var = 0; - loop_info->unroll_number = 1; - loop_info->iv = 0; - - /* We used to use prev_nonnote_insn here, but that fails because it might - accidentally get the branch for a contained loop if the branch for this - loop was deleted. We can only trust branches immediately before the - loop_end. */ - last_loop_insn = PREV_INSN (loop->end); - - /* ??? We should probably try harder to find the jump insn - at the end of the loop. The following code assumes that - the last loop insn is a jump to the top of the loop. */ - if (!JUMP_P (last_loop_insn)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: No final conditional branch found.\n"); - return 0; - } - - /* If there is a more than a single jump to the top of the loop - we cannot (easily) determine the iteration count. */ - if (LABEL_NUSES (JUMP_LABEL (last_loop_insn)) > 1) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Loop has multiple back edges.\n"); - return 0; - } - - /* Find the iteration variable. If the last insn is a conditional - branch, and the insn before tests a register value, make that the - iteration variable. */ - - comparison = get_condition_for_loop (loop, last_loop_insn); - if (comparison == 0) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: No final comparison found.\n"); - return 0; - } - - /* ??? Get_condition may switch position of induction variable and - invariant register when it canonicalizes the comparison. */ - - comparison_code = GET_CODE (comparison); - iteration_var = XEXP (comparison, 0); - comparison_value = XEXP (comparison, 1); - - if (!REG_P (iteration_var)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Comparison not against register.\n"); - return 0; - } - - /* The only new registers that are created before loop iterations - are givs made from biv increments or registers created by - load_mems. In the latter case, it is possible that try_copy_prop - will propagate a new pseudo into the old iteration register but - this will be marked by having the REG_USERVAR_P bit set. */ - - if ((unsigned) REGNO (iteration_var) >= ivs->n_regs - && ! REG_USERVAR_P (iteration_var)) - abort (); - - /* Determine the initial value of the iteration variable, and the amount - that it is incremented each loop. Use the tables constructed by - the strength reduction pass to calculate these values. */ - - /* Clear the result values, in case no answer can be found. */ - initial_value = 0; - increment = 0; - - /* The iteration variable can be either a giv or a biv. Check to see - which it is, and compute the variable's initial value, and increment - value if possible. */ - - /* If this is a new register, can't handle it since we don't have any - reg_iv_type entry for it. */ - if ((unsigned) REGNO (iteration_var) >= ivs->n_regs) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: No reg_iv_type entry for iteration var.\n"); - return 0; - } - - /* Reject iteration variables larger than the host wide int size, since they - could result in a number of iterations greater than the range of our - `unsigned HOST_WIDE_INT' variable loop_info->n_iterations. */ - else if ((GET_MODE_BITSIZE (GET_MODE (iteration_var)) - > HOST_BITS_PER_WIDE_INT)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Iteration var rejected because mode too large.\n"); - return 0; - } - else if (GET_MODE_CLASS (GET_MODE (iteration_var)) != MODE_INT) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Iteration var not an integer.\n"); - return 0; - } - - /* Try swapping the comparison to identify a suitable iv. */ - if (REG_IV_TYPE (ivs, REGNO (iteration_var)) != BASIC_INDUCT - && REG_IV_TYPE (ivs, REGNO (iteration_var)) != GENERAL_INDUCT - && REG_P (comparison_value) - && REGNO (comparison_value) < ivs->n_regs) - { - rtx temp = comparison_value; - comparison_code = swap_condition (comparison_code); - comparison_value = iteration_var; - iteration_var = temp; - } - - if (REG_IV_TYPE (ivs, REGNO (iteration_var)) == BASIC_INDUCT) - { - if (REGNO (iteration_var) >= ivs->n_regs) - abort (); - - /* Grab initial value, only useful if it is a constant. */ - bl = REG_IV_CLASS (ivs, REGNO (iteration_var)); - initial_value = bl->initial_value; - if (!bl->biv->always_executed || bl->biv->maybe_multiple) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Basic induction var not set once in each iteration.\n"); - return 0; - } - - increment = biv_total_increment (bl); - } - else if (REG_IV_TYPE (ivs, REGNO (iteration_var)) == GENERAL_INDUCT) - { - HOST_WIDE_INT offset = 0; - struct induction *v = REG_IV_INFO (ivs, REGNO (iteration_var)); - rtx biv_initial_value; - - if (REGNO (v->src_reg) >= ivs->n_regs) - abort (); - - if (!v->always_executed || v->maybe_multiple) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: General induction var not set once in each iteration.\n"); - return 0; - } - - bl = REG_IV_CLASS (ivs, REGNO (v->src_reg)); - - /* Increment value is mult_val times the increment value of the biv. */ - - increment = biv_total_increment (bl); - if (increment) - { - struct induction *biv_inc; - - increment = fold_rtx_mult_add (v->mult_val, - extend_value_for_giv (v, increment), - const0_rtx, v->mode); - /* The caller assumes that one full increment has occurred at the - first loop test. But that's not true when the biv is incremented - after the giv is set (which is the usual case), e.g.: - i = 6; do {;} while (i++ < 9) . - Therefore, we bias the initial value by subtracting the amount of - the increment that occurs between the giv set and the giv test. */ - for (biv_inc = bl->biv; biv_inc; biv_inc = biv_inc->next_iv) - { - if (loop_insn_first_p (v->insn, biv_inc->insn)) - { - if (REG_P (biv_inc->add_val)) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Basic induction var add_val is REG %d.\n", - REGNO (biv_inc->add_val)); - return 0; - } - - /* If we have already counted it, skip it. */ - if (biv_inc->same) - continue; - - offset -= INTVAL (biv_inc->add_val); - } - } - } - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Giv iterator, initial value bias %ld.\n", - (long) offset); - - /* Initial value is mult_val times the biv's initial value plus - add_val. Only useful if it is a constant. */ - biv_initial_value = extend_value_for_giv (v, bl->initial_value); - initial_value - = fold_rtx_mult_add (v->mult_val, - plus_constant (biv_initial_value, offset), - v->add_val, v->mode); - } - else - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Not basic or general induction var.\n"); - return 0; - } - - if (initial_value == 0) - return 0; - - unsigned_p = 0; - off_by_one = 0; - switch (comparison_code) - { - case LEU: - unsigned_p = 1; - case LE: - compare_dir = 1; - off_by_one = 1; - break; - case GEU: - unsigned_p = 1; - case GE: - compare_dir = -1; - off_by_one = -1; - break; - case EQ: - /* Cannot determine loop iterations with this case. */ - compare_dir = 0; - break; - case LTU: - unsigned_p = 1; - case LT: - compare_dir = 1; - break; - case GTU: - unsigned_p = 1; - case GT: - compare_dir = -1; - break; - case NE: - compare_dir = 0; - break; - default: - abort (); - } - - /* If the comparison value is an invariant register, then try to find - its value from the insns before the start of the loop. */ - - final_value = comparison_value; - if (REG_P (comparison_value) - && loop_invariant_p (loop, comparison_value)) - { - final_value = loop_find_equiv_value (loop, comparison_value); - - /* If we don't get an invariant final value, we are better - off with the original register. */ - if (! loop_invariant_p (loop, final_value)) - final_value = comparison_value; - } - - /* Calculate the approximate final value of the induction variable - (on the last successful iteration). The exact final value - depends on the branch operator, and increment sign. It will be - wrong if the iteration variable is not incremented by one each - time through the loop and (comparison_value + off_by_one - - initial_value) % increment != 0. - ??? Note that the final_value may overflow and thus final_larger - will be bogus. A potentially infinite loop will be classified - as immediate, e.g. for (i = 0x7ffffff0; i <= 0x7fffffff; i++) */ - if (off_by_one) - final_value = plus_constant (final_value, off_by_one); - - /* Save the calculated values describing this loop's bounds, in case - precondition_loop_p will need them later. These values can not be - recalculated inside precondition_loop_p because strength reduction - optimizations may obscure the loop's structure. - - These values are only required by precondition_loop_p and insert_bct - whenever the number of iterations cannot be computed at compile time. - Only the difference between final_value and initial_value is - important. Note that final_value is only approximate. */ - loop_info->initial_value = initial_value; - loop_info->comparison_value = comparison_value; - loop_info->final_value = plus_constant (comparison_value, off_by_one); - loop_info->increment = increment; - loop_info->iteration_var = iteration_var; - loop_info->comparison_code = comparison_code; - loop_info->iv = bl; - - /* Try to determine the iteration count for loops such - as (for i = init; i < init + const; i++). When running the - loop optimization twice, the first pass often converts simple - loops into this form. */ - - if (REG_P (initial_value)) - { - rtx reg1; - rtx reg2; - rtx const2; - - reg1 = initial_value; - if (GET_CODE (final_value) == PLUS) - reg2 = XEXP (final_value, 0), const2 = XEXP (final_value, 1); - else - reg2 = final_value, const2 = const0_rtx; - - /* Check for initial_value = reg1, final_value = reg2 + const2, - where reg1 != reg2. */ - if (REG_P (reg2) && reg2 != reg1) - { - rtx temp; - - /* Find what reg1 is equivalent to. Hopefully it will - either be reg2 or reg2 plus a constant. */ - temp = loop_find_equiv_value (loop, reg1); - - if (find_common_reg_term (temp, reg2)) - initial_value = temp; - else if (loop_invariant_p (loop, reg2)) - { - /* Find what reg2 is equivalent to. Hopefully it will - either be reg1 or reg1 plus a constant. Let's ignore - the latter case for now since it is not so common. */ - temp = loop_find_equiv_value (loop, reg2); - - if (temp == loop_info->iteration_var) - temp = initial_value; - if (temp == reg1) - final_value = (const2 == const0_rtx) - ? reg1 : gen_rtx_PLUS (GET_MODE (reg1), reg1, const2); - } - } - } - - loop_info->initial_equiv_value = initial_value; - loop_info->final_equiv_value = final_value; - - /* For EQ comparison loops, we don't have a valid final value. - Check this now so that we won't leave an invalid value if we - return early for any other reason. */ - if (comparison_code == EQ) - loop_info->final_equiv_value = loop_info->final_value = 0; - - if (increment == 0) - { - if (loop_dump_stream) - fprintf (loop_dump_stream, - "Loop iterations: Increment value can't be calculated.\n"); - return 0; - } - - if (GET_CODE (increment) != CONST_INT) - { - /* If we have a REG, check to see if REG holds a constant value. */ - /* ??? Other RTL, such as (neg (reg)) is possible here, but it isn't - clear if it is worthwhile to try to handle such RTL. */ - if (REG_P (increment) || GET_CODE (increment) == SUBREG) - increment = loop_find_equiv_value (loop, increment); - - if (GET_CODE (increment) != CONST_INT) - { - if (loop_dump_stream) - { - fprintf (loop_dump_stream, - "Loop iterations: Increment value not constant "); - print_simple_rtl (loop_dump_stream, increment); - fprintf (loop_dump_stream, ".\n"); - } - return 0; - } - loop_info->increment = increment; - } - - if (GET_CODE (initial_value) != CONST_INT) - { - if (loop_dump_stream) - { - fprintf (loop_dump_stream, - "Loop iterations: Initial value not constant "); - print_simple_rtl (loop_dump_stream, initial_value); - fprintf (loop_dump_stream, ".\n"); - } - return 0; - } - else if (GET_CODE (final_value) != CONST_INT) - { - if (loop_dump_stream) - { - fprintf (loop_dump_stream, - "Loop iterations: Final value not constant "); - print_simple_rtl (loop_dump_stream, final_value); - fprintf (loop_dump_stream, ".\n"); - } - return 0; - } - else if (comparison_code == EQ) - { - rtx inc_once; - - if (loop_dump_stream) - fprintf (loop_dump_stream, "Loop iterations: EQ comparison loop.\n"); - - inc_once = gen_int_mode (INTVAL (initial_value) + INTVAL (increment), - GET_MODE (iteration_var)); - - if (inc_once == final_value) - { - /* The iterator value once through the loop is equal to the - comparison value. Either we have an infinite loop, or - we'll loop twice. */ - if (increment == const0_rtx) - return 0; - loop_info->n_iterations = 2; - } - else - loop_info->n_iterations = 1; - - if (GET_CODE (loop_info->initial_value) == CONST_INT) - loop_info->final_value - = gen_int_mode ((INTVAL (loop_info->initial_value) - + loop_info->n_iterations * INTVAL (increment)), - GET_MODE (iteration_var)); - else - loop_info->final_value - = plus_constant (loop_info->initial_value, - loop_info->n_iterations * INTVAL (increment)); - loop_info->final_equiv_value - = gen_int_mode ((INTVAL (initial_value) - + loop_info->n_iterations * INTVAL (increment)), - GET_MODE (iteration_var)); - return loop_info->n_iterations; - } - - /* Final_larger is 1 if final larger, 0 if they are equal, otherwise -1. */ - if (unsigned_p) - final_larger - = ((unsigned HOST_WIDE_INT) INTVAL (final_value) - > (unsigned HOST_WIDE_INT) INTVAL (initial_value)) - - ((unsigned HOST_WIDE_INT) INTVAL (final_value) - < (unsigned HOST_WIDE_INT) INTVAL (initial_value)); - else - final_larger = (INTVAL (final_value) > INTVAL (initial_value)) - - (INTVAL (final_value) < INTVAL (initial_value)); - - if (INTVAL (increment) > 0) - increment_dir = 1; - else if (INTVAL (increment) == 0) - increment_dir = 0; - else - increment_dir = -1; - - /* There are 27 different cases: compare_dir = -1, 0, 1; - final_larger = -1, 0, 1; increment_dir = -1, 0, 1. - There are 4 normal cases, 4 reverse cases (where the iteration variable - will overflow before the loop exits), 4 infinite loop cases, and 15 - immediate exit (0 or 1 iteration depending on loop type) cases. - Only try to optimize the normal cases. */ - - /* (compare_dir/final_larger/increment_dir) - Normal cases: (0/-1/-1), (0/1/1), (-1/-1/-1), (1/1/1) - Reverse cases: (0/-1/1), (0/1/-1), (-1/-1/1), (1/1/-1) - Infinite loops: (0/-1/0), (0/1/0), (-1/-1/0), (1/1/0) - Immediate exit: (0/0/X), (-1/0/X), (-1/1/X), (1/0/X), (1/-1/X) */ - - /* ?? If the meaning of reverse loops (where the iteration variable - will overflow before the loop exits) is undefined, then could - eliminate all of these special checks, and just always assume - the loops are normal/immediate/infinite. Note that this means - the sign of increment_dir does not have to be known. Also, - since it does not really hurt if immediate exit loops or infinite loops - are optimized, then that case could be ignored also, and hence all - loops can be optimized. - - According to ANSI Spec, the reverse loop case result is undefined, - because the action on overflow is undefined. - - See also the special test for NE loops below. */ - - if (final_larger == increment_dir && final_larger != 0 - && (final_larger == compare_dir || compare_dir == 0)) - /* Normal case. */ - ; - else - { - if (loop_dump_stream) - fprintf (loop_dump_stream, "Loop iterations: Not normal loop.\n"); - return 0; - } - - /* Calculate the number of iterations, final_value is only an approximation, - so correct for that. Note that abs_diff and n_iterations are - unsigned, because they can be as large as 2^n - 1. */ - - inc = INTVAL (increment); - if (inc > 0) - { - abs_diff = INTVAL (final_value) - INTVAL (initial_value); - abs_inc = inc; - } - else if (inc < 0) - { - abs_diff = INTVAL (initial_value) - INTVAL (final_value); - abs_inc = -inc; - } - else - abort (); - - /* Given that iteration_var is going to iterate over its own mode, - not HOST_WIDE_INT, disregard higher bits that might have come - into the picture due to sign extension of initial and final - values. */ - abs_diff &= ((unsigned HOST_WIDE_INT) 1 - << (GET_MODE_BITSIZE (GET_MODE (iteration_var)) - 1) - << 1) - 1; - - /* For NE tests, make sure that the iteration variable won't miss - the final value. If abs_diff mod abs_incr is not zero, then the - iteration variable will overflow before the loop exits, and we - can not calculate the number of iterations. */ - if (compare_dir == 0 && (abs_diff % abs_inc) != 0) - return 0; - - /* Note that the number of iterations could be calculated using - (abs_diff + abs_inc - 1) / abs_inc, provided care was taken to - handle potential overflow of the summation. */ - loop_info->n_iterations = abs_diff / abs_inc + ((abs_diff % abs_inc) != 0); - return loop_info->n_iterations; -} - -/* Replace uses of split bivs with their split pseudo register. This is - for original instructions which remain after loop unrolling without - copying. */ - -static rtx -remap_split_bivs (struct loop *loop, rtx x) -{ - struct loop_ivs *ivs = LOOP_IVS (loop); - enum rtx_code code; - int i; - const char *fmt; - - if (x == 0) - return x; - - code = GET_CODE (x); - switch (code) - { - case SCRATCH: - case PC: - case CC0: - case CONST_INT: - case CONST_DOUBLE: - case CONST: - case SYMBOL_REF: - case LABEL_REF: - return x; - - case REG: -#if 0 - /* If non-reduced/final-value givs were split, then this would also - have to remap those givs also. */ -#endif - if (REGNO (x) < ivs->n_regs - && REG_IV_TYPE (ivs, REGNO (x)) == BASIC_INDUCT) - return REG_IV_CLASS (ivs, REGNO (x))->biv->src_reg; - break; - - default: - break; - } - - fmt = GET_RTX_FORMAT (code); - for (i = GET_RTX_LENGTH (code) - 1; i >= 0; i--) - { - if (fmt[i] == 'e') - XEXP (x, i) = remap_split_bivs (loop, XEXP (x, i)); - else if (fmt[i] == 'E') - { - int j; - for (j = 0; j < XVECLEN (x, i); j++) - XVECEXP (x, i, j) = remap_split_bivs (loop, XVECEXP (x, i, j)); - } - } - return x; -} - -/* If FIRST_UID is a set of REGNO, and FIRST_UID dominates LAST_UID (e.g. - FIST_UID is always executed if LAST_UID is), then return 1. Otherwise - return 0. COPY_START is where we can start looking for the insns - FIRST_UID and LAST_UID. COPY_END is where we stop looking for these - insns. - - If there is no JUMP_INSN between LOOP_START and FIRST_UID, then FIRST_UID - must dominate LAST_UID. - - If there is a CODE_LABEL between FIRST_UID and LAST_UID, then FIRST_UID - may not dominate LAST_UID. - - If there is no CODE_LABEL between FIRST_UID and LAST_UID, then FIRST_UID - must dominate LAST_UID. */ - -int -set_dominates_use (int regno, int first_uid, int last_uid, rtx copy_start, - rtx copy_end) -{ - int passed_jump = 0; - rtx p = NEXT_INSN (copy_start); - - while (INSN_UID (p) != first_uid) - { - if (JUMP_P (p)) - passed_jump = 1; - /* Could not find FIRST_UID. */ - if (p == copy_end) - return 0; - p = NEXT_INSN (p); - } - - /* Verify that FIRST_UID is an insn that entirely sets REGNO. */ - if (! INSN_P (p) || ! dead_or_set_regno_p (p, regno)) - return 0; - - /* FIRST_UID is always executed. */ - if (passed_jump == 0) - return 1; - - while (INSN_UID (p) != last_uid) - { - /* If we see a CODE_LABEL between FIRST_UID and LAST_UID, then we - can not be sure that FIRST_UID dominates LAST_UID. */ - if (LABEL_P (p)) - return 0; - /* Could not find LAST_UID, but we reached the end of the loop, so - it must be safe. */ - else if (p == copy_end) - return 1; - p = NEXT_INSN (p); - } - - /* FIRST_UID is always executed if LAST_UID is executed. */ - return 1; -} - diff --git a/gcc/value-prof.c b/gcc/value-prof.c index 3f9caeb223c..6c6eed88dae 100644 --- a/gcc/value-prof.c +++ b/gcc/value-prof.c @@ -41,7 +41,7 @@ static struct value_prof_hooks *value_prof_hooks; following optimizations are implemented (for more detailed descriptions see comments at value_profile_transformations): - 1) Division/modulo specialisation. Provided that we can determine that the + 1) Division/modulo specialization. Provided that we can determine that the operands of the division have some special properties, we may use it to produce more effective code. 2) Speculative prefetching. If we are able to determine that the difference diff --git a/gcc/varasm.c b/gcc/varasm.c index 37996c06e82..5bb96c648cf 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -104,19 +104,19 @@ tree last_assemble_variable_decl; partitions hot and cold basic blocks into separate sections of the .o file. */ -bool unlikely_section_label_printed = false; +static bool unlikely_section_label_printed = false; /* The following global variable indicates the label name to be put at the start of the first cold section within each function, when partitioning basic blocks into hot and cold sections. */ -char *unlikely_section_label = NULL; +static char *unlikely_section_label = NULL; /* The following global variable indicates the section name to be used for the current cold section, when partitioning hot and cold basic blocks into separate sections. */ -char *unlikely_text_section_name = NULL; +static char *unlikely_text_section_name = NULL; /* We give all constants their own alias set. Perhaps redundant with MEM_READONLY_P, but pre-dates it. */ @@ -417,17 +417,19 @@ set_named_section_flags (const char *section, unsigned int flags) return true; } -/* Tell assembler to change to section NAME with attributes FLAGS. */ +/* Tell assembler to change to section NAME with attributes FLAGS. If + DECL is non-NULL, it is the VAR_DECL or FUNCTION_DECL with which + this section is associated. */ void -named_section_flags (const char *name, unsigned int flags) +named_section_real (const char *name, unsigned int flags, tree decl) { if (in_section != in_named || strcmp (name, in_named_name) != 0) { if (! set_named_section_flags (name, flags)) abort (); - targetm.asm_out.named_section (name, flags); + targetm.asm_out.named_section (name, flags, decl); if (flags & SECTION_FORGET) in_section = no_section; @@ -478,7 +480,7 @@ named_section (tree decl, const char *name, int reloc) error ("%J%D causes a section type conflict", decl, decl); } - named_section_flags (name, flags); + named_section_real (name, flags, decl); } /* If required, set DECL_SECTION_NAME to a unique name. */ @@ -598,7 +600,7 @@ default_function_rodata_section (tree decl) memcpy (rname, name, len); rname[14] = 'r'; - named_section_flags (rname, SECTION_LINKONCE); + named_section_real (rname, SECTION_LINKONCE, decl); return; } /* For .text.foo we want to use .rodata.foo. */ @@ -895,14 +897,14 @@ make_decl_rtl (tree decl) { /* First detect errors in declaring global registers. */ if (reg_number == -1) - error ("%Jregister name not specified for '%D'", decl, decl); + error ("%Jregister name not specified for %qD", decl, decl); else if (reg_number < 0) - error ("%Jinvalid register name for '%D'", decl, decl); + error ("%Jinvalid register name for %qD", decl, decl); else if (TYPE_MODE (TREE_TYPE (decl)) == BLKmode) - error ("%Jdata type of '%D' isn't suitable for a register", + error ("%Jdata type of %qD isn%'t suitable for a register", decl, decl); else if (! HARD_REGNO_MODE_OK (reg_number, TYPE_MODE (TREE_TYPE (decl)))) - error ("%Jregister specified for '%D' isn't suitable for data type", + error ("%Jregister specified for %qD isn%'t suitable for data type", decl, decl); /* Now handle properly declared static register variables. */ else @@ -915,7 +917,8 @@ make_decl_rtl (tree decl) error ("global register variable has initial value"); } if (TREE_THIS_VOLATILE (decl)) - warning ("volatile register variables don't work as you might wish"); + warning ("volatile register variables don%'t " + "work as you might wish"); /* If the user specified one of the eliminables registers here, e.g., FRAME_POINTER_REGNUM, we don't want to get this variable @@ -947,7 +950,7 @@ make_decl_rtl (tree decl) Also handle vars declared register invalidly. */ if (name[0] == '*' && (reg_number >= 0 || reg_number == -3)) - error ("%Jregister name given for non-register variable '%D'", decl, decl); + error ("%Jregister name given for non-register variable %qD", decl, decl); /* Specifying a section attribute on a variable forces it into a non-.bss section, and thus it cannot be common. */ @@ -1187,10 +1190,8 @@ assemble_start_function (tree decl, const char *fnname) unlikely_section_label_printed = false; unlikely_text_section_name = NULL; - if (unlikely_section_label) - free (unlikely_section_label); - unlikely_section_label = xmalloc ((strlen (fnname) + 18) * sizeof (char)); - sprintf (unlikely_section_label, "%s_unlikely_section", fnname); + unlikely_section_label = reconcat (unlikely_section_label, + fnname, ".unlikely_section", NULL); /* The following code does not need preprocessing in the assembler. */ @@ -1519,7 +1520,7 @@ assemble_variable (tree decl, int top_level ATTRIBUTE_UNUSED, if (!dont_output_data && DECL_SIZE (decl) == 0) { - error ("%Jstorage size of `%D' isn't known", decl, decl); + error ("%Jstorage size of %qD isn%'t known", decl, decl); TREE_ASM_WRITTEN (decl) = 1; return; } @@ -1547,7 +1548,7 @@ assemble_variable (tree decl, int top_level ATTRIBUTE_UNUSED, if (! dont_output_data && ! host_integerp (DECL_SIZE_UNIT (decl), 1)) { - error ("%Jsize of variable '%D' is too large", decl, decl); + error ("%Jsize of variable %qD is too large", decl, decl); return; } @@ -1570,7 +1571,7 @@ assemble_variable (tree decl, int top_level ATTRIBUTE_UNUSED, In particular, a.out format supports a maximum alignment of 4. */ if (align > MAX_OFILE_ALIGNMENT) { - warning ("%Jalignment of '%D' is greater than maximum object " + warning ("%Jalignment of %qD is greater than maximum object " "file alignment. Using %d", decl, decl, MAX_OFILE_ALIGNMENT/BITS_PER_UNIT); align = MAX_OFILE_ALIGNMENT; @@ -1644,7 +1645,7 @@ assemble_variable (tree decl, int top_level ATTRIBUTE_UNUSED, #if !defined(ASM_OUTPUT_ALIGNED_COMMON) && !defined(ASM_OUTPUT_ALIGNED_DECL_COMMON) && !defined(ASM_OUTPUT_ALIGNED_BSS) if ((unsigned HOST_WIDE_INT) DECL_ALIGN_UNIT (decl) > rounded) - warning ("%Jrequested alignment for '%D' is greater than " + warning ("%Jrequested alignment for %qD is greater than " "implemented alignment of %d", decl, decl, rounded); #endif @@ -2465,7 +2466,7 @@ copy_constant (tree exp) case ADDR_EXPR: /* For ADDR_EXPR, we do not want to copy the decl whose address is requested. We do want to copy constants though. */ - if (TREE_CODE_CLASS (TREE_CODE (TREE_OPERAND (exp, 0))) == 'c') + if (CONSTANT_CLASS_P (TREE_OPERAND (exp, 0))) return build1 (TREE_CODE (exp), TREE_TYPE (exp), copy_constant (TREE_OPERAND (exp, 0))); else @@ -3377,8 +3378,7 @@ output_addressed_constants (tree exp) tem = TREE_OPERAND (tem, 0)) ; - if (TREE_CODE_CLASS (TREE_CODE (tem)) == 'c' - || TREE_CODE (tem) == CONSTRUCTOR) + if (CONSTANT_CLASS_P (tem) || TREE_CODE (tem) == CONSTRUCTOR) output_constant_def (tem, 0); break; @@ -4011,7 +4011,7 @@ output_constructor (tree exp, unsigned HOST_WIDE_INT size, total_bytes += fieldsize; } else if (val != 0 && TREE_CODE (val) != INTEGER_CST) - error ("invalid initial value for member `%s'", + error ("invalid initial value for member %qs", IDENTIFIER_POINTER (DECL_NAME (field))); else { @@ -4198,7 +4198,7 @@ merge_weak (tree newdecl, tree olddecl) declare_weak because the NEWDECL and OLDDECL was not yet been merged; therefore, TREE_ASM_WRITTEN was not set. */ if (TREE_ASM_WRITTEN (olddecl)) - error ("%Jweak declaration of '%D' must precede definition", + error ("%Jweak declaration of %qD must precede definition", newdecl, newdecl); /* If we've already generated rtl referencing OLDDECL, we may @@ -4206,7 +4206,7 @@ merge_weak (tree newdecl, tree olddecl) a weak symbol. */ else if (TREE_USED (olddecl) && TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (olddecl))) - warning ("%Jweak declaration of '%D' after first use results " + warning ("%Jweak declaration of %qD after first use results " "in unspecified behavior", newdecl, newdecl); if (SUPPORTS_WEAK) @@ -4240,16 +4240,16 @@ void declare_weak (tree decl) { if (! TREE_PUBLIC (decl)) - error ("%Jweak declaration of '%D' must be public", decl, decl); + error ("%Jweak declaration of %qD must be public", decl, decl); else if (TREE_CODE (decl) == FUNCTION_DECL && TREE_ASM_WRITTEN (decl)) - error ("%Jweak declaration of '%D' must precede definition", decl, decl); + error ("%Jweak declaration of %qD must precede definition", decl, decl); else if (SUPPORTS_WEAK) { if (! DECL_WEAK (decl)) weak_decls = tree_cons (NULL, decl, weak_decls); } else - warning ("%Jweak declaration of '%D' not supported", decl, decl); + warning ("%Jweak declaration of %qD not supported", decl, decl); mark_weak (decl); } @@ -4584,7 +4584,8 @@ default_section_type_flags_1 (tree decl, const char *name, int reloc, void default_no_named_section (const char *name ATTRIBUTE_UNUSED, - unsigned int flags ATTRIBUTE_UNUSED) + unsigned int flags ATTRIBUTE_UNUSED, + tree decl ATTRIBUTE_UNUSED) { /* Some object formats don't support named sections at all. The front-end should already have flagged this as an error. */ @@ -4592,11 +4593,17 @@ default_no_named_section (const char *name ATTRIBUTE_UNUSED, } void -default_elf_asm_named_section (const char *name, unsigned int flags) +default_elf_asm_named_section (const char *name, unsigned int flags, + tree decl ATTRIBUTE_UNUSED) { char flagchars[10], *f = flagchars; - if (! named_section_first_declaration (name)) + /* If we have already declared this section, we can use an + abbreviated form to switch back to it -- unless this section is + part of a COMDAT groups, in which case GAS requires the full + declaration every time. */ + if (!(HAVE_GAS_COMDAT_GROUP && (flags & SECTION_LINKONCE)) + && ! named_section_first_declaration (name)) { fprintf (asm_out_file, "\t.section\t%s\n", name); return; @@ -4616,6 +4623,8 @@ default_elf_asm_named_section (const char *name, unsigned int flags) *f++ = 'S'; if (flags & SECTION_TLS) *f++ = 'T'; + if (HAVE_GAS_COMDAT_GROUP && (flags & SECTION_LINKONCE)) + *f++ = 'G'; *f = '\0'; fprintf (asm_out_file, "\t.section\t%s,\"%s\"", name, flagchars); @@ -4623,23 +4632,35 @@ default_elf_asm_named_section (const char *name, unsigned int flags) if (!(flags & SECTION_NOTYPE)) { const char *type; + const char *format; if (flags & SECTION_BSS) type = "nobits"; else type = "progbits"; - fprintf (asm_out_file, ",@%s", type); + format = ",@%s"; +#ifdef ASM_COMMENT_START + /* On platforms that use "@" as the assembly comment character, + use "%" instead. */ + if (strcmp (ASM_COMMENT_START, "@") == 0) + format = ",%%%s"; +#endif + fprintf (asm_out_file, format, type); if (flags & SECTION_ENTSIZE) fprintf (asm_out_file, ",%d", flags & SECTION_ENTSIZE); + if (HAVE_GAS_COMDAT_GROUP && (flags & SECTION_LINKONCE)) + fprintf (asm_out_file, ",%s,comdat", + lang_hooks.decls.comdat_group (decl)); } putc ('\n', asm_out_file); } void -default_coff_asm_named_section (const char *name, unsigned int flags) +default_coff_asm_named_section (const char *name, unsigned int flags, + tree decl ATTRIBUTE_UNUSED) { char flagchars[8], *f = flagchars; @@ -4653,9 +4674,10 @@ default_coff_asm_named_section (const char *name, unsigned int flags) } void -default_pe_asm_named_section (const char *name, unsigned int flags) +default_pe_asm_named_section (const char *name, unsigned int flags, + tree decl) { - default_coff_asm_named_section (name, flags); + default_coff_asm_named_section (name, flags, decl); if (flags & SECTION_LINKONCE) { diff --git a/gcc/vec.h b/gcc/vec.h index d6fc8adfcea..3e272d40c47 100644 --- a/gcc/vec.h +++ b/gcc/vec.h @@ -29,7 +29,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA out-of-line generic functions. The vectors are designed to interoperate with the GTY machinery. - Because of the different behaviour of objects and of pointers to + Because of the different behavior of objects and of pointers to objects, there are two flavors. One to deal with a vector of pointers to objects, and one to deal with a vector of objects themselves. Both of these pass pointers to objects around -- in @@ -186,11 +186,11 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA int VEC_T_space (VEC(T) *v,int reserve) - If V has space for RESERVE additional entries, return non-zero. If + If V has space for RESERVE additional entries, return nonzero. If RESERVE is < 0, ensure there is at least one space slot. You usually only need to use this if you are doing your own vector reallocation, for instance on an embedded vector. This returns - non-zero in exactly the same circumstances that VEC_T_reserve + nonzero in exactly the same circumstances that VEC_T_reserve will. */ #define VEC_space(TDEF,V,R) (VEC_OP(TDEF,space)(V,R)) @@ -200,10 +200,10 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA Ensure that V has at least RESERVE slots available, if RESERVE is >= 0. If RESERVE < 0, ensure that there is at least one spare - slot. These differ in their reallocation behaviour, the first will + slot. These differ in their reallocation behavior, the first will not create additional headroom, but the second mechanism will perform the usual exponential headroom increase. Note this can - cause V to be reallocated. Returns non-zero iff reallocation + cause V to be reallocated. Returns nonzero iff reallocation actually occurred. */ #define VEC_reserve(TDEF,V,R) (VEC_OP(TDEF,reserve)(&(V),R MEM_STAT_INFO)) diff --git a/gcc/version.c b/gcc/version.c index 39f8074c694..d00d7c24c4e 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[] = "4.0.0-edge-vector-branch 20040731 (merged 20040910)"; +const char version_string[] = "4.0.0-edge-vector-branch 20040731 (merged 20040918)"; /* 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 19d2f5099e4..f0610f4e5a7 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2004-09-13 Aaron W. LaFramboise + + * libiberty.h (basename): Prototype for __MINGW32__. + 2004-09-04 Kaveh R. Ghazi * ansidecl.h (ATTRIBUTE_SENTINEL): Define. diff --git a/include/libiberty.h b/include/libiberty.h index 4aab80b2150..c9f480aaf69 100644 --- a/include/libiberty.h +++ b/include/libiberty.h @@ -74,7 +74,7 @@ extern char **dupargv PARAMS ((char **)) ATTRIBUTE_MALLOC; to find the declaration so provide a fully prototyped one. If it is 1, we found it so don't provide any declaration at all. */ #if !HAVE_DECL_BASENAME -#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined(__NetBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (HAVE_DECL_BASENAME) +#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined(__NetBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) || defined (HAVE_DECL_BASENAME) extern char *basename PARAMS ((const char *)); #else extern char *basename (); diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 7090249bd8a..b3a86087d44 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,19 @@ +2004-09-17 Zack Weinberg + + * charset.c (_cpp_destroy_iconv, emit_numeric_escape) + (_cpp_convert_input, _cpp_default_encoding): Add comments. + Some other comments in this file also tweaked. + + * directives.c (do_pragma): Save current buffer position + before lexing the pragma keywords; don't call + _cpp_backup_tokens in the defer_pragmas case. + +2004-09-15 Per Bothner + + * include/line-map.h (line_map_start): Add parameter names so + preceding comment makes sense. + (linemap_add): Remove from comment mention of non-existing parameter. + 2004-09-09 Matt Austern Zack Weinberg diff --git a/libcpp/charset.c b/libcpp/charset.c index 4de858a1b54..7a88a708e6c 100644 --- a/libcpp/charset.c +++ b/libcpp/charset.c @@ -701,6 +701,7 @@ cpp_init_iconv (cpp_reader *pfile) pfile->wide_cset_desc = init_iconv_desc (pfile, wcset, SOURCE_CHARSET); } +/* Destroy iconv(3) descriptors set up by cpp_init_iconv, if necessary. */ void _cpp_destroy_iconv (cpp_reader *pfile) { @@ -791,8 +792,7 @@ ucn_valid_in_identifier (cpp_reader *pfile, cppchar_t c) invalid character. IDENTIFIER_POS is 0 when not in an identifier, 1 for the start of - an identifier, or 2 otherwise. -*/ + an identifier, or 2 otherwise. */ cppchar_t _cpp_valid_ucn (cpp_reader *pfile, const uchar **pstr, @@ -873,8 +873,6 @@ _cpp_valid_ucn (cpp_reader *pfile, const uchar **pstr, /* Convert an UCN, pointed to by FROM, to UTF-8 encoding, then translate it to the execution character set and write the result into TBUF. An advanced pointer is returned. Issues all relevant diagnostics. */ - - static const uchar * convert_ucn (cpp_reader *pfile, const uchar *from, const uchar *limit, struct _cpp_strbuf *tbuf, bool wide) @@ -904,6 +902,11 @@ convert_ucn (cpp_reader *pfile, const uchar *from, const uchar *limit, return from; } +/* Subroutine of convert_hex and convert_oct. N is the representation + in the execution character set of a numeric escape; write it into the + string buffer TBUF and update the end-of-string pointer therein. WIDE + is true if it's a wide string that's being assembled in TBUF. This + function issues no diagnostics and never fails. */ static void emit_numeric_escape (cpp_reader *pfile, cppchar_t n, struct _cpp_strbuf *tbuf, bool wide) @@ -937,6 +940,8 @@ emit_numeric_escape (cpp_reader *pfile, cppchar_t n, } else { + /* Note: this code does not handle the case where the target + and host have a different number of bits in a byte. */ if (tbuf->len + 1 > tbuf->asize) { tbuf->asize += OUTBUF_BLOCK_SIZE; @@ -1353,7 +1358,17 @@ cpp_interpret_charconst (cpp_reader *pfile, const cpp_token *token, return result; } -uchar * +/* Convert an input buffer (containing the complete contents of one + source file) from INPUT_CHARSET to the source character set. INPUT + points to the input buffer, SIZE is its allocated size, and LEN is + the length of the meaningful data within the buffer. The + translated buffer is returned, and *ST_SIZE is set to the length of + the meaningful data within the translated buffer. + + INPUT is expected to have been allocated with xmalloc. This function + will either return INPUT, or free it and return a pointer to another + xmalloc-allocated block of memory. */ +uchar * _cpp_convert_input (cpp_reader *pfile, const char *input_charset, uchar *input, size_t size, size_t len, off_t *st_size) { @@ -1395,6 +1410,7 @@ _cpp_convert_input (cpp_reader *pfile, const char *input_charset, return to.text; } +/* Decide on the default encoding to assume for input files. */ const char * _cpp_default_encoding (void) { @@ -1414,7 +1430,7 @@ _cpp_default_encoding (void) - now we can parse something like "#pragma GCC encoding on the first line, or even Emacs/VIM's mode line tags (there's a problem here in that VIM uses the last line, and Emacs has - its more elaborate "Local variables:" convention). + its more elaborate "local variables" convention). - investigate whether Java has another common convention, which would be friendly to support. (Zack Weinberg and Paolo Bonzini, May 20th 2004) */ diff --git a/libcpp/directives.c b/libcpp/directives.c index b2b6b32e6c1..49f95ca3389 100644 --- a/libcpp/directives.c +++ b/libcpp/directives.c @@ -1145,6 +1145,11 @@ do_pragma (cpp_reader *pfile) const cpp_token *token, *pragma_token = pfile->cur_token; unsigned int count = 1; + /* Save the current position so that defer_pragmas mode can + copy the entire current line to a string. It will not work + to use _cpp_backup_tokens as that does not reverse buffer->cur. */ + const uchar *line_start = CPP_BUFFER (pfile)->cur; + pfile->state.prevent_expansion++; token = cpp_get_token (pfile); @@ -1174,13 +1179,11 @@ do_pragma (cpp_reader *pfile) else if (CPP_OPTION (pfile, defer_pragmas)) { /* Squirrel away the pragma text. Pragmas are newline-terminated. */ - const uchar *line_start, *line_end; + const uchar *line_end; uchar *s; cpp_string body; cpp_token *ptok; - _cpp_backup_tokens (pfile, count); - line_start = CPP_BUFFER (pfile)->cur; line_end = ustrchr (line_start, '\n'); body.len = (line_end - line_start) + 1; diff --git a/libcpp/include/line-map.h b/libcpp/include/line-map.h index 5b4ac1ec743..871baccdf39 100644 --- a/libcpp/include/line-map.h +++ b/libcpp/include/line-map.h @@ -108,7 +108,7 @@ extern void linemap_check_files_exited (struct line_maps *); the highest_location). */ extern source_location linemap_line_start -(struct line_maps *, unsigned int, unsigned int); +(struct line_maps *set, unsigned int to_line, unsigned int max_column_hint); /* Add a mapping of logical source line to physical source file and line number. @@ -119,8 +119,7 @@ extern source_location linemap_line_start TO_FILE is NULL, then TO_FILE, TO_LINE and SYSP are given their natural values considering the file we are returning to. - START_LOCATION should be monotonic increasing across calls to this - function. A call to this function can relocate the previous set of + A call to this function can relocate the previous set of maps, so any stored line_map pointers should not be used. */ extern const struct line_map *linemap_add (struct line_maps *, enum lc_reason, unsigned int sysp, diff --git a/libffi/ChangeLog b/libffi/ChangeLog index 82cbd8cdaf9..a172ea187e4 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,3 +1,11 @@ +2004-09-14 H.J. Lu + + PR libgcj/17465 + * testsuite/lib/libffi-dg.exp: Don't use global ld_library_path. + Set up LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH, + LD_LIBRARY64_PATH, LD_LIBRARY_PATH_32, LD_LIBRARY_PATH_64 and + DYLD_LIBRARY_PATH. + 2004-09-05 Andreas Tobler * testsuite/libffi.call/many_win32.c: Remove whitespaces. diff --git a/libffi/testsuite/lib/libffi-dg.exp b/libffi/testsuite/lib/libffi-dg.exp index f7dd5fd97a8..abeb47676b8 100644 --- a/libffi/testsuite/lib/libffi-dg.exp +++ b/libffi/testsuite/lib/libffi-dg.exp @@ -73,7 +73,7 @@ proc libffi-init { args } { global blddirffi global blddircxx global TOOL_OPTIONS - global ld_library_path + global tool global libffi_include global libffi_link_flags global tool_root_dir @@ -133,13 +133,21 @@ proc libffi-init { args } { # The same applies to darwin (DYLD_LIBRARY_PATH), solaris 32 bit # (LD_LIBRARY_PATH_32), solaris 64 bit (LD_LIBRARY_PATH_64), and HP-UX # (SHLIB_PATH). - setenv LD_LIBRARY_PATH $ld_library_path - setenv SHLIB_PATH $ld_library_path - setenv LD_LIBRARYN32_PATH $ld_library_path - setenv LD_LIBRARY64_PATH $ld_library_path - setenv LD_LIBRARY_PATH_32 $ld_library_path - setenv LD_LIBRARY_PATH_64 $ld_library_path - setenv DYLD_LIBRARY_PATH $ld_library_path + if {![is_remote target]} { + set ld_path "LD_LIBRARY_PATH SHLIB_PATH LD_LIBRARYN32_PATH LD_LIBRARY64_PATH LD_LIBRARY_PATH_32 LD_LIBRARY_PATH_64 DYLD_LIBRARY_PATH" + foreach path $ld_path { + if [info exists env($path)] { + # If we've already added these directories once, keep + # the existing path. + if {$ld_library_path != $env($path) + && [string first $ld_library_path: $env($path)] != 0} { + setenv $path "$ld_library_path:$env($path)" + } + } else { + setenv $path "$ld_library_path" + } + } + } } proc libffi_target_compile { source dest type options } { @@ -147,7 +155,6 @@ proc libffi_target_compile { source dest type options } { global srcdir global blddirffi global TOOL_OPTIONS - global ld_library_path global libffi_link_flags global libffi_include global target_triplet diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 26a3544a49c..3d7cf8c896c 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,22 @@ +2004-09-15 Steven G. Kargl + + * intrincics/getcwd.c: New file. + * Makefile.am: Add getcwd.c. + * Makefile.in: Regenerated. + +2004-09-15 Steven G. Kargl + Paul Brook + + * intrinsics/env.c (getenv, get_environmental_variable): Remove + trailing white space. Use alloca. Honour trim_name. + +2004-09-13 Bud Davis + + PR fortran/17090 + + * io/list_read.c (list_formatted_read): Handle trailing spaces + at end of line. + 2004-09-06 Steven G. Kargl * io/write.c (output_float): Typo in comment. Remove debugging diff --git a/libgfortran/Makefile.am b/libgfortran/Makefile.am index 91d70b8129c..060166ade6a 100644 --- a/libgfortran/Makefile.am +++ b/libgfortran/Makefile.am @@ -49,6 +49,7 @@ intrinsics/erf.c \ intrinsics/eoshift0.c \ intrinsics/eoshift2.c \ intrinsics/etime.c \ +intrinsics/getcwd.c \ intrinsics/getXid.c \ intrinsics/ishftc.c \ intrinsics/pack_generic.c \ diff --git a/libgfortran/Makefile.in b/libgfortran/Makefile.in index ded21b61c7c..fb06ca5d4a5 100644 --- a/libgfortran/Makefile.in +++ b/libgfortran/Makefile.in @@ -120,8 +120,8 @@ am__objects_32 = backspace.lo close.lo endfile.lo format.lo inquire.lo \ unit.lo unix.lo write.lo am__objects_33 = associated.lo abort.lo args.lo bessel.lo \ c99_functions.lo cpu_time.lo cshift0.lo date_and_time.lo \ - env.lo erf.lo eoshift0.lo eoshift2.lo etime.lo getXid.lo \ - ishftc.lo pack_generic.lo size.lo spread_generic.lo \ + env.lo erf.lo eoshift0.lo eoshift2.lo etime.lo getcwd.lo \ + getXid.lo ishftc.lo pack_generic.lo size.lo spread_generic.lo \ string_intrinsics.lo rand.lo random.lo reshape_generic.lo \ reshape_packed.lo selected_int_kind.lo selected_real_kind.lo \ system_clock.lo transpose_generic.lo unpack_generic.lo \ @@ -321,6 +321,7 @@ intrinsics/erf.c \ intrinsics/eoshift0.c \ intrinsics/eoshift2.c \ intrinsics/etime.c \ +intrinsics/getcwd.c \ intrinsics/getXid.c \ intrinsics/ishftc.c \ intrinsics/pack_generic.c \ @@ -2086,6 +2087,15 @@ etime.obj: intrinsics/etime.c etime.lo: intrinsics/etime.c $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o etime.lo `test -f 'intrinsics/etime.c' || echo '$(srcdir)/'`intrinsics/etime.c +getcwd.o: intrinsics/getcwd.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o getcwd.o `test -f 'intrinsics/getcwd.c' || echo '$(srcdir)/'`intrinsics/getcwd.c + +getcwd.obj: intrinsics/getcwd.c + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o getcwd.obj `if test -f 'intrinsics/getcwd.c'; then $(CYGPATH_W) 'intrinsics/getcwd.c'; else $(CYGPATH_W) '$(srcdir)/intrinsics/getcwd.c'; fi` + +getcwd.lo: intrinsics/getcwd.c + $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o getcwd.lo `test -f 'intrinsics/getcwd.c' || echo '$(srcdir)/'`intrinsics/getcwd.c + getXid.o: intrinsics/getXid.c $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o getXid.o `test -f 'intrinsics/getXid.c' || echo '$(srcdir)/'`intrinsics/getXid.c diff --git a/libgfortran/intrinsics/env.c b/libgfortran/intrinsics/env.c index 6695d5b9cf6..b50c1f056dc 100644 --- a/libgfortran/intrinsics/env.c +++ b/libgfortran/intrinsics/env.c @@ -24,6 +24,7 @@ Boston, MA 02111-1307, USA. */ #include #include #include +#include #include "libgfortran.h" @@ -37,13 +38,7 @@ prefix(getenv) (char * name, gfc_charlen_type name_len, gfc_charlen_type value_len) { - - /* Make a null-terminated copy of the name string so that c library - functions work correctly. This is a C99 VLA, which ought to be - faster than malloc and free. */ - - char name_nt[name_len+1]; - + char *name_nt; char *res = NULL; int res_len; @@ -55,8 +50,14 @@ prefix(getenv) (char * name, else memset (value, ' ', value_len); /* Blank the string. */ + /* Trim trailing spaces from name. */ + while (name_len > 0 && name[name_len - 1] == ' ') + name_len--; + + /* Make a null terminated copy of the string. */ + name_nt = alloca (name_len + 1); memcpy (name_nt, name, name_len); - memset (&name_nt[name_len], '\0', 1); + name_nt[name_len] = '\0'; res = getenv(name_nt); @@ -74,9 +75,7 @@ prefix(getenv) (char * name, /* GET_ENVIRONMENT_VARIABLE (name, [value, length, status, trim_name]) - is a F2003 intrinsic for getting an environment variable. Note that as - Un*x doesn't consider trailing blanks in environment variables to be - significant, the trim_name argument has no meaning. */ + is a F2003 intrinsic for getting an environment variable. */ /* Status codes specifyed by the standard. */ #define GFC_SUCCESS 0 @@ -103,7 +102,8 @@ prefix(get_environment_variable_i4) gfc_charlen_type value_len) { int stat = GFC_SUCCESS, res_len = 0; - char name_nt[name_len+1], *res; + char *name_nt; + char *res; if (name == NULL) runtime_error ("Name is required for get_environment_variable."); @@ -124,8 +124,16 @@ prefix(get_environment_variable_i4) memset (value, ' ', value_len); /* Blank the string. */ } + if ((!trim_name) || *trim_name) + { + /* Trim trailing spaces from name. */ + while (name_len > 0 && name[name_len - 1] == ' ') + name_len--; + } + /* Make a null terminated copy of the name. */ + name_nt = alloca (name_len + 1); memcpy (name_nt, name, name_len); - memset (&name_nt[name_len], '\0', 1); + name_nt[name_len] = '\0'; res = getenv(name_nt); @@ -170,6 +178,9 @@ prefix(get_environment_variable_i8) GFC_INTEGER_4 length4, status4; GFC_LOGICAL_4 trim_name4; + if (trim_name) + trim_name4 = *trim_name; + prefix (get_environment_variable_i4) (name, value, &length4, &status4, &trim_name4, name_len, value_len); diff --git a/libgfortran/io/list_read.c b/libgfortran/io/list_read.c index f47d473df91..51767d07672 100644 --- a/libgfortran/io/list_read.c +++ b/libgfortran/io/list_read.c @@ -1270,7 +1270,12 @@ list_formatted_read (bt type, void *p, int len) if (at_eol) finish_separator (); else - eat_spaces (); + { + eat_spaces (); + /* trailing spaces prior to end of line */ + if (at_eol) + finish_separator (); + } saved_type = BT_NULL; repeat_count = 1; diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 38c1ac28dad..f3c973a64f4 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,87 @@ +2004-09-15 Michael Koch + + * gnu/java/net/protocol/file/Handler.java + (openConnection): Don't throw exception if host part for file: URI is + present. setURL() keeps file: protocol if ftp: protocol is not + available. + +2004-09-14 Richard Henderson + + * java/lang/natPosixProcess.cc (waitForSignal): Ignore return + value of sigsuspend. + +2004-09-12 Tom Tromey + + * javax/naming/CompoundName.java (CompoundName): Don't check for + separator in "flat" case. + +2004-09-12 Michael Koch + + * libltdl/configure.ac: Fixed AM_INIT_AUTOMAKE usage and replaces + AM_CONFIG_HEADER by AC_CONFIG_FILES. + * libltdl/Makefile.in, libltdl/aclocal.m4, libltdl/configure: + Regenerate. + +2004-09-11 Mohan Embar + + PR libgcj/14751 + * win32-threads.cc (_Jv_ThreadInitData): Zero out thread + handle in newly-allocated _Jv_Thread_t. + (_Jv_ThreadDestroyData): Close thread handle. + (_Jv_ThreadStart): Remove obsolete comment. + Store handle of newly-created thread in _Jv_Thread_t. + * include/win32-threads.h: #define WIN32_LEAN_AND_MEAN + before including + #define _Jv_HaveCondDestroy + +2004-09-11 Mohan Embar + + * java/lang/natThread.cc (finalize_native): Destroy + join conditional variable and mutex if these destroy + operations are supported. + +2004-09-10 Dalibor Topic + + * gnu/java/net/protocol/file/Connection.java (permission): New field. + (DEFAULT_PERMISSION): New constant. + (Connection): Create a FilePermission with permission to read file. + +2004-09-10 Michael Koch + + * gnu/java/net/protocol/file/Connection.java + (getLastModified): Moved around. + (getPermission): Return stored permission. + +2004-09-10 Michael Koch + + * Makefile.in: Regenerate. + +2004-09-10 Michael Koch + + * Makefile.am: Reverted accidently commited stuff. + * configure: Regenerated. + +2004-09-10 Michael Koch + + * gnu/java/net/protocol/file/Connection.java + (lineSeparator): Made non-final. + (static): Removed. + (connect): Initialize lineSeparator lazily. Use ByteArrayInputStream + instead of StringBufferInputStream. + +2004-09-10 Michael Koch + + * gnu/java/net/protocol/file/Connection.java + (connect): Handle file is a directory case. + +2004-09-10 Michael Koch + + * Makefile.am + (xlib_includes): Removed. + (AM_CPPFLAGS): Renamed from INCLUDES. + (lib_gnu_awt_xlib_la_CPPFLAGS): New automake variable. + * Makefile.in: Regenerate. + 2004-09-09 Michael Koch * java/security/ProtectionDomain.java, diff --git a/libjava/Makefile.am b/libjava/Makefile.am index 2629af52957..c2b3f6a9553 100644 --- a/libjava/Makefile.am +++ b/libjava/Makefile.am @@ -89,11 +89,8 @@ target_noncanonical = @target_noncanonical@ if XLIB_AWT cond_xlib_ltlibrary = lib-gnu-awt-xlib.la -## We require libstdc++-v3 to be in the same build tree. -xlib_includes = -I../libstdc++-v3/include -I../libstdc++-v3/include/$(target_noncanonical) -I$(srcdir)/../libstdc++-v3/libsupc++ else cond_xlib_ltlibrary = -xlib_includes = endif if GTK_AWT @@ -187,8 +184,8 @@ JC1FLAGS = @LIBGCJ_JAVAFLAGS@ $(GCJFLAGS) LIBFFIINCS = @LIBFFIINCS@ -INCLUDES = -I$(top_srcdir) -Iinclude -I$(top_srcdir)/include \ - $(GCINCS) $(THREADINCS) $(INCLTDL) $(xlib_includes) \ +AM_CPPFLAGS = -I$(top_srcdir) -Iinclude -I$(top_srcdir)/include \ + $(GCINCS) $(THREADINCS) $(INCLTDL) \ $(GCC_UNWIND_INCLUDE) $(ZINCS) $(LIBFFIINCS) ## ################################################################ @@ -428,6 +425,11 @@ lib_gnu_awt_xlib_la_SOURCES = \ $(xlib_nat_source_files) lib_gnu_awt_xlib_la_DEPENDENCIES = libgcj-@gcc_version@.jar libgcj.la libgcj.spec lib_gnu_awt_xlib_la_LIBADD = $(xlib_javao_files) +## We require libstdc++-v3 to be in the same build tree. +lib_gnu_awt_xlib_la_CPPFLAGS = \ + -I../libstdc++-v3/include \ + -I../libstdc++-v3/include/$(target_noncanonical) \ + -I$(srcdir)/../libstdc++-v3/libsupc++ ## The mysterious backslash in the grep pattern is consumed by make. lib_gnu_awt_xlib_la_LDFLAGS = ../libstdc++-v3/src/libstdc++.la \ @X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \ diff --git a/libjava/Makefile.in b/libjava/Makefile.in index 0b2696a3b0b..bb9f446dcb2 100644 --- a/libjava/Makefile.in +++ b/libjava/Makefile.in @@ -107,16 +107,26 @@ am__objects_1 = gnu/gcj/xlib/Clip.lo gnu/gcj/xlib/Colormap.lo \ gnu/awt/xlib/XGraphicsConfiguration.lo \ gnu/awt/xlib/XOffScreenImage.lo gnu/awt/xlib/XPanelPeer.lo \ gnu/awt/xlib/XFontPeer.lo gnu/awt/xlib/XToolkit.lo -am__objects_2 = gnu/gcj/xlib/natClip.lo gnu/gcj/xlib/natColormap.lo \ - gnu/gcj/xlib/natDisplay.lo gnu/gcj/xlib/natDrawable.lo \ - gnu/gcj/xlib/natFont.lo gnu/gcj/xlib/natGC.lo \ - gnu/gcj/xlib/natPixmap.lo gnu/gcj/xlib/natScreen.lo \ - gnu/gcj/xlib/natVisual.lo gnu/gcj/xlib/natWMSizeHints.lo \ - gnu/gcj/xlib/natWindow.lo gnu/gcj/xlib/natWindowAttributes.lo \ - gnu/gcj/xlib/natXAnyEvent.lo gnu/gcj/xlib/natXButtonEvent.lo \ - gnu/gcj/xlib/natXColor.lo gnu/gcj/xlib/natXConfigureEvent.lo \ - gnu/gcj/xlib/natXException.lo gnu/gcj/xlib/natXExposeEvent.lo \ - gnu/gcj/xlib/natXImage.lo gnu/gcj/xlib/natXUnmapEvent.lo +am__objects_2 = gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo \ + gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo am_lib_gnu_awt_xlib_la_OBJECTS = $(am__objects_1) $(am__objects_2) lib_gnu_awt_xlib_la_OBJECTS = $(am_lib_gnu_awt_xlib_la_OBJECTS) @XLIB_AWT_TRUE@am_lib_gnu_awt_xlib_la_rpath = -rpath $(toolexeclibdir) @@ -4114,8 +4124,6 @@ ACLOCAL_AMFLAGS = -I . write_entries_to_file = $(shell rm -f $(2) || :) $(shell touch $(2)) $(foreach object,$(1),$(shell echo $(object) >> $(2))) @XLIB_AWT_FALSE@cond_xlib_ltlibrary = @XLIB_AWT_TRUE@cond_xlib_ltlibrary = lib-gnu-awt-xlib.la -@XLIB_AWT_FALSE@xlib_includes = -@XLIB_AWT_TRUE@xlib_includes = -I../libstdc++-v3/include -I../libstdc++-v3/include/$(target_noncanonical) -I$(srcdir)/../libstdc++-v3/libsupc++ @GTK_AWT_FALSE@cond_gtk_ltlibrary = @GTK_AWT_TRUE@cond_gtk_ltlibrary = lib-gnu-java-awt-peer-gtk.la toolexeclib_LTLIBRARIES = libgcj.la libgij.la lib-org-xml-sax.la lib-org-w3c-dom.la \ @@ -4161,8 +4169,8 @@ AM_GCJFLAGS = \ PEDANTIC_CFLAGS = -ansi -pedantic -Wall -Wno-long-long JCFLAGS = -g JC1FLAGS = @LIBGCJ_JAVAFLAGS@ $(GCJFLAGS) -INCLUDES = -I$(top_srcdir) -Iinclude -I$(top_srcdir)/include \ - $(GCINCS) $(THREADINCS) $(INCLTDL) $(xlib_includes) \ +AM_CPPFLAGS = -I$(top_srcdir) -Iinclude -I$(top_srcdir)/include \ + $(GCINCS) $(THREADINCS) $(INCLTDL) \ $(GCC_UNWIND_INCLUDE) $(ZINCS) $(LIBFFIINCS) libgij_la_SOURCES = gij.cc @@ -4380,6 +4388,11 @@ lib_gnu_awt_xlib_la_SOURCES = \ lib_gnu_awt_xlib_la_DEPENDENCIES = libgcj-@gcc_version@.jar libgcj.la libgcj.spec lib_gnu_awt_xlib_la_LIBADD = $(xlib_javao_files) +lib_gnu_awt_xlib_la_CPPFLAGS = \ + -I../libstdc++-v3/include \ + -I../libstdc++-v3/include/$(target_noncanonical) \ + -I$(srcdir)/../libstdc++-v3/libsupc++ + lib_gnu_awt_xlib_la_LDFLAGS = ../libstdc++-v3/src/libstdc++.la \ @X_PRE_LIBS@ @X_LIBS@ -lX11 @X_EXTRA_LIBS@ \ -rpath $(toolexeclibdir) \ @@ -6854,45 +6867,65 @@ gnu/awt/xlib/XFontPeer.lo: gnu/awt/xlib/$(am__dirstamp) \ gnu/awt/xlib/$(DEPDIR)/$(am__dirstamp) gnu/awt/xlib/XToolkit.lo: gnu/awt/xlib/$(am__dirstamp) \ gnu/awt/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natClip.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natColormap.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natDisplay.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natDrawable.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natFont.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natGC.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natPixmap.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natScreen.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natVisual.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natWMSizeHints.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natWindow.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natWindowAttributes.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natXAnyEvent.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natXButtonEvent.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natXColor.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natXConfigureEvent.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natXException.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natXExposeEvent.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natXImage.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -gnu/gcj/xlib/natXUnmapEvent.lo: gnu/gcj/xlib/$(am__dirstamp) \ +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo: \ + gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) gnu/java/awt/peer/gtk/$(am__dirstamp): @$(mkdir_p) gnu/java/awt/peer/gtk @@ -13402,46 +13435,46 @@ mostlyclean-compile: -rm -f gnu/gcj/xlib/XImage.lo -rm -f gnu/gcj/xlib/XUnmapEvent.$(OBJEXT) -rm -f gnu/gcj/xlib/XUnmapEvent.lo - -rm -f gnu/gcj/xlib/natClip.$(OBJEXT) - -rm -f gnu/gcj/xlib/natClip.lo - -rm -f gnu/gcj/xlib/natColormap.$(OBJEXT) - -rm -f gnu/gcj/xlib/natColormap.lo - -rm -f gnu/gcj/xlib/natDisplay.$(OBJEXT) - -rm -f gnu/gcj/xlib/natDisplay.lo - -rm -f gnu/gcj/xlib/natDrawable.$(OBJEXT) - -rm -f gnu/gcj/xlib/natDrawable.lo - -rm -f gnu/gcj/xlib/natFont.$(OBJEXT) - -rm -f gnu/gcj/xlib/natFont.lo - -rm -f gnu/gcj/xlib/natGC.$(OBJEXT) - -rm -f gnu/gcj/xlib/natGC.lo - -rm -f gnu/gcj/xlib/natPixmap.$(OBJEXT) - -rm -f gnu/gcj/xlib/natPixmap.lo - -rm -f gnu/gcj/xlib/natScreen.$(OBJEXT) - -rm -f gnu/gcj/xlib/natScreen.lo - -rm -f gnu/gcj/xlib/natVisual.$(OBJEXT) - -rm -f gnu/gcj/xlib/natVisual.lo - -rm -f gnu/gcj/xlib/natWMSizeHints.$(OBJEXT) - -rm -f gnu/gcj/xlib/natWMSizeHints.lo - -rm -f gnu/gcj/xlib/natWindow.$(OBJEXT) - -rm -f gnu/gcj/xlib/natWindow.lo - -rm -f gnu/gcj/xlib/natWindowAttributes.$(OBJEXT) - -rm -f gnu/gcj/xlib/natWindowAttributes.lo - -rm -f gnu/gcj/xlib/natXAnyEvent.$(OBJEXT) - -rm -f gnu/gcj/xlib/natXAnyEvent.lo - -rm -f gnu/gcj/xlib/natXButtonEvent.$(OBJEXT) - -rm -f gnu/gcj/xlib/natXButtonEvent.lo - -rm -f gnu/gcj/xlib/natXColor.$(OBJEXT) - -rm -f gnu/gcj/xlib/natXColor.lo - -rm -f gnu/gcj/xlib/natXConfigureEvent.$(OBJEXT) - -rm -f gnu/gcj/xlib/natXConfigureEvent.lo - -rm -f gnu/gcj/xlib/natXException.$(OBJEXT) - -rm -f gnu/gcj/xlib/natXException.lo - -rm -f gnu/gcj/xlib/natXExposeEvent.$(OBJEXT) - -rm -f gnu/gcj/xlib/natXExposeEvent.lo - -rm -f gnu/gcj/xlib/natXImage.$(OBJEXT) - -rm -f gnu/gcj/xlib/natXImage.lo - -rm -f gnu/gcj/xlib/natXUnmapEvent.$(OBJEXT) - -rm -f gnu/gcj/xlib/natXUnmapEvent.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.$(OBJEXT) + -rm -f gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo -rm -f gnu/java/awt/BitMaskExtent.$(OBJEXT) -rm -f gnu/java/awt/BitMaskExtent.lo -rm -f gnu/java/awt/BitwiseXORComposite.$(OBJEXT) @@ -17991,26 +18024,26 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/XID.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/XImage.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/XUnmapEvent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natClip.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natColormap.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natDisplay.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natDrawable.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natFont.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natGC.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natPixmap.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natScreen.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natVisual.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natWMSizeHints.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natWindow.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natWindowAttributes.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natXAnyEvent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natXButtonEvent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natXColor.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natXConfigureEvent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natXException.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natXExposeEvent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natXImage.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/natXUnmapEvent.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natClip.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natColormap.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDisplay.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDrawable.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natFont.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natGC.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natPixmap.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natScreen.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natVisual.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWMSizeHints.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindow.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindowAttributes.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXAnyEvent.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXButtonEvent.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXColor.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXConfigureEvent.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXException.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXExposeEvent.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXImage.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXUnmapEvent.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@gnu/java/awt/$(DEPDIR)/BitMaskExtent.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@gnu/java/awt/$(DEPDIR)/BitwiseXORComposite.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@gnu/java/awt/$(DEPDIR)/Buffers.Plo@am__quote@ @@ -20570,6 +20603,146 @@ jni/classpath/lib_gnu_java_awt_peer_gtk_la-primlib.lo: jni/classpath/primlib.c @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $< +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.lo: gnu/gcj/xlib/natClip.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natClip.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.lo `test -f 'gnu/gcj/xlib/natClip.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natClip.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natClip.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natClip.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natClip.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natClip.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natClip.lo `test -f 'gnu/gcj/xlib/natClip.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natClip.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.lo: gnu/gcj/xlib/natColormap.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natColormap.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.lo `test -f 'gnu/gcj/xlib/natColormap.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natColormap.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natColormap.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natColormap.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natColormap.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natColormap.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natColormap.lo `test -f 'gnu/gcj/xlib/natColormap.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natColormap.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.lo: gnu/gcj/xlib/natDisplay.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDisplay.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.lo `test -f 'gnu/gcj/xlib/natDisplay.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natDisplay.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDisplay.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDisplay.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDisplay.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natDisplay.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDisplay.lo `test -f 'gnu/gcj/xlib/natDisplay.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natDisplay.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.lo: gnu/gcj/xlib/natDrawable.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDrawable.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.lo `test -f 'gnu/gcj/xlib/natDrawable.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natDrawable.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDrawable.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDrawable.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natDrawable.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natDrawable.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natDrawable.lo `test -f 'gnu/gcj/xlib/natDrawable.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natDrawable.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.lo: gnu/gcj/xlib/natFont.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natFont.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.lo `test -f 'gnu/gcj/xlib/natFont.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natFont.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natFont.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natFont.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natFont.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natFont.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natFont.lo `test -f 'gnu/gcj/xlib/natFont.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natFont.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.lo: gnu/gcj/xlib/natGC.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natGC.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.lo `test -f 'gnu/gcj/xlib/natGC.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natGC.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natGC.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natGC.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natGC.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natGC.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natGC.lo `test -f 'gnu/gcj/xlib/natGC.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natGC.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.lo: gnu/gcj/xlib/natPixmap.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natPixmap.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.lo `test -f 'gnu/gcj/xlib/natPixmap.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natPixmap.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natPixmap.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natPixmap.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natPixmap.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natPixmap.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natPixmap.lo `test -f 'gnu/gcj/xlib/natPixmap.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natPixmap.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.lo: gnu/gcj/xlib/natScreen.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natScreen.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.lo `test -f 'gnu/gcj/xlib/natScreen.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natScreen.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natScreen.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natScreen.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natScreen.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natScreen.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natScreen.lo `test -f 'gnu/gcj/xlib/natScreen.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natScreen.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.lo: gnu/gcj/xlib/natVisual.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natVisual.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.lo `test -f 'gnu/gcj/xlib/natVisual.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natVisual.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natVisual.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natVisual.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natVisual.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natVisual.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natVisual.lo `test -f 'gnu/gcj/xlib/natVisual.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natVisual.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.lo: gnu/gcj/xlib/natWMSizeHints.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWMSizeHints.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.lo `test -f 'gnu/gcj/xlib/natWMSizeHints.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natWMSizeHints.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWMSizeHints.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWMSizeHints.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWMSizeHints.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natWMSizeHints.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWMSizeHints.lo `test -f 'gnu/gcj/xlib/natWMSizeHints.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natWMSizeHints.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.lo: gnu/gcj/xlib/natWindow.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindow.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.lo `test -f 'gnu/gcj/xlib/natWindow.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natWindow.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindow.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindow.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindow.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natWindow.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindow.lo `test -f 'gnu/gcj/xlib/natWindow.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natWindow.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.lo: gnu/gcj/xlib/natWindowAttributes.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindowAttributes.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.lo `test -f 'gnu/gcj/xlib/natWindowAttributes.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natWindowAttributes.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindowAttributes.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindowAttributes.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natWindowAttributes.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natWindowAttributes.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natWindowAttributes.lo `test -f 'gnu/gcj/xlib/natWindowAttributes.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natWindowAttributes.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.lo: gnu/gcj/xlib/natXAnyEvent.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXAnyEvent.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.lo `test -f 'gnu/gcj/xlib/natXAnyEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXAnyEvent.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXAnyEvent.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXAnyEvent.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXAnyEvent.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natXAnyEvent.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXAnyEvent.lo `test -f 'gnu/gcj/xlib/natXAnyEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXAnyEvent.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.lo: gnu/gcj/xlib/natXButtonEvent.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXButtonEvent.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.lo `test -f 'gnu/gcj/xlib/natXButtonEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXButtonEvent.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXButtonEvent.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXButtonEvent.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXButtonEvent.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natXButtonEvent.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXButtonEvent.lo `test -f 'gnu/gcj/xlib/natXButtonEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXButtonEvent.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.lo: gnu/gcj/xlib/natXColor.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXColor.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.lo `test -f 'gnu/gcj/xlib/natXColor.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXColor.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXColor.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXColor.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXColor.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natXColor.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXColor.lo `test -f 'gnu/gcj/xlib/natXColor.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXColor.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.lo: gnu/gcj/xlib/natXConfigureEvent.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXConfigureEvent.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.lo `test -f 'gnu/gcj/xlib/natXConfigureEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXConfigureEvent.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXConfigureEvent.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXConfigureEvent.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXConfigureEvent.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natXConfigureEvent.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXConfigureEvent.lo `test -f 'gnu/gcj/xlib/natXConfigureEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXConfigureEvent.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.lo: gnu/gcj/xlib/natXException.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXException.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.lo `test -f 'gnu/gcj/xlib/natXException.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXException.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXException.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXException.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXException.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natXException.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXException.lo `test -f 'gnu/gcj/xlib/natXException.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXException.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.lo: gnu/gcj/xlib/natXExposeEvent.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXExposeEvent.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.lo `test -f 'gnu/gcj/xlib/natXExposeEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXExposeEvent.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXExposeEvent.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXExposeEvent.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXExposeEvent.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natXExposeEvent.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXExposeEvent.lo `test -f 'gnu/gcj/xlib/natXExposeEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXExposeEvent.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo: gnu/gcj/xlib/natXImage.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXImage.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo `test -f 'gnu/gcj/xlib/natXImage.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXImage.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXImage.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXImage.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXImage.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natXImage.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo `test -f 'gnu/gcj/xlib/natXImage.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXImage.cc + +gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo: gnu/gcj/xlib/natXUnmapEvent.cc +@am__fastdepCXX_TRUE@ if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo -MD -MP -MF "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXUnmapEvent.Tpo" -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo `test -f 'gnu/gcj/xlib/natXUnmapEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXUnmapEvent.cc; \ +@am__fastdepCXX_TRUE@ then mv -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXUnmapEvent.Tpo" "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXUnmapEvent.Plo"; else rm -f "gnu/gcj/xlib/$(DEPDIR)/lib_gnu_awt_xlib_la-natXUnmapEvent.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='gnu/gcj/xlib/natXUnmapEvent.cc' object='gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib_gnu_awt_xlib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo `test -f 'gnu/gcj/xlib/natXUnmapEvent.cc' || echo '$(srcdir)/'`gnu/gcj/xlib/natXUnmapEvent.cc + .java.o: @am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`; \ @am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \ diff --git a/libjava/configure b/libjava/configure index 85a0f45c486..2d8156faf85 100755 --- a/libjava/configure +++ b/libjava/configure @@ -999,7 +999,7 @@ esac else echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi - cd $ac_popdir + cd "$ac_popdir" done fi @@ -2202,8 +2202,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2261,8 +2260,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2378,8 +2376,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2433,8 +2430,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2479,8 +2475,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2524,8 +2519,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2709,8 +2703,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2768,8 +2761,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2840,8 +2832,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -2885,8 +2876,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -4746,7 +4736,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 4749 "configure"' > conftest.$ac_ext + echo '#line 4739 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -4893,8 +4883,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -5777,7 +5766,7 @@ if test "${enable_sjlj_exceptions+set}" = set; then : else cat > conftest.$ac_ext << EOF -#line 5780 "configure" +#line 5769 "configure" struct S { ~S(); }; void bar(); void foo() @@ -6434,9 +6423,12 @@ ZLIBSPEC= ZLIBTESTSPEC= -echo "$as_me:$LINENO: checking for X" >&5 + +if test "x$ac_path_x_has_been_run" != xyes; then + echo "$as_me:$LINENO: checking for X" >&5 echo $ECHO_N "checking for X... $ECHO_C" >&6 +ac_path_x_has_been_run=yes # Check whether --with-x or --without-x was given. if test "${with_x+set}" = set; then @@ -6529,7 +6521,7 @@ ac_x_header_dirs=' /usr/openwin/share/include' if test "$ac_x_includes" = no; then - # Guess where to find include files, by looking for Intrinsic.h. + # Guess where to find include files, by looking for a specified header file. # First, try using that file with no special directory specified. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -6608,8 +6600,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -6669,10 +6660,15 @@ else # Update the cache value to reflect the command line values. ac_cv_have_x="have_x=yes \ ac_x_includes=$x_includes ac_x_libraries=$x_libraries" - echo "$as_me:$LINENO: result: libraries $x_libraries, headers $x_includes" >&5 -echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6 + # It might be that x_includes is empty (headers are found in the + # standard search path. Then output the corresponding message + ac_out_x_includes=$x_includes + test "x$x_includes" = x && ac_out_x_includes="in standard search path" + echo "$as_me:$LINENO: result: libraries $x_libraries, headers $ac_out_x_includes" >&5 +echo "${ECHO_T}libraries $x_libraries, headers $ac_out_x_includes" >&6 fi +fi if test "$no_x" = yes; then # Not all programs may use this symbol, but it does not hurt to define it. @@ -6725,8 +6721,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -6782,8 +6777,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -6864,8 +6858,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -6925,8 +6918,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -6999,8 +6991,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7113,8 +7104,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7183,8 +7173,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7257,8 +7246,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7367,8 +7355,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7437,8 +7424,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7540,8 +7526,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7610,8 +7595,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7713,8 +7697,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7783,8 +7766,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -7868,8 +7850,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -8605,8 +8586,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -8716,8 +8696,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -8831,8 +8810,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -8939,8 +8917,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -9047,8 +9024,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -9156,8 +9132,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -9267,8 +9242,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -9333,8 +9307,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -9504,8 +9477,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -9574,8 +9546,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -9760,8 +9731,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -9869,8 +9839,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10009,8 +9978,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10065,8 +10033,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10141,8 +10108,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10216,8 +10182,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10367,8 +10332,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10431,8 +10395,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10497,8 +10460,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10544,8 +10506,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10624,8 +10585,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10734,8 +10694,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10831,8 +10790,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10875,8 +10833,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -10953,8 +10910,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11080,8 +11036,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11219,8 +11174,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11352,8 +11306,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11488,8 +11441,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11598,8 +11550,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11673,8 +11624,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11752,8 +11702,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11823,8 +11772,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11872,8 +11820,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -11978,8 +11925,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12091,8 +12037,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12201,8 +12146,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12283,8 +12227,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12416,8 +12359,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12486,8 +12428,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12593,8 +12534,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12699,8 +12639,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12764,8 +12703,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -12848,8 +12786,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -13228,8 +13165,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -13493,8 +13429,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -13672,8 +13607,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -13824,8 +13758,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -13974,8 +13907,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14140,8 +14072,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14205,8 +14136,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14273,8 +14203,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14328,8 +14257,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14383,8 +14311,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14438,8 +14365,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14495,8 +14421,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14550,8 +14475,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14602,8 +14526,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14654,8 +14577,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14723,8 +14645,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14810,8 +14731,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -14957,8 +14877,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -15102,8 +15021,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -15292,8 +15210,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -16807,11 +16724,6 @@ esac *) ac_INSTALL=$ac_top_builddir$INSTALL ;; esac - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ @@ -16850,6 +16762,12 @@ echo "$as_me: error: cannot find input file: $f" >&2;} fi;; esac done` || { (exit 1); exit 1; } + + if test x"$ac_file" != x-; then + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + rm -f "$ac_file" + fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub @@ -17675,7 +17593,7 @@ echo "$as_me: error: $ac_sub_configure failed for $ac_dir" >&2;} { (exit 1); exit 1; }; } fi - cd $ac_popdir + cd "$ac_popdir" done fi diff --git a/libjava/gnu/java/net/protocol/file/Connection.java b/libjava/gnu/java/net/protocol/file/Connection.java index 4da6e882c00..2754717bb14 100644 --- a/libjava/gnu/java/net/protocol/file/Connection.java +++ b/libjava/gnu/java/net/protocol/file/Connection.java @@ -37,8 +37,11 @@ exception statement from your version. */ package gnu.java.net.protocol.file; +import gnu.java.security.action.GetPropertyAction; + import java.io.BufferedInputStream; import java.io.BufferedOutputStream; +import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; @@ -50,6 +53,7 @@ import java.net.ProtocolException; import java.net.URL; import java.net.URLConnection; import java.security.Permission; +import java.security.AccessController; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; @@ -65,12 +69,19 @@ import java.util.Locale; public class Connection extends URLConnection { /** + * Default permission for a file + */ + private static final String DEFAULT_PERMISSION = "read"; + + /** * HTTP-style DateFormat, used to format the last-modified header. */ private static SimpleDateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy hh:mm:ss 'GMT'", new Locale ("En", "Us", "Unix")); + private static String lineSeparator; + /** * This is a File object for this connection */ @@ -87,11 +98,18 @@ public class Connection extends URLConnection private OutputStream outputStream; /** + * FilePermission to read the file + */ + private FilePermission permission; + + /** * Calls superclass constructor to initialize. */ public Connection(URL url) { super (url); + + permission = new FilePermission(getURL().getFile(), DEFAULT_PERMISSION); } /** @@ -105,11 +123,38 @@ public class Connection extends URLConnection // If not connected, then file needs to be openned. file = new File (getURL().getFile()); - if (doInput) - inputStream = new BufferedInputStream(new FileInputStream(file)); + + if (! file.isDirectory()) + { + if (doInput) + inputStream = new BufferedInputStream(new FileInputStream(file)); - if (doOutput) - outputStream = new BufferedOutputStream(new FileOutputStream(file)); + if (doOutput) + outputStream = new BufferedOutputStream(new FileOutputStream(file)); + } + else + { + if (doInput) + { + if (lineSeparator == null) + { + GetPropertyAction getProperty = new GetPropertyAction("line.separator"); + lineSeparator = (String) AccessController.doPrivileged(getProperty); + } + + StringBuffer sb = new StringBuffer(); + String[] files = file.list(); + + for (int index = 0; index < files.length; ++index) + sb.append(files[index]).append(lineSeparator); + + inputStream = new ByteArrayInputStream(sb.toString().getBytes()); + } + + if (doOutput) + throw new ProtocolException + ("file: protocol does not support output on directories"); + } connected = true; } @@ -154,6 +199,26 @@ public class Connection extends URLConnection } /** + * Get the last modified time of the resource. + * + * @return the time since epoch that the resource was modified. + */ + public long getLastModified() + { + try + { + if (!connected) + connect(); + + return file.lastModified(); + } + catch (IOException e) + { + return -1; + } + } + + /** * Get an http-style header field. Just handle a few common ones. */ public String getHeaderField(String field) @@ -184,43 +249,24 @@ public class Connection extends URLConnection /** * Get the length of content. + * * @return the length of the content. */ public int getContentLength() { try { - if (!connected) - connect(); - - return (int) file.length(); - } - catch (IOException e) - { - return -1; - } - } - - /** - * Get the last modified time of the resource. - * - * @return the time since epoch that the resource was modified. - */ - public long getLastModified() - { - try - { if (!connected) connect(); - - return file.lastModified(); + + return (int) file.length(); } catch (IOException e) { return -1; } } - + /** * This method returns a Permission object representing the * permissions required to access this URL. This method returns a @@ -231,6 +277,6 @@ public class Connection extends URLConnection */ public Permission getPermission() throws IOException { - return new FilePermission(getURL().getFile(), "read"); + return permission; } } diff --git a/libjava/gnu/java/net/protocol/file/Handler.java b/libjava/gnu/java/net/protocol/file/Handler.java index 4f5fba3a5b4..18f91720e5f 100644 --- a/libjava/gnu/java/net/protocol/file/Handler.java +++ b/libjava/gnu/java/net/protocol/file/Handler.java @@ -1,5 +1,5 @@ /* Handler.java -- "file" protocol handler for java.net - Copyright (C) 1998, 1999, 2000, 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -76,17 +76,14 @@ public class Handler extends URLStreamHandler String host = url.getHost(); if ((host != null) && (! host.equals(""))) { - throw new IOException("ftp protocol handler not yet implemented."); - /* // Reset the protocol (and implicitly the handler) for this URL. // Then have the URL attempt the connection again, as it will // get the changed handler the next time around. + // If the ftp protocol handler is not installed, an + // exception will be thrown from the new openConnection() call. setURL (url, "ftp", url.getHost(), url.getPort(), url.getFile(), - url.getRef()); - // Until the ftp protocol handler is written, this will cause - // a NullPointerException. + url.getRef()); return url.openConnection(); - */ } return new Connection(url); diff --git a/libjava/include/win32-threads.h b/libjava/include/win32-threads.h index fdd21c541b4..ba9def10d68 100644 --- a/libjava/include/win32-threads.h +++ b/libjava/include/win32-threads.h @@ -13,6 +13,7 @@ details. */ #ifndef __JV_WIN32_THREADS__ #define __JV_WIN32_THREADS__ +#define WIN32_LEAN_AND_MEAN #include // @@ -75,6 +76,7 @@ typedef void _Jv_ThreadStartFunc (java::lang::Thread *); // Condition variables. // +#define _Jv_HaveCondDestroy int _Jv_CondWait (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu, jlong millis, jint nanos); void _Jv_CondInit (_Jv_ConditionVariable_t *cv); void _Jv_CondDestroy (_Jv_ConditionVariable_t *cv); diff --git a/libjava/java/lang/natPosixProcess.cc b/libjava/java/lang/natPosixProcess.cc index a4b87c3a300..cca768b6c6f 100644 --- a/libjava/java/lang/natPosixProcess.cc +++ b/libjava/java/lang/natPosixProcess.cc @@ -126,26 +126,23 @@ error: void java::lang::ConcreteProcess$ProcessManager::waitForSignal () { - using namespace java::lang; - - sigset_t mask; // Wait for SIGCHLD + sigset_t mask; pthread_sigmask (0, NULL, &mask); sigdelset (&mask, SIGCHLD); + // Use sigsuspend() instead of sigwait() as sigwait() doesn't play // nicely with the GC's use of signals. - int c = sigsuspend (&mask); + sigsuspend (&mask); - if (c != -1) - goto error; - if (errno != EINTR) - goto error; + // Do not check sigsuspend return value. The only legitimate return + // is EINTR, but there is a known kernel bug affecting alpha-linux + // wrt sigsuspend+handler+sigreturn that can result in a return value + // of __NR_sigsuspend and errno unset. Don't fail unnecessarily on + // older kernel versions. // All OK. return; - -error: - throw new InternalError (JvNewStringUTF (strerror (errno))); } jboolean java::lang::ConcreteProcess$ProcessManager::reap () diff --git a/libjava/java/lang/natThread.cc b/libjava/java/lang/natThread.cc index ea235ce3789..4782115d2cf 100644 --- a/libjava/java/lang/natThread.cc +++ b/libjava/java/lang/natThread.cc @@ -78,6 +78,12 @@ finalize_native (jobject ptr) { natThread *nt = (natThread *) ptr; _Jv_ThreadDestroyData (nt->thread); +#ifdef _Jv_HaveCondDestroy + _Jv_CondDestroy (&nt->join_cond); +#endif +#ifdef _Jv_HaveMutexDestroy + _Jv_MutexDestroy (&nt->join_mutex); +#endif } jint diff --git a/libjava/javax/naming/CompoundName.java b/libjava/javax/naming/CompoundName.java index 4908d1bed6d..17f2aab7ea7 100644 --- a/libjava/javax/naming/CompoundName.java +++ b/libjava/javax/naming/CompoundName.java @@ -55,6 +55,8 @@ import java.util.Vector; * direction is never described. If it means that the CompoundName * can only have a single element, then the Enumeration-based * constructor ought to throw InvalidNameException. + * + * @since 1.3 */ public class CompoundName implements Name, Cloneable, Serializable { @@ -158,7 +160,7 @@ public class CompoundName implements Name, Cloneable, Serializable i += special.length (); continue; } - else if (special == separator) + else if (direction != FLAT && special == separator) { elts.add (new_element.toString ()); new_element.setLength (0); diff --git a/libjava/libltdl/Makefile.in b/libjava/libltdl/Makefile.in index 26ba1643511..e8286587dc7 100644 --- a/libjava/libltdl/Makefile.in +++ b/libjava/libltdl/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.8.5 from Makefile.am. +# Makefile.in generated by automake 1.9.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -37,6 +37,7 @@ POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : +build_triplet = @build@ host_triplet = @host@ DIST_COMMON = README $(am__configure_deps) $(am__include_HEADERS_DIST) \ $(am__noinst_HEADERS_DIST) $(srcdir)/Makefile.am \ @@ -52,8 +53,13 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = +CONFIG_CLEAN_FILES = config.h +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)" libLTLIBRARIES_INSTALL = $(INSTALL) LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES) @@ -61,19 +67,21 @@ am__DEPENDENCIES_1 = libltdl_la_DEPENDENCIES = $(am__DEPENDENCIES_1) am_libltdl_la_OBJECTS = ltdl.lo libltdl_la_OBJECTS = $(am_libltdl_la_OBJECTS) +@INSTALL_LTDL_TRUE@am_libltdl_la_rpath = -rpath $(libdir) libltdlc_la_DEPENDENCIES = $(am__DEPENDENCIES_1) am_libltdlc_la_OBJECTS = ltdl.lo libltdlc_la_OBJECTS = $(am_libltdlc_la_OBJECTS) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I. +@CONVENIENCE_LTDL_TRUE@am_libltdlc_la_rpath = +DEFAULT_INCLUDES = -I. -I$(srcdir) depcomp = am__depfiles_maybe = COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) \ +LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(DEFS) \ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) -LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ +LINK = $(LIBTOOL) --mode=link --tag=CC $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libltdl_la_SOURCES) $(libltdlc_la_SOURCES) DIST_SOURCES = $(libltdl_la_SOURCES) $(libltdlc_la_SOURCES) @@ -175,6 +183,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -215,8 +225,7 @@ libltdl_la_LDFLAGS = -no-undefined -version-info 4:0:1 libltdl_la_LIBADD = $(LIBADD_DL) libltdlc_la_SOURCES = ltdl.c libltdlc_la_LIBADD = $(LIBADD_DL) -all: config.h - $(MAKE) $(AM_MAKEFLAGS) all-am +all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj @@ -253,29 +262,14 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) - -config.h: stamp-h1 - @if test ! -f $@; then \ - rm -f stamp-h1; \ - $(MAKE) stamp-h1; \ - else :; fi - -stamp-h1: $(srcdir)/config-h.in $(top_builddir)/config.status - @rm -f stamp-h1 - cd $(top_builddir) && $(SHELL) ./config.status config.h -$(srcdir)/config-h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_srcdir) && $(AUTOHEADER) - rm -f stamp-h1 - touch $@ - -distclean-hdr: - -rm -f config.h stamp-h1 +config.h: $(top_builddir)/config.status $(srcdir)/config-h.in + cd $(top_builddir) && $(SHELL) ./config.status $@ install-libLTLIBRARIES: $(lib_LTLIBRARIES) @$(NORMAL_INSTALL) test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)" @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ if test -f $$p; then \ - f="`echo $$p | sed -e 's|^.*/||'`"; \ + f=$(am__strip_dir) \ echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \ $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \ else :; fi; \ @@ -283,8 +277,8 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES) uninstall-libLTLIBRARIES: @$(NORMAL_UNINSTALL) - @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ - p="`echo $$p | sed -e 's|^.*/||'`"; \ + @set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + p=$(am__strip_dir) \ echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \ $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \ done @@ -307,9 +301,9 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libltdl.la: $(libltdl_la_OBJECTS) $(libltdl_la_DEPENDENCIES) - $(LINK) -rpath $(libdir) $(libltdl_la_LDFLAGS) $(libltdl_la_OBJECTS) $(libltdl_la_LIBADD) $(LIBS) + $(LINK) $(am_libltdl_la_rpath) $(libltdl_la_LDFLAGS) $(libltdl_la_OBJECTS) $(libltdl_la_LIBADD) $(LIBS) libltdlc.la: $(libltdlc_la_OBJECTS) $(libltdlc_la_DEPENDENCIES) - $(LINK) $(libltdlc_la_LDFLAGS) $(libltdlc_la_OBJECTS) $(libltdlc_la_LIBADD) $(LIBS) + $(LINK) $(am_libltdlc_la_rpath) $(libltdlc_la_LDFLAGS) $(libltdlc_la_OBJECTS) $(libltdlc_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -340,7 +334,7 @@ install-includeHEADERS: $(include_HEADERS) test -z "$(includedir)" || $(mkdir_p) "$(DESTDIR)$(includedir)" @list='$(include_HEADERS)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f="`echo $$p | sed -e 's|^.*/||'`"; \ + f=$(am__strip_dir) \ echo " $(includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(includedir)/$$f'"; \ $(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \ done @@ -348,7 +342,7 @@ install-includeHEADERS: $(include_HEADERS) uninstall-includeHEADERS: @$(NORMAL_UNINSTALL) @list='$(include_HEADERS)'; for p in $$list; do \ - f="`echo $$p | sed -e 's|^.*/||'`"; \ + f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \ rm -f "$(DESTDIR)$(includedir)/$$f"; \ done @@ -363,11 +357,11 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) mkid -fID $$unique tags: TAGS -TAGS: $(HEADERS) $(SOURCES) config-h.in $(TAGS_DEPENDENCIES) \ +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ - list='$(SOURCES) $(HEADERS) config-h.in $(LISP) $(TAGS_FILES)'; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ @@ -379,11 +373,11 @@ TAGS: $(HEADERS) $(SOURCES) config-h.in $(TAGS_DEPENDENCIES) \ $$tags $$unique; \ fi ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) config-h.in $(TAGS_DEPENDENCIES) \ +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ - list='$(SOURCES) $(HEADERS) config-h.in $(LISP) $(TAGS_FILES)'; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ @@ -404,6 +398,7 @@ distclean-tags: distdir: $(DISTFILES) $(am__remove_distdir) mkdir $(distdir) + $(mkdir_p) $(distdir)/. @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -436,15 +431,15 @@ distdir: $(DISTFILES) ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r $(distdir) dist-gzip: distdir - $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir - $(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2 + tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-tarZ: distdir - $(AMTAR) chof - $(distdir) | compress -c >$(distdir).tar.Z + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir @@ -457,7 +452,7 @@ dist-zip: distdir $(am__remove_distdir) dist dist-all: distdir - $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then @@ -466,11 +461,11 @@ dist dist-all: distdir distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - ;;\ + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ - bunzip2 -c $(distdir).tar.bz2 | $(AMTAR) xf - ;;\ + bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.Z*) \ - uncompress -c $(distdir).tar.Z | $(AMTAR) xf - ;;\ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ *.zip*) \ @@ -529,7 +524,7 @@ distcleancheck: distclean exit 1; } >&2 check-am: all-am check: check-am -all-am: Makefile $(LTLIBRARIES) $(HEADERS) config.h +all-am: Makefile $(LTLIBRARIES) $(HEADERS) installdirs: for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ @@ -554,7 +549,7 @@ clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: - -rm -f $(CONFIG_CLEAN_FILES) + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -568,7 +563,7 @@ distclean: distclean-am -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ - distclean-hdr distclean-libtool distclean-tags + distclean-libtool distclean-tags dvi: dvi-am @@ -616,18 +611,17 @@ uninstall-am: uninstall-includeHEADERS uninstall-info-am \ clean-generic clean-libLTLIBRARIES clean-libtool \ clean-noinstLTLIBRARIES ctags dist dist-all dist-bzip2 \ dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \ - distclean-compile distclean-generic distclean-hdr \ - distclean-libtool distclean-tags distcleancheck distdir \ - distuninstallcheck dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-includeHEADERS install-info \ - install-info-am install-libLTLIBRARIES install-man \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - pdf pdf-am ps ps-am tags uninstall uninstall-am \ - uninstall-includeHEADERS uninstall-info-am \ - uninstall-libLTLIBRARIES + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distcleancheck distdir distuninstallcheck dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-exec install-exec-am \ + install-includeHEADERS install-info install-info-am \ + install-libLTLIBRARIES install-man install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-includeHEADERS \ + uninstall-info-am uninstall-libLTLIBRARIES ltdl.lo: ltdl.h config.h diff --git a/libjava/libltdl/aclocal.m4 b/libjava/libltdl/aclocal.m4 index a6229c7dddb..3a37af62906 100644 --- a/libjava/libltdl/aclocal.m4 +++ b/libjava/libltdl/aclocal.m4 @@ -1,4 +1,4 @@ -# generated automatically by aclocal 1.8.5 -*- Autoconf -*- +# generated automatically by aclocal 1.9.1 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 # Free Software Foundation, Inc. @@ -33,14 +33,14 @@ # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. -AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.8"]) +AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION so it can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], - [AM_AUTOMAKE_VERSION([1.8.5])]) + [AM_AUTOMAKE_VERSION([1.9.1])]) # AM_AUX_DIR_EXPAND @@ -108,7 +108,7 @@ am_aux_dir=`cd $ac_aux_dir && pwd` # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997, 2000, 2001, 2003 Free Software Foundation, Inc. +# Copyright (C) 1997, 2000, 2001, 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 @@ -145,8 +145,8 @@ else fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then - AC_MSG_ERROR([conditional "$1" was never defined. -Usually this means the macro was only invoked conditionally.]) + AC_MSG_ERROR([[conditional "$1" was never defined. +Usually this means the macro was only invoked conditionally.]]) fi])]) # serial 7 -*- Autoconf -*- @@ -319,7 +319,8 @@ AC_SUBST([AMDEPBACKSLASH]) # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +# Copyright (C) 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 @@ -355,27 +356,21 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], else continue fi - grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # We invoke sed twice because it is the simplest approach to - # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue @@ -401,36 +396,12 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) -# Like AC_CONFIG_HEADER, but automatically create stamp file. -*- Autoconf -*- - -# Copyright (C) 1996, 1997, 2000, 2001, 2003 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, 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. - -# serial 7 - -# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. -AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) - # Do all the work for Automake. -*- Autoconf -*- # This macro actually does too much some checks are only needed if # your package does certain things. But this isn't really a big deal. -# 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 program is free software; you can redistribute it and/or modify @@ -506,7 +477,6 @@ AM_MISSING_PROG(AUTOCONF, autoconf) AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) AM_MISSING_PROG(AUTOHEADER, autoheader) AM_MISSING_PROG(MAKEINFO, makeinfo) -AM_MISSING_PROG(AMTAR, tar) AM_PROG_INSTALL_SH AM_PROG_INSTALL_STRIP AC_REQUIRE([AM_PROG_MKDIR_P])dnl @@ -515,7 +485,9 @@ AC_REQUIRE([AM_PROG_MKDIR_P])dnl AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl - +_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], + [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], + [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES(CC)], @@ -798,13 +770,21 @@ fi # this.) AC_DEFUN([AM_PROG_MKDIR_P], [if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # Keeping the `.' argument allows $(mkdir_p) to be used without - # argument. Indeed, we sometimes output rules like + # We used to keeping the `.' as first argument, in order to + # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. - # (`test -n '$(somedir)' && $(mkdir_p) $(somedir)' is a more - # expensive solution, as it forces Make to start a sub-shell.) - mkdir_p='mkdir -p -- .' + # where $(somedir) is conditionally defined. However this is wrong + # for two reasons: + # 1. if the package is installed by a user who cannot write `.' + # make install will fail, + # 2. the above comment should most certainly read + # $(mkdir_p) $(DESTDIR)$(somedir) + # so it does not work when $(somedir) is undefined and + # $(DESTDIR) is not. + # To support the latter case, we have to write + # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), + # so the `.' trick is pointless. + mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as @@ -970,4 +950,112 @@ fi INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) +# Check how to create a tarball. -*- Autoconf -*- + +# 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, 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. + +# serial 1 + + +# _AM_PROG_TAR(FORMAT) +# -------------------- +# Check how to create a tarball in format FORMAT. +# FORMAT should be one of `v7', `ustar', or `pax'. +# +# Substitute a variable $(am__tar) that is a command +# writing to stdout a FORMAT-tarball containing the directory +# $tardir. +# tardir=directory && $(am__tar) > result.tar +# +# Substitute a variable $(am__untar) that extract such +# a tarball read from stdin. +# $(am__untar) < result.tar +AC_DEFUN([_AM_PROG_TAR], +[# Always define AMTAR for backward compatibility. +AM_MISSING_PROG([AMTAR], [tar]) +m4_if([$1], [v7], + [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], + [m4_case([$1], [ustar],, [pax],, + [m4_fatal([Unknown tar format])]) +AC_MSG_CHECKING([how to create a $1 tar archive]) +# Loop over all known methods to create a tar archive until one works. +_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' +_am_tools=${am_cv_prog_tar_$1-$_am_tools} +# Do not fold the above two line into one, because Tru64 sh and +# Solaris sh will not grok spaces in the rhs of `-'. +for _am_tool in $_am_tools +do + case $_am_tool in + gnutar) + for _am_tar in tar gnutar gtar; + do + AM_RUN_LOG([$_am_tar --version]) && break + done + am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' + am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' + am__untar="$_am_tar -xf -" + ;; + plaintar) + # Must skip GNU tar: if it does not support --format= it doesn't create + # ustar tarball either. + (tar --version) >/dev/null 2>&1 && continue + am__tar='tar chf - "$$tardir"' + am__tar_='tar chf - "$tardir"' + am__untar='tar xf -' + ;; + pax) + am__tar='pax -L -x $1 -w "$$tardir"' + am__tar_='pax -L -x $1 -w "$tardir"' + am__untar='pax -r' + ;; + cpio) + am__tar='find "$$tardir" -print | cpio -o -H $1 -L' + am__tar_='find "$tardir" -print | cpio -o -H $1 -L' + am__untar='cpio -i -H $1 -d' + ;; + none) + am__tar=false + am__tar_=false + am__untar=false + ;; + esac + + # If the value was cached, stop now. We just wanted to have am__tar + # and am__untar set. + test -n "${am_cv_prog_tar_$1}" && break + + # tar/untar a dummy directory, and stop if the command works + rm -rf conftest.dir + mkdir conftest.dir + echo GrepMe > conftest.dir/file + AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) + rm -rf conftest.dir + if test -s conftest.tar; then + AM_RUN_LOG([$am__untar /dev/null 2>&1 && break + fi +done +rm -rf conftest.dir + +AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) +AC_MSG_RESULT([$am_cv_prog_tar_$1])]) +AC_SUBST([am__tar]) +AC_SUBST([am__untar]) +]) # _AM_PROG_TAR + m4_include([acinclude.m4]) diff --git a/libjava/libltdl/configure b/libjava/libltdl/configure index 5e402236481..c4f551a9547 100755 --- a/libjava/libltdl/configure +++ b/libjava/libltdl/configure @@ -465,7 +465,7 @@ ac_includes_default="\ # include #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 mkdir_p AWK SET_MAKE am__leading_dot MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT 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 build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB DLLTOOL ac_ct_DLLTOOL AS ac_ct_AS OBJDUMP ac_ct_OBJDUMP CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBTOOL_DEPS INSTALL_LTDL_TRUE INSTALL_LTDL_FALSE CONVENIENCE_LTDL_TRUE CONVENIENCE_LTDL_FALSE LIBADD_DL 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 install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT 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 build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB DLLTOOL ac_ct_DLLTOOL AS ac_ct_AS OBJDUMP ac_ct_OBJDUMP CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBTOOL_DEPS INSTALL_LTDL_TRUE INSTALL_LTDL_FALSE CONVENIENCE_LTDL_TRUE CONVENIENCE_LTDL_FALSE LIBADD_DL LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -1513,6 +1513,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu + ac_config_files="$ac_config_files config.h:config-h.in" + ## ------------------------------- ## @@ -1565,7 +1567,7 @@ fi ## ------------------------ ## ## Automake Initialisation. ## ## ------------------------ ## -am__api_version="1.8" +am__api_version="1.9" # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: @@ -1717,13 +1719,21 @@ echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # Keeping the `.' argument allows $(mkdir_p) to be used without - # argument. Indeed, we sometimes output rules like + # We used to keeping the `.' as first argument, in order to + # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. - # (`test -n '$(somedir)' && $(mkdir_p) $(somedir)' is a more - # expensive solution, as it forces Make to start a sub-shell.) - mkdir_p='mkdir -p -- .' + # where $(somedir) is conditionally defined. However this is wrong + # for two reasons: + # 1. if the package is installed by a user who cannot write `.' + # make install will fail, + # 2. the above comment should most certainly read + # $(mkdir_p) $(DESTDIR)$(somedir) + # so it does not work when $(somedir) is undefined and + # $(DESTDIR) is not. + # To support the latter case, we have to write + # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), + # so the `.' trick is pointless. + mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as @@ -1838,10 +1848,19 @@ fi # Define the identity of the package. - PACKAGE=libltdl - VERSION=1.2 + PACKAGE='libltdl' + VERSION='1.2' + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE "$PACKAGE" +_ACEOF +cat >>confdefs.h <<_ACEOF +#define VERSION "$VERSION" +_ACEOF + # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} @@ -1858,9 +1877,6 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} - -AMTAR=${AMTAR-"${am_missing_run}tar"} - install_sh=${install_sh-"$am_aux_dir/install-sh"} # Installed binaries are usually stripped using `strip' when the user @@ -1953,10 +1969,15 @@ INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" # We need awk for the "check" target. The system "awk" is bad on # some platforms. +# Always define AMTAR for backward compatibility. + +AMTAR=${AMTAR-"${am_missing_run}tar"} + +am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' + - ac_config_headers="$ac_config_headers config.h:config-h.in" echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5 echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&6 @@ -3893,7 +3914,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 3896 "configure"' > conftest.$ac_ext + echo '#line 3917 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -5699,7 +5720,7 @@ fi # Provide some information about the compiler. -echo "$as_me:5702:" \ +echo "$as_me:5723:" \ "checking for Fortran 77 compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 @@ -6728,11 +6749,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6731: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6752: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6735: \$? = $ac_status" >&5 + echo "$as_me:6756: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -6960,11 +6981,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6963: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6984: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6967: \$? = $ac_status" >&5 + echo "$as_me:6988: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -7027,11 +7048,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7030: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7051: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:7034: \$? = $ac_status" >&5 + echo "$as_me:7055: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -9136,7 +9157,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext < conftest.$ac_ext <&5) + (eval echo "\"\$as_me:11412: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:11395: \$? = $ac_status" >&5 + echo "$as_me:11416: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -11455,11 +11476,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11458: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11479: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:11462: \$? = $ac_status" >&5 + echo "$as_me:11483: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -12777,7 +12798,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext < conftest.$ac_ext <&5) + (eval echo "\"\$as_me:13721: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:13704: \$? = $ac_status" >&5 + echo "$as_me:13725: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -13764,11 +13785,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13767: $lt_compile\"" >&5) + (eval echo "\"\$as_me:13788: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:13771: \$? = $ac_status" >&5 + echo "$as_me:13792: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -15728,11 +15749,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15731: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15752: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15735: \$? = $ac_status" >&5 + echo "$as_me:15756: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -15960,11 +15981,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15963: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15984: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15967: \$? = $ac_status" >&5 + echo "$as_me:15988: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -16027,11 +16048,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:16030: $lt_compile\"" >&5) + (eval echo "\"\$as_me:16051: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:16034: \$? = $ac_status" >&5 + echo "$as_me:16055: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -18136,7 +18157,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext <confdef2opt.sed <<\_ACEOF +t clear +: clear +s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g +t quote +s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g +t quote +d +: quote +s,[ `~#$^&*(){}\\|;'"<>?],\\&,g +s,\[,\\&,g +s,\],\\&,g +s,\$,$$,g +p +_ACEOF +# We use echo to avoid assuming a particular line-breaking character. +# The extra dot is to prevent the shell from consuming trailing +# line-breaks from the sub-command output. A line-break within +# single-quotes doesn't work because, if this script is created in a +# platform that uses two characters for line-breaks (e.g., DOS), tr +# would break. +ac_LF_and_DOT=`echo; echo .` +DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` +rm -f confdef2opt.sed + ac_libobjs= ac_ltlibobjs= @@ -22414,15 +22466,10 @@ Usage: $0 [OPTIONS] [FILE]... --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE Configuration files: $config_files -Configuration headers: -$config_headers - Configuration commands: $config_commands @@ -22541,9 +22588,9 @@ for ac_config_target in $ac_config_targets do case "$ac_config_target" in # Handling of arguments. + "config.h" ) CONFIG_FILES="$CONFIG_FILES config.h:config-h.in" ;; "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h:config-h.in" ;; *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; @@ -22556,7 +22603,6 @@ done # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi @@ -22640,7 +22686,6 @@ s,@AUTOCONF@,$AUTOCONF,;t t s,@AUTOMAKE@,$AUTOMAKE,;t t s,@AUTOHEADER@,$AUTOHEADER,;t t s,@MAKEINFO@,$MAKEINFO,;t t -s,@AMTAR@,$AMTAR,;t t s,@install_sh@,$install_sh,;t t s,@STRIP@,$STRIP,;t t s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t @@ -22649,6 +22694,9 @@ s,@mkdir_p@,$mkdir_p,;t t s,@AWK@,$AWK,;t t s,@SET_MAKE@,$SET_MAKE,;t t s,@am__leading_dot@,$am__leading_dot,;t t +s,@AMTAR@,$AMTAR,;t t +s,@am__tar@,$am__tar,;t t +s,@am__untar@,$am__untar,;t t s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t s,@MAINT@,$MAINT,;t t @@ -22951,251 +22999,6 @@ _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs - -cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -# Compute $ac_file's index in $config_headers. -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $ac_file | $ac_file:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'`/stamp-h$_am_stamp_count -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# # CONFIG_COMMANDS section. # for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue @@ -23332,27 +23135,21 @@ echo X"$mf" | else continue fi - grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # We invoke sed twice because it is the simplest approach to - # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue diff --git a/libjava/libltdl/configure.ac b/libjava/libltdl/configure.ac index c4450dc572f..c30a8459610 100644 --- a/libjava/libltdl/configure.ac +++ b/libjava/libltdl/configure.ac @@ -23,6 +23,7 @@ AC_PREREQ(2.59) AC_INIT([libltdl], [1.2], [bug-libtool@gnu.org]) AC_CONFIG_SRCDIR([ltdl.c]) +AC_CONFIG_FILES([config.h:config-h.in]) ## ------------------------------- ## @@ -47,8 +48,7 @@ fi ## ------------------------ ## ## Automake Initialisation. ## ## ------------------------ ## -AM_INIT_AUTOMAKE(AC_PACKAGE_TARNAME, AC_PACKAGE_VERSION, -) -AM_CONFIG_HEADER([config.h:config-h.in]) +AM_INIT_AUTOMAKE([1.9.1]) AM_MAINTAINER_MODE diff --git a/libjava/win32-threads.cc b/libjava/win32-threads.cc index 9e3981db3dd..35a16cdb6ac 100644 --- a/libjava/win32-threads.cc +++ b/libjava/win32-threads.cc @@ -262,6 +262,7 @@ _Jv_ThreadInitData (java::lang::Thread* obj) { _Jv_Thread_t *data = (_Jv_Thread_t*)_Jv_Malloc(sizeof(_Jv_Thread_t)); data->flags = 0; + data->handle = 0; data->thread_obj = obj; data->interrupt_event = 0; InitializeCriticalSection (&data->interrupt_mutex); @@ -275,6 +276,7 @@ _Jv_ThreadDestroyData (_Jv_Thread_t *data) DeleteCriticalSection (&data->interrupt_mutex); if (data->interrupt_event) CloseHandle(data->interrupt_event); + CloseHandle(data->handle); _Jv_Free(data); } @@ -365,7 +367,6 @@ _Jv_ThreadStart (java::lang::Thread *thread, _Jv_Thread_t *data, _Jv_ThreadStart return; data->flags |= FLAG_START; - // FIXME: handle marking the info object for GC. info = (struct starter *) _Jv_AllocBytes (sizeof (struct starter)); info->method = meth; info->data = data; @@ -379,7 +380,7 @@ _Jv_ThreadStart (java::lang::Thread *thread, _Jv_Thread_t *data, _Jv_ThreadStart else data->flags |= FLAG_DAEMON; - GC_CreateThread(NULL, 0, really_start, info, 0, &id); + data->handle = GC_CreateThread(NULL, 0, really_start, info, 0, &id); _Jv_ThreadSetPriority(data, thread->getPriority()); } diff --git a/libmudflap/ChangeLog b/libmudflap/ChangeLog index 2a3e16649c0..984e22bbe73 100644 --- a/libmudflap/ChangeLog +++ b/libmudflap/ChangeLog @@ -1,3 +1,7 @@ +2004-09-15 Joseph S. Myers + + * testsuite/libmudflap.c/pass35-frag.c: Update expected message. + 2004-09-07 Frank Ch. Eigler * configure.ac: Look for pwd.h, grp.h, netdb.h headers and functions. diff --git a/libmudflap/testsuite/libmudflap.c/pass35-frag.c b/libmudflap/testsuite/libmudflap.c/pass35-frag.c index 4744ecdbe99..dbd9737a92e 100644 --- a/libmudflap/testsuite/libmudflap.c/pass35-frag.c +++ b/libmudflap/testsuite/libmudflap.c/pass35-frag.c @@ -3,7 +3,7 @@ #include extern char end []; /* Any old symbol we're sure will be defined. */ -/* { dg-warning "cannot track lifetime of `end'" "cannot track lifetime" { target *-*-* } 0 } */ +/* { dg-warning "cannot track lifetime of 'end'" "cannot track lifetime" { target *-*-* } 0 } */ int main () { diff --git a/libobjc/ChangeLog b/libobjc/ChangeLog index c10832bccc5..232da9cadb4 100644 --- a/libobjc/ChangeLog +++ b/libobjc/ChangeLog @@ -1,3 +1,7 @@ +2004-09-16 Andrew Pinski + + * encoding.c (ALTIVEC_VECTOR_MODE): Define a bogus macro. + 2004-08-28 Nathanael Nerode * configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to diff --git a/libobjc/encoding.c b/libobjc/encoding.c index dba203204b6..7f71276b556 100644 --- a/libobjc/encoding.c +++ b/libobjc/encoding.c @@ -92,6 +92,11 @@ Boston, MA 02111-1307, USA. */ #define target_flags not_target_flags static int __attribute__ ((__unused__)) not_target_flags = 0; +/* Some ROUND_TYPE_ALIGN use ALTIVEC_VECTOR_MODE (rs6000 darwin). + Define a dummy ALTIVEC_VECTOR_MODE so it will not die. */ +#undef ALTIVEC_VECTOR_MODE +#define ALTIVEC_VECTOR_MODE(MODE) (0) + /* FIXME: while this file has no business including tm.h, this definitely has no business defining this macro but it diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 83ad43020e8..d32dc805d69 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,96 @@ +2004-09-17 Jonathan Wakely + + * include/bits/stl_algo.h (remove): Remove too restrictive + concept-check. + +2004-09-17 Paolo Carlini + + * include/bits/fstream.tcc (xsgetn): Slightly tweak conditional, + as per Nathan's original suggestion. + +2004-09-17 Paolo Carlini + + * testsuite/ext/mt_allocator/tune-1.cc: Use VERIFY, clean + up a bit. + * testsuite/ext/mt_allocator/tune-2.cc: Likewise. + * testsuite/ext/mt_allocator/tune-3.cc: Likewise. + * testsuite/ext/mt_allocator/tune-4.cc: Likewise. + +2004-09-17 Paolo Carlini + Andrea Arcangeli + + * config/io/basic_file_stdio.cc (__basic_file<>::close)): Don't + call unnecessarily sync, that is fflush: the library, since 3.4.0 + does not use buffered fread/fwrite. + * include/bits/fstream.tcc (basic_filebuf<>::overflow): Likewise. + +2004-09-15 Mark Mitchell + + * config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type): + Define. + * config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type): + Define. + * libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type. + (__cxa_vec_new): Use it. + (__cxa_vec_new2): Likewise. + (__cxa_vec_new3): Likewise. + (__cxa_vec_cdtor): Likewise. + (__cxa_vec_cctor): Likeiwse. + (__cxa_vec_dtor): Likewise. + (__cxa_vec_cleanup): Likewise. + (__cxa_vec_delete2): Likewise. + (__cxa_vec_delete3): Likewise. + * libsupc++/vec.cc (__cxa_vec_new): Likewise. + (__cxa_vec_new2): Likewise. + (__cxa_vec_new3): Likewise. + (__cxa_vec_cdtor): Likewise. + (__cxa_vec_cctor): Likeiwse. + (__cxa_vec_dtor): Likewise. + (__cxa_vec_cleanup): Likewise. + (__cxa_vec_delete2): Likewise. + (__cxa_vec_delete3): Likewise. + (__aeabi_vec_ctor_nocookie_nodtor): New function. + (__aeabi_vec_ctor_cookie_nodtor): Likewise. + (__aeabi_vec_cctor_nocookie_nodtor): Likewise. + (__aeabi_vec_new_cookie_noctor): Likewise. + (__aeabi_vec_new_nocookie): Likewise. + (__aeabi_vec_new_cookie_nodtor): Likewise. + (__aeabi_vec_new_cookie): Likewise. + (__aeabi_vec_dtor): Likewise. + (__aeabi_vec_dtor_cookie): Likewise. + (__aeabi_vec_delete): Likewise. + (__aeabi_vec_delete3): Likewise. + (__aeabi_vec_delete3_nodtor): Likewise. + (__aeabi_atexit): Likewise. + +2004-09-14 Nathan Myers + + * include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix + for 11722: copy can replace move; the common case is __avail == 0. + +2004-09-14 Paolo Carlini + + * include/bits/cpp_type_traits.h: Rename __is_trivially_copyable + to __is_scalar, more clear and consistent with "tr1" naming. + * include/bits/stl_algobase.h: Update consistently throughout. + +2004-09-13 Paolo Carlini + + PR libstdc++/11722 + * include/std/std_fstream.h (xsgetn): Declare only. + * include/bits/fstream.tcc (xsgetn): Define, optimize for the + always_noconv() case: when __n > __buflen, copy the available + buffer and issue a direct read. + * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New. + + * include/bits/fstream.tcc (xsputn): Minor tweak, reorder a + conditional. + +2004-09-13 Hans-Peter Nilsson + + * testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call + libstdc++_maybe_build_wrapper instead of using local code. + 2004-09-08 Benjamin Kosnik * config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports. diff --git a/libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h b/libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h index 95fe12c9d8f..06c16fa3993 100644 --- a/libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h +++ b/libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h @@ -48,6 +48,8 @@ namespace __cxxabiv1 // __cxa_vec_ctor should return a pointer to the array. typedef void * __cxa_vec_ctor_return_type; #define _GLIBCXX_CXA_VEC_CTOR_RETURN(x) return x + // Constructors and destructors return the "this" pointer. + typedef void * __cxa_cdtor_return_type; #else // __ARM_EABI__ @@ -59,6 +61,8 @@ namespace __cxxabiv1 // __cxa_vec_ctor has void return type. typedef void __cxa_vec_ctor_return_type; #define _GLIBCXX_CXA_VEC_CTOR_RETURN(x) return + // Constructors and destructors do not return a value. + typedef void __cxa_cdtor_return_type; #endif //!__ARM_EABI__ diff --git a/libstdc++-v3/config/cpu/generic/cxxabi_tweaks.h b/libstdc++-v3/config/cpu/generic/cxxabi_tweaks.h index 48a0dec568b..5cacb3c5531 100644 --- a/libstdc++-v3/config/cpu/generic/cxxabi_tweaks.h +++ b/libstdc++-v3/config/cpu/generic/cxxabi_tweaks.h @@ -43,6 +43,8 @@ namespace __cxxabiv1 // __cxa_vec_ctor has void return type. typedef void __cxa_vec_ctor_return_type; #define _GLIBCXX_CXA_VEC_CTOR_RETURN(x) return + // Constructors and destructors do not return a value. + typedef void __cxa_cdtor_return_type; #ifdef __cplusplus } // namespace __cxxabiv1 diff --git a/libstdc++-v3/config/io/basic_file_stdio.cc b/libstdc++-v3/config/io/basic_file_stdio.cc index 680220bc4c5..0a4e154ebbc 100644 --- a/libstdc++-v3/config/io/basic_file_stdio.cc +++ b/libstdc++-v3/config/io/basic_file_stdio.cc @@ -259,23 +259,21 @@ namespace std __basic_file* __ret = static_cast<__basic_file*>(NULL); if (this->is_open()) { - // In general, no need to zero errno in advance if checking - // for error first. However, C89/C99 (at variance with IEEE - // 1003.1, f.i.) do not mandate that fclose/fflush must set - // errno upon error. - int __err; - errno = 0; + int __err = 0; if (_M_cfile_created) - do - __err = fclose(_M_cfile); - while (__err && errno == EINTR); - else - do - __err = this->sync(); - while (__err && errno == EINTR); + { + // In general, no need to zero errno in advance if checking + // for error first. However, C89/C99 (at variance with IEEE + // 1003.1, f.i.) do not mandate that fclose must set errno + // upon error. + errno = 0; + do + __err = fclose(_M_cfile); + while (__err && errno == EINTR); + } + _M_cfile = 0; if (!__err) __ret = this; - _M_cfile = 0; } return __ret; } diff --git a/libstdc++-v3/include/bits/c++config b/libstdc++-v3/include/bits/c++config index b0b55ee8492..20e0d194dad 100644 --- a/libstdc++-v3/include/bits/c++config +++ b/libstdc++-v3/include/bits/c++config @@ -35,7 +35,7 @@ #include // The current version of the C++ library in compressed ISO date format. -#define __GLIBCXX__ 20040910 +#define __GLIBCXX__ 20040918 // Allow use of "export template." This is currently not a feature // that g++ supports. diff --git a/libstdc++-v3/include/bits/cpp_type_traits.h b/libstdc++-v3/include/bits/cpp_type_traits.h index feb7b1c93e8..81a1dce7b5b 100644 --- a/libstdc++-v3/include/bits/cpp_type_traits.h +++ b/libstdc++-v3/include/bits/cpp_type_traits.h @@ -378,10 +378,10 @@ namespace std }; // - // A trivially copyable type is an arithmetic type or a pointer type + // A scalar type is an arithmetic type or a pointer type // template - struct __is_trivially_copyable + struct __is_scalar { enum { diff --git a/libstdc++-v3/include/bits/fstream.tcc b/libstdc++-v3/include/bits/fstream.tcc index 6c2e1822adb..25a4d48cb72 100644 --- a/libstdc++-v3/include/bits/fstream.tcc +++ b/libstdc++-v3/include/bits/fstream.tcc @@ -396,8 +396,7 @@ namespace std // Convert pending sequence to external representation, // and output. if (_M_convert_to_external(this->pbase(), - this->pptr() - this->pbase()) - && (!__testeof || !_M_file.sync())) + this->pptr() - this->pbase())) { _M_set_buffer(0); __ret = traits_type::not_eof(__c); @@ -497,6 +496,74 @@ namespace std template streamsize basic_filebuf<_CharT, _Traits>:: + xsgetn(_CharT* __s, streamsize __n) + { + // Clear out pback buffer before going on to the real deal... + streamsize __ret = 0; + if (this->_M_pback_init) + { + if (__n > 0 && this->gptr() == this->eback()) + { + *__s++ = *this->gptr(); + this->gbump(1); + __ret = 1; + --__n; + } + _M_destroy_pback(); + } + + // Optimization in the always_noconv() case, to be generalized in the + // future: when __n > __buflen we read directly instead of using the + // buffer repeatedly. + const bool __testin = this->_M_mode & ios_base::in; + const streamsize __buflen = this->_M_buf_size > 1 ? this->_M_buf_size - 1 + : 1; + if (__n > __buflen && __check_facet(_M_codecvt).always_noconv() + && __testin && !_M_writing) + { + // First, copy the chars already present in the buffer. + const streamsize __avail = this->egptr() - this->gptr(); + if (__avail != 0) + { + if (__avail == 1) + *__s = *this->gptr(); + else + traits_type::copy(__s, this->gptr(), __avail); + __s += __avail; + this->gbump(__avail); + __ret += __avail; + __n -= __avail; + } + + const streamsize __len = _M_file.xsgetn(reinterpret_cast(__s), + __n); + if (__len == -1) + __throw_ios_failure(__N("basic_filebuf::xsgetn " + "error reading the file")); + __ret += __len; + if (__len == __n) + { + _M_set_buffer(0); + _M_reading = true; + } + else if (__len == 0) + { + // If end of file is reached, set 'uncommitted' + // mode, thus allowing an immediate write without + // an intervening seek. + _M_set_buffer(-1); + _M_reading = false; + } + } + else + __ret += __streambuf_type::xsgetn(__s, __n); + + return __ret; + } + + template + streamsize + basic_filebuf<_CharT, _Traits>:: xsputn(const _CharT* __s, streamsize __n) { // Optimization in the always_noconv() case, to be generalized in the @@ -504,8 +571,8 @@ namespace std // using the buffer. streamsize __ret = 0; const bool __testout = this->_M_mode & ios_base::out; - if (__testout && !_M_reading - && __check_facet(_M_codecvt).always_noconv()) + if (__check_facet(_M_codecvt).always_noconv() + && __testout && !_M_reading) { // Measurement would reveal the best choice. const streamsize __chunk = 1ul << 10; @@ -724,7 +791,6 @@ namespace std { // Make sure that the internal buffer resyncs its idea of // the file position with the external file. - // NB: _M_file.sync() will be called within. int __ret = 0; if (this->pbase() < this->pptr()) { diff --git a/libstdc++-v3/include/bits/stl_algo.h b/libstdc++-v3/include/bits/stl_algo.h index 6fed5786ebd..a5118c57208 100644 --- a/libstdc++-v3/include/bits/stl_algo.h +++ b/libstdc++-v3/include/bits/stl_algo.h @@ -1103,8 +1103,6 @@ namespace std // concept requirements __glibcxx_function_requires(_Mutable_ForwardIteratorConcept< _ForwardIterator>) - __glibcxx_function_requires(_ConvertibleConcept<_Tp, - typename iterator_traits<_ForwardIterator>::value_type>) __glibcxx_function_requires(_EqualOpConcept< typename iterator_traits<_ForwardIterator>::value_type, _Tp>) __glibcxx_requires_valid_range(__first, __last); diff --git a/libstdc++-v3/include/bits/stl_algobase.h b/libstdc++-v3/include/bits/stl_algobase.h index b0502da7964..f3f20e66802 100644 --- a/libstdc++-v3/include/bits/stl_algobase.h +++ b/libstdc++-v3/include/bits/stl_algobase.h @@ -274,7 +274,7 @@ namespace std typedef typename iterator_traits<_II>::value_type _ValueTypeI; typedef typename iterator_traits<_OI>::value_type _ValueTypeO; typedef typename iterator_traits<_II>::iterator_category _Category; - const bool __simple = (__is_trivially_copyable<_ValueTypeI>::_M_type + const bool __simple = (__is_scalar<_ValueTypeI>::_M_type && __is_pointer<_II>::_M_type && __is_pointer<_OI>::_M_type && __are_same<_ValueTypeI, _ValueTypeO>::_M_type); @@ -399,7 +399,7 @@ namespace std typedef typename iterator_traits<_BI1>::value_type _ValueType1; typedef typename iterator_traits<_BI2>::value_type _ValueType2; typedef typename iterator_traits<_BI1>::iterator_category _Category; - const bool __simple = (__is_trivially_copyable<_ValueType1>::_M_type + const bool __simple = (__is_scalar<_ValueType1>::_M_type && __is_pointer<_BI1>::_M_type && __is_pointer<_BI2>::_M_type && __are_same<_ValueType1, _ValueType2>::_M_type); @@ -529,8 +529,8 @@ namespace std _ForwardIterator>) __glibcxx_requires_valid_range(__first, __last); - const bool __trivial = __is_trivially_copyable<_Tp>::_M_type; - std::__fill<__trivial>::fill(__first, __last, __value); + const bool __scalar = __is_scalar<_Tp>::_M_type; + std::__fill<__scalar>::fill(__first, __last, __value); } // Specialization: for one-byte types we can use memset. @@ -603,8 +603,8 @@ namespace std // concept requirements __glibcxx_function_requires(_OutputIteratorConcept<_OutputIterator, _Tp>) - const bool __trivial = __is_trivially_copyable<_Tp>::_M_type; - return std::__fill_n<__trivial>::fill_n(__first, __n, __value); + const bool __scalar = __is_scalar<_Tp>::_M_type; + return std::__fill_n<__scalar>::fill_n(__first, __n, __value); } template diff --git a/libstdc++-v3/include/std/std_fstream.h b/libstdc++-v3/include/std/std_fstream.h index 3bb26382cbe..f962a2b202a 100644 --- a/libstdc++-v3/include/std/std_fstream.h +++ b/libstdc++-v3/include/std/std_fstream.h @@ -419,24 +419,7 @@ namespace std // [documentation is inherited] virtual streamsize - xsgetn(char_type* __s, streamsize __n) - { - // Clear out pback buffer before going on to the real deal... - streamsize __ret = 0; - if (this->_M_pback_init) - { - if (__n && this->gptr() == this->eback()) - { - *__s++ = *this->gptr(); - this->gbump(1); - __ret = 1; - } - _M_destroy_pback(); - } - if (__ret < __n) - __ret += __streambuf_type::xsgetn(__s, __n - __ret); - return __ret; - } + xsgetn(char_type* __s, streamsize __n); // [documentation is inherited] virtual streamsize diff --git a/libstdc++-v3/libsupc++/cxxabi.h b/libstdc++-v3/libsupc++/cxxabi.h index dfed54e69ee..39a41c61aee 100644 --- a/libstdc++-v3/libsupc++/cxxabi.h +++ b/libstdc++-v3/libsupc++/cxxabi.h @@ -50,6 +50,8 @@ #ifdef __cplusplus namespace __cxxabiv1 { + typedef __cxa_cdtor_return_type (*__cxa_cdtor_type)(void *); + extern "C" { #endif @@ -57,54 +59,55 @@ namespace __cxxabiv1 // Allocate array. void* __cxa_vec_new(size_t __element_count, size_t __element_size, - size_t __padding_size, void (*__constructor) (void*), - void (*__destructor) (void*)); + size_t __padding_size, __cxa_cdtor_type constructor, + __cxa_cdtor_type destructor); void* __cxa_vec_new2(size_t __element_count, size_t __element_size, - size_t __padding_size, void (*__constructor) (void*), - void (*__destructor) (void*), void *(*__alloc) (size_t), + size_t __padding_size, __cxa_cdtor_type constructor, + __cxa_cdtor_type destructor, void *(*__alloc) (size_t), void (*__dealloc) (void*)); void* __cxa_vec_new3(size_t __element_count, size_t __element_size, - size_t __padding_size, void (*__constructor) (void*), - void (*__destructor) (void*), void *(*__alloc) (size_t), + size_t __padding_size, __cxa_cdtor_type constructor, + __cxa_cdtor_type destructor, void *(*__alloc) (size_t), void (*__dealloc) (void*, size_t)); // Construct array. __cxa_vec_ctor_return_type __cxa_vec_ctor(void* __array_address, size_t __element_count, - size_t __element_size, void (*__constructor) (void*), - void (*__destructor) (void*)); + size_t __element_size, __cxa_cdtor_type constructor, + __cxa_cdtor_type destructor); __cxa_vec_ctor_return_type __cxa_vec_cctor(void* dest_array, void* src_array, size_t element_count, - size_t element_size, void (*constructor) (void*, void*), - void (*destructor) (void*)); + size_t element_size, + __cxa_cdtor_return_type (*constructor) (void*, void*), + __cxa_cdtor_type destructor); // Destruct array. void __cxa_vec_dtor(void* __array_address, size_t __element_count, - size_t __element_size, void (*__destructor) (void*)); + size_t __element_size, __cxa_cdtor_type destructor); void __cxa_vec_cleanup(void* __array_address, size_t __element_count, - size_t __element_size, void (*__destructor) (void*)); + size_t __element_size, __cxa_cdtor_type destructor); // Destruct and release array. void __cxa_vec_delete(void* __array_address, size_t __element_size, - size_t __padding_size, void (*__destructor) (void*)); + size_t __padding_size, __cxa_cdtor_type destructor); void __cxa_vec_delete2(void* __array_address, size_t __element_size, - size_t __padding_size, void (*__destructor) (void*), + size_t __padding_size, __cxa_cdtor_type destructor, void (*__dealloc) (void*)); void __cxa_vec_delete3(void* __array_address, size_t __element_size, - size_t __padding_size, void (*__destructor) (void*), + size_t __padding_size, __cxa_cdtor_type destructor, void (*__dealloc) (void*, size_t)); int diff --git a/libstdc++-v3/libsupc++/vec.cc b/libstdc++-v3/libsupc++/vec.cc index 2708c19aca9..7e93d1cfea0 100644 --- a/libstdc++-v3/libsupc++/vec.cc +++ b/libstdc++-v3/libsupc++/vec.cc @@ -70,8 +70,8 @@ namespace __cxxabiv1 __cxa_vec_new(std::size_t element_count, std::size_t element_size, std::size_t padding_size, - void (*constructor) (void *), - void (*destructor) (void *)) + __cxa_cdtor_type constructor, + __cxa_cdtor_type destructor) { return __cxa_vec_new2(element_count, element_size, padding_size, constructor, destructor, @@ -82,8 +82,8 @@ namespace __cxxabiv1 __cxa_vec_new2(std::size_t element_count, std::size_t element_size, std::size_t padding_size, - void (*constructor) (void *), - void (*destructor) (void *), + __cxa_cdtor_type constructor, + __cxa_cdtor_type destructor, void *(*alloc) (std::size_t), void (*dealloc) (void *)) { @@ -120,8 +120,8 @@ namespace __cxxabiv1 __cxa_vec_new3(std::size_t element_count, std::size_t element_size, std::size_t padding_size, - void (*constructor) (void *), - void (*destructor) (void *), + __cxa_cdtor_type constructor, + __cxa_cdtor_type destructor, void *(*alloc) (std::size_t), void (*dealloc) (void *, std::size_t)) { @@ -159,8 +159,8 @@ namespace __cxxabiv1 __cxa_vec_ctor(void *array_address, std::size_t element_count, std::size_t element_size, - void (*constructor) (void *), - void (*destructor) (void *)) + __cxa_cdtor_type constructor, + __cxa_cdtor_type destructor) { std::size_t ix = 0; char *ptr = static_cast(array_address); @@ -188,8 +188,8 @@ namespace __cxxabiv1 void *src_array, std::size_t element_count, std::size_t element_size, - void (*constructor) (void *, void *), - void (*destructor) (void *)) + __cxa_cdtor_return_type (*constructor) (void *, void *), + __cxa_cdtor_type destructor) { std::size_t ix = 0; char *dest_ptr = static_cast(dest_array); @@ -218,7 +218,7 @@ namespace __cxxabiv1 __cxa_vec_dtor(void *array_address, std::size_t element_count, std::size_t element_size, - void (*destructor) (void *)) + __cxa_cdtor_type destructor) { if (destructor) { @@ -253,7 +253,7 @@ namespace __cxxabiv1 __cxa_vec_cleanup(void *array_address, std::size_t element_count, std::size_t element_size, - void (*destructor) (void *)) + __cxa_cdtor_type destructor) { if (destructor) { @@ -282,7 +282,7 @@ namespace __cxxabiv1 __cxa_vec_delete(void *array_address, std::size_t element_size, std::size_t padding_size, - void (*destructor) (void *)) + __cxa_cdtor_type destructor) { __cxa_vec_delete2(array_address, element_size, padding_size, destructor, @@ -293,7 +293,7 @@ namespace __cxxabiv1 __cxa_vec_delete2(void *array_address, std::size_t element_size, std::size_t padding_size, - void (*destructor) (void *), + __cxa_cdtor_type destructor, void (*dealloc) (void *)) { if (!array_address) @@ -326,7 +326,7 @@ namespace __cxxabiv1 __cxa_vec_delete3(void *array_address, std::size_t element_size, std::size_t padding_size, - void (*destructor) (void *), + __cxa_cdtor_type destructor, void (*dealloc) (void *, std::size_t)) { if (!array_address) @@ -358,3 +358,155 @@ namespace __cxxabiv1 } } // namespace __cxxabiv1 +#if defined(__arm__) && defined(__ARM_EABI__) + +// The ARM C++ ABI requires that the library provide these additional +// helper functions. There are placed in this file, despite being +// architecture-specifier, so that the compiler can inline the __cxa +// functions into these functions as appropriate. + +namespace __aeabiv1 +{ + extern "C" void * + __aeabi_vec_ctor_nocookie_nodtor (void *array_address, + abi::__cxa_cdtor_type constructor, + std::size_t element_size, + std::size_t element_count) + { + return abi::__cxa_vec_ctor (array_address, element_count, element_size, + constructor, /*destructor=*/NULL); + } + + extern "C" void * + __aeabi_vec_ctor_cookie_nodtor (void *array_address, + abi::__cxa_cdtor_type constructor, + std::size_t element_size, + std::size_t element_count) + { + if (array_address == NULL) + return NULL; + + array_address = reinterpret_cast(array_address) + 2; + reinterpret_cast(array_address)[-2] = element_size; + reinterpret_cast(array_address)[-1] = element_count; + return abi::__cxa_vec_ctor (array_address, + element_count, element_size, + constructor, /*destructor=*/NULL); + } + + extern "C" void * + __aeabi_vec_cctor_nocookie_nodtor (void *dest_array, + void *src_array, + std::size_t element_size, + std::size_t element_count, + void *(*constructor) (void *, void *)) + { + return abi::__cxa_vec_cctor (dest_array, src_array, + element_count, element_size, + constructor, NULL); + } + + extern "C" void * + __aeabi_vec_new_cookie_noctor (std::size_t element_size, + std::size_t element_count) + { + return abi::__cxa_vec_new(element_count, element_size, + 2 * sizeof (std::size_t), + /*constructor=*/NULL, /*destructor=*/NULL); + } + + extern "C" void * + __aeabi_vec_new_nocookie (std::size_t element_size, + std::size_t element_count, + abi::__cxa_cdtor_type constructor) + { + return abi::__cxa_vec_new (element_count, element_size, 0, constructor, + NULL); + } + + extern "C" void * + __aeabi_vec_new_cookie_nodtor (std::size_t element_size, + std::size_t element_count, + abi::__cxa_cdtor_type constructor) + { + return abi::__cxa_vec_new(element_count, element_size, + 2 * sizeof (std::size_t), + constructor, NULL); + } + + extern "C" void * + __aeabi_vec_new_cookie(std::size_t element_size, + std::size_t element_count, + abi::__cxa_cdtor_type constructor, + abi::__cxa_cdtor_type destructor) + { + return abi::__cxa_vec_new (element_count, element_size, + 2 * sizeof (std::size_t), + constructor, destructor); + } + + + extern "C" void * + __aeabi_vec_dtor (void *array_address, + abi::__cxa_cdtor_type destructor, + std::size_t element_size, + std::size_t element_count) + { + abi::__cxa_vec_dtor (array_address, element_count, element_size, + destructor); + return reinterpret_cast (array_address) - 2; + } + + extern "C" void * + __aeabi_vec_dtor_cookie (void *array_address, + abi::__cxa_cdtor_type destructor) + { + abi::__cxa_vec_dtor (array_address, + reinterpret_cast(array_address)[-1], + reinterpret_cast(array_address)[-2], + destructor); + return reinterpret_cast (array_address) - 2; + } + + + extern "C" void + __aeabi_vec_delete (void *array_address, + abi::__cxa_cdtor_type destructor) + { + abi::__cxa_vec_delete (array_address, + reinterpret_cast(array_address)[-2], + 2 * sizeof (std::size_t), + destructor); + } + + extern "C" void + __aeabi_vec_delete3 (void *array_address, + abi::__cxa_cdtor_type destructor, + void (*dealloc) (void *, std::size_t)) + { + abi::__cxa_vec_delete3 (array_address, + reinterpret_cast(array_address)[-2], + 2 * sizeof (std::size_t), + destructor, dealloc); + } + + extern "C" void + __aeabi_vec_delete3_nodtor (void *array_address, + void (*dealloc) (void *, std::size_t)) + { + abi::__cxa_vec_delete3 (array_address, + reinterpret_cast(array_address)[-2], + 2 * sizeof (std::size_t), + /*destructor=*/NULL, dealloc); + } + + extern "C" int + __aeabi_atexit (void *object, + void (*destructor) (void *), + void *dso_handle) + { + return abi::__cxa_atexit(destructor, object, dso_handle); + } +} // namespace __aeabiv1 + +#endif // defined(__arm__) && defined(__ARM_EABI__) diff --git a/libstdc++-v3/testsuite/ext/mt_allocator/tune-1.cc b/libstdc++-v3/testsuite/ext/mt_allocator/tune-1.cc index d5769fce026..fa4dd45b41d 100644 --- a/libstdc++-v3/testsuite/ext/mt_allocator/tune-1.cc +++ b/libstdc++-v3/testsuite/ext/mt_allocator/tune-1.cc @@ -18,20 +18,17 @@ // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, // USA. -#include +#include #include #include -struct pod -{ - int i; -}; - // Tune characteristics. // __common_pool_policy void test01() { - typedef pod value_type; + bool test __attribute__((unused)) = true; + + typedef __gnu_test::pod_int value_type; #ifdef __GTHREADS typedef __gnu_cxx::__common_pool_policy policy_type; #else @@ -46,17 +43,17 @@ void test01() allocator_type a; tune_type t1 = a._M_get_options(); - assert(t1._M_align == t_default._M_align); + VERIFY( t1._M_align == t_default._M_align ); a._M_set_options(t_opt); - tune_type t2 = a._M_get_options(); - assert(t1._M_align != t2._M_align); + tune_type t2 = a._M_get_options(); + VERIFY( t1._M_align != t2._M_align ); allocator_type::pointer p1 = a.allocate(128); allocator_type::pointer p2 = a.allocate(5128); a._M_set_options(t_single); t1 = a._M_get_options(); - assert(t1._M_max_threads != t_single._M_max_threads); - assert(t1._M_max_threads == t_opt._M_max_threads); + VERIFY( t1._M_max_threads != t_single._M_max_threads ); + VERIFY( t1._M_max_threads == t_opt._M_max_threads ); a.deallocate(p1, 128); a.deallocate(p2, 5128); diff --git a/libstdc++-v3/testsuite/ext/mt_allocator/tune-2.cc b/libstdc++-v3/testsuite/ext/mt_allocator/tune-2.cc index 72860694205..60e9b38ebff 100644 --- a/libstdc++-v3/testsuite/ext/mt_allocator/tune-2.cc +++ b/libstdc++-v3/testsuite/ext/mt_allocator/tune-2.cc @@ -18,20 +18,17 @@ // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, // USA. -#include +#include #include #include -struct pod -{ - int i; -}; - // Tune characteristics. // __per_type_pool_policy void test02() { - typedef pod value_type; + bool test __attribute__((unused)) = true; + + typedef __gnu_test::pod_int value_type; #ifdef __GTHREADS typedef __gnu_cxx::__per_type_pool_policy policy_type; #else @@ -46,23 +43,22 @@ void test02() allocator_type a; tune_type t1 = a._M_get_options(); - assert(t1._M_align == t_default._M_align); + VERIFY( t1._M_align == t_default._M_align ); a._M_set_options(t_opt); - tune_type t2 = a._M_get_options(); - assert(t1._M_align != t2._M_align); + tune_type t2 = a._M_get_options(); + VERIFY( t1._M_align != t2._M_align ); allocator_type::pointer p1 = a.allocate(128); allocator_type::pointer p2 = a.allocate(5128); a._M_set_options(t_single); t1 = a._M_get_options(); - assert(t1._M_max_threads != t_single._M_max_threads); - assert(t1._M_max_threads == t_opt._M_max_threads); + VERIFY( t1._M_max_threads != t_single._M_max_threads ); + VERIFY( t1._M_max_threads == t_opt._M_max_threads ); a.deallocate(p1, 128); a.deallocate(p2, 5128); } - int main() { test02(); diff --git a/libstdc++-v3/testsuite/ext/mt_allocator/tune-3.cc b/libstdc++-v3/testsuite/ext/mt_allocator/tune-3.cc index aeb732f1156..e1d2105d3af 100644 --- a/libstdc++-v3/testsuite/ext/mt_allocator/tune-3.cc +++ b/libstdc++-v3/testsuite/ext/mt_allocator/tune-3.cc @@ -18,15 +18,10 @@ // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, // USA. -#include +#include #include #include -struct pod -{ - int i; -}; - // Tune characteristics, two of same type template struct test_policy @@ -43,6 +38,8 @@ struct test_policy<__gnu_cxx::__common_pool_policy<_Thread> > template void test03() { + bool test __attribute__((unused)) = true; + typedef __gnu_cxx::__pool_base::_Tune tune_type; typedef _Tp value_type; typedef _Cp policy_type; @@ -58,29 +55,28 @@ void test03() tune_type t2; if (test_policy::per_type()) { - assert(t1._M_align == t_default._M_align); + VERIFY( t1._M_align == t_default._M_align ); a._M_set_options(t_opt); - t2 = a._M_get_options(); - assert(t1._M_align != t2._M_align); + t2 = a._M_get_options(); + VERIFY( t1._M_align != t2._M_align ); } else t2 = t1; - // Lock tune settings. typename allocator_type::pointer p1 = a.allocate(128); allocator_type a2; tune_type t3 = a2._M_get_options(); tune_type t4; - assert(t3._M_max_threads == t2._M_max_threads); + VERIFY( t3._M_max_threads == t2._M_max_threads ); typename allocator_type::pointer p2 = a2.allocate(5128); a2._M_set_options(t_single); - t4 = a2._M_get_options(); - assert(t4._M_max_threads != t_single._M_max_threads); - assert(t4._M_max_threads == t3._M_max_threads); + t4 = a2._M_get_options(); + VERIFY( t4._M_max_threads != t_single._M_max_threads ); + VERIFY( t4._M_max_threads == t3._M_max_threads ); a.deallocate(p1, 128); a2.deallocate(p2, 5128); diff --git a/libstdc++-v3/testsuite/ext/mt_allocator/tune-4.cc b/libstdc++-v3/testsuite/ext/mt_allocator/tune-4.cc index b85de24e561..da85295a5de 100644 --- a/libstdc++-v3/testsuite/ext/mt_allocator/tune-4.cc +++ b/libstdc++-v3/testsuite/ext/mt_allocator/tune-4.cc @@ -18,15 +18,10 @@ // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, // USA. -#include +#include #include #include -struct pod -{ - int i; -}; - // Tune characteristics, two of same type template struct test_policy @@ -49,6 +44,8 @@ struct pod2 template void test04() { + bool test __attribute__((unused)) = true; + typedef __gnu_cxx::__pool_base::_Tune tune_type; typedef _Tp value_type; typedef _Cp policy_type; @@ -63,10 +60,10 @@ void test04() tune_type t2; if (test_policy::per_type()) { - assert(t1._M_align == t_default._M_align); + VERIFY( t1._M_align == t_default._M_align ); a._M_set_options(t_opt); t2 = a._M_get_options(); - assert(t1._M_align != t2._M_align); + VERIFY( t1._M_align != t2._M_align ); } else t2 = t1; @@ -85,21 +82,21 @@ void test04() // Both policy_type and rebind_type::policy_type have same characteristics. if (test_policy::per_type()) { - assert(t3._M_align == t_default._M_align); + VERIFY( t3._M_align == t_default._M_align ); a2._M_set_options(t_opt); - t4 = a2._M_get_options(); - assert(t3._M_align != t4._M_align); + t4 = a2._M_get_options(); + VERIFY( t3._M_align != t4._M_align ); t3 = t4; } else - assert(t3._M_max_threads == t2._M_max_threads); + VERIFY( t3._M_max_threads == t2._M_max_threads ); typename rebind_type::pointer p2 = a2.allocate(5128); a2._M_set_options(t_single); - t4 = a2._M_get_options(); - assert(t4._M_max_threads != t_single._M_max_threads); - assert(t4._M_max_threads == t3._M_max_threads); + t4 = a2._M_get_options(); + VERIFY( t4._M_max_threads != t_single._M_max_threads ); + VERIFY( t4._M_max_threads == t3._M_max_threads ); a.deallocate(p1, 128); a2.deallocate(p2, 5128); diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/lib/libstdc++.exp index 4e0d86df74a..0b3b82b887e 100644 --- a/libstdc++-v3/testsuite/lib/libstdc++.exp +++ b/libstdc++-v3/testsuite/lib/libstdc++.exp @@ -50,6 +50,7 @@ load_lib libgloss.exp load_gcc_lib target-supports.exp load_lib prune.exp load_lib dg-options.exp +load_gcc_lib wrapper.exp # Useful for debugging. Pass the name of a variable and the verbosity # threshold (number of -v's on the command line). @@ -208,17 +209,7 @@ proc libstdc++_init { testfile } { } } - if { [target_info needs_status_wrapper]!=""} { - file delete ${objdir}/testglue.o; - set gluefile ${objdir}/testglue.o; - set result [build_wrapper $gluefile]; - if { $result != "" } { - set gluefile [lindex $result 0]; - set wrap_flags [lindex $result 1]; - } else { - unset gluefile - } - } + libstdc++_maybe_build_wrapper "${objdir}/testglue.o" } # Callback from system dg-test. diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog index 8cf170e841a..a71cce31996 100644 --- a/maintainer-scripts/ChangeLog +++ b/maintainer-scripts/ChangeLog @@ -1,3 +1,7 @@ +2004-09-11 Gerald Pfeifer + + * crontab: Rename GCC 3.5 snapshots to GCC 4.0 snapshots. + 2004-08-14 Kelley Cook * gcc_release (build_sources): Add comment header to generated diff --git a/maintainer-scripts/crontab b/maintainer-scripts/crontab index 566ff9dd292..6c9650c642c 100644 --- a/maintainer-scripts/crontab +++ b/maintainer-scripts/crontab @@ -3,4 +3,4 @@ 55 0 * * * sh /home/gccadmin/scripts/update_web_docs_libstdcxx 32 22 * * 3 sh /home/gccadmin/scripts/gcc_release -s 3.3:gcc-3_3-branch -l -d /sourceware/snapshot-tmp/gcc all 32 22 * * 5 sh /home/gccadmin/scripts/gcc_release -s 3.4:gcc-3_4-branch -l -d /sourceware/snapshot-tmp/gcc all -43 17 * * 7 sh /home/gccadmin/scripts/gcc_release -s 3.5:HEAD -l -d /sourceware/snapshot-tmp/gcc all +43 17 * * 7 sh /home/gccadmin/scripts/gcc_release -s 4.0:HEAD -l -d /sourceware/snapshot-tmp/gcc all -- 2.11.4.GIT