diff -Nru ChangeLog ChangeLog --- ChangeLog 2010-10-14 22:28:01.000000000 +0200 +++ ChangeLog 2012-12-31 17:06:00.000000000 +0100 @@ -1,3 +1,27 @@ +2008-05-19 Release Manager + + * GCC 4.2.4 released. + +2008-03-13 David Edelsohn + + * ltcf-c.sh: Add AIX 6 support. + * ltcf-cxx.sh: Add AIX 6 support. + * ltcf-gcj.sh: Add AIX 6 support. + * ltconfig: Add AIX 6 support. + +2008-02-01 Release Manager + + * GCC 4.2.3 released. + +2007-10-07 Release Manager + + * GCC 4.2.2 released. + +2007-09-15 Alan Modra + + * configure.in: Correct makeinfo version check. + * configure: Regenerate. + 2007-07-19 Release Manager * GCC 4.2.1 released. @@ -2370,7 +2394,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 -Nru INSTALL/binaries.html INSTALL/binaries.html --- INSTALL/binaries.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/binaries.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,120 @@ + + +Installing GCC: Binaries + + + + + + + + + + +

Installing GCC: Binaries

+ +We are often asked about pre-compiled versions of GCC. While we cannot +provide these for all platforms, below you'll find links to binaries for +various platforms where creating them by yourself is not easy due to various +reasons. + +

Please note that we did not create these binaries, nor do we +support them. If you have any problems installing them, please +contact their makers. + +

+ +

In addition to those specific offerings, you can get a binary +distribution CD-ROM from the +Free Software Foundation. +It contains binaries for a number of platforms, and +includes not only GCC, but other stuff as well. The current CD does +not contain the latest version of GCC, but it should allow +bootstrapping the compiler. An updated version of that disk is in the +works. + +


+

Return to the GCC Installation page + + + + + + + + diff -Nru INSTALL/build.html INSTALL/build.html --- INSTALL/build.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/build.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,293 @@ + + +Installing GCC: Building + + + + + + + + + + +

Installing GCC: Building

+ +Now that GCC is configured, you are ready to build the compiler and +runtime libraries. + +

Some commands executed when making the compiler may fail (return a +nonzero status) and be ignored by make. These failures, which +are often due to files that were not found, are expected, and can safely +be ignored. + +

It is normal to have compiler warnings when compiling certain files. +Unless you are a GCC developer, you can generally ignore these warnings +unless they cause compilation to fail. Developers should attempt to fix +any warnings encountered, however they can temporarily continue past +warnings-as-errors by specifying the configure flag +--disable-werror. + +

On certain old systems, defining certain environment variables such as +CC can interfere with the functioning of make. + +

If you encounter seemingly strange errors when trying to build the +compiler in a directory other than the source directory, it could be +because you have previously configured the compiler in the source +directory. Make sure you have done all the necessary preparations. + +

If you build GCC on a BSD system using a directory stored in an old System +V file system, problems may occur in running fixincludes if the +System V file system doesn't support symbolic links. These problems +result in a failure to fix the declaration of size_t in +sys/types.h. If you find that size_t is a signed type and +that type mismatches occur, this could be the cause. + +

The solution is not to use such a directory for building GCC. + +

When building from SVN or snapshots, or if you modify parser sources, +you need the Bison parser generator installed. If you do not modify +parser sources, releases contain the Bison-generated files and you do +not need Bison installed to build them. + +

When building from SVN or snapshots, or if you modify Texinfo +documentation, you need version 4.4 or later of Texinfo installed if you +want Info documentation to be regenerated. Releases contain Info +documentation pre-built for the unmodified documentation in the release. + +

0.1 Building a native compiler

+ +

For a native build, the default configuration is to perform +a 3-stage bootstrap of the compiler when `make' is invoked. +This will build the entire GCC system and ensure that it compiles +itself correctly. It can be disabled with the --disable-bootstrap +parameter to `configure', but bootstrapping is suggested because +the compiler will be tested more completely and could also have +better performance. + +

The bootstrapping process will complete the following steps: + +

    +
  • Build tools necessary to build the compiler. + +
  • Perform a 3-stage bootstrap of the compiler. This includes building +three times the target tools for use by the compiler such as binutils +(bfd, binutils, gas, gprof, ld, and opcodes) if they have been +individually linked or moved into the top level GCC source tree before +configuring. + +
  • Perform a comparison test of the stage2 and stage3 compilers. + +
  • Build runtime libraries using the stage3 compiler from the previous step. + +
+ +

If you are short on disk space you might consider `make +bootstrap-lean' instead. The sequence of compilation is the +same described above, but object files from the stage1 and +stage2 of the 3-stage bootstrap of the compiler are deleted as +soon as they are no longer needed. + +

If you want to save additional space during the bootstrap and in +the final installation as well, you can build the compiler binaries +without debugging information as in the following example. This will save +roughly 40% of disk space both for the bootstrap and the final installation. +(Libraries will still contain debugging information.) + +

          make CFLAGS='-O' LIBCFLAGS='-g -O2' \
+            LIBCXXFLAGS='-g -O2 -fno-implicit-templates' bootstrap
+
+

If you wish to use non-default GCC flags when compiling the stage2 and +stage3 compilers, set BOOT_CFLAGS on the command line when doing +`make'. Non-default optimization flags are less well +tested here than the default of `-g -O2', but should still work. +In a few cases, you may find that you need to specify special flags such +as -msoft-float here to complete the bootstrap; or, if the +native compiler miscompiles the stage1 compiler, you may need to work +around this, by choosing BOOT_CFLAGS to avoid the parts of the +stage1 compiler that were miscompiled, or by using `make +bootstrap4' to increase the number of stages of bootstrap. + +

Note that using non-standard CFLAGS can cause bootstrap to fail +if these trigger a warning with the new compiler. For example using +`-O2 -g -mcpu=i686' on i686-pc-linux-gnu will cause bootstrap +failure as -mcpu= is deprecated in 3.4.0 and above. + +

If you used the flag --enable-languages=... to restrict +the compilers to be built, only those you've actually enabled will be +built. This will of course only build those runtime libraries, for +which the particular compiler has been built. Please note, +that re-defining LANGUAGES when calling `make' +does not work anymore! + +

If the comparison of stage2 and stage3 fails, this normally indicates +that the stage2 compiler has compiled GCC incorrectly, and is therefore +a potentially serious bug which you should investigate and report. (On +a few systems, meaningful comparison of object files is impossible; they +always appear “different”. If you encounter this problem, you will +need to disable comparison in the Makefile.) + +

If you do not want to bootstrap your compiler, you can configure with +--disable-bootstrap. In particular cases, you may want to +bootstrap your compiler even if the target system is not the same as +the one you are building on: for example, you could build a +powerpc-unknown-linux-gnu toolchain on a +powerpc64-unknown-linux-gnu host. In this case, pass +--enable-bootstrap to the configure script. + +

0.2 Building a cross compiler

+ +

When building a cross compiler, it is not generally possible to do a +3-stage bootstrap of the compiler. This makes for an interesting problem +as parts of GCC can only be built with GCC. + +

To build a cross compiler, we first recommend building and installing a +native compiler. You can then use the native GCC compiler to build the +cross compiler. The installed native compiler needs to be GCC version +2.95 or later. + +

Assuming you have already installed a native copy of GCC and configured +your cross compiler, issue the command make, which performs the +following steps: + +

    +
  • Build host tools necessary to build the compiler. + +
  • Build target tools for use by the compiler such as binutils (bfd, +binutils, gas, gprof, ld, and opcodes) +if they have been individually linked or moved into the top level GCC source +tree before configuring. + +
  • Build the compiler (single stage only). + +
  • Build runtime libraries using the compiler from the previous step. +
+ +

Note that if an error occurs in any step the make process will exit. + +

If you are not building GNU binutils in the same source tree as GCC, +you will need a cross-assembler and cross-linker installed before +configuring GCC. Put them in the directory +prefix/target/bin. Here is a table of the tools +you should put in this directory: + +

+
as
This should be the cross-assembler. + +
ld
This should be the cross-linker. + +
ar
This should be the cross-archiver: a program which can manipulate +archive files (linker libraries) in the target machine's format. + +
ranlib
This should be a program to construct a symbol table in an archive file. +
+ +

The installation of GCC will find these programs in that directory, +and copy or link them to the proper place to for the cross-compiler to +find them when run later. + +

The easiest way to provide these files is to build the Binutils package. +Configure it with the same --host and --target +options that you use for configuring GCC, then build and install +them. They install their executables automatically into the proper +directory. Alas, they do not support all the targets that GCC +supports. + +

If you are not building a C library in the same source tree as GCC, +you should also provide the target libraries and headers before +configuring GCC, specifying the directories with +--with-sysroot or --with-headers and +--with-libs. Many targets also require “start files” such +as crt0.o and +crtn.o which are linked into each executable. There may be several +alternatives for crt0.o, for use with profiling or other +compilation options. Check your target's definition of +STARTFILE_SPEC to find out what start files it uses. + +

0.3 Building in parallel

+ +

GNU Make 3.79 and above, which is necessary to build GCC, support +building in parallel. To activate this, you can use `make -j 2' +instead of `make'. You can also specify a bigger number, and +in most cases using a value greater than the number of processors in +your machine will result in fewer and shorter I/O latency hits, thus +improving overall throughput; this is especially true for slow drives +and network filesystems. + +

0.4 Building the Ada compiler

+ +

In order to build GNAT, the Ada compiler, you need a working GNAT +compiler (GNAT version 3.14 or later, or GCC version 3.1 or later). +This includes GNAT tools such as gnatmake and +gnatlink, since the Ada front end is written in Ada and +uses some GNAT-specific extensions. + +

In order to build a cross compiler, it is suggested to install +the new compiler as native first, and then use it to build the cross +compiler. + +

configure does not test whether the GNAT installation works +and has a sufficiently recent version; if too old a GNAT version is +installed, the build will fail unless --enable-languages is +used to disable building the Ada front end. + +

0.5 Building with profile feedback

+ +

It is possible to use profile feedback to optimize the compiler itself. This +should result in a faster compiler binary. Experiments done on x86 using gcc +3.3 showed approximately 7 percent speedup on compiling C programs. To +bootstrap the compiler with profile feedback, use make profiledbootstrap. + +

When `make profiledbootstrap' is run, it will first build a stage1 +compiler. This compiler is used to build a stageprofile compiler +instrumented to collect execution counts of instruction and branch +probabilities. Then runtime libraries are compiled with profile collected. +Finally a stagefeedback compiler is built using the information collected. + +

Unlike standard bootstrap, several additional restrictions apply. The +compiler used to build stage1 needs to support a 64-bit integral type. +It is recommended to only use GCC for this. Also parallel make is currently +not supported since collisions in profile collecting may occur. + +


+

Return to the GCC Installation page + + + + + + + + + + + diff -Nru INSTALL/configure.html INSTALL/configure.html --- INSTALL/configure.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/configure.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,919 @@ + + +Installing GCC: Configuration + + + + + + + + + + +

Installing GCC: Configuration

+ +Like most GNU software, GCC must be configured before it can be built. +This document describes the recommended configuration procedure +for both native and cross targets. + +

We use srcdir to refer to the toplevel source directory for +GCC; we use objdir to refer to the toplevel build/object directory. + +

If you obtained the sources via SVN, srcdir must refer to the top +gcc directory, the one where the MAINTAINERS can be found, +and not its gcc subdirectory, otherwise the build will fail. + +

If either srcdir or objdir is located on an automounted NFS +file system, the shell's built-in pwd command will return +temporary pathnames. Using these can lead to various sorts of build +problems. To avoid this issue, set the PWDCMD environment +variable to an automounter-aware pwd command, e.g., +pawd or `amq -w', during the configuration and build +phases. + +

First, we highly recommend that GCC be built into a +separate directory than the sources which does not reside +within the source tree. This is how we generally build GCC; building +where srcdir == objdir should still work, but doesn't +get extensive testing; building where objdir is a subdirectory +of srcdir is unsupported. + +

If you have previously built GCC in the same directory for a +different target machine, do `make distclean' to delete all files +that might be invalid. One of the files this deletes is Makefile; +if `make distclean' complains that Makefile does not exist +or issues a message like “don't know how to make distclean” it probably +means that the directory is already suitably clean. However, with the +recommended method of building in a separate objdir, you should +simply use a different objdir for each target. + +

Second, when configuring a native system, either cc or +gcc must be in your path or you must set CC in +your environment before running configure. Otherwise the configuration +scripts may fail. + +

To configure GCC: + +

        % mkdir objdir
+        % cd objdir
+        % srcdir/configure [options] [target]
+
+

Target specification

+ +
    +
  • GCC has code to correctly determine the correct value for target +for nearly all native systems. Therefore, we highly recommend you not +provide a configure target when configuring a native compiler. + +
  • target must be specified as --target=target +when configuring a cross compiler; examples of valid targets would be +m68k-coff, sh-elf, etc. + +
  • Specifying just target instead of --target=target +implies that the host defaults to target. +
+ +

Options specification

+ +

Use options to override several configure time options for +GCC. A list of supported options follows; `configure +--help' may list other options, but those not listed below may not +work and should not normally be used. + +

Note that each --enable option has a corresponding +--disable option and that each --with option has a +corresponding --without option. + +

+
--prefix=dirname
Specify the toplevel installation +directory. This is the recommended way to install the tools into a directory +other than the default. The toplevel installation directory defaults to +/usr/local. + +

We highly recommend against dirname being the same or a +subdirectory of objdir or vice versa. If specifying a directory +beneath a user's home directory tree, some shells will not expand +dirname correctly if it contains the `~' metacharacter; use +$HOME instead. + +

The following standard autoconf options are supported. Normally you +should not need to use these options. +

+
--exec-prefix=dirname
Specify the toplevel installation directory for architecture-dependent +files. The default is prefix. + +
--bindir=dirname
Specify the installation directory for the executables called by users +(such as gcc and g++). The default is +exec-prefix/bin. + +
--libdir=dirname
Specify the installation directory for object code libraries and +internal data files of GCC. The default is exec-prefix/lib. + +
--libexecdir=dirname
Specify the installation directory for internal executables of GCC. + The default is exec-prefix/libexec. + +
--with-slibdir=dirname
Specify the installation directory for the shared libgcc library. The +default is libdir. + +
--infodir=dirname
Specify the installation directory for documentation in info format. +The default is prefix/info. + +
--datadir=dirname
Specify the installation directory for some architecture-independent +data files referenced by GCC. The default is prefix/share. + +
--mandir=dirname
Specify the installation directory for manual pages. The default is +prefix/man. (Note that the manual pages are only extracts from +the full GCC manuals, which are provided in Texinfo format. The manpages +are derived by an automatic conversion process from parts of the full +manual.) + +
--with-gxx-include-dir=dirname
Specify +the installation directory for G++ header files. The default is +prefix/include/c++/version. + +
+ +
--program-prefix=prefix
GCC supports some transformations of the names of its programs when +installing them. This option prepends prefix to the names of +programs to install in bindir (see above). For example, specifying +--program-prefix=foo- would result in `gcc' +being installed as /usr/local/bin/foo-gcc. + +
--program-suffix=suffix
Appends suffix to the names of programs to install in bindir +(see above). For example, specifying --program-suffix=-3.1 +would result in `gcc' being installed as +/usr/local/bin/gcc-3.1. + +
--program-transform-name=pattern
Applies the `sed' script pattern to be applied to the names +of programs to install in bindir (see above). pattern has to +consist of one or more basic `sed' editing commands, separated by +semicolons. For example, if you want the `gcc' program name to be +transformed to the installed program /usr/local/bin/myowngcc and +the `g++' program name to be transformed to +/usr/local/bin/gspecial++ without changing other program names, +you could use the pattern +--program-transform-name='s/^gcc$/myowngcc/; s/^g++$/gspecial++/' +to achieve this effect. + +

All three options can be combined and used together, resulting in more +complex conversion patterns. As a basic rule, prefix (and +suffix) are prepended (appended) before further transformations +can happen with a special transformation script pattern. + +

As currently implemented, this option only takes effect for native +builds; cross compiler binaries' names are not transformed even when a +transformation is explicitly asked for by one of these options. + +

For native builds, some of the installed programs are also installed +with the target alias in front of their name, as in +`i686-pc-linux-gnu-gcc'. All of the above transformations happen +before the target alias is prepended to the name—so, specifying +--program-prefix=foo- and program-suffix=-3.1, the +resulting binary would be installed as +/usr/local/bin/i686-pc-linux-gnu-foo-gcc-3.1. + +

As a last shortcoming, none of the installed Ada programs are +transformed yet, which will be fixed in some time. + +

--with-local-prefix=dirname
Specify the +installation directory for local include files. The default is +/usr/local. Specify this option if you want the compiler to +search directory dirname/include for locally installed +header files instead of /usr/local/include. + +

You should specify --with-local-prefix only if your +site has a different convention (not /usr/local) for where to put +site-specific files. + +

The default value for --with-local-prefix is /usr/local +regardless of the value of --prefix. Specifying +--prefix has no effect on which directory GCC searches for +local header files. This may seem counterintuitive, but actually it is +logical. + +

The purpose of --prefix is to specify where to install +GCC. The local header files in /usr/local/include—if you put +any in that directory—are not part of GCC. They are part of other +programs—perhaps many others. (GCC installs its own header files in +another directory which is based on the --prefix value.) + +

Both the local-prefix include directory and the GCC-prefix include +directory are part of GCC's “system include” directories. Although these +two directories are not fixed, they need to be searched in the proper +order for the correct processing of the include_next directive. The +local-prefix include directory is searched before the GCC-prefix +include directory. Another characteristic of system include directories +is that pedantic warnings are turned off for headers in these directories. + +

Some autoconf macros add -I directory options to the +compiler command line, to ensure that directories containing installed +packages' headers are searched. When directory is one of GCC's +system include directories, GCC will ignore the option so that system +directories continue to be processed in the correct order. This +may result in a search order different from what was specified but the +directory will still be searched. + +

GCC automatically searches for ordinary libraries using +GCC_EXEC_PREFIX. Thus, when the same installation prefix is +used for both GCC and packages, GCC will automatically search for +both headers and libraries. This provides a configuration that is +easy to use. GCC behaves in a manner similar to that when it is +installed as a system compiler in /usr. + +

Sites that need to install multiple versions of GCC may not want to +use the above simple configuration. It is possible to use the +--program-prefix, --program-suffix and +--program-transform-name options to install multiple versions +into a single directory, but it may be simpler to use different prefixes +and the --with-local-prefix option to specify the location of the +site-specific files for each version. It will then be necessary for +users to specify explicitly the location of local site libraries +(e.g., with LIBRARY_PATH). + +

The same value can be used for both --with-local-prefix and +--prefix provided it is not /usr. This can be used +to avoid the default search of /usr/local/include. + +

Do not specify /usr as the --with-local-prefix! +The directory you use for --with-local-prefix must not +contain any of the system's standard header files. If it did contain +them, certain programs would be miscompiled (including GNU Emacs, on +certain targets), because this would override and nullify the header +file corrections made by the fixincludes script. + +

Indications are that people who use this option use it based on mistaken +ideas of what it is for. People use it as if it specified where to +install part of GCC. Perhaps they make this assumption because +installing GCC creates the directory. + +

--enable-shared[=package[,...]]
Build shared versions of libraries, if shared libraries are supported on +the target platform. Unlike GCC 2.95.x and earlier, shared libraries +are enabled by default on all platforms that support shared libraries. + +

If a list of packages is given as an argument, build shared libraries +only for the listed packages. For other packages, only static libraries +will be built. Package names currently recognized in the GCC tree are +`libgcc' (also known as `gcc'), `libstdc++' (not +`libstdc++-v3'), `libffi', `zlib', `boehm-gc', +`ada', `libada', `libjava' and `libobjc'. +Note `libiberty' does not support shared libraries at all. + +

Use --disable-shared to build only static libraries. Note that +--disable-shared does not accept a list of package names as +argument, only --enable-shared does. + +

--with-gnu-as
Specify that the compiler should assume that the +assembler it finds is the GNU assembler. However, this does not modify +the rules to find an assembler and will result in confusion if the +assembler found is not actually the GNU assembler. (Confusion may also +result if the compiler finds the GNU assembler but has not been +configured with --with-gnu-as.) If you have more than one +assembler installed on your system, you may want to use this option in +connection with --with-as=pathname or +--with-build-time-tools=pathname. + +

The following systems are the only ones where it makes a difference +whether you use the GNU assembler. On any other system, +--with-gnu-as has no effect. + +

    +
  • `hppa1.0-any-any' +
  • `hppa1.1-any-any' +
  • `i386-any-sysv' +
  • `m68k-bull-sysv' +
  • `m68k-hp-hpux' +
  • `m68000-hp-hpux' +
  • `m68000-att-sysv' +
  • `sparc-sun-solaris2.any' +
  • `sparc64-any-solaris2.any' +
+ +

On the systems listed above (except for the HP-PA, the SPARC, for ISC on +the 386, if you use the GNU assembler, you should also use the GNU linker +(and specify --with-gnu-ld). + +

--with-as=pathname
Specify that the compiler should use the assembler pointed to by +pathname, rather than the one found by the standard rules to find +an assembler, which are: +
    +
  • Unless GCC is being built with a cross compiler, check the +libexec/gcc/target/version directory. +libexec defaults to exec-prefix/libexec; +exec-prefix defaults to prefix, which +defaults to /usr/local unless overridden by the +--prefix=pathname switch described above. target +is the target system triple, such as `sparc-sun-solaris2.7', and +version denotes the GCC version, such as 3.0. + +
  • If the target system is the same that you are building on, check +operating system specific directories (e.g. /usr/ccs/bin on +Sun Solaris 2). + +
  • Check in the PATH for a tool whose name is prefixed by the +target system triple. + +
  • Check in the PATH for a tool whose name is not prefixed by the +target system triple, if the host and target system triple are +the same (in other words, we use a host tool if it can be used for +the target as well). +
+ +

You may want to use --with-as if no assembler +is installed in the directories listed above, or if you have multiple +assemblers installed and want to choose one that is not found by the +above rules. + +

--with-gnu-ld
Same as --with-gnu-as +but for the linker. + +
--with-ld=pathname
Same as --with-as +but for the linker. + +
--with-stabs
Specify that stabs debugging +information should be used instead of whatever format the host normally +uses. Normally GCC uses the same debug format as the host system. + +

On MIPS based systems and on Alphas, you must specify whether you want +GCC to create the normal ECOFF debugging format, or to use BSD-style +stabs passed through the ECOFF symbol table. The normal ECOFF debug +format cannot fully handle languages other than C. BSD stabs format can +handle other languages, but it only works with the GNU debugger GDB. + +

Normally, GCC uses the ECOFF debugging format by default; if you +prefer BSD stabs, specify --with-stabs when you configure GCC. + +

No matter which default you choose when you configure GCC, the user +can use the -gcoff and -gstabs+ options to specify explicitly +the debug format for a particular compilation. + +

--with-stabs is meaningful on the ISC system on the 386, also, if +--with-gas is used. It selects use of stabs debugging +information embedded in COFF output. This kind of debugging information +supports C++ well; ordinary COFF debugging information does not. + +

--with-stabs is also meaningful on 386 systems running SVR4. It +selects use of stabs debugging information embedded in ELF output. The +C++ compiler currently (2.6.0) does not support the DWARF debugging +information normally used on 386 SVR4 platforms; stabs provide a +workable alternative. This requires gas and gdb, as the normal SVR4 +tools can not generate or interpret stabs. + +

--disable-multilib
Specify that multiple target +libraries to support different target variants, calling +conventions, etc. should not be built. The default is to build a +predefined set of them. + +

Some targets provide finer-grained control over which multilibs are built +(e.g., --disable-softfloat): +

+
arc-*-elf*
biendian. + +
arm-*-*
fpu, 26bit, underscore, interwork, biendian, nofmult. + +
m68*-*-*
softfloat, m68881, m68000, m68020. + +
mips*-*-*
single-float, biendian, softfloat. + +
powerpc*-*-*, rs6000*-*-*
aix64, pthread, softfloat, powercpu, powerpccpu, powerpcos, biendian, +sysv, aix. + +
+ +
--enable-threads
Specify that the target +supports threads. This affects the Objective-C compiler and runtime +library, and exception handling for other languages like C++ and Java. +On some systems, this is the default. + +

In general, the best (and, in many cases, the only known) threading +model available will be configured for use. Beware that on some +systems, GCC has not been taught what threading models are generally +available for the system. In this case, --enable-threads is an +alias for --enable-threads=single. + +

--disable-threads
Specify that threading support should be disabled for the system. +This is an alias for --enable-threads=single. + +
--enable-threads=lib
Specify that +lib is the thread support library. This affects the Objective-C +compiler and runtime library, and exception handling for other languages +like C++ and Java. The possibilities for lib are: + +
+
aix
AIX thread support. +
dce
DCE thread support. +
gnat
Ada tasking support. For non-Ada programs, this setting is equivalent +to `single'. When used in conjunction with the Ada run time, it +causes GCC to use the same thread primitives as Ada uses. This option +is necessary when using both Ada and the back end exception handling, +which is the default for most Ada targets. +
mach
Generic MACH thread support, known to work on NeXTSTEP. (Please note +that the file needed to support this configuration, gthr-mach.h, is +missing and thus this setting will cause a known bootstrap failure.) +
no
This is an alias for `single'. +
posix
Generic POSIX/Unix98 thread support. +
posix95
Generic POSIX/Unix95 thread support. +
rtems
RTEMS thread support. +
single
Disable thread support, should work for all platforms. +
solaris
Sun Solaris 2 thread support. +
vxworks
VxWorks thread support. +
win32
Microsoft Win32 API thread support. +
nks
Novell Kernel Services thread support. +
+ +
--enable-tls
Specify that the target supports TLS (Thread Local Storage). Usually +configure can correctly determine if TLS is supported. In cases where +it guesses incorrectly, TLS can be explicitly enabled or disabled with +--enable-tls or --disable-tls. This can happen if +the assembler supports TLS but the C library does not, or if the +assumptions made by the configure test are incorrect. + +
--disable-tls
Specify that the target does not support TLS. +This is an alias for --enable-tls=no. + +
--with-cpu=cpu
Specify which cpu variant the compiler should generate code for by default. +cpu will be used as the default value of the -mcpu= switch. +This option is only supported on some targets, including ARM, i386, PowerPC, +and SPARC. + +
--with-schedule=cpu
--with-arch=cpu
--with-tune=cpu
--with-abi=abi
--with-fpu=type
--with-float=type
These configure options provide default values for the -mschedule=, +-march=, -mtune=, -mabi=, and -mfpu= +options and for -mhard-float or -msoft-float. As with +--with-cpu, which switches will be accepted and acceptable values +of the arguments depend on the target. + +
--with-mode=mode
Specify if the compiler should default to -marm or -mthumb. +This option is only supported on ARM targets. + +
--with-divide=type
Specify how the compiler should generate code for checking for +division by zero. This option is only supported on the MIPS target. +The possibilities for type are: +
+
traps
Division by zero checks use conditional traps (this is the default on +systems that support conditional traps). +
breaks
Division by zero checks use the break instruction. +
+ +
--enable-__cxa_atexit
Define if you want to use __cxa_atexit, rather than atexit, to +register C++ destructors for local statics and global objects. +This is essential for fully standards-compliant handling of +destructors, but requires __cxa_atexit in libc. This option is currently +only available on systems with GNU libc. When enabled, this will cause +-fuse-cxa-exit to be passed by default. + +
--enable-target-optspace
Specify that target +libraries should be optimized for code space instead of code speed. +This is the default for the m32r platform. + +
--disable-cpp
Specify that a user visible cpp program should not be installed. + +
--with-cpp-install-dir=dirname
Specify that the user visible cpp program should be installed +in prefix/dirname/cpp, in addition to bindir. + +
--enable-initfini-array
Force the use of sections .init_array and .fini_array +(instead of .init and .fini) for constructors and +destructors. Option --disable-initfini-array has the +opposite effect. If neither option is specified, the configure script +will try to guess whether the .init_array and +.fini_array sections are supported and, if they are, use them. + +
--enable-maintainer-mode
The build rules that +regenerate the GCC master message catalog gcc.pot are normally +disabled. This is because it can only be rebuilt if the complete source +tree is present. If you have changed the sources and want to rebuild the +catalog, configuring with --enable-maintainer-mode will enable +this. Note that you need a recent version of the gettext tools +to do so. + +
--disable-bootstrap
For a native build, the default configuration is to perform +a 3-stage bootstrap of the compiler when `make' is invoked, +testing that GCC can compile itself correctly. If you want to disable +this process, you can configure with --disable-bootstrap. + +
--enable-bootstrap
In special cases, you may want to perform a 3-stage build +even if the target and host triplets are different. +This could happen when the host can run code compiled for +the target (e.g. host is i686-linux, target is i486-linux). +Starting from GCC 4.2, to do this you have to configure explicitly +with --enable-bootstrap. + +
--enable-generated-files-in-srcdir
Neither the .c and .h files that are generated from Bison and flex nor the +info manuals and man pages that are built from the .texi files are present +in the SVN development tree. When building GCC from that development tree, +or from one of our snapshots, those generated files are placed in your +build directory, which allows for the source to be in a readonly +directory. + +

If you configure with --enable-generated-files-in-srcdir then those +generated files will go into the source directory. This is mainly intended +for generating release or prerelease tarballs of the GCC sources, since it +is not a requirement that the users of source releases to have flex, Bison, +or makeinfo. + +

--enable-version-specific-runtime-libs
Specify +that runtime libraries should be installed in the compiler specific +subdirectory (libdir/gcc) rather than the usual places. In +addition, `libstdc++''s include files will be installed into +libdir unless you overruled it by using +--with-gxx-include-dir=dirname. Using this option is +particularly useful if you intend to use several versions of GCC in +parallel. This is currently supported by `libgfortran', +`libjava', `libmudflap', `libstdc++', and `libobjc'. + +
--with-java-home=dirname
This `libjava' option overrides the default value of the +`java.home' system property. It is also used to set +`sun.boot.class.path' to dirname/lib/rt.jar. By +default `java.home' is set to prefix and +`sun.boot.class.path' to +datadir/java/libgcj-version.jar. + +
--enable-languages=lang1,lang2,...
Specify that only a particular subset of compilers and +their runtime libraries should be built. For a list of valid values for +langN you can issue the following command in the +gcc directory of your GCC source tree:
+
          grep language= */config-lang.in
+     
+

Currently, you can use any of the following: +all, ada, c, c++, fortran, java, +objc, obj-c++, treelang. +Building the Ada compiler has special requirements, see below. +If you do not pass this flag, or specify the option all, then all +default languages available in the gcc sub-tree will be configured. +Ada, Objective-C++, and treelang are not default languages; the rest are. +Re-defining LANGUAGES when calling `make' does not +work anymore, as those language sub-directories might not have been +configured! + +

--disable-libada
Specify that the run-time libraries and tools used by GNAT should not +be built. This can be useful for debugging, or for compatibility with +previous Ada build procedures, when it was required to explicitly +do a `make -C gcc gnatlib_and_tools'. + +
--disable-libssp
Specify that the run-time libraries for stack smashing protection +should not be built. + +
--disable-libgomp
Specify that the run-time libraries used by GOMP should not be built. + +
--with-dwarf2
Specify that the compiler should +use DWARF 2 debugging information as the default. + +
--enable-targets=all
--enable-targets=target_list
Some GCC targets, e.g. powerpc64-linux, build bi-arch compilers. +These are compilers that are able to generate either 64-bit or 32-bit +code. Typically, the corresponding 32-bit target, e.g. +powerpc-linux for powerpc64-linux, only generates 32-bit code. This +option enables the 32-bit target to be a bi-arch compiler, which is +useful when you want a bi-arch compiler that defaults to 32-bit, and +you are building a bi-arch or multi-arch binutils in a combined tree. +Currently, this option only affects powerpc-linux. + +
--enable-secureplt
This option enables -msecure-plt by default for powerpc-linux. +See “RS/6000 and PowerPC Options” in the main manual + +
--enable-win32-registry
--enable-win32-registry=key
--disable-win32-registry
The --enable-win32-registry option enables Microsoft Windows-hosted GCC +to look up installations paths in the registry using the following key: + +
          HKEY_LOCAL_MACHINE\SOFTWARE\Free Software Foundation\key
+     
+

key defaults to GCC version number, and can be overridden by the +--enable-win32-registry=key option. Vendors and distributors +who use custom installers are encouraged to provide a different key, +perhaps one comprised of vendor name and GCC version number, to +avoid conflict with existing installations. This feature is enabled +by default, and can be disabled by --disable-win32-registry +option. This option has no effect on the other hosts. + +

--nfp
Specify that the machine does not have a floating point unit. This +option only applies to `m68k-sun-sunosn'. On any other +system, --nfp has no effect. + +
--enable-werror
--disable-werror
--enable-werror=yes
--enable-werror=no
When you specify this option, it controls whether certain files in the +compiler are built with -Werror in bootstrap stage2 and later. +If you don't specify it, -Werror is turned on for the main +development trunk. However it defaults to off for release branches and +final releases. The specific files which get -Werror are +controlled by the Makefiles. + +
--enable-checking
--enable-checking=list
When you specify this option, the compiler is built to perform internal +consistency checks of the requested complexity. This does not change the +generated code, but adds error checking within the compiler. This will +slow down the compiler and may only work properly if you are building +the compiler with GCC. This is `yes' by default when building +from SVN or snapshots, but `release' for releases. More control +over the checks may be had by specifying list. The categories of +checks available are `yes' (most common checks +`assert,misc,tree,gc,rtlflag,runtime'), `no' (no checks at +all), `all' (all but `valgrind'), `release' (cheapest +checks `assert,runtime') or `none' (same as `no'). +Individual checks can be enabled with these flags `assert', +`fold', `gc', `gcac' `misc', `rtl', +`rtlflag', `runtime', `tree', and `valgrind'. + +

The `valgrind' check requires the external valgrind +simulator, available from http://valgrind.org/. The +`rtl', `gcac' and `valgrind' checks are very expensive. +To disable all checking, `--disable-checking' or +`--enable-checking=none' must be explicitly requested. Disabling +assertions will make the compiler and runtime slightly faster but +increase the risk of undetected internal errors causing wrong code to be +generated. + +

--enable-coverage
--enable-coverage=level
With this option, the compiler is built to collect self coverage +information, every time it is run. This is for internal development +purposes, and only works when the compiler is being built with gcc. The +level argument controls whether the compiler is built optimized or +not, values are `opt' and `noopt'. For coverage analysis you +want to disable optimization, for performance analysis you want to +enable optimization. When coverage is enabled, the default level is +without optimization. + +
--enable-gather-detailed-mem-stats
When this option is specified more detailed information on memory +allocation is gathered. This information is printed when using +-fmem-report. + +
--with-gc
--with-gc=choice
With this option you can specify the garbage collector implementation +used during the compilation process. choice can be one of +`page' and `zone', where `page' is the default. + +
--enable-nls
--disable-nls
The --enable-nls option enables Native Language Support (NLS), +which lets GCC output diagnostics in languages other than American +English. Native Language Support is enabled by default if not doing a +canadian cross build. The --disable-nls option disables NLS. + +
--with-included-gettext
If NLS is enabled, the --with-included-gettext option causes the build +procedure to prefer its copy of GNU gettext. + +
--with-catgets
If NLS is enabled, and if the host lacks gettext but has the +inferior catgets interface, the GCC build procedure normally +ignores catgets and instead uses GCC's copy of the GNU +gettext library. The --with-catgets option causes the +build procedure to use the host's catgets in this situation. + +
--with-libiconv-prefix=dir
Search for libiconv header files in dir/include and +libiconv library files in dir/lib. + +
--enable-obsolete
Enable configuration for an obsoleted system. If you attempt to +configure GCC for a system (build, host, or target) which has been +obsoleted, and you do not specify this flag, configure will halt with an +error message. + +

All support for systems which have been obsoleted in one release of GCC +is removed entirely in the next major release, unless someone steps +forward to maintain the port. + +

--enable-decimal-float
--disable-decimal-float
Enable (or disable) support for the C decimal floating point +extension. This is enabled by default only on PowerPC GNU/Linux +systems. Other systems may also support it, but require the user to +specifically enable it. + +
--with-long-double-128
Specify if long double type should be 128-bit by default on selected +GNU/Linux architectures. If using --without-long-double-128, +long double will be by default 64-bit, the same as double type. +When neither of these configure options are used, the default will be +128-bit long double when built against GNU C Library 2.4 and later, +64-bit long double otherwise. + +
+ +

Cross-Compiler-Specific Options

+ +

The following options only apply to building cross compilers. +

+
--with-sysroot
--with-sysroot=dir
Tells GCC to consider dir as the root of a tree that contains a +(subset of) the root filesystem of the target operating system. +Target system headers, libraries and run-time object files will be +searched in there. The specified directory is not copied into the +install tree, unlike the options --with-headers and +--with-libs that this option obsoletes. The default value, +in case --with-sysroot is not given an argument, is +${gcc_tooldir}/sys-root. If the specified directory is a +subdirectory of ${exec_prefix}, then it will be found relative to +the GCC binaries if the installation tree is moved. + +
--with-build-sysroot
--with-build-sysroot=dir
Tells GCC to consider dir as the system root (see +--with-sysroot) while building target libraries, instead of +the directory specified with --with-sysroot. This option is +only useful when you are already using --with-sysroot. You +can use --with-build-sysroot when you are configuring with +--prefix set to a directory that is different from the one in +which you are installing GCC and your target libraries. + +

This option affects the system root for the compiler used to build +target libraries (which runs on the build system); it does not affect +the compiler which is used to build GCC itself. + +

--with-headers
--with-headers=dir
Deprecated in favor of --with-sysroot. +Specifies that target headers are available when building a cross compiler. +The dir argument specifies a directory which has the target include +files. These include files will be copied into the gcc install +directory. This option with the dir argument is required when +building a cross compiler, if prefix/target/sys-include +doesn't pre-exist. If prefix/target/sys-include does +pre-exist, the dir argument may be omitted. fixincludes +will be run on these files to make them compatible with GCC. + +
--without-headers
Tells GCC not use any target headers from a libc when building a cross +compiler. When crossing to GNU/Linux, you need the headers so GCC +can build the exception handling for libgcc. + +
--with-libs
--with-libs=``dir1 dir2 ... dirN''
Deprecated in favor of --with-sysroot. +Specifies a list of directories which contain the target runtime +libraries. These libraries will be copied into the gcc install +directory. If the directory list is omitted, this option has no +effect. + +
--with-newlib
Specifies that `newlib' is +being used as the target C library. This causes __eprintf to be +omitted from libgcc.a on the assumption that it will be provided by +`newlib'. + +
--with-build-time-tools=dir
Specifies where to find the set of target tools (assembler, linker, etc.) +that will be used while building GCC itself. This option can be useful +if the directory layouts are different between the system you are building +GCC on, and the system where you will deploy it. + +

For example, on a ia64-hp-hpux system, you may have the GNU +assembler and linker in /usr/bin, and the native tools in a +different path, and build a toolchain that expects to find the +native tools in /usr/bin. + +

When you use this option, you should ensure that dir includes +ar, as, ld, nm, +ranlib and strip if necessary, and possibly +objdump. Otherwise, GCC may use an inconsistent set of +tools. +

+ +

Fortran-Specific Options

+ +

The following options apply to the build of the Fortran front end. + +

+
--with-gmp=pathname
--with-gmp-include=pathname
--with-gmp-lib=pathname
--with-mpfr=pathname
--with-mpfr-include=pathname
--with-mpfr-lib=pathname
If you do not have GMP (the GNU Multiple Precision library) and the +MPFR Libraries installed in a standard location and you want to build +the Fortran front-end, you can explicitly specify the directory where +they are installed (`--with-gmp=gmpinstalldir', +`--with-mpfr=mpfrinstalldir'). The +--with-gmp=gmpinstalldir option is shorthand for +--with-gmp-lib=gmpinstalldir/lib and +--with-gmp-include=gmpinstalldir/include. Likewise the +--with-mpfr=mpfrinstalldir option is shorthand for +--with-mpfr-lib=mpfrinstalldir/lib and +--with-mpfr-include=mpfrinstalldir/include. If these +shorthand assumptions are not correct, you can use the explicit +include and lib options directly. + +
+ +

Java-Specific Options

+ +

The following option applies to the build of the Java front end. + +

+
--disable-libgcj
Specify that the run-time libraries +used by GCJ should not be built. This is useful in case you intend +to use GCJ with some other run-time, or you're going to install it +separately, or it just happens not to build on your particular +machine. In general, if the Java front end is enabled, the GCJ +libraries will be enabled too, unless they're known to not work on +the target platform. If GCJ is enabled but `libgcj' isn't built, you +may need to port it; in this case, before modifying the top-level +configure.in so that `libgcj' is enabled by default on this platform, +you may use --enable-libgcj to override the default. + +
+ +

The following options apply to building `libgcj'. + +

General Options
+ +
+
--disable-getenv-properties
Don't set system properties from GCJ_PROPERTIES. + +
--enable-hash-synchronization
Use a global hash table for monitor locks. Ordinarily, +`libgcj''s `configure' script automatically makes +the correct choice for this option for your platform. Only use +this if you know you need the library to be configured differently. + +
--enable-interpreter
Enable the Java interpreter. The interpreter is automatically +enabled by default on all platforms that support it. This option +is really only useful if you want to disable the interpreter +(using --disable-interpreter). + +
--disable-java-net
Disable java.net. This disables the native part of java.net only, +using non-functional stubs for native method implementations. + +
--disable-jvmpi
Disable JVMPI support. + +
--with-ecos
Enable runtime eCos target support. + +
--without-libffi
Don't use `libffi'. This will disable the interpreter and JNI +support as well, as these require `libffi' to work. + +
--enable-libgcj-debug
Enable runtime debugging code. + +
--enable-libgcj-multifile
If specified, causes all .java source files to be +compiled into .class files in one invocation of +`gcj'. This can speed up build time, but is more +resource-intensive. If this option is unspecified or +disabled, `gcj' is invoked once for each .java +file to compile into a .class file. + +
--with-libiconv-prefix=DIR
Search for libiconv in DIR/include and DIR/lib. + +
--enable-sjlj-exceptions
Force use of the setjmp/longjmp-based scheme for exceptions. +`configure' ordinarily picks the correct value based on the platform. +Only use this option if you are sure you need a different setting. + +
--with-system-zlib
Use installed `zlib' rather than that included with GCC. + +
--with-win32-nlsapi=ansi, unicows or unicode
Indicates how MinGW `libgcj' translates between UNICODE +characters and the Win32 API. +
+
ansi
Use the single-byte char and the Win32 A functions natively, +translating to and from UNICODE when using these functions. If +unspecified, this is the default. + +
unicows
Use the WCHAR and Win32 W functions natively. Adds +-lunicows to libgcj.spec to link with `libunicows'. +unicows.dll needs to be deployed on Microsoft Windows 9X machines +running built executables. libunicows.a, an open-source +import library around Microsoft's unicows.dll, is obtained from +http://libunicows.sourceforge.net/, which also gives details +on getting unicows.dll from Microsoft. + +
unicode
Use the WCHAR and Win32 W functions natively. Does not +add -lunicows to libgcj.spec. The built executables will +only run on Microsoft Windows NT and above. +
+
+ +
AWT-Specific Options
+ +
+
--with-x
Use the X Window System. + +
--enable-java-awt=PEER(S)
Specifies the AWT peer library or libraries to build alongside +`libgcj'. If this option is unspecified or disabled, AWT +will be non-functional. Current valid values are gtk and +xlib. Multiple libraries should be separated by a +comma (i.e. --enable-java-awt=gtk,xlib). + +
--enable-gtk-cairo
Build the cairo Graphics2D implementation on GTK. + +
--enable-java-gc=TYPE
Choose garbage collector. Defaults to boehm if unspecified. + +
--disable-gtktest
Do not try to compile and run a test GTK+ program. + +
--disable-glibtest
Do not try to compile and run a test GLIB program. + +
--with-libart-prefix=PFX
Prefix where libart is installed (optional). + +
--with-libart-exec-prefix=PFX
Exec prefix where libart is installed (optional). + +
--disable-libarttest
Do not try to compile and run a test libart program. + +
+ +


+

Return to the GCC Installation page + + + + + + + + + + + + diff -Nru INSTALL/download.html INSTALL/download.html --- INSTALL/download.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/download.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,90 @@ + + +Downloading GCC + + + + + + + + + + +

Downloading GCC

+ +GCC is distributed via SVN and FTP +tarballs compressed with gzip or +bzip2. It is possible to download a full distribution or specific +components. + +

Please refer to the releases web page +for information on how to obtain GCC. + +

The full distribution includes the C, C++, Objective-C, Fortran, Java, +and Ada (in the case of GCC 3.1 and later) compilers. The full +distribution also includes runtime libraries for C++, Objective-C, +Fortran, and Java. In GCC 3.0 and later versions, the GNU compiler +testsuites are also included in the full distribution. + +

If you choose to download specific components, you must download the core +GCC distribution plus any language specific distributions you wish to +use. The core distribution includes the C language front end as well as the +shared components. Each language has a tarball which includes the language +front end as well as the language runtime (when appropriate). + +

Unpack the core distribution as well as any language specific +distributions in the same directory. + +

If you also intend to build binutils (either to upgrade an existing +installation or for use in place of the corresponding tools of your +OS), unpack the binutils distribution either in the same directory or +a separate one. In the latter case, add symbolic links to any +components of the binutils you intend to build alongside the compiler +(bfd, binutils, gas, gprof, ld, +opcodes, ...) to the directory containing the GCC sources. + +


+

Return to the GCC Installation page + + + + + + + + + + + + + diff -Nru INSTALL/finalinstall.html INSTALL/finalinstall.html --- INSTALL/finalinstall.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/finalinstall.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,166 @@ + + +Installing GCC: Final installation + + + + + + + + + + +

Installing GCC: Final installation

+Now that GCC has been built (and optionally tested), you can install it with +
     cd objdir; make install
+
+

We strongly recommend to install into a target directory where there is +no previous version of GCC present. + +

That step completes the installation of GCC; user level binaries can +be found in prefix/bin where prefix is the value +you specified with the --prefix to configure (or +/usr/local by default). (If you specified --bindir, +that directory will be used instead; otherwise, if you specified +--exec-prefix, exec-prefix/bin will be used.) +Headers for the C++ and Java libraries are installed in +prefix/include; libraries in libdir +(normally prefix/lib); internal parts of the compiler in +libdir/gcc and libexecdir/gcc; documentation +in info format in infodir (normally +prefix/info). + +

When installing cross-compilers, GCC's executables +are not only installed into bindir, that +is, exec-prefix/bin, but additionally into +exec-prefix/target-alias/bin, if that directory +exists. Typically, such tooldirs hold target-specific +binutils, including assembler and linker. + +

Installation into a temporary staging area or into a chroot +jail can be achieved with the command + +

     make DESTDIR=path-to-rootdir install
+
+

where path-to-rootdir is the absolute path of +a directory relative to which all installation paths will be +interpreted. Note that the directory specified by DESTDIR +need not exist yet; it will be created if necessary. + +

There is a subtle point with tooldirs and DESTDIR: +If you relocate a cross-compiler installation with +e.g. `DESTDIR=rootdir', then the directory +rootdir/exec-prefix/target-alias/bin will +be filled with duplicated GCC executables only if it already exists, +it will not be created otherwise. This is regarded as a feature, +not as a bug, because it gives slightly more control to the packagers +using the DESTDIR feature. + +

If you are bootstrapping a released version of GCC then please +quickly review the build status page for your release, available from +http://gcc.gnu.org/buildstat.html. +If your system is not listed for the version of GCC that you built, +send a note to +gcc@gcc.gnu.org indicating +that you successfully built and installed GCC. +Include the following information: + +

    +
  • Output from running srcdir/config.guess. Do not send +that file itself, just the one-line output from running it. + +
  • The output of `gcc -v' for your newly installed gcc. +This tells us which version of GCC you built and the options you passed to +configure. + +
  • Whether you enabled all languages or a subset of them. If you used a +full distribution then this information is part of the configure +options in the output of `gcc -v', but if you downloaded the +“core” compiler plus additional front ends then it isn't apparent +which ones you built unless you tell us about it. + +
  • If the build was for GNU/Linux, also include: +
      +
    • The distribution name and version (e.g., Red Hat 7.1 or Debian 2.2.3); +this information should be available from /etc/issue. + +
    • The version of the Linux kernel, available from `uname --version' +or `uname -a'. + +
    • The version of glibc you used; for RPM-based systems like Red Hat, +Mandrake, and SuSE type `rpm -q glibc' to get the glibc version, +and on systems like Debian and Progeny use `dpkg -l libc6'. +
    + For other systems, you can include similar information if you think it is +relevant. + +
  • Any other information that you think would be useful to people building +GCC on the same configuration. The new entry in the build status list +will include a link to the archived copy of your message. +
+ +

We'd also like to know if the +host/target specific installation notes +didn't include your host/target information or if that information is +incomplete or out of date. Send a note to +gcc@gcc.gnu.org detailing how the information should be changed. + +

If you find a bug, please report it following the +bug reporting guidelines. + +

If you want to print the GCC manuals, do `cd objdir; make +dvi'. You will need to have texi2dvi (version at least 4.4) +and TeX installed. This creates a number of .dvi files in +subdirectories of objdir; these may be converted for +printing with programs such as dvips. Alternately, by using +`make pdf' in place of `make dvi', you can create documentation +in the form of .pdf files; this requires texi2pdf, which +is included with Texinfo version 4.8 and later. You can also +buy printed manuals from the Free Software Foundation, though such manuals may not be for the most +recent version of GCC. + +

If you would like to generate online HTML documentation, do `cd +objdir; make html' and HTML will be generated for the gcc manuals in +objdir/gcc/HTML. + +


+

Return to the GCC Installation page + + + + + + + + + diff -Nru INSTALL/gfdl.html INSTALL/gfdl.html --- INSTALL/gfdl.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/gfdl.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,462 @@ + + +Installing GCC: GNU Free Documentation License + + + + + + + + + + +

Installing GCC: GNU Free Documentation License

+

Installing GCC: GNU Free Documentation License

+ +

Version 1.2, November 2002
+ +
     Copyright © 2000,2001,2002 Free Software Foundation, Inc.
+     51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+     
+     Everyone is permitted to copy and distribute verbatim copies
+     of this license document, but changing it is not allowed.
+
+
    +
  1. PREAMBLE + +

    The purpose of this License is to make a manual, textbook, or other +functional and useful document free in the sense of freedom: to +assure everyone the effective freedom to copy and redistribute it, +with or without modifying it, either commercially or noncommercially. +Secondarily, this License preserves for the author and publisher a way +to get credit for their work, while not being considered responsible +for modifications made by others. + +

    This License is a kind of “copyleft”, which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. + +

    We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. + +

  2. APPLICABILITY AND DEFINITIONS + +

    This License applies to any manual or other work, in any medium, that +contains a notice placed by the copyright holder saying it can be +distributed under the terms of this License. Such a notice grants a +world-wide, royalty-free license, unlimited in duration, to use that +work under the conditions stated herein. The “Document”, below, +refers to any such manual or work. Any member of the public is a +licensee, and is addressed as “you”. You accept the license if you +copy, modify or distribute the work in a way requiring permission +under copyright law. + +

    A “Modified Version” of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. + +

    A “Secondary Section” is a named appendix or a front-matter section +of the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall +subject (or to related matters) and contains nothing that could fall +directly within that overall subject. (Thus, if the Document is in +part a textbook of mathematics, a Secondary Section may not explain +any mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. + +

    The “Invariant Sections” are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. If a +section does not fit the above definition of Secondary then it is not +allowed to be designated as Invariant. The Document may contain zero +Invariant Sections. If the Document does not identify any Invariant +Sections then there are none. + +

    The “Cover Texts” are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. A Front-Cover Text may +be at most 5 words, and a Back-Cover Text may be at most 25 words. + +

    A “Transparent” copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, that is suitable for revising the document +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup, or absence of markup, has been arranged to thwart +or discourage subsequent modification by readers is not Transparent. +An image format is not Transparent if used for any substantial amount +of text. A copy that is not “Transparent” is called “Opaque”. + +

    Examples of suitable formats for Transparent copies include plain +ascii without markup, Texinfo input format, LaTeX input +format, SGML or XML using a publicly available +DTD, and standard-conforming simple HTML, +PostScript or PDF designed for human modification. Examples +of transparent image formats include PNG, XCF and +JPG. Opaque formats include proprietary formats that can be +read and edited only by proprietary word processors, SGML or +XML for which the DTD and/or processing tools are +not generally available, and the machine-generated HTML, +PostScript or PDF produced by some word processors for +output purposes only. + +

    The “Title Page” means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, “Title Page” means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. + +

    A section “Entitled XYZ” means a named subunit of the Document whose +title either is precisely XYZ or contains XYZ in parentheses following +text that translates XYZ in another language. (Here XYZ stands for a +specific section name mentioned below, such as “Acknowledgements”, +“Dedications”, “Endorsements”, or “History”.) To “Preserve the Title” +of such a section when you modify the Document means that it remains a +section “Entitled XYZ” according to this definition. + +

    The Document may include Warranty Disclaimers next to the notice which +states that this License applies to the Document. These Warranty +Disclaimers are considered to be included by reference in this +License, but only as regards disclaiming warranties: any other +implication that these Warranty Disclaimers may have is void and has +no effect on the meaning of this License. + +

  3. VERBATIM COPYING + +

    You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no other +conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in section 3. + +

    You may also lend copies, under the same conditions stated above, and +you may publicly display copies. + +

  4. COPYING IN QUANTITY + +

    If you publish printed copies (or copies in media that commonly have +printed covers) of the Document, numbering more than 100, and the +Document's license notice requires Cover Texts, you must enclose the +copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. + +

    If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. + +

    If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a computer-network location from which the general network-using +public has access to download using public-standard network protocols +a complete Transparent copy of the Document, free of added material. +If you use the latter option, you must take reasonably prudent steps, +when you begin distribution of Opaque copies in quantity, to ensure +that this Transparent copy will remain thus accessible at the stated +location until at least one year after the last time you distribute an +Opaque copy (directly or through your agents or retailers) of that +edition to the public. + +

    It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to give +them a chance to provide you with an updated version of the Document. + +

  5. MODIFICATIONS + +

    You may copy and distribute a Modified Version of the Document under +the conditions of sections 2 and 3 above, provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: + +

      +
    1. Use in the Title Page (and on the covers, if any) a title distinct +from that of the Document, and from those of previous versions +(which should, if there were any, be listed in the History section +of the Document). You may use the same title as a previous version +if the original publisher of that version gives permission. + +
    2. List on the Title Page, as authors, one or more persons or entities +responsible for authorship of the modifications in the Modified +Version, together with at least five of the principal authors of the +Document (all of its principal authors, if it has fewer than five), +unless they release you from this requirement. + +
    3. State on the Title page the name of the publisher of the +Modified Version, as the publisher. + +
    4. Preserve all the copyright notices of the Document. + +
    5. Add an appropriate copyright notice for your modifications +adjacent to the other copyright notices. + +
    6. Include, immediately after the copyright notices, a license notice +giving the public permission to use the Modified Version under the +terms of this License, in the form shown in the Addendum below. + +
    7. Preserve in that license notice the full lists of Invariant Sections +and required Cover Texts given in the Document's license notice. + +
    8. Include an unaltered copy of this License. + +
    9. Preserve the section Entitled “History”, Preserve its Title, and add +to it an item stating at least the title, year, new authors, and +publisher of the Modified Version as given on the Title Page. If +there is no section Entitled “History” in the Document, create one +stating the title, year, authors, and publisher of the Document as +given on its Title Page, then add an item describing the Modified +Version as stated in the previous sentence. + +
    10. Preserve the network location, if any, given in the Document for +public access to a Transparent copy of the Document, and likewise +the network locations given in the Document for previous versions +it was based on. These may be placed in the “History” section. +You may omit a network location for a work that was published at +least four years before the Document itself, or if the original +publisher of the version it refers to gives permission. + +
    11. For any section Entitled “Acknowledgements” or “Dedications”, Preserve +the Title of the section, and preserve in the section all the +substance and tone of each of the contributor acknowledgements and/or +dedications given therein. + +
    12. Preserve all the Invariant Sections of the Document, +unaltered in their text and in their titles. Section numbers +or the equivalent are not considered part of the section titles. + +
    13. Delete any section Entitled “Endorsements”. Such a section +may not be included in the Modified Version. + +
    14. Do not retitle any existing section to be Entitled “Endorsements” or +to conflict in title with any Invariant Section. + +
    15. Preserve any Warranty Disclaimers. +
    + +

    If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. + +

    You may add a section Entitled “Endorsements”, provided it contains +nothing but endorsements of your Modified Version by various +parties—for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. + +

    You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. + +

    The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. + +

  6. COMBINING DOCUMENTS + +

    You may combine the Document with other documents released under this +License, under the terms defined in section 4 above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice, and that you preserve all their Warranty Disclaimers. + +

    The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. + +

    In the combination, you must combine any sections Entitled “History” +in the various original documents, forming one section Entitled +“History”; likewise combine any sections Entitled “Acknowledgements”, +and any sections Entitled “Dedications”. You must delete all +sections Entitled “Endorsements.” + +

  7. COLLECTIONS OF DOCUMENTS + +

    You may make a collection consisting of the Document and other documents +released under this License, and replace the individual copies of this +License in the various documents with a single copy that is included in +the collection, provided that you follow the rules of this License for +verbatim copying of each of the documents in all other respects. + +

    You may extract a single document from such a collection, and distribute +it individually under this License, provided you insert a copy of this +License into the extracted document, and follow this License in all +other respects regarding verbatim copying of that document. + +

  8. AGGREGATION WITH INDEPENDENT WORKS + +

    A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, is called an “aggregate” if the copyright +resulting from the compilation is not used to limit the legal rights +of the compilation's users beyond what the individual works permit. +When the Document is included in an aggregate, this License does not +apply to the other works in the aggregate which are not themselves +derivative works of the Document. + +

    If the Cover Text requirement of section 3 is applicable to these +copies of the Document, then if the Document is less than one half of +the entire aggregate, the Document's Cover Texts may be placed on +covers that bracket the Document within the aggregate, or the +electronic equivalent of covers if the Document is in electronic form. +Otherwise they must appear on printed covers that bracket the whole +aggregate. + +

  9. TRANSLATION + +

    Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of section 4. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License, and all the license notices in the +Document, and any Warranty Disclaimers, provided that you also include +the original English version of this License and the original versions +of those notices and disclaimers. In case of a disagreement between +the translation and the original version of this License or a notice +or disclaimer, the original version will prevail. + +

    If a section in the Document is Entitled “Acknowledgements”, +“Dedications”, or “History”, the requirement (section 4) to Preserve +its Title (section 1) will typically require changing the actual +title. + +

  10. TERMINATION + +

    You may not copy, modify, sublicense, or distribute the Document except +as expressly provided for under this License. Any other attempt to +copy, modify, sublicense or distribute the Document is void, and will +automatically terminate your rights under this License. However, +parties who have received copies, or rights, from you under this +License will not have their licenses terminated so long as such +parties remain in full compliance. + +

  11. FUTURE REVISIONS OF THIS LICENSE + +

    The Free Software Foundation may publish new, revised versions +of the GNU Free Documentation License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. See +http://www.gnu.org/copyleft/. + +

    Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License “or any later version” applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. +

+ +

ADDENDUM: How to use this License for your documents

+ +

To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: + +

       Copyright (C)  year  your name.
+       Permission is granted to copy, distribute and/or modify this document
+       under the terms of the GNU Free Documentation License, Version 1.2
+       or any later version published by the Free Software Foundation;
+       with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
+       Texts.  A copy of the license is included in the section entitled ``GNU
+       Free Documentation License''.
+
+

If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, +replace the “with...Texts.” line with this: + +

         with the Invariant Sections being list their titles, with
+         the Front-Cover Texts being list, and with the Back-Cover Texts
+         being list.
+
+

If you have Invariant Sections without Cover Texts, or some other +combination of the three, merge those two alternatives to suit the +situation. + +

If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. + + + + + +


+

Return to the GCC Installation page + + + + + diff -Nru INSTALL/index.html INSTALL/index.html --- INSTALL/index.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/index.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,123 @@ + + +Installing GCC + + + + + + + + + + +

Installing GCC

+The latest version of this document is always available at +http://gcc.gnu.org/install/. + +

This document describes the generic installation procedure for GCC as well +as detailing some target specific installation instructions. + +

GCC includes several components that previously were separate distributions +with their own installation instructions. This document supersedes all +package specific installation instructions. + +

Before starting the build/install procedure please check the +host/target specific installation notes. +We recommend you browse the entire generic installation instructions before +you proceed. + +

Lists of successful builds for released versions of GCC are +available at http://gcc.gnu.org/buildstat.html. +These lists are updated as new information becomes available. + +

The installation procedure itself is broken into five steps. + +

    +
  1. Prerequisites +
  2. Downloading the source +
  3. Configuration +
  4. Building +
  5. Testing (optional) +
  6. Final install +
+ +

Please note that GCC does not support `make uninstall' and probably +won't do so in the near future as this would open a can of worms. Instead, +we suggest that you install GCC into a directory of its own and simply +remove that directory when you do not need that specific version of GCC +any longer, and, if shared libraries are installed there as well, no +more binaries exist that use them. + +

There are also some old installation instructions, +which are mostly obsolete but still contain some information which has +not yet been merged into the main part of this manual. + +


+

Return to the GCC Installation page + +

Copyright © 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, +1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +

+
+
+Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no +Invariant Sections, the Front-Cover texts being (a) (see below), and +with the Back-Cover Texts being (b) (see below). A copy of the +license is included in the section entitled “GNU Free Documentation License”. + +

(a) The FSF's Front-Cover Text is: + +

A GNU Manual + +

(b) The FSF's Back-Cover Text is: + +

You have freedom to copy and modify this GNU Manual, like GNU + software. Copies published by the Free Software Foundation raise + funds for GNU development. + + + + + + + + + + + + + + + diff -Nru INSTALL/old.html INSTALL/old.html --- INSTALL/old.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/old.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,212 @@ + + +Installing GCC: Old documentation + + + + + + + + + + +

Installing GCC: Old documentation

+

Old installation documentation

+ +

Note most of this information is out of date and superseded by the +previous chapters of this manual. It is provided for historical +reference only, because of a lack of volunteers to merge it into the +main manual. + +

Here is the procedure for installing GCC on a GNU or Unix system. + +

    +
  1. If you have chosen a configuration for GCC which requires other GNU +tools (such as GAS or the GNU linker) instead of the standard system +tools, install the required tools in the build directory under the names +as, ld or whatever is appropriate. + +

    Alternatively, you can do subsequent compilation using a value of the +PATH environment variable such that the necessary GNU tools come +before the standard system tools. + +

  2. Specify the host, build and target machine configurations. You do this +when you run the configure script. + +

    The build machine is the system which you are using, the +host machine is the system where you want to run the resulting +compiler (normally the build machine), and the target machine is +the system for which you want the compiler to generate code. + +

    If you are building a compiler to produce code for the machine it runs +on (a native compiler), you normally do not need to specify any operands +to configure; it will try to guess the type of machine you are on +and use that as the build, host and target machines. So you don't need +to specify a configuration when building a native compiler unless +configure cannot figure out what your configuration is or guesses +wrong. + +

    In those cases, specify the build machine's configuration name +with the --host option; the host and target will default to be +the same as the host machine. + +

    Here is an example: + +

              ./configure --host=sparc-sun-sunos4.1
    +     
    +

    A configuration name may be canonical or it may be more or less +abbreviated. + +

    A canonical configuration name has three parts, separated by dashes. +It looks like this: `cpu-company-system'. +(The three parts may themselves contain dashes; configure +can figure out which dashes serve which purpose.) For example, +`m68k-sun-sunos4.1' specifies a Sun 3. + +

    You can also replace parts of the configuration by nicknames or aliases. +For example, `sun3' stands for `m68k-sun', so +`sun3-sunos4.1' is another way to specify a Sun 3. + +

    You can specify a version number after any of the system types, and some +of the CPU types. In most cases, the version is irrelevant, and will be +ignored. So you might as well specify the version if you know it. + +

    See Configurations, for a list of supported configuration names and +notes on many of the configurations. You should check the notes in that +section before proceeding any further with the installation of GCC. + +

+ +

Configurations Supported by GCC

+Here are the possible CPU types: + +
+ +1750a, a29k, alpha, arm, avr, cn, clipper, dsp16xx, elxsi, fr30, h8300, +hppa1.0, hppa1.1, i370, i386, i486, i586, i686, i786, i860, i960, ip2k, m32r, +m68000, m68k, m6811, m6812, m88k, mcore, mips, mipsel, mips64, mips64el, +mn10200, mn10300, ns32k, pdp11, powerpc, powerpcle, romp, rs6000, sh, sparc, +sparclite, sparc64, v850, vax, we32k. +
+ +

Here are the recognized company names. As you can see, customary +abbreviations are used rather than the longer official names. + + +

+acorn, alliant, altos, apollo, apple, att, bull, +cbm, convergent, convex, crds, dec, dg, dolphin, +elxsi, encore, harris, hitachi, hp, ibm, intergraph, isi, +mips, motorola, ncr, next, ns, omron, plexus, +sequent, sgi, sony, sun, tti, unicom, wrs. +
+ +

The company name is meaningful only to disambiguate when the rest of +the information supplied is insufficient. You can omit it, writing +just `cpu-system', if it is not needed. For example, +`vax-ultrix4.2' is equivalent to `vax-dec-ultrix4.2'. + +

Here is a list of system types: + +

+386bsd, aix, acis, amigaos, aos, aout, aux, bosx, bsd, clix, coff, ctix, cxux, +dgux, dynix, ebmon, ecoff, elf, esix, freebsd, hms, genix, gnu, linux, +linux-gnu, hiux, hpux, iris, irix, isc, luna, lynxos, mach, minix, msdos, mvs, +netbsd, newsos, nindy, ns, osf, osfrose, ptx, riscix, riscos, rtu, sco, sim, +solaris, sunos, sym, sysv, udi, ultrix, unicos, uniplus, unos, vms, vsta, +vxworks, winnt, xenix. +
+ +

You can omit the system type; then configure guesses the +operating system from the CPU and company. + +

You can add a version number to the system type; this may or may not +make a difference. For example, you can write `bsd4.3' or +`bsd4.4' to distinguish versions of BSD. In practice, the version +number is most needed for `sysv3' and `sysv4', which are often +treated differently. + +

`linux-gnu' is the canonical name for the GNU/Linux target; however +GCC will also accept `linux'. The version of the kernel in use is +not relevant on these systems. A suffix such as `libc1' or `aout' +distinguishes major versions of the C library; all of the suffixed versions +are obsolete. + +

If you specify an impossible combination such as `i860-dg-vms', +then you may get an error message from configure, or it may +ignore part of the information and do the best it can with the rest. +configure always prints the canonical name for the alternative +that it used. GCC does not support all possible alternatives. + +

Often a particular model of machine has a name. Many machine names are +recognized as aliases for CPU/company combinations. Thus, the machine +name `sun3', mentioned above, is an alias for `m68k-sun'. +Sometimes we accept a company name as a machine name, when the name is +popularly used for a particular machine. Here is a table of the known +machine names: + +

+3300, 3b1, 3bn, 7300, altos3068, altos, +apollo68, att-7300, balance, +convex-cn, crds, decstation-3100, +decstation, delta, encore, +fx2800, gmicro, hp7nn, hp8nn, +hp9k2nn, hp9k3nn, hp9k7nn, +hp9k8nn, iris4d, iris, isi68, +m3230, magnum, merlin, miniframe, +mmax, news-3600, news800, news, next, +pbd, pc532, pmax, powerpc, powerpcle, ps2, risc-news, +rtpc, sun2, sun386i, sun386, sun3, +sun4, symmetry, tower-32, tower. +
+ +

Remember that a machine name specifies both the cpu type and the company +name. +If you want to install your own homemade configuration files, you can +use `local' as the company name to access them. If you use +configuration `cpu-local', the configuration name +without the cpu prefix +is used to form the configuration file names. + +

Thus, if you specify `m68k-local', configuration uses +files m68k.md, local.h, m68k.c, +xm-local.h, t-local, and x-local, all in the +directory config/m68k. +


+

Return to the GCC Installation page + + + + + + diff -Nru INSTALL/prerequisites.html INSTALL/prerequisites.html --- INSTALL/prerequisites.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/prerequisites.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,236 @@ + + +Prerequisites for GCC + + + + + + + + + + +

Prerequisites for GCC

+ +GCC requires that various tools and packages be available for use in the +build procedure. Modifying GCC sources requires additional tools +described below. + +

Tools/packages necessary for building GCC

+ +
+
ISO C90 compiler
Necessary to bootstrap GCC, although versions of GCC prior +to 3.4 also allow bootstrapping with a traditional (K&R) C compiler. + +

To build all languages in a cross-compiler or other configuration where +3-stage bootstrap is not performed, you need to start with an existing +GCC binary (version 2.95 or later) because source code for language +frontends other than C might use GCC extensions. + +

GNAT
+In order to build the Ada compiler (GNAT) you must already have GNAT +installed because portions of the Ada frontend are written in Ada (with +GNAT extensions.) Refer to the Ada installation instructions for more +specific information. + +
A “working” POSIX compatible shell, or GNU bash
+Necessary when running configure because some +/bin/sh shells have bugs and may crash when configuring the +target libraries. In other cases, /bin/sh or ksh +have disastrous corner-case performance problems. This +can cause target configure runs to literally take days to +complete in some cases. + +

So on some platforms /bin/ksh is sufficient, on others it +isn't. See the host/target specific instructions for your platform, or +use bash to be sure. Then set CONFIG_SHELL in your +environment to your “good” shell prior to running +configure/make. + +

zsh is not a fully compliant POSIX shell and will not +work when configuring GCC. + +

GNU binutils
+Necessary in some circumstances, optional in others. See the +host/target specific instructions for your platform for the exact +requirements. + +
gzip version 1.2.4 (or later) or
bzip2 version 1.0.2 (or later)
+Necessary to uncompress GCC tar files when source code is +obtained via FTP mirror sites. + +
GNU make version 3.79.1 (or later)
+You must have GNU make installed to build GCC. + +
GNU tar version 1.14 (or later)
+Necessary (only on some platforms) to untar the source code. Many +systems' tar programs will also work, only try GNU +tar if you have problems. + +
GNU Multiple Precision Library (GMP) version 4.1 (or later)
+Necessary to build the Fortran frontend. If you do not have it +installed in your library search path, you will have to configure with +the --with-gmp configure option. See also +--with-gmp-lib and --with-gmp-include. + +
MPFR Library version 2.2.1 (or later)
+Necessary to build the Fortran frontend. It can be downloaded from +http://www.mpfr.org/. The version of MPFR that is bundled with +GMP 4.1.x contains numerous bugs. Although GNU Fortran will appear +to function with the buggy versions of MPFR, there are a few GNU Fortran +bugs that will not be fixed when using this version. It is strongly +recommended to upgrade to the recommended version of MPFR. + +

The --with-mpfr configure option should be used if your MPFR +Library is not installed in your default library search path. See +also --with-mpfr-lib and --with-mpfr-include. + +

jar, or InfoZIP (zip and unzip)
+Necessary to build libgcj, the GCJ runtime. + +
+ +

Tools/packages necessary for modifying GCC

+ +
+
autoconf versions 2.13 and 2.59
GNU m4 version 1.4 (or later)
+Necessary when modifying configure.ac, aclocal.m4, etc. +to regenerate configure and config.in files. Most +directories require autoconf 2.59 (exactly), but the toplevel +still requires autoconf 2.13 (exactly). + +
automake version 1.9.6
+Necessary when modifying a Makefile.am file to regenerate its +associated Makefile.in. + +

Much of GCC does not use automake, so directly edit the Makefile.in +file. Specifically this applies to the gcc, intl, +libcpp, libiberty, libobjc directories as well +as any of their subdirectories. + +

For directories that use automake, GCC requires the latest release in +the 1.9.x series, which is currently 1.9.6. When regenerating a directory +to a newer version, please update all the directories using an older 1.9.x +to the latest released version. + +

gettext version 0.14.5 (or later)
+Needed to regenerate gcc.pot. + +
gperf version 2.7.2 (or later)
+Necessary when modifying gperf input files, e.g. +gcc/cp/cfns.gperf to regenerate its associated header file, e.g. +gcc/cp/cfns.h. + +
DejaGnu 1.4.4
Expect
Tcl
+Necessary to run the GCC testsuite; see the section on testing for details. + +
autogen version 5.5.4 (or later) and
guile version 1.4.1 (or later)
+Necessary to regenerate fixinc/fixincl.x from +fixinc/inclhack.def and fixinc/*.tpl. + +

Necessary to run `make check' for fixinc. + +

Necessary to regenerate the top level Makefile.in file from +Makefile.tpl and Makefile.def. + +

GNU Bison version 1.28 (or later)
Berkeley yacc (byacc) is also reported to work other +than for GCJ. + +

Necessary when modifying *.y files. + +

Necessary to build GCC during development because the generated output +files are not included in the SVN repository. They are included in +releases. + +

Flex version 2.5.4 (or later)
+Necessary when modifying *.l files. + +

Necessary to build GCC during development because the generated output +files are not included in the SVN repository. They are included in +releases. + +

Texinfo version 4.4 (or later)
+Necessary for running makeinfo when modifying *.texi +files to test your changes. + +

Necessary for running make dvi or make pdf to +create printable documentation in DVI or PDF format. Texinfo version +4.8 or later is required for make pdf. + +

Necessary to build GCC documentation during development because the +generated output files are not included in the SVN repository. They are +included in releases. + +

TeX (any working version)
+Necessary for running texi2dvi and texi2pdf, which +are used when running make dvi or make pdf to create +DVI or PDF files, respectively. + +
SVN (any version)
SSH (any version)
+Necessary to access the SVN repository. Public releases and weekly +snapshots of the development sources are also available via FTP. + +
Perl version 5.6.1 (or later)
+Necessary when regenerating Makefile dependencies in libiberty. +Necessary when regenerating libiberty/functions.texi. +Necessary when generating manpages from Texinfo manuals. +Necessary when targetting Darwin, building libstdc++, +and not using --disable-symvers. +Used by various scripts to generate some files included in SVN (mainly +Unicode-related and rarely changing) from source tables. + +
GNU diffutils version 2.7 (or later)
+Useful when submitting patches for the GCC source code. + +
patch version 2.5.4 (or later)
+Necessary when applying patches, created with diff, to one's +own sources. + +
+ +


+

Return to the GCC Installation page + + + + + + + + + + + + + + diff -Nru INSTALL/specific.html INSTALL/specific.html --- INSTALL/specific.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/specific.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,1687 @@ + + +Host/Target specific installation notes for GCC + + + + + + + + + + +

Host/Target specific installation notes for GCC

+ +Please read this document carefully before installing the +GNU Compiler Collection on your machine. + +

Note that this list of install notes is not a list of supported +hosts or targets. Not all supported hosts and targets are listed +here, only the ones that require host-specific or target-specific +information are. + +

+ + + +

+


+ +

alpha*-*-*

+ +

This section contains general configuration information for all +alpha-based platforms using ELF (in particular, ignore this section for +DEC OSF/1, Digital UNIX and Tru64 UNIX). In addition to reading this +section, please read all other sections that match your target. + +

We require binutils 2.11.2 or newer. +Previous binutils releases had a number of problems with DWARF 2 +debugging information, not the least of which is incorrect linking of +shared libraries. + +


+ +

alpha*-dec-osf*

+ +

Systems using processors that implement the DEC Alpha architecture and +are running the DEC/Compaq Unix (DEC OSF/1, Digital UNIX, or Compaq +Tru64 UNIX) operating system, for example the DEC Alpha AXP systems. + +

As of GCC 3.2, versions before alpha*-dec-osf4 are no longer +supported. (These are the versions which identify themselves as DEC +OSF/1.) + +

In Digital Unix V4.0, virtual memory exhausted bootstrap failures +may be fixed by configuring with --with-gc=simple, +reconfiguring Kernel Virtual Memory and Swap parameters +per the /usr/sbin/sys_check Tuning Suggestions, +or applying the patch in +http://gcc.gnu.org/ml/gcc/2002-08/msg00822.html. + +

In Tru64 UNIX V5.1, Compaq introduced a new assembler that does not +currently (2001-06-13) work with mips-tfile. As a workaround, +we need to use the old assembler, invoked via the barely documented +-oldas option. To bootstrap GCC, you either need to use the +Compaq C Compiler: + +

        % CC=cc srcdir/configure [options] [target]
+
+

or you can use a copy of GCC 2.95.3 or higher built on Tru64 UNIX V4.0: + +

        % CC=gcc -Wa,-oldas srcdir/configure [options] [target]
+
+

As of GNU binutils 2.11.2, neither GNU as nor GNU ld +are supported on Tru64 UNIX, so you must not configure GCC with +--with-gnu-as or --with-gnu-ld. + +

GCC writes a `.verstamp' directive to the assembler output file +unless it is built as a cross-compiler. It gets the version to use from +the system header file /usr/include/stamp.h. If you install a +new version of DEC Unix, you should rebuild GCC to pick up the new version +stamp. + +

Note that since the Alpha is a 64-bit architecture, cross-compilers from +32-bit machines will not generate code as efficient as that generated +when the compiler is running on a 64-bit machine because many +optimizations that depend on being able to represent a word on the +target in an integral value on the host cannot be performed. Building +cross-compilers on the Alpha for 32-bit machines has only been tested in +a few cases and may not work properly. + +

`make compare' may fail on old versions of DEC Unix unless you add +-save-temps to CFLAGS. On these systems, the name of the +assembler input file is stored in the object file, and that makes +comparison fail if it differs between the stage1 and +stage2 compilations. The option -save-temps forces a +fixed name to be used for the assembler input file, instead of a +randomly chosen name in /tmp. Do not add -save-temps +unless the comparisons fail without that option. If you add +-save-temps, you will have to manually delete the `.i' and +`.s' files after each series of compilations. + +

GCC now supports both the native (ECOFF) debugging format used by DBX +and GDB and an encapsulated STABS format for use only with GDB. See the +discussion of the --with-stabs option of configure above +for more information on these formats and how to select them. + +

There is a bug in DEC's assembler that produces incorrect line numbers +for ECOFF format when the `.align' directive is used. To work +around this problem, GCC will not emit such alignment directives +while writing ECOFF format debugging information even if optimization is +being performed. Unfortunately, this has the very undesirable +side-effect that code addresses when -O is specified are +different depending on whether or not -g is also specified. + +

To avoid this behavior, specify -gstabs+ and use GDB instead of +DBX. DEC is now aware of this problem with the assembler and hopes to +provide a fix shortly. + +


+ +

alphaev5-cray-unicosmk*

+ +

Cray T3E systems running Unicos/Mk. + +

This port is incomplete and has many known bugs. We hope to improve the +support for this target soon. Currently, only the C front end is supported, +and it is not possible to build parallel applications. Cray modules are not +supported; in particular, Craylibs are assumed to be in +/opt/ctl/craylibs/craylibs. + +

On this platform, you need to tell GCC where to find the assembler and +the linker. The simplest way to do so is by providing --with-as +and --with-ld to configure, e.g. + +

         configure --with-as=/opt/ctl/bin/cam --with-ld=/opt/ctl/bin/cld \
+           --enable-languages=c
+
+

The comparison test at the end of the bootstrapping process fails on Unicos/Mk +because the assembler inserts timestamps into object files. You should +be able to work around this by doing `make all' after getting this +failure. + +


+ +

arc-*-elf

+ +

Argonaut ARC processor. +This configuration is intended for embedded systems. + +


+ +

arm-*-elf

+ +

xscale-*-*

+ +

ARM-family processors. Subtargets that use the ELF object format +require GNU binutils 2.13 or newer. Such subtargets include: +arm-*-freebsd, arm-*-netbsdelf, arm-*-*linux, +arm-*-rtems and arm-*-kaos. + +


+ +

arm-*-coff

+ +

ARM-family processors. Note that there are two different varieties +of PE format subtarget supported: arm-wince-pe and +arm-pe as well as a standard COFF target arm-*-coff. + +


+ +

arm-*-aout

+ +

ARM-family processors. These targets support the AOUT file format: +arm-*-aout, arm-*-netbsd. + +


+ +

avr

+ +

ATMEL AVR-family micro controllers. These are used in embedded +applications. There are no standard Unix configurations. +See “AVR Options” in the main manual +for the list of supported MCU types. + +

Use `configure --target=avr --enable-languages="c"' to configure GCC. + +

Further installation notes and other useful information about AVR tools +can also be obtained from: + +

+ +

We strongly recommend using binutils 2.13 or newer. + +

The following error: +

       Error: register required
+
+

indicates that you should upgrade to a newer version of the binutils. + +


+ +

Blackfin

+ +

The Blackfin processor, an Analog Devices DSP. +See “Blackfin Options” in the main manual + +

More information, and a version of binutils with support for this processor, +is available at http://blackfin.uclinux.org + +


+ +

c4x

+ +

Texas Instruments TMS320C3x and TMS320C4x Floating Point Digital Signal +Processors. These are used in embedded applications. There are no +standard Unix configurations. +See “TMS320C3x/C4x Options” in the main manual +for the list of supported MCU types. + +

GCC can be configured as a cross compiler for both the C3x and C4x +architectures on the same system. Use `configure --target=c4x +--enable-languages="c,c++"' to configure. + +

Further installation notes and other useful information about C4x tools +can also be obtained from: + +

+ +


+ +

CRIS

+ +

CRIS is the CPU architecture in Axis Communications ETRAX system-on-a-chip +series. These are used in embedded applications. + +

See “CRIS Options” in the main manual +for a list of CRIS-specific options. + +

There are a few different CRIS targets: +

+
cris-axis-aout
Old target. Includes a multilib for the `elinux' a.out-based +target. No multilibs for newer architecture variants. +
cris-axis-elf
Mainly for monolithic embedded systems. Includes a multilib for the +`v10' core used in `ETRAX 100 LX'. +
cris-axis-linux-gnu
A GNU/Linux port for the CRIS architecture, currently targeting +`ETRAX 100 LX' by default. +
+ +

For cris-axis-aout and cris-axis-elf you need binutils 2.11 +or newer. For cris-axis-linux-gnu you need binutils 2.12 or newer. + +

Pre-packaged tools can be obtained from +ftp://ftp.axis.com/pub/axis/tools/cris/compiler-kit/. More +information about this platform is available at +http://developer.axis.com/. + +


+ +

CRX

+ +

The CRX CompactRISC architecture is a low-power 32-bit architecture with +fast context switching and architectural extensibility features. + +

See “CRX Options” in the main manual for a list of CRX-specific options. + +

Use `configure --target=crx-elf --enable-languages=c,c++' to configure +GCC for building a CRX cross-compiler. The option `--target=crx-elf' +is also used to build the `newlib' C library for CRX. + +

It is also possible to build libstdc++-v3 for the CRX architecture. This +needs to be done in a separate step with the following configure settings: +`gcc/libstdc++-v3/configure --host=crx-elf --with-newlib +--enable-sjlj-exceptions --enable-cxx-flags='-fexceptions -frtti'' + +


+ +

DOS

+ +

Please have a look at the binaries page. + +

You cannot install GCC by itself on MSDOS; it will not compile under +any MSDOS compiler except itself. You need to get the complete +compilation package DJGPP, which includes binaries as well as sources, +and includes all the necessary compilation tools and libraries. + +


+ +

*-*-freebsd*

+ +

The version of binutils installed in /usr/bin probably works with +this release of GCC. However, on FreeBSD 4, bootstrapping against the +latest FSF binutils is known to improve overall testsuite results; and, +on FreeBSD/alpha, using binutils 2.14 or later is required to build libjava. + +

Support for FreeBSD 1 was discontinued in GCC 3.2. + +

Support for FreeBSD 2 will be discontinued after GCC 3.4. The +following was true for GCC 3.1 but the current status is unknown. +For FreeBSD 2 or any mutant a.out versions of FreeBSD 3: All +configuration support and files as shipped with GCC 2.95 are still in +place. FreeBSD 2.2.7 has been known to bootstrap completely; however, +it is unknown which version of binutils was used (it is assumed that it +was the system copy in /usr/bin) and C++ EH failures were noted. + +

For FreeBSD using the ELF file format: DWARF 2 debugging is now the +default for all CPU architectures. It had been the default on +FreeBSD/alpha since its inception. You may use -gstabs instead +of -g, if you really want the old debugging format. There are +no known issues with mixing object files and libraries with different +debugging formats. Otherwise, this release of GCC should now match more +of the configuration used in the stock FreeBSD configuration of GCC. In +particular, --enable-threads is now configured by default. +However, as a general user, do not attempt to replace the system +compiler with this release. Known to bootstrap and check with good +results on FreeBSD 4.9-STABLE and 5-CURRENT. In the past, known to +bootstrap and check with good results on FreeBSD 3.0, 3.4, 4.0, 4.2, +4.3, 4.4, 4.5, 4.8-STABLE. + +

In principle, --enable-threads is now compatible with +--enable-libgcj on FreeBSD. However, it has only been built +and tested on `i386-*-freebsd[45]' and `alpha-*-freebsd[45]'. +The static +library may be incorrectly built (symbols are missing at link time). +There is a rare timing-based startup hang (probably involves an +assumption about the thread library). Multi-threaded boehm-gc (required for +libjava) exposes severe threaded signal-handling bugs on FreeBSD before +4.5-RELEASE. Other CPU architectures +supported by FreeBSD will require additional configuration tuning in, at +the very least, both boehm-gc and libffi. + +

Shared libgcc_s.so is now built and installed by default. + +


+ +

h8300-hms

+ +

Renesas H8/300 series of processors. + +

Please have a look at the binaries page. + +

The calling convention and structure layout has changed in release 2.6. +All code must be recompiled. The calling convention now passes the +first three arguments in function calls in registers. Structures are no +longer a multiple of 2 bytes. + +


+ +

hppa*-hp-hpux*

+ +

Support for HP-UX version 9 and older was discontinued in GCC 3.4. + +

We require using gas/binutils on all hppa platforms; +you may encounter a variety of problems if you try to use the HP assembler. + +

Specifically, -g does not work on HP-UX (since that system +uses a peculiar debugging format which GCC does not know about), unless +you use GAS and GDB. It may be helpful to configure GCC with the +--with-gnu-as and +--with-as=... options to ensure that GCC can find GAS. + +

If you wish to use the pa-risc 2.0 architecture support with a 32-bit +runtime, you must use gas/binutils 2.11 or newer. + +

There are two default scheduling models for instructions. These are +PROCESSOR_7100LC and PROCESSOR_8000. They are selected from the pa-risc +architecture specified for the target machine when configuring. +PROCESSOR_8000 is the default. PROCESSOR_7100LC is selected when +the target is a `hppa1*' machine. + +

The PROCESSOR_8000 model is not well suited to older processors. Thus, +it is important to completely specify the machine architecture when +configuring if you want a model other than PROCESSOR_8000. The macro +TARGET_SCHED_DEFAULT can be defined in BOOT_CFLAGS if a different +default scheduling model is desired. + +

As of GCC 4.0, GCC uses the UNIX 95 namespace for HP-UX 10.10 +through 11.00, and the UNIX 98 namespace for HP-UX 11.11 and later. +This namespace change might cause problems when bootstrapping with +an earlier version of GCC or the HP compiler as essentially the same +namespace is required for an entire build. This problem can be avoided +in a number of ways. With HP cc, UNIX_STD can be set to `95' +or `98'. Another way is to add an appropriate set of predefines +to CC. The description for the munix= option contains +a list of the predefines used with each standard. + +

As of GCC 4.1, DWARF2 exception handling is available on HP-UX. +It is now the default. This exposed a bug in the handling of data +relocations in the GAS assembler. The handling of 64-bit data relocations +was seriously broken, affecting debugging and exception support on all +`hppa64-*-*' targets. Under some circumstances, 32-bit data relocations +could also be handled incorrectly. This problem is fixed in GAS version +2.16.91 20051125. + +

GCC versions prior to 4.1 incorrectly passed and returned complex +values. They are now passed in the same manner as aggregates. + +

More specific information to `hppa*-hp-hpux*' targets follows. + +


+ +

hppa*-hp-hpux10

+ +

For hpux10.20, we highly recommend you pick up the latest sed patch +PHCO_19798 from HP. HP has two sites which provide patches free of +charge: + +

+ +

The HP assembler on these systems has some problems. Most notably the +assembler inserts timestamps into each object file it creates, causing +the 3-stage comparison test to fail during a bootstrap. +You should be able to continue by saying `make all-host all-target' +after getting the failure from `make'. + +

GCC 4.0 requires CVS binutils as of April 28, 2004 or later. Earlier +versions require binutils 2.8 or later. + +

The C++ ABI has changed incompatibly in GCC 4.0. COMDAT subspaces are +used for one-only code and data. This resolves many of the previous +problems in using C++ on this target. However, the ABI is not compatible +with the one implemented under HP-UX 11 using secondary definitions. + +


+ +

hppa*-hp-hpux11

+ +

GCC 3.0 and up support HP-UX 11. GCC 2.95.x is not supported and cannot +be used to compile GCC 3.0 and up. + +

Refer to binaries for information about obtaining +precompiled GCC binaries for HP-UX. Precompiled binaries must be obtained +to build the Ada language as it can't be bootstrapped using C. Ada is +only available for the 32-bit PA-RISC runtime. The libffi and libjava +haven't been ported to HP-UX and don't build. + +

Starting with GCC 3.4 an ISO C compiler is required to bootstrap. The +bundled compiler supports only traditional C; you will need either HP's +unbundled compiler, or a binary distribution of GCC. + +

It is possible to build GCC 3.3 starting with the bundled HP compiler, +but the process requires several steps. GCC 3.3 can then be used to +build later versions. The fastjar program contains ISO C code and +can't be built with the HP bundled compiler. This problem can be +avoided by not building the Java language. For example, use the +--enable-languages="c,c++,f77,objc" option in your configure +command. + +

There are several possible approaches to building the distribution. +Binutils can be built first using the HP tools. Then, the GCC +distribution can be built. The second approach is to build GCC +first using the HP tools, then build binutils, then rebuild GCC. +There have been problems with various binary distributions, so it +is best not to start from a binary distribution. + +

On 64-bit capable systems, there are two distinct targets. Different +installation prefixes must be used if both are to be installed on +the same system. The `hppa[1-2]*-hp-hpux11*' target generates code +for the 32-bit PA-RISC runtime architecture and uses the HP linker. +The `hppa64-hp-hpux11*' target generates 64-bit code for the +PA-RISC 2.0 architecture. The HP and GNU linkers are both supported +for this target. + +

The script config.guess now selects the target type based on the compiler +detected during configuration. You must define PATH or CC so +that configure finds an appropriate compiler for the initial bootstrap. +When CC is used, the definition should contain the options that are +needed whenever CC is used. + +

Specifically, options that determine the runtime architecture must be +in CC to correctly select the target for the build. It is also +convenient to place many other compiler options in CC. For example, +CC="cc -Ac +DA2.0W -Wp,-H16376 -D_CLASSIC_TYPES -D_HPUX_SOURCE" +can be used to bootstrap the GCC 3.3 branch with the HP compiler in +64-bit K&R/bundled mode. The +DA2.0W option will result in +the automatic selection of the `hppa64-hp-hpux11*' target. The +macro definition table of cpp needs to be increased for a successful +build with the HP compiler. _CLASSIC_TYPES and _HPUX_SOURCE need to +be defined when building with the bundled compiler, or when using the +-Ac option. These defines aren't necessary with -Ae. + +

It is best to explicitly configure the `hppa64-hp-hpux11*' target +with the --with-ld=... option. This overrides the standard +search for ld. The two linkers supported on this target require different +commands. The default linker is determined during configuration. As a +result, it's not possible to switch linkers in the middle of a GCC build. +This has been been reported to sometimes occur in unified builds of +binutils and GCC. + +

GCC 3.0 through 3.2 require binutils 2.11 or above. GCC 3.3 through +GCC 4.0 require binutils 2.14 or later. + +

Although the HP assembler can be used for an initial build, it shouldn't +be used with any languages other than C and perhaps Fortran due to its +many limitations. For example, it does not support weak symbols or alias +definitions. As a result, explicit template instantiations are required +when using C++. This makes it difficult if not impossible to build many +C++ applications. You can't generate debugging information when using +the HP assembler. Finally, bootstrapping fails in the final +comparison of object modules due to the time stamps that it inserts into +the modules. The bootstrap can be continued from this point with +`make all-host all-target'. + +

A recent linker patch must be installed for the correct operation of +GCC 3.3 and later. PHSS_26559 and PHSS_24304 are the +oldest linker patches that are known to work. They are for HP-UX +11.00 and 11.11, respectively. PHSS_24303, the companion to +PHSS_24304, might be usable but it hasn't been tested. These +patches have been superseded. Consult the HP patch database to obtain +the currently recommended linker patch for your system. + +

The patches are necessary for the support of weak symbols on the +32-bit port, and for the running of initializers and finalizers. Weak +symbols are implemented using SOM secondary definition symbols. Prior +to HP-UX 11, there are bugs in the linker support for secondary symbols. +The patches correct a problem of linker core dumps creating shared +libraries containing secondary symbols, as well as various other +linking issues involving secondary symbols. + +

GCC 3.3 uses the ELF DT_INIT_ARRAY and DT_FINI_ARRAY capabilities to +run initializers and finalizers on the 64-bit port. The 32-bit port +uses the linker +init and +fini options for the same +purpose. The patches correct various problems with the +init/+fini +options, including program core dumps. Binutils 2.14 corrects a +problem on the 64-bit port resulting from HP's non-standard use of +the .init and .fini sections for array initializers and finalizers. + +

There are a number of issues to consider in selecting which linker to +use with the 64-bit port. The GNU 64-bit linker can only create dynamic +binaries. The -static option causes linking with archive +libraries but doesn't produce a truly static binary. Dynamic binaries +still require final binding by the dynamic loader to resolve a set of +dynamic-loader-defined symbols. The default behavior of the HP linker +is the same as the GNU linker. However, it can generate true 64-bit +static binaries using the +compat option. + +

The HP 64-bit linker doesn't support linkonce semantics. As a +result, C++ programs have many more sections than they should. + +

The GNU 64-bit linker has some issues with shared library support +and exceptions. As a result, we only support libgcc in archive +format. For similar reasons, dwarf2 unwind and exception support +are disabled. The GNU linker also has problems creating binaries +with -static. It doesn't provide stubs for internal +calls to global functions in shared libraries, so these calls +can't be overloaded. + +

Thread support is not implemented in GCC 3.0 through 3.2, so the +--enable-threads configure option does not work. In 3.3 +and later, POSIX threads are supported. The optional DCE thread +library is not supported. + +

This port still is undergoing significant development. + +


+ +

*-*-linux-gnu

+ +

Versions of libstdc++-v3 starting with 3.2.1 require bugfixes present +in glibc 2.2.5 and later. More information is available in the +libstdc++-v3 documentation. + +


+ +

i?86-*-linux*aout

+ +

Use this configuration to generate a.out binaries on Linux-based +GNU systems. This configuration is being superseded. + +


+ +

i?86-*-linux*

+ +

As of GCC 3.3, binutils 2.13.1 or later is required for this platform. +See bug 10877 for more information. + +

If you receive Signal 11 errors when building on GNU/Linux, then it is +possible you have a hardware problem. Further information on this can be +found on www.bitwizard.nl. + +


+ +

i?86-*-sco3.2v5*

+ +

Use this for the SCO OpenServer Release 5 family of operating systems. + +

Unlike earlier versions of GCC, the ability to generate COFF with this +target is no longer provided. + +

Earlier versions of GCC emitted DWARF 1 when generating ELF to allow +the system debugger to be used. That support was too burdensome to +maintain. GCC now emits only DWARF 2 for this target. This means you +may use either the UDK debugger or GDB to debug programs built by this +version of GCC. + +

GCC is now only supported on releases 5.0.4 and later, and requires that +you install Support Level Supplement OSS646B or later, and Support Level +Supplement OSS631C or later. If you are using release 5.0.7 of +OpenServer, you must have at least the first maintenance pack installed +(this includes the relevant portions of OSS646). OSS646, also known as +the “Execution Environment Update”, provides updated link editors and +assemblers, as well as updated standard C and math libraries. The C +startup modules are also updated to support the System V gABI draft, and +GCC relies on that behavior. OSS631 provides a collection of commonly +used open source libraries, some of which GCC depends on (such as GNU +gettext and zlib). SCO OpenServer Release 5.0.7 has all of this built +in by default, but OSS631C and later also apply to that release. Please +visit +ftp://ftp.sco.com/pub/openserver5 +for the latest versions of these (and other potentially useful) +supplements. + +

Although there is support for using the native assembler, it is +recommended that you configure GCC to use the GNU assembler. You do +this by using the flags +--with-gnu-as. You should +use a modern version of GNU binutils. Version 2.13.2.1 was used for all +testing. In general, only the --with-gnu-as option is tested. +A modern bintuils (as well as a plethora of other development related +GNU utilities) can be found in Support Level Supplement OSS658A, the +“GNU Development Tools” package. See the SCO web and ftp sites for details. +That package also contains the currently “officially supported” version of +GCC, version 2.95.3. It is useful for bootstrapping this version. + +


+ +

i?86-*-solaris2.10

+ +

Use this for Solaris 10 or later on x86 and x86-64 systems. This +configuration is supported by GCC 4.0 and later versions only. + +

It is recommended that you configure GCC to use the GNU assembler in +/usr/sfw/bin/gas but the Sun linker, using the options +--with-gnu-as --with-as=/usr/sfw/bin/gas --without-gnu-ld +--with-ld=/usr/ccs/bin/ld. + +


+ +

i?86-*-udk

+ +

This target emulates the SCO Universal Development Kit and requires that +package be installed. (If it is installed, you will have a +/udk/usr/ccs/bin/cc file present.) It's very much like the +`i?86-*-unixware7*' target +but is meant to be used when hosting on a system where UDK isn't the +default compiler such as OpenServer 5 or Unixware 2. This target will +generate binaries that will run on OpenServer, Unixware 2, or Unixware 7, +with the same warnings and caveats as the SCO UDK. + +

This target is a little tricky to build because we have to distinguish +it from the native tools (so it gets headers, startups, and libraries +from the right place) while making the tools not think we're actually +building a cross compiler. The easiest way to do this is with a configure +command like this: + +

         CC=/udk/usr/ccs/bin/cc /your/path/to/gcc/configure \
+           --host=i686-pc-udk --target=i686-pc-udk --program-prefix=udk-
+
+

You should substitute `i686' in the above command with the appropriate +processor for your host. + +

After the usual `make' and +`make install', you can then access the UDK-targeted GCC +tools by adding udk- before the commonly known name. For +example, to invoke the C compiler, you would use udk-gcc. +They will coexist peacefully with any native-target GCC tools you may +have installed. + +


+ +

ia64-*-linux

+ +

IA-64 processor (also known as IPF, or Itanium Processor Family) +running GNU/Linux. + +

If you are using the installed system libunwind library with +--with-system-libunwind, then you must use libunwind 0.98 or +later. + +

None of the following versions of GCC has an ABI that is compatible +with any of the other versions in this list, with the exception that +Red Hat 2.96 and Trillian 000171 are compatible with each other: +3.1, 3.0.2, 3.0.1, 3.0, Red Hat 2.96, and Trillian 000717. +This primarily affects C++ programs and programs that create shared libraries. +GCC 3.1 or later is recommended for compiling linux, the kernel. +As of version 3.1 GCC is believed to be fully ABI compliant, and hence no +more major ABI changes are expected. + +


+ +

ia64-*-hpux*

+ +

Building GCC on this target requires the GNU Assembler. The bundled HP +assembler will not work. To prevent GCC from using the wrong assembler, +the option --with-gnu-as may be necessary. + +

The GCC libunwind library has not been ported to HPUX. This means that for +GCC versions 3.2.3 and earlier, --enable-libunwind-exceptions +is required to build GCC. For GCC 3.3 and later, this is the default. +For gcc 3.4.3 and later, --enable-libunwind-exceptions is +removed and the system libunwind library will always be used. + +


+ + +

*-ibm-aix*

+ +

Support for AIX version 3 and older was discontinued in GCC 3.4. + +

“out of memory” bootstrap failures may indicate a problem with +process resource limits (ulimit). Hard limits are configured in the +/etc/security/limits system configuration file. + +

To speed up the configuration phases of bootstrapping and installing GCC, +one may use GNU Bash instead of AIX /bin/sh, e.g., + +

        % CONFIG_SHELL=/opt/freeware/bin/bash
+        % export CONFIG_SHELL
+
+

and then proceed as described in the build instructions, where we strongly recommend specifying an absolute path +to invoke srcdir/configure. + +

Because GCC on AIX is built as a 32-bit executable by default, +(although it can generate 64-bit programs) the GMP and MPFR libraries +required by gfortran must be 32-bit libraries. Building GMP and MPFR +as static archive libraries works better than shared libraries. + +

Errors involving alloca when building GCC generally are due +to an incorrect definition of CC in the Makefile or mixing files +compiled with the native C compiler and GCC. During the stage1 phase of +the build, the native AIX compiler must be invoked as cc +(not xlc). Once configure has been informed of +xlc, one needs to use `make distclean' to remove the +configure cache files and ensure that CC environment variable +does not provide a definition that will confuse configure. +If this error occurs during stage2 or later, then the problem most likely +is the version of Make (see above). + +

The native as and ld are recommended for bootstrapping +on AIX 4 and required for bootstrapping on AIX 5L. The GNU Assembler +reports that it supports WEAK symbols on AIX 4, which causes GCC to try to +utilize weak symbol functionality although it is not supported. The GNU +Assembler and Linker do not support AIX 5L sufficiently to bootstrap GCC. +The native AIX tools do interoperate with GCC. + +

Building libstdc++.a requires a fix for an AIX Assembler bug +APAR IY26685 (AIX 4.3) or APAR IY25528 (AIX 5.1). It also requires a +fix for another AIX Assembler bug and a co-dependent AIX Archiver fix +referenced as APAR IY53606 (AIX 5.2) or a APAR IY54774 (AIX 5.1) + +

`libstdc++' in GCC 3.4 increments the major version number of the +shared object and GCC installation places the libstdc++.a +shared library in a common location which will overwrite the and GCC +3.3 version of the shared library. Applications either need to be +re-linked against the new shared library or the GCC 3.1 and GCC 3.3 +versions of the `libstdc++' shared object needs to be available +to the AIX runtime loader. The GCC 3.1 `libstdc++.so.4', if +present, and GCC 3.3 `libstdc++.so.5' shared objects can be +installed for runtime dynamic loading using the following steps to set +the `F_LOADONLY' flag in the shared object for each +multilib libstdc++.a installed: + +

Extract the shared objects from the currently installed +libstdc++.a archive: +

        % ar -x libstdc++.a libstdc++.so.4 libstdc++.so.5
+
+

Enable the `F_LOADONLY' flag so that the shared object will be +available for runtime dynamic loading, but not linking: +

        % strip -e libstdc++.so.4 libstdc++.so.5
+
+

Archive the runtime-only shared object in the GCC 3.4 +libstdc++.a archive: +

        % ar -q libstdc++.a libstdc++.so.4 libstdc++.so.5
+
+

Linking executables and shared libraries may produce warnings of +duplicate symbols. The assembly files generated by GCC for AIX always +have included multiple symbol definitions for certain global variable +and function declarations in the original program. The warnings should +not prevent the linker from producing a correct library or runnable +executable. + +

AIX 4.3 utilizes a “large format” archive to support both 32-bit and +64-bit object modules. The routines provided in AIX 4.3.0 and AIX 4.3.1 +to parse archive libraries did not handle the new format correctly. +These routines are used by GCC and result in error messages during +linking such as “not a COFF file”. The version of the routines shipped +with AIX 4.3.1 should work for a 32-bit environment. The -g +option of the archive command may be used to create archives of 32-bit +objects using the original “small format”. A correct version of the +routines is shipped with AIX 4.3.2 and above. + +

Some versions of the AIX binder (linker) can fail with a relocation +overflow severe error when the -bbigtoc option is used to link +GCC-produced object files into an executable that overflows the TOC. A fix +for APAR IX75823 (OVERFLOW DURING LINK WHEN USING GCC AND -BBIGTOC) is +available from IBM Customer Support and from its +techsupport.services.ibm.com +website as PTF U455193. + +

The AIX 4.3.2.1 linker (bos.rte.bind_cmds Level 4.3.2.1) will dump core +with a segmentation fault when invoked by any version of GCC. A fix for +APAR IX87327 is available from IBM Customer Support and from its +techsupport.services.ibm.com +website as PTF U461879. This fix is incorporated in AIX 4.3.3 and above. + +

The initial assembler shipped with AIX 4.3.0 generates incorrect object +files. A fix for APAR IX74254 (64BIT DISASSEMBLED OUTPUT FROM COMPILER FAILS +TO ASSEMBLE/BIND) is available from IBM Customer Support and from its +techsupport.services.ibm.com +website as PTF U453956. This fix is incorporated in AIX 4.3.1 and above. + +

AIX provides National Language Support (NLS). Compilers and assemblers +use NLS to support locale-specific representations of various data +formats including floating-point numbers (e.g., `.' vs `,' for +separating decimal fractions). There have been problems reported where +GCC does not produce the same floating-point formats that the assembler +expects. If one encounters this problem, set the LANG +environment variable to `C' or `En_US'. + +

By default, GCC for AIX 4.1 and above produces code that can be used on +both Power or PowerPC processors. + +

A default can be specified with the -mcpu=cpu_type +switch and using the configure option --with-cpu-cpu_type. + +


+ +

iq2000-*-elf

+ +

Vitesse IQ2000 processors. These are used in embedded +applications. There are no standard Unix configurations. + +


+ +

m32c-*-elf

+ +

Renesas M32C processor. +This configuration is intended for embedded systems. + +


+ +

m32r-*-elf

+ +

Renesas M32R processor. +This configuration is intended for embedded systems. + +


+ +

m6811-elf

+ +

Motorola 68HC11 family micro controllers. These are used in embedded +applications. There are no standard Unix configurations. + +


+ +

m6812-elf

+ +

Motorola 68HC12 family micro controllers. These are used in embedded +applications. There are no standard Unix configurations. + +


+ +

m68k-hp-hpux

+ +

HP 9000 series 300 or 400 running HP-UX. HP-UX version 8.0 has a bug in +the assembler that prevents compilation of GCC. This +bug manifests itself during the first stage of compilation, while +building libgcc2.a: + +

     _floatdisf
+     cc1: warning: `-g' option not supported on this version of GCC
+     cc1: warning: `-g1' option not supported on this version of GCC
+     ./xgcc: Internal compiler error: program as got fatal signal 11
+
+

A patched version of the assembler is available as the file +ftp://altdorf.ai.mit.edu/archive/cph/hpux-8.0-assembler. If you +have HP software support, the patch can also be obtained directly from +HP, as described in the following note: + +

+This is the patched assembler, to patch SR#1653-010439, where the +assembler aborts on floating point constants. + +

The bug is not really in the assembler, but in the shared library +version of the function “cvtnum(3c)”. The bug on “cvtnum(3c)” is +SR#4701-078451. Anyway, the attached assembler uses the archive +library version of “cvtnum(3c)” and thus does not exhibit the bug. +

+ +

This patch is also known as PHCO_4484. + +

In addition gdb does not understand that native HP-UX format, so +you must use gas if you wish to use gdb. + +

On HP-UX version 8.05, but not on 8.07 or more recent versions, the +fixproto shell script triggers a bug in the system shell. If you +encounter this problem, upgrade your operating system or use BASH (the +GNU shell) to run fixproto. This bug will cause the fixproto +program to report an error of the form: + +

     ./fixproto: sh internal 1K buffer overflow
+
+

To fix this, you can also change the first line of the fixproto script +to look like: + +

     #!/bin/ksh
+
+


+ +

mips-*-*

+ +

If on a MIPS system you get an error message saying “does not have gp +sections for all it's [sic] sectons [sic]”, don't worry about it. This +happens whenever you use GAS with the MIPS linker, but there is not +really anything wrong, and it is okay to use the output file. You can +stop such warnings by installing the GNU linker. + +

It would be nice to extend GAS to produce the gp tables, but they are +optional, and there should not be a warning about their absence. + +

The libstdc++ atomic locking routines for MIPS targets requires MIPS II +and later. A patch went in just after the GCC 3.3 release to +make `mips*-*-*' use the generic implementation instead. You can also +configure for `mipsel-elf' as a workaround. The +`mips*-*-linux*' target continues to use the MIPS II routines. More +work on this is expected in future releases. + +

MIPS systems check for division by zero (unless +-mno-check-zero-division is passed to the compiler) by +generating either a conditional trap or a break instruction. Using +trap results in smaller code, but is only supported on MIPS II and +later. Also, some versions of the Linux kernel have a bug that +prevents trap from generating the proper signal (SIGFPE). To enable +the use of break, use the --with-divide=breaks +configure option when configuring GCC. The default is to +use traps on systems that support them. + +

Cross-compilers for the MIPS as target using the MIPS assembler +currently do not work, because the auxiliary programs +mips-tdump.c and mips-tfile.c can't be compiled on +anything but a MIPS. It does work to cross compile for a MIPS +if you use the GNU assembler and linker. + +

The assembler from GNU binutils 2.17 and earlier has a bug in the way +it sorts relocations for REL targets (o32, o64, EABI). This can cause +bad code to be generated for simple C++ programs. Also the linker +from GNU binutils versions prior to 2.17 has a bug which causes the +runtime linker stubs in very large programs, like libgcj.so, to +be incorrectly generated. Binutils CVS snapshots and releases made +after Nov. 9, 2006 are thought to be free from both of these problems. + +


+ +

mips-sgi-irix5

+ +

In order to compile GCC on an SGI running IRIX 5, the `compiler_dev.hdr' +subsystem must be installed from the IDO CD-ROM supplied by SGI. +It is also available for download from +ftp://ftp.sgi.com/sgi/IRIX5.3/iris-development-option-5.3.tardist. + +

If you use the MIPS C compiler to bootstrap, it may be necessary +to increase its table size for switch statements with the +-Wf,-XNg1500 option. If you use the -O2 +optimization option, you also need to use -Olimit 3000. + +

To enable debugging under IRIX 5, you must use GNU binutils 2.15 or +later, and use the --with-gnu-ld configure option +when configuring GCC. You need to use GNU ar and nm, +also distributed with GNU binutils. + +

Some users have reported that /bin/sh will hang during bootstrap. +This problem can be avoided by running the commands: + +

        % CONFIG_SHELL=/bin/ksh
+        % export CONFIG_SHELL
+
+

before starting the build. + +


+ +

mips-sgi-irix6

+ +

If you are using SGI's MIPSpro cc as your bootstrap compiler, you must +ensure that the N32 ABI is in use. To test this, compile a simple C +file with cc and then run file on the +resulting object file. The output should look like: + +

     test.o: ELF N32 MSB ...
+
+

If you see: + +

     test.o: ELF 32-bit MSB ...
+
+

or + +

     test.o: ELF 64-bit MSB ...
+
+

then your version of cc uses the O32 or N64 ABI by default. You +should set the environment variable CC to `cc -n32' +before configuring GCC. + +

If you want the resulting gcc to run on old 32-bit systems +with the MIPS R4400 CPU, you need to ensure that only code for the `mips3' +instruction set architecture (ISA) is generated. While GCC 3.x does +this correctly, both GCC 2.95 and SGI's MIPSpro cc may change +the ISA depending on the machine where GCC is built. Using one of them +as the bootstrap compiler may result in `mips4' code, which won't run at +all on `mips3'-only systems. For the test program above, you should see: + +

     test.o: ELF N32 MSB mips-3 ...
+
+

If you get: + +

     test.o: ELF N32 MSB mips-4 ...
+
+

instead, you should set the environment variable CC to `cc +-n32 -mips3' or `gcc -mips3' respectively before configuring GCC. + +

MIPSpro C 7.4 may cause bootstrap failures, due to a bug when inlining +memcmp. Either add -U__INLINE_INTRINSICS to the CC +environment variable as a workaround or upgrade to MIPSpro C 7.4.1m. + +

GCC on IRIX 6 is usually built to support the N32, O32 and N64 ABIs. If +you build GCC on a system that doesn't have the N64 libraries installed +or cannot run 64-bit binaries, +you need to configure with --disable-multilib so GCC doesn't +try to use them. This will disable building the O32 libraries, too. +Look for /usr/lib64/libc.so.1 to see if you +have the 64-bit libraries installed. + +

To enable debugging for the O32 ABI, you must use GNU as from +GNU binutils 2.15 or later. You may also use GNU ld, but +this is not required and currently causes some problems with Ada. + +

The --enable-threads option doesn't currently work, a patch is +in preparation for a future release. The --enable-libgcj +option is disabled by default: IRIX 6 uses a very low default limit +(20480) for the command line length. Although libtool contains a +workaround for this problem, at least the N64 `libgcj' is known not +to build despite this, running into an internal error of the native +ld. A sure fix is to increase this limit (`ncargs') to +its maximum of 262144 bytes. If you have root access, you can use the +systune command to do this. + +

wchar_t support in `libstdc++' is not available for old +IRIX 6.5.x releases, x < 19. The problem cannot be autodetected +and in order to build GCC for such targets you need to configure with +--disable-wchar_t. + +

See http://freeware.sgi.com/ for more +information about using GCC on IRIX platforms. + +


+ +

powerpc-*-*

+ +

You can specify a default version for the -mcpu=cpu_type +switch by using the configure option --with-cpu-cpu_type. + +


+ +

powerpc-*-darwin*

+ +

PowerPC running Darwin (Mac OS X kernel). + +

Pre-installed versions of Mac OS X may not include any developer tools, +meaning that you will not be able to build GCC from source. Tool +binaries are available at +http://developer.apple.com/darwin/projects/compiler/ (free +registration required). + +

This version of GCC requires at least cctools-590.7. + +

The version of GCC shipped by Apple typically includes a number of +extensions not available in a standard GCC release. These extensions +are generally for backwards compatibility and best avoided. + +


+ +

powerpc-*-elf, powerpc-*-sysv4

+ +

PowerPC system in big endian mode, running System V.4. + +


+ +

powerpc*-*-linux-gnu*

+ +

You will need +binutils 2.15 +or newer for a working GCC. + +


+ +

powerpc-*-netbsd*

+ +

PowerPC system in big endian mode running NetBSD. To build the +documentation you will need Texinfo version 4.4 (NetBSD 1.5.1 included +Texinfo version 3.12). + +


+ +

powerpc-*-eabisim

+ +

Embedded PowerPC system in big endian mode for use in running under the +PSIM simulator. + +


+ +

powerpc-*-eabi

+ +

Embedded PowerPC system in big endian mode. + +


+ +

powerpcle-*-elf, powerpcle-*-sysv4

+ +

PowerPC system in little endian mode, running System V.4. + +


+ +

powerpcle-*-eabisim

+ +

Embedded PowerPC system in little endian mode for use in running under +the PSIM simulator. + +


+ +

powerpcle-*-eabi

+ +

Embedded PowerPC system in little endian mode. + +


+ +

s390-*-linux*

+ +

S/390 system running GNU/Linux for S/390. + +


+ +

s390x-*-linux*

+ +

zSeries system (64-bit) running GNU/Linux for zSeries. + +


+ +

s390x-ibm-tpf*

+ +

zSeries system (64-bit) running TPF. This platform is +supported as cross-compilation target only. + +


+ + + + +

*-*-solaris2*

+ +

Sun does not ship a C compiler with Solaris 2. To bootstrap and install +GCC you first have to install a pre-built compiler, see the +binaries page for details. + +

The Solaris 2 /bin/sh will often fail to configure +libstdc++-v3, boehm-gc or libjava. We therefore +recommend using the following initial sequence of commands + +

        % CONFIG_SHELL=/bin/ksh
+        % export CONFIG_SHELL
+
+

and proceed as described in the configure instructions. +In addition we strongly recommend specifying an absolute path to invoke +srcdir/configure. + +

Solaris 2 comes with a number of optional OS packages. Some of these +are needed to use GCC fully, namely SUNWarc, +SUNWbtool, SUNWesu, SUNWhea, SUNWlibm, +SUNWsprot, and SUNWtoo. If you did not install all +optional packages when installing Solaris 2, you will need to verify that +the packages that GCC needs are installed. + +

To check whether an optional package is installed, use +the pkginfo command. To add an optional package, use the +pkgadd command. For further details, see the Solaris 2 +documentation. + +

Trying to use the linker and other tools in +/usr/ucb to install GCC has been observed to cause trouble. +For example, the linker may hang indefinitely. The fix is to remove +/usr/ucb from your PATH. + +

The build process works more smoothly with the legacy Sun tools so, if you +have /usr/xpg4/bin in your PATH, we recommend that you place +/usr/bin before /usr/xpg4/bin for the duration of the build. + +

All releases of GNU binutils prior to 2.11.2 have known bugs on this +platform. We recommend the use of GNU binutils 2.11.2 or later, or the +vendor tools (Sun as, Sun ld). Note that your mileage +may vary if you use a combination of the GNU tools and the Sun tools: while +the combination GNU as + Sun ld should reasonably work, +the reverse combination Sun as + GNU ld is known to +cause memory corruption at runtime in some cases for C++ programs. + +

The stock GNU binutils 2.15 release is broken on this platform because of a +single bug. It has been fixed on the 2.15 branch in the CVS repository. +You can obtain a working version by checking out the binutils-2_15-branch +from the CVS repository or applying the patch +http://sourceware.org/ml/binutils-cvs/2004-09/msg00036.html to the +release. + +

We recommend using GNU binutils 2.16 or later in conjunction with GCC 4.x, +or the vendor tools (Sun as, Sun ld). However, for +Solaris 10 and above, an additional patch is required in order for the GNU +linker to be able to cope with a new flavor of shared libraries. You +can obtain a working version by checking out the binutils-2_16-branch from +the CVS repository or applying the patch +http://sourceware.org/ml/binutils-cvs/2005-07/msg00122.html to the +release. + +

Sun bug 4296832 turns up when compiling X11 headers with GCC 2.95 or +newer: g++ will complain that types are missing. These headers assume +that omitting the type means int; this assumption worked for C89 but +is wrong for C++, and is now wrong for C99 also. + +

g++ accepts such (invalid) constructs with the option +-fpermissive; it +will assume that any missing type is int (as defined by C89). + +

There are patches for Solaris 2.6 (105633-56 or newer for SPARC, +106248-42 or newer for Intel), Solaris 7 (108376-21 or newer for SPARC, +108377-20 for Intel), and Solaris 8 (108652-24 or newer for SPARC, +108653-22 for Intel) that fix this bug. + +

Sun bug 4927647 sometimes causes random spurious testsuite failures +related to missing diagnostic output. This bug doesn't affect GCC +itself, rather it is a kernel bug triggered by the expect +program which is used only by the GCC testsuite driver. When the bug +causes the expect program to miss anticipated output, extra +testsuite failures appear. + +

There are patches for Solaris 8 (117350-12 or newer for SPARC, +117351-12 or newer for Intel) and Solaris 9 (117171-11 or newer for +SPARC, 117172-11 or newer for Intel) that address this problem. + +


+ +

sparc-sun-solaris2*

+ +

When GCC is configured to use binutils 2.11.2 or later the binaries +produced are smaller than the ones produced using Sun's native tools; +this difference is quite significant for binaries containing debugging +information. + +

Sun as 4.x is broken in that it cannot cope with long symbol names. +A typical error message might look similar to the following: + +

     /usr/ccs/bin/as: "/var/tmp/ccMsw135.s", line 11041: error:
+       can't compute value of an expression involving an external symbol.
+
+

This is Sun bug 4237974. This is fixed with patch 108908-02 for Solaris +2.6 and has been fixed in later (5.x) versions of the assembler, +starting with Solaris 7. + +

Starting with Solaris 7, the operating system is capable of executing +64-bit SPARC V9 binaries. GCC 3.1 and later properly supports +this; the -m64 option enables 64-bit code generation. +However, if all you want is code tuned for the UltraSPARC CPU, you +should try the -mtune=ultrasparc option instead, which produces +code that, unlike full 64-bit code, can still run on non-UltraSPARC +machines. + +

When configuring on a Solaris 7 or later system that is running a kernel +that supports only 32-bit binaries, one must configure with +--disable-multilib, since we will not be able to build the +64-bit target libraries. + +

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 +use it to bootstrap the final compiler. + +

GCC 3.4 triggers a code generation bug in versions 5.4 (Sun ONE Studio 7) +and 5.5 (Sun ONE Studio 8) of the Sun compiler, which causes a bootstrap +failure in form of a miscompilation of the stage1 compiler by the Sun +compiler. This is Sun bug 4974440. This is fixed with patch 112760-07. + +

GCC 3.4 changed the default debugging format from STABS to DWARF-2 for +32-bit code on Solaris 7 and later. If you use the Sun assembler, this +change apparently runs afoul of Sun bug 4910101 (which is referenced as +a x86-only problem by Sun, probably because they do not use DWARF-2). +A symptom of the problem is that you cannot compile C++ programs like +groff 1.19.1 without getting messages similar to the following: + +

     ld: warning: relocation error: R_SPARC_UA32: ...
+       external symbolic relocation against non-allocatable section
+       .debug_info cannot be processed at runtime: relocation ignored.
+
+

To work around this problem, compile with -gstabs+ instead of +plain -g. + +

When configuring the GNU Multiple Precision Library (GMP) or the MPFR +library on a Solaris 7 or later system, the canonical target triplet +must be specified as the build parameter on the configure +line. This triplet can be obtained by invoking ./config.guess in +the toplevel source directory of GCC (and not that of GMP or MPFR). +For example on a Solaris 7 system: + +

        % ./configure --build=sparc-sun-solaris2.7 --prefix=xxx
+
+


+ +

sparc-sun-solaris2.7

+ +

Sun patch 107058-01 (1999-01-13) for Solaris 7/SPARC triggers a bug in +the dynamic linker. This problem (Sun bug 4210064) affects GCC 2.8 +and later, including all EGCS releases. Sun formerly recommended +107058-01 for all Solaris 7 users, but around 1999-09-01 it started to +recommend it only for people who use Sun's compilers. + +

Here are some workarounds to this problem: +

    +
  • Do not install Sun patch 107058-01 until after Sun releases a +complete patch for bug 4210064. This is the simplest course to take, +unless you must also use Sun's C compiler. Unfortunately 107058-01 +is preinstalled on some new Solaris 7-based hosts, so you may have to +back it out. + +
  • Copy the original, unpatched Solaris 7 +/usr/ccs/bin/as into +/usr/local/libexec/gcc/sparc-sun-solaris2.7/3.4/as, +adjusting the latter name to fit your local conventions and software +version numbers. + +
  • Install Sun patch 106950-03 (1999-05-25) or later. Nobody with +both 107058-01 and 106950-03 installed has reported the bug with GCC +and Sun's dynamic linker. This last course of action is riskiest, +for two reasons. First, you must install 106950 on all hosts that +run code generated by GCC; it doesn't suffice to install it only on +the hosts that run GCC itself. Second, Sun says that 106950-03 is +only a partial fix for bug 4210064, but Sun doesn't know whether the +partial fix is adequate for GCC. Revision -08 or later should fix +the bug. The current (as of 2004-05-23) revision is -24, and is included in +the Solaris 7 Recommended Patch Cluster. +
+ +

GCC 3.3 triggers a bug in version 5.0 Alpha 03/27/98 of the Sun assembler, +which causes a bootstrap failure when linking the 64-bit shared version of +libgcc. A typical error message is: + +

     ld: fatal: relocation error: R_SPARC_32: file libgcc/sparcv9/_muldi3.o:
+       symbol <unknown>:  offset 0xffffffff7ec133e7 is non-aligned.
+
+

This bug has been fixed in the final 5.0 version of the assembler. + +

A similar problem was reported for version Sun WorkShop 6 99/08/18 of the +Sun assembler, which causes a bootstrap failure with GCC 4.0.0: + +

     ld: fatal: relocation error: R_SPARC_DISP32:
+       file .libs/libstdc++.lax/libsupc++convenience.a/vterminate.o:
+         symbol <unknown>: offset 0xfccd33ad is non-aligned
+
+

This bug has been fixed in more recent revisions of the assembler. + +


+ +

sparc-*-linux*

+ +

GCC versions 3.0 and higher require binutils 2.11.2 and glibc 2.2.4 +or newer on this platform. All earlier binutils and glibc +releases mishandled unaligned relocations on sparc-*-* targets. + +


+ +

sparc64-*-solaris2*

+ +

When configuring the GNU Multiple Precision Library (GMP) or the +MPFR library, the canonical target triplet must be specified as +the build parameter on the configure line. For example +on a Solaris 7 system: + +

        % ./configure --build=sparc64-sun-solaris2.7 --prefix=xxx
+
+

The following compiler flags must be specified in the configure +step in order to bootstrap this target with the Sun compiler: + +

        % CC="cc -xarch=v9 -xildoff" srcdir/configure [options] [target]
+
+

-xarch=v9 specifies the SPARC-V9 architecture to the Sun toolchain +and -xildoff turns off the incremental linker. + +


+ +

sparcv9-*-solaris2*

+ +

This is a synonym for sparc64-*-solaris2*. + +


+ +

*-*-sysv*

+ +

On System V release 3, you may get this error message +while linking: + +

     ld fatal: failed to write symbol name something
+      in strings table for file whatever
+
+

This probably indicates that the disk is full or your ulimit won't allow +the file to be as large as it needs to be. + +

This problem can also result because the kernel parameter MAXUMEM +is too small. If so, you must regenerate the kernel and make the value +much larger. The default value is reported to be 1024; a value of 32768 +is said to work. Smaller values may also work. + +

On System V, if you get an error like this, + +

     /usr/local/lib/bison.simple: In function `yyparse':
+     /usr/local/lib/bison.simple:625: virtual memory exhausted
+
+

that too indicates a problem with disk space, ulimit, or MAXUMEM. + +

On a System V release 4 system, make sure /usr/bin precedes +/usr/ucb in PATH. The cc command in +/usr/ucb uses libraries which have bugs. + +


+ +

vax-dec-ultrix

+ +

Don't try compiling with VAX C (vcc). It produces incorrect code +in some cases (for example, when alloca is used). + +


+ +

*-*-vxworks*

+ +

Support for VxWorks is in flux. At present GCC supports only the +very recent VxWorks 5.5 (aka Tornado 2.2) release, and only on PowerPC. +We welcome patches for other architectures supported by VxWorks 5.5. +Support for VxWorks AE would also be welcome; we believe this is merely +a matter of writing an appropriate “configlette” (see below). We are +not interested in supporting older, a.out or COFF-based, versions of +VxWorks in GCC 3. + +

VxWorks comes with an older version of GCC installed in +$WIND_BASE/host; we recommend you do not overwrite it. +Choose an installation prefix entirely outside $WIND_BASE. +Before running configure, create the directories prefix +and prefix/bin. Link or copy the appropriate assembler, +linker, etc. into prefix/bin, and set your PATH to +include that directory while running both configure and +make. + +

You must give configure the +--with-headers=$WIND_BASE/target/h switch so that it can +find the VxWorks system headers. Since VxWorks is a cross compilation +target only, you must also specify --target=target. +configure will attempt to create the directory +prefix/target/sys-include and copy files into it; +make sure the user running configure has sufficient privilege +to do so. + +

GCC's exception handling runtime requires a special “configlette” +module, contrib/gthr_supp_vxw_5x.c. Follow the instructions in +that file to add the module to your kernel build. (Future versions of +VxWorks will incorporate this module.) + +


+ +

x86_64-*-*, amd64-*-*

+ +

GCC supports the x86-64 architecture implemented by the AMD64 processor +(amd64-*-* is an alias for x86_64-*-*) on GNU/Linux, FreeBSD and NetBSD. +On GNU/Linux the default is a bi-arch compiler which is able to generate +both 64-bit x86-64 and 32-bit x86 code (via the -m32 switch). + +


+ +

xtensa-*-elf

+ +

This target is intended for embedded Xtensa systems using the +`newlib' C library. It uses ELF but does not support shared +objects. Designed-defined instructions specified via the +Tensilica Instruction Extension (TIE) language are only supported +through inline assembly. + +

The Xtensa configuration information must be specified prior to +building GCC. The include/xtensa-config.h header +file contains the configuration information. If you created your +own Xtensa configuration with the Xtensa Processor Generator, the +downloaded files include a customized copy of this header file, +which you can use to replace the default header file. + +


+ +

xtensa-*-linux*

+ +

This target is for Xtensa systems running GNU/Linux. It supports ELF +shared objects and the GNU C library (glibc). It also generates +position-independent code (PIC) regardless of whether the +-fpic or -fPIC options are used. In other +respects, this target is the same as the +`xtensa-*-elf' target. + +


+ +

Microsoft Windows (32-bit)

+ +

Ports of GCC are included with the +Cygwin environment. + +

GCC will build under Cygwin without modification; it does not build +with Microsoft's C++ compiler and there are no plans to make it do so. + +


+ +

OS/2

+ +

GCC does not currently support OS/2. However, Andrew Zabolotny has been +working on a generic OS/2 port with pgcc. The current code can be found +at http://www.goof.com/pcg/os2/. + +


+ +

Older systems

+ +

GCC contains support files for many older (1980s and early +1990s) Unix variants. For the most part, support for these systems +has not been deliberately removed, but it has not been maintained for +several years and may suffer from bitrot. + +

Starting with GCC 3.1, each release has a list of “obsoleted” systems. +Support for these systems is still present in that release, but +configure will fail unless the --enable-obsolete +option is given. Unless a maintainer steps forward, support for these +systems will be removed from the next release of GCC. + +

Support for old systems as hosts for GCC can cause problems if the +workarounds for compiler, library and operating system bugs affect the +cleanliness or maintainability of the rest of GCC. In some cases, to +bring GCC up on such a system, if still possible with current GCC, may +require first installing an old version of GCC which did work on that +system, and using it to compile a more recent GCC, to avoid bugs in the +vendor compiler. Old releases of GCC 1 and GCC 2 are available in the +old-releases directory on the GCC mirror sites. Header bugs may generally be avoided using +fixincludes, but bugs or deficiencies in libraries and the +operating system may still cause problems. + +

Support for older systems as targets for cross-compilation is less +problematic than support for them as hosts for GCC; if an enthusiast +wishes to make such a target work again (including resurrecting any of +the targets that never worked with GCC 2, starting from the last +version before they were removed), patches +following the usual requirements would be +likely to be accepted, since they should not affect the support for more +modern targets. + +

For some systems, old versions of GNU binutils may also be useful, +and are available from pub/binutils/old-releases on +sourceware.org mirror sites. + +

Some of the information on specific systems above relates to +such older systems, but much of the information +about GCC on such systems (which may no longer be applicable to +current GCC) is to be found in the GCC texinfo manual. + +


+ +

all ELF targets (SVR4, Solaris 2, etc.)

+ +

C++ support is significantly better on ELF targets if you use the +GNU linker; duplicate copies of +inlines, vtables and template instantiations will be discarded +automatically. + +


+

Return to the GCC Installation page + + + + + + + diff -Nru INSTALL/test.html INSTALL/test.html --- INSTALL/test.html 1970-01-01 01:00:00.000000000 +0100 +++ INSTALL/test.html 2012-12-31 17:06:08.000000000 +0100 @@ -0,0 +1,234 @@ + + +Installing GCC: Testing + + + + + + + + + + +

Installing GCC: Testing

+ +Before you install GCC, we encourage you to run the testsuites and to +compare your results with results from a similar configuration that have +been submitted to the +gcc-testresults mailing list. +Some of these archived results are linked from the build status lists +at http://gcc.gnu.org/buildstat.html, although not everyone who +reports a successful build runs the testsuites and submits the results. +This step is optional and may require you to download additional software, +but it can give you confidence in your new GCC installation or point out +problems before you install and start using your new GCC. + +

First, you must have downloaded the testsuites. +These are part of the full distribution, but if you downloaded the +“core” compiler plus any front ends, you must download the testsuites +separately. + +

Second, you must have the testing tools installed. This includes +DejaGnu, Tcl, and Expect; +the DejaGnu site has links to these. + +

If the directories where runtest and expect were +installed are not in the PATH, you may need to set the following +environment variables appropriately, as in the following example (which +assumes that DejaGnu has been installed under /usr/local): + +

          TCL_LIBRARY = /usr/local/share/tcl8.0
+          DEJAGNULIBS = /usr/local/share/dejagnu
+
+

(On systems such as Cygwin, these paths are required to be actual +paths, not mounts or links; presumably this is due to some lack of +portability in the DejaGnu code.) + +

Finally, you can run the testsuite (which may take a long time): +

          cd objdir; make -k check
+
+

This will test various components of GCC, such as compiler +front ends and runtime libraries. While running the testsuite, DejaGnu +might emit some harmless messages resembling +`WARNING: Couldn't find the global config file.' or +`WARNING: Couldn't find tool init file' that can be ignored. + +

0.1 How can you run the testsuite on selected tests?

+ +

In order to run sets of tests selectively, there are targets +`make check-gcc' and `make check-g++' +in the gcc subdirectory of the object directory. You can also +just run `make check' in a subdirectory of the object directory. + +

A more selective way to just run all gcc execute tests in the +testsuite is to use + +

         make check-gcc RUNTESTFLAGS="execute.exp other-options"
+
+

Likewise, in order to run only the g++ “old-deja” tests in +the testsuite with filenames matching `9805*', you would use + +

         make check-g++ RUNTESTFLAGS="old-deja.exp=9805* other-options"
+
+

The *.exp files are located in the testsuite directories of the GCC +source, the most important ones being compile.exp, +execute.exp, dg.exp and old-deja.exp. +To get a list of the possible *.exp files, pipe the +output of `make check' into a file and look at the +`Running ... .exp' lines. + +

0.2 Passing options and running multiple testsuites

+ +

You can pass multiple options to the testsuite using the +`--target_board' option of DejaGNU, either passed as part of +`RUNTESTFLAGS', or directly to runtest if you prefer to +work outside the makefiles. For example, + +

         make check-g++ RUNTESTFLAGS="--target_board=unix/-O3/-fno-strength-reduce"
+
+

will run the standard g++ testsuites (“unix” is the target name +for a standard native testsuite situation), passing +`-O3 -fno-strength-reduce' to the compiler on every test, i.e., +slashes separate options. + +

You can run the testsuites multiple times using combinations of options +with a syntax similar to the brace expansion of popular shells: + +

         ..."--target_board=arm-sim/{-mhard-float,-msoft-float}{-O1,-O2,-O3,}"
+
+

(Note the empty option caused by the trailing comma in the final group.) +The following will run each testsuite eight times using the `arm-sim' +target, as if you had specified all possible combinations yourself: + +

         --target_board=arm-sim/-mhard-float/-O1
+         --target_board=arm-sim/-mhard-float/-O2
+         --target_board=arm-sim/-mhard-float/-O3
+         --target_board=arm-sim/-mhard-float
+         --target_board=arm-sim/-msoft-float/-O1
+         --target_board=arm-sim/-msoft-float/-O2
+         --target_board=arm-sim/-msoft-float/-O3
+         --target_board=arm-sim/-msoft-float
+
+

They can be combined as many times as you wish, in arbitrary ways. This +list: + +

         ..."--target_board=unix/-Wextra{-O3,-fno-strength-reduce}{-fomit-frame-pointer,}"
+
+

will generate four combinations, all involving `-Wextra'. + +

The disadvantage to this method is that the testsuites are run in serial, +which is a waste on multiprocessor systems. For users with GNU Make and +a shell which performs brace expansion, you can run the testsuites in +parallel by having the shell perform the combinations and make +do the parallel runs. Instead of using `--target_board', use a +special makefile target: + +

         make -jN check-testsuite//test-target/option1/option2/...
+
+

For example, + +

         make -j3 check-gcc//sh-hms-sim/{-m1,-m2,-m3,-m3e,-m4}/{,-nofpu}
+
+

will run three concurrent “make-gcc” testsuites, eventually testing all +ten combinations as described above. Note that this is currently only +supported in the gcc subdirectory. (To see how this works, try +typing echo before the example given here.) + +

0.3 Additional testing for Java Class Libraries

+ +

The Java runtime tests can be executed via `make check' +in the target/libjava/testsuite directory in +the build tree. + +

The Mauve Project provides +a suite of tests for the Java Class Libraries. This suite can be run +as part of libgcj testing by placing the Mauve tree within the libjava +testsuite at libjava/testsuite/libjava.mauve/mauve, or by +specifying the location of that tree when invoking `make', as in +`make MAUVEDIR=~/mauve check'. + +

Jacks +is a free testsuite that tests Java compiler front ends. This suite +can be run as part of libgcj testing by placing the Jacks tree within +the libjava testsuite at libjava/testsuite/libjava.jacks/jacks. + +

0.4 How to interpret test results

+ +

The result of running the testsuite are various *.sum and *.log +files in the testsuite subdirectories. The *.log files contain a +detailed log of the compiler invocations and the corresponding +results, the *.sum files summarize the results. These summaries +contain status codes for all tests: + +

    +
  • PASS: the test passed as expected +
  • XPASS: the test unexpectedly passed +
  • FAIL: the test unexpectedly failed +
  • XFAIL: the test failed as expected +
  • UNSUPPORTED: the test is not supported on this platform +
  • ERROR: the testsuite detected an error +
  • WARNING: the testsuite detected a possible problem +
+ +

It is normal for some tests to report unexpected failures. At the +current time the testing harness does not allow fine grained control +over whether or not a test is expected to fail. This problem should +be fixed in future releases. + +

0.5 Submitting test results

+ +

If you want to report the results to the GCC project, use the +contrib/test_summary shell script. Start it in the objdir with + +

         srcdir/contrib/test_summary -p your_commentary.txt \
+             -m gcc-testresults@gcc.gnu.org |sh
+
+

This script uses the Mail program to send the results, so +make sure it is in your PATH. The file your_commentary.txt is +prepended to the testsuite summary and should contain any special +remarks you have on your results or your build environment. Please +do not edit the testsuite result block or the subject line, as these +messages may be automatically processed. + +


+

Return to the GCC Installation page + + + + + + + + + + diff -Nru config/ChangeLog config/ChangeLog --- config/ChangeLog 2010-10-14 22:27:59.000000000 +0200 +++ config/ChangeLog 2012-12-31 17:06:00.000000000 +0100 @@ -1,3 +1,15 @@ +2008-05-19 Release Manager + + * GCC 4.2.4 released. + +2008-02-01 Release Manager + + * GCC 4.2.3 released. + +2007-10-07 Release Manager + + * GCC 4.2.2 released. + 2007-07-19 Release Manager * GCC 4.2.1 released. diff -Nru configure configure --- configure 2010-10-14 22:28:01.000000000 +0200 +++ configure 2012-12-31 17:06:00.000000000 +0100 @@ -3762,7 +3762,7 @@ # For an installed makeinfo, we require it to be from texinfo 4.4 or # higher, else we use the "missing" dummy. if ${MAKEINFO} --version \ - | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|[5-9])' >/dev/null 2>&1; then + | egrep 'texinfo[^0-9]*(4\.([4-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then : else MAKEINFO="$MISSING makeinfo" diff -Nru configure.in configure.in --- configure.in 2010-10-14 22:28:01.000000000 +0200 +++ configure.in 2012-12-31 17:06:00.000000000 +0100 @@ -2265,7 +2265,7 @@ # For an installed makeinfo, we require it to be from texinfo 4.4 or # higher, else we use the "missing" dummy. if ${MAKEINFO} --version \ - | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|[5-9])' >/dev/null 2>&1; then + | egrep 'texinfo[^0-9]*(4\.([4-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then : else MAKEINFO="$MISSING makeinfo" diff -Nru contrib/ChangeLog contrib/ChangeLog --- contrib/ChangeLog 2010-10-14 22:27:59.000000000 +0200 +++ contrib/ChangeLog 2012-12-31 17:06:00.000000000 +0100 @@ -1,3 +1,19 @@ +2008-05-19 Release Manager + + * GCC 4.2.4 released. + +2008-04-01 Joseph Myers + + * texi2pod.pl: Update from trunk. + +2008-02-01 Release Manager + + * GCC 4.2.3 released. + +2007-10-07 Release Manager + + * GCC 4.2.2 released. + 2007-07-19 Release Manager * GCC 4.2.1 released. diff -Nru contrib/reghunt/ChangeLog contrib/reghunt/ChangeLog --- contrib/reghunt/ChangeLog 2010-10-14 22:27:58.000000000 +0200 +++ contrib/reghunt/ChangeLog 2012-12-31 17:06:00.000000000 +0100 @@ -1,3 +1,15 @@ +2008-05-19 Release Manager + + * GCC 4.2.4 released. + +2008-02-01 Release Manager + + * GCC 4.2.3 released. + +2007-10-07 Release Manager + + * GCC 4.2.2 released. + 2007-07-19 Release Manager * GCC 4.2.1 released. diff -Nru contrib/regression/ChangeLog contrib/regression/ChangeLog --- contrib/regression/ChangeLog 2010-10-14 22:27:58.000000000 +0200 +++ contrib/regression/ChangeLog 2012-12-31 17:06:00.000000000 +0100 @@ -1,3 +1,15 @@ +2008-05-19 Release Manager + + * GCC 4.2.4 released. + +2008-02-01 Release Manager + + * GCC 4.2.3 released. + +2007-10-07 Release Manager + + * GCC 4.2.2 released. + 2007-07-19 Release Manager * GCC 4.2.1 released. diff -Nru contrib/texi2pod.pl contrib/texi2pod.pl --- contrib/texi2pod.pl 2010-10-14 22:27:59.000000000 +0200 +++ contrib/texi2pod.pl 2012-12-31 17:06:00.000000000 +0100 @@ -6,7 +6,7 @@ # 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) +# the Free Software Foundation; either version 3, or (at your option) # any later version. # GCC is distributed in the hope that it will be useful, @@ -218,9 +218,11 @@ s/\@\}/}/g; s/\@\@/&at;/g; - # Inside a verbatim block, handle @var specially. + # Inside a verbatim block, handle @var, @samp and @url specially. if ($shift ne "") { s/\@var\{([^\}]*)\}/<$1>/g; + s/\@samp\{([^\}]*)\}/"$1"/g; + s/\@url\{([^\}]*)\}/<$1>/g; } # POD doesn't interpret E<> inside a verbatim block. @@ -250,7 +252,7 @@ next; }; - /^\@(?:section|unnumbered|unnumberedsec|center)\s+(.+)$/ + /^\@(?:section|unnumbered|unnumberedsec|center|heading)\s+(.+)$/ and $_ = "\n=head2 $1\n"; /^\@subsection\s+(.+)$/ and $_ = "\n=head3 $1\n"; @@ -297,6 +299,7 @@ $ic =~ s/\@(?:code|kbd)/C/; $ic =~ s/\@(?:dfn|var|emph|cite|i)/I/; $ic =~ s/\@(?:file)/F/; + $ic =~ s/\@(?:asis)//; $_ = "\n=over 4\n"; }; @@ -319,8 +322,18 @@ /^\@itemx?\s*(.+)?$/ and do { if (defined $1) { - # Entity escapes prevent munging by the <> processing below. - $_ = "\n=item $ic\<$1\>\n"; + if ($ic) { + if ($endw eq "enumerate") { + $_ = "\n=item $ic $1\n"; + $ic =~ s/(\d+)/$1 + 1/eg; + } else { + # Entity escapes prevent munging by the <> + # processing below. + $_ = "\n=item $ic\<$1\>\n"; + } + } else { + $_ = "\n=item $1\n"; + } } else { $_ = "\n=item $ic\n"; $ic =~ y/A-Ya-y/B-Zb-z/; @@ -376,7 +389,7 @@ s/\@r\{([^\}]*)\}/R<$1>/g; s/\@(?:dfn|var|emph|cite|i)\{([^\}]*)\}/I<$1>/g; s/\@(?:code|kbd)\{([^\}]*)\}/C<$1>/g; - s/\@(?:gccoptlist|samp|strong|key|option|env|command|b)\{([^\}]*)\}/B<$1>/g; + s/\@(?:samp|strong|key|option|env|command|b)\{([^\}]*)\}/B<$1>/g; s/\@sc\{([^\}]*)\}/\U$1/g; s/\@file\{([^\}]*)\}/F<$1>/g; s/\@w\{([^\}]*)\}/S<$1>/g; @@ -412,6 +425,10 @@ s/\@uref\{([^\},]*),([^\},]*)\}/$2 (C<$1>)/g; s/\@uref\{([^\},]*),([^\},]*),([^\},]*)\}/$3/g; + # Handle gccoptlist here, so it can contain the above formatting + # commands. + s/\@gccoptlist\{([^\}]*)\}/B<$1>/g; + # Un-escape <> at this point. s/<//g; diff -Nru fixincludes/fixincl.x fixincludes/fixincl.x --- fixincludes/fixincl.x 2010-10-14 22:28:01.000000000 +0200 +++ fixincludes/fixincl.x 2012-12-31 17:06:00.000000000 +0100 @@ -5654,7 +5654,7 @@ static const char* apzSolaris_Math_4Patch[] = { "format", "#define\tfpclassify(x) \\\n\ - __extension__ ({ __typeof(x) __x_fp = (x); \\\n\ + __extension__ ({ const __typeof(x) __x_fp = (x); \\\n\ \t\t isnan(__x_fp) \\\n\ \t\t ? FP_NAN \\\n\ \t\t : isinf(__x_fp) \\\n\ @@ -5707,8 +5707,12 @@ static const char* apzSolaris_Math_5Patch[] = { "format", "#define\tisfinite(x) \\\n\ - __extension__ ({ __typeof (x) __x_f = (x); \\\n\ -\t\t __builtin_expect(!isnan(__x_f - __x_f), 1); })", + __extension__ ({ const __typeof (x) __x_f = (x); \\\n\ +\t\t __builtin_expect(sizeof(__x_f) == sizeof(float) \\\n\ +\t\t\t ? islessequal(__builtin_fabsf(__x_f),__FLT_MAX__) \\\n\ +\t\t\t : sizeof(__x_f) == sizeof(long double) \\\n\ +\t\t\t ? islessequal(__builtin_fabsl(__x_f),__LDBL_MAX__) \\\n\ +\t\t\t : islessequal(__builtin_fabs(__x_f),__DBL_MAX__), 1); })", "^#define[ \t]+isfinite\\(x\\)[ \t]+__builtin_isfinite\\(x\\)", (char*)NULL }; @@ -5752,8 +5756,12 @@ static const char* apzSolaris_Math_6Patch[] = { "format", "#define\tisinf(x) \\\n\ - __extension__ ({ __typeof (x) __x_i = (x); \\\n\ -\t\t __builtin_expect(!isnan(__x_i) && !isfinite(__x_i), 0); })", + __extension__ ({ const __typeof (x) __x_i = (x); \\\n\ +\t\t __builtin_expect(sizeof(__x_i) == sizeof(float) \\\n\ +\t\t\t ? isgreater(__builtin_fabsf(__x_i),__FLT_MAX__) \\\n\ +\t\t\t : sizeof(__x_i) == sizeof(long double) \\\n\ +\t\t\t ? isgreater(__builtin_fabsl(__x_i),__LDBL_MAX__) \\\n\ +\t\t\t : isgreater(__builtin_fabs(__x_i),__DBL_MAX__), 0); })", "^#define[ \t]+isinf\\(x\\)[ \t]+__builtin_isinf\\(x\\)", (char*)NULL }; @@ -5797,14 +5805,13 @@ static const char* apzSolaris_Math_7Patch[] = { "format", "#define\tisnormal(x) \\\n\ - __extension__ ({ __typeof(x) __x_n = (x); \\\n\ -\t\t if (__x_n < 0.0) __x_n = -__x_n; \\\n\ + __extension__ ({ const __typeof(x) __x_n = (x); \\\n\ \t\t __builtin_expect(isfinite(__x_n) \\\n\ \t\t\t\t && (sizeof(__x_n) == sizeof(float) \\\n\ -\t\t\t\t\t ? __x_n >= __FLT_MIN__ \\\n\ +\t\t\t\t\t ? isgreaterequal(__builtin_fabsf(__x_n),__FLT_MIN__) \\\n\ \t\t\t\t\t : sizeof(__x_n) == sizeof(long double) \\\n\ -\t\t\t\t\t ? __x_n >= __LDBL_MIN__ \\\n\ -\t\t\t\t\t : __x_n >= __DBL_MIN__), 1); })", +\t\t\t\t\t ? isgreaterequal(__builtin_fabsl(__x_n),__LDBL_MIN__) \\\n\ +\t\t\t\t\t : isgreaterequal(__builtin_fabs(__x_n),__DBL_MIN__)), 1); })", "^#define[ \t]+isnormal\\(x\\)[ \t]+__builtin_isnormal\\(x\\)", (char*)NULL }; @@ -5900,6 +5907,52 @@ /* * * * * * * * * * * * * * * * * * * * * * * * * * * + * Description of Solaris_Math_10 fix + */ +tSCC zSolaris_Math_10Name[] = + "solaris_math_10"; + +/* + * File name selection pattern + */ +tSCC zSolaris_Math_10List[] = + "|iso/math_c99.h|"; +/* + * Machine/OS name selection pattern + */ +#define apzSolaris_Math_10Machs (const char**)NULL + +/* + * content selection pattern - do fix if pattern found + */ +tSCC zSolaris_Math_10Select0[] = + "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI"; + +#define SOLARIS_MATH_10_TEST_CT 1 +static tTestDesc aSolaris_Math_10Tests[] = { + { TT_EGREP, zSolaris_Math_10Select0, (regex_t*)NULL }, }; + +/* + * Fix Command Arguments for Solaris_Math_10 + */ +static const char* apzSolaris_Math_10Patch[] = { + "format", + "#define isinf(x)\t__extension__ ( {\t\t\t\t\\\n\ +\t\t\tconst __typeof(x) __x_i = (x);\t\t\t\\\n\ +\t\t\t__builtin_expect(sizeof(__x_i) == sizeof(float)\t\\\n\ +\t\t\t? isgreater(__builtin_fabsf(__x_i),__FLT_MAX__) \\\n\ +\t\t\t: sizeof(__x_i) == sizeof(long double)\t\t\\\n\ +\t\t\t? isgreater(__builtin_fabsl(__x_i),__LDBL_MAX__)\\\n\ +\t\t\t: isgreater(__builtin_fabs(__x_i),__DBL_MAX__), 0);\\\n\ +\t})", + "^#define[ \t]+isinf\\(x\\)[ \t]+__extension__\\([ \t]*\\\\\n\ +[ \t]*\\{[ \t]*__typeof\\(x\\)[ \t]*__x_i[ \t]*=[ \t]*\\(x\\);[ \t]*\\\\\n\ +[ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*INFINITY[ \t]*\\|\\|[ \t]*\\\\\n\ +[ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*\\(-INFINITY\\);[ \t]*\\}\\)", + (char*)NULL }; + +/* * * * * * * * * * * * * * * * * * * * * * * * * * + * * Description of Solaris_Mutex_Init_1 fix */ tSCC zSolaris_Mutex_Init_1Name[] = @@ -8581,9 +8634,9 @@ * * List of all fixes */ -#define REGEX_COUNT 253 +#define REGEX_COUNT 254 #define MACH_LIST_SIZE_LIMIT 261 -#define FIX_COUNT 211 +#define FIX_COUNT 212 /* * Enumerate the fixes @@ -8732,6 +8785,7 @@ SOLARIS_MATH_7_FIXIDX, SOLARIS_MATH_8_FIXIDX, SOLARIS_MATH_9_FIXIDX, + SOLARIS_MATH_10_FIXIDX, SOLARIS_MUTEX_INIT_1_FIXIDX, SOLARIS_MUTEX_INIT_2_FIXIDX, SOLARIS_RWLOCK_INIT_1_FIXIDX, @@ -9518,6 +9572,11 @@ SOLARIS_MATH_9_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aSolaris_Math_9Tests, apzSolaris_Math_9Patch, 0 }, + { zSolaris_Math_10Name, zSolaris_Math_10List, + apzSolaris_Math_10Machs, + SOLARIS_MATH_10_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, + aSolaris_Math_10Tests, apzSolaris_Math_10Patch, 0 }, + { zSolaris_Mutex_Init_1Name, zSolaris_Mutex_Init_1List, apzSolaris_Mutex_Init_1Machs, SOLARIS_MUTEX_INIT_1_TEST_CT, FD_MACH_ONLY, diff -Nru fixincludes/inclhack.def fixincludes/inclhack.def --- fixincludes/inclhack.def 2010-10-14 22:28:01.000000000 +0200 +++ fixincludes/inclhack.def 2012-12-31 17:06:00.000000000 +0100 @@ -3097,7 +3097,7 @@ files = iso/math_c99.h; c_fix = format; c_fix_arg = "#define\tfpclassify(x) \\\n" - " __extension__ ({ __typeof(x) __x_fp = (x); \\\n" + " __extension__ ({ const __typeof(x) __x_fp = (x); \\\n" "\t\t isnan(__x_fp) \\\n" "\t\t ? FP_NAN \\\n" "\t\t : isinf(__x_fp) \\\n" @@ -3121,8 +3121,12 @@ files = iso/math_c99.h; c_fix = format; c_fix_arg = "#define\tisfinite(x) \\\n" - " __extension__ ({ __typeof (x) __x_f = (x); \\\n" - "\t\t __builtin_expect(!isnan(__x_f - __x_f), 1); })"; + " __extension__ ({ const __typeof (x) __x_f = (x); \\\n" + "\t\t __builtin_expect(sizeof(__x_f) == sizeof(float) \\\n" + "\t\t\t ? islessequal(__builtin_fabsf(__x_f),__FLT_MAX__) \\\n" + "\t\t\t : sizeof(__x_f) == sizeof(long double) \\\n" + "\t\t\t ? islessequal(__builtin_fabsl(__x_f),__LDBL_MAX__) \\\n" + "\t\t\t : islessequal(__builtin_fabs(__x_f),__DBL_MAX__), 1); })"; c_fix_arg = "^#define[ \t]+isfinite\\(x\\)[ \t]+__builtin_isfinite\\(x\\)"; test_text = '#ident "@(#)math_c99.h 1.9 04/11/01 SMI"'"\n" @@ -3137,8 +3141,12 @@ files = iso/math_c99.h; c_fix = format; c_fix_arg = "#define\tisinf(x) \\\n" - " __extension__ ({ __typeof (x) __x_i = (x); \\\n" - "\t\t __builtin_expect(!isnan(__x_i) && !isfinite(__x_i), 0); })"; + " __extension__ ({ const __typeof (x) __x_i = (x); \\\n" + "\t\t __builtin_expect(sizeof(__x_i) == sizeof(float) \\\n" + "\t\t\t ? isgreater(__builtin_fabsf(__x_i),__FLT_MAX__) \\\n" + "\t\t\t : sizeof(__x_i) == sizeof(long double) \\\n" + "\t\t\t ? isgreater(__builtin_fabsl(__x_i),__LDBL_MAX__) \\\n" + "\t\t\t : isgreater(__builtin_fabs(__x_i),__DBL_MAX__), 0); })"; c_fix_arg = "^#define[ \t]+isinf\\(x\\)[ \t]+__builtin_isinf\\(x\\)"; test_text = '#ident "@(#)math_c99.h 1.9 04/11/01 SMI"'"\n" @@ -3153,14 +3161,13 @@ files = iso/math_c99.h; c_fix = format; c_fix_arg = "#define\tisnormal(x) \\\n" - " __extension__ ({ __typeof(x) __x_n = (x); \\\n" - "\t\t if (__x_n < 0.0) __x_n = -__x_n; \\\n" + " __extension__ ({ const __typeof(x) __x_n = (x); \\\n" "\t\t __builtin_expect(isfinite(__x_n) \\\n" "\t\t\t\t && (sizeof(__x_n) == sizeof(float) \\\n" - "\t\t\t\t\t ? __x_n >= __FLT_MIN__ \\\n" + "\t\t\t\t\t ? isgreaterequal(__builtin_fabsf(__x_n),__FLT_MIN__) \\\n" "\t\t\t\t\t : sizeof(__x_n) == sizeof(long double) \\\n" - "\t\t\t\t\t ? __x_n >= __LDBL_MIN__ \\\n" - "\t\t\t\t\t : __x_n >= __DBL_MIN__), 1); })"; + "\t\t\t\t\t ? isgreaterequal(__builtin_fabsl(__x_n),__LDBL_MIN__) \\\n" + "\t\t\t\t\t : isgreaterequal(__builtin_fabs(__x_n),__DBL_MIN__)), 1); })"; c_fix_arg = "^#define[ \t]+isnormal\\(x\\)[ \t]+__builtin_isnormal\\(x\\)"; test_text = '#ident "@(#)math_c99.h 1.9 04/11/01 SMI"'"\n" @@ -3209,6 +3216,36 @@ "#undef isunordered\n" "#define isunordered(x, y) ((x) __builtin_isunordered(y))"; }; +/* + * On Solaris 11, if you do isinf(NaN) you'll get a floating point + * exception. Provide an alternative using GCC's builtin macros. + */ + +fix = { + hackname = solaris_math_10; + select = '@\(#\)math_c99.h' "[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI"; + files = iso/math_c99.h; + c_fix = format; + c_fix_arg = "#define isinf(x)\t__extension__ ( {\t\t\t\t\\\n" + "\t\t\tconst __typeof(x) __x_i = (x);\t\t\t\\\n" + "\t\t\t__builtin_expect(sizeof(__x_i) == sizeof(float)\t\\\n" + "\t\t\t? isgreater(__builtin_fabsf(__x_i),__FLT_MAX__) \\\n" + "\t\t\t: sizeof(__x_i) == sizeof(long double)\t\t\\\n" + "\t\t\t? isgreater(__builtin_fabsl(__x_i),__LDBL_MAX__)\\\n" + "\t\t\t: isgreater(__builtin_fabs(__x_i),__DBL_MAX__), 0);\\\n" + "\t})"; + c_fix_arg = "^#define[ \t]+isinf\\(x\\)[ \t]+__extension__\\([ \t]*\\\\\n" + "[ \t]*\\{[ \t]*__typeof\\(x\\)[ \t]*__x_i[ \t]*=[ \t]*\\(x\\);[ \t]*\\\\\n" + "[ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*INFINITY[ \t]*\\|\\|[ \t]*\\\\\n" + "[ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*\\(-INFINITY\\);[ \t]*\\}\\)"; + test_text = + '#pragma ident "@(#)math_c99.h 1.12 07/01/21 SMI"'"\n" + "#undef isinf\n" + "#define isinf(x) __extension__( \\\\\n" + " { __typeof(x) __x_i = (x); \\\\\n" + " __x_i == (__typeof(__x_i)) INFINITY || \\\\\n" + " __x_i == (__typeof(__x_i)) (-INFINITY); })"; +}; /* * Sun Solaris 2.5.1, 2.6 defines PTHREAD_{MUTEX|COND}_INITIALIZER diff -Nru fixincludes/tests/base/iso/math_c99.h fixincludes/tests/base/iso/math_c99.h --- fixincludes/tests/base/iso/math_c99.h 2010-10-14 22:28:01.000000000 +0200 +++ fixincludes/tests/base/iso/math_c99.h 2012-12-31 17:06:01.000000000 +0100 @@ -38,7 +38,7 @@ #ident "@(#)math_c99.h 1.9 04/11/01 SMI" #undef fpclassify #define fpclassify(x) \ - __extension__ ({ __typeof(x) __x_fp = (x); \ + __extension__ ({ const __typeof(x) __x_fp = (x); \ isnan(__x_fp) \ ? FP_NAN \ : isinf(__x_fp) \ @@ -55,8 +55,12 @@ #ident "@(#)math_c99.h 1.9 04/11/01 SMI" #undef isfinite #define isfinite(x) \ - __extension__ ({ __typeof (x) __x_f = (x); \ - __builtin_expect(!isnan(__x_f - __x_f), 1); }) + __extension__ ({ const __typeof (x) __x_f = (x); \ + __builtin_expect(sizeof(__x_f) == sizeof(float) \ + ? islessequal(__builtin_fabsf(__x_f),__FLT_MAX__) \ + : sizeof(__x_f) == sizeof(long double) \ + ? islessequal(__builtin_fabsl(__x_f),__LDBL_MAX__) \ + : islessequal(__builtin_fabs(__x_f),__DBL_MAX__), 1); }) #endif /* SOLARIS_MATH_5_CHECK */ @@ -64,8 +68,12 @@ #ident "@(#)math_c99.h 1.9 04/11/01 SMI" #undef isinf #define isinf(x) \ - __extension__ ({ __typeof (x) __x_i = (x); \ - __builtin_expect(!isnan(__x_i) && !isfinite(__x_i), 0); }) + __extension__ ({ const __typeof (x) __x_i = (x); \ + __builtin_expect(sizeof(__x_i) == sizeof(float) \ + ? isgreater(__builtin_fabsf(__x_i),__FLT_MAX__) \ + : sizeof(__x_i) == sizeof(long double) \ + ? isgreater(__builtin_fabsl(__x_i),__LDBL_MAX__) \ + : isgreater(__builtin_fabs(__x_i),__DBL_MAX__), 0); }) #endif /* SOLARIS_MATH_6_CHECK */ @@ -73,14 +81,13 @@ #ident "@(#)math_c99.h 1.9 04/11/01 SMI" #undef isnormal #define isnormal(x) \ - __extension__ ({ __typeof(x) __x_n = (x); \ - if (__x_n < 0.0) __x_n = -__x_n; \ + __extension__ ({ const __typeof(x) __x_n = (x); \ __builtin_expect(isfinite(__x_n) \ && (sizeof(__x_n) == sizeof(float) \ - ? __x_n >= __FLT_MIN__ \ + ? isgreaterequal(__builtin_fabsf(__x_n),__FLT_MIN__) \ : sizeof(__x_n) == sizeof(long double) \ - ? __x_n >= __LDBL_MIN__ \ - : __x_n >= __DBL_MIN__), 1); }) + ? isgreaterequal(__builtin_fabsl(__x_n),__LDBL_MIN__) \ + : isgreaterequal(__builtin_fabs(__x_n),__DBL_MIN__)), 1); }) #endif /* SOLARIS_MATH_7_CHECK */ @@ -110,3 +117,17 @@ #undef isunordered #define isunordered(x, y) __builtin_isunordered(x, y) #endif /* SOLARIS_MATH_9_CHECK */ + + +#if defined( SOLARIS_MATH_10_CHECK ) +#pragma ident "@(#)math_c99.h 1.12 07/01/21 SMI" +#undef isinf +#define isinf(x) __extension__ ( { \ + const __typeof(x) __x_i = (x); \ + __builtin_expect(sizeof(__x_i) == sizeof(float) \ + ? isgreater(__builtin_fabsf(__x_i),__FLT_MAX__) \ + : sizeof(__x_i) == sizeof(long double) \ + ? isgreater(__builtin_fabsl(__x_i),__LDBL_MAX__)\ + : isgreater(__builtin_fabs(__x_i),__DBL_MAX__), 0);\ + }) +#endif /* SOLARIS_MATH_10_CHECK */ diff -Nru gcc/BASE-VER gcc/BASE-VER --- gcc/BASE-VER 2010-10-14 22:27:54.000000000 +0200 +++ gcc/BASE-VER 2012-12-31 17:06:01.000000000 +0100 @@ -1 +1 @@ -4.2.1 +4.2.4 diff -Nru gcc/COPYING3 gcc/COPYING3 --- gcc/COPYING3 1970-01-01 01:00:00.000000000 +0100 +++ gcc/COPYING3 2012-12-31 17:06:04.000000000 +0100 @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + 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 3 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, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff -Nru gcc/COPYING3.LIB gcc/COPYING3.LIB --- gcc/COPYING3.LIB 1970-01-01 01:00:00.000000000 +0100 +++ gcc/COPYING3.LIB 2012-12-31 17:06:04.000000000 +0100 @@ -0,0 +1,165 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + + 0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. + + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". + + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + + 4. Combined Works. + + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the +Library. diff -Nru gcc/ChangeLog gcc/ChangeLog --- gcc/ChangeLog 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ChangeLog 2012-12-31 17:06:01.000000000 +0100 @@ -862,7 +862,7 @@ * config/avr/avr.h (ASM_OUTPUT_ALIGN): Redefine. 2007-04-24 Andrew Pinski - Roger Sayle + Roger Sayle PR middle-end/30222 * expmed.c (make_tree): Use the correct type, i.e. the inner diff -Nru gcc/DATESTAMP gcc/DATESTAMP --- gcc/DATESTAMP 2010-10-14 22:27:54.000000000 +0200 +++ gcc/DATESTAMP 2012-12-31 17:06:05.000000000 +0100 @@ -1 +1 @@ -20070719 +20080519 diff -Nru gcc/Makefile.in gcc/Makefile.in --- gcc/Makefile.in 2010-10-14 22:27:55.000000000 +0200 +++ gcc/Makefile.in 2012-12-31 17:06:06.000000000 +0100 @@ -3,14 +3,14 @@ # Run 'configure' to generate Makefile from Makefile.in # Copyright (C) 1987, 1988, 1990, 1991, 1992, 1993, 1994, 1995, 1996, -# 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 -# Free Software Foundation, Inc. +# 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, +# 2008 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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -19,9 +19,8 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston MA 02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # The targets for external use include: # all, doc, proto, install, install-cross, install-cross-rest, @@ -277,6 +276,10 @@ # do not correctly set the timestamp due to buggy versions of `utime' # in the kernel. So, we use `echo' instead. STAMP = echo timestamp > +# If necessary (e.g., when using the MSYS shell on Microsoft Windows) +# translate the shell's notion of absolute pathnames to the native +# spelling. +build_file_translate = @build_file_translate@ # Make sure the $(MAKE) variable is defined. @SET_MAKE@ @@ -3427,7 +3430,7 @@ TEXI_GCC_FILES = gcc.texi gcc-common.texi gcc-vers.texi frontends.texi \ standards.texi invoke.texi extend.texi md.texi objc.texi \ gcov.texi trouble.texi bugreport.texi service.texi \ - contribute.texi compat.texi funding.texi gnu.texi gpl.texi \ + contribute.texi compat.texi funding.texi gnu.texi gpl_v3.texi \ fdl.texi contrib.texi cppenv.texi cppopts.texi \ implement-c.texi arm-neon-intrinsics.texi sourcecode.texi # APPLE LOCAL end GPL compliance @@ -3437,7 +3440,7 @@ portability.texi interface.texi passes.texi c-tree.texi \ rtl.texi md.texi tm.texi hostconfig.texi fragments.texi \ configfiles.texi collect2.texi headerdirs.texi funding.texi \ - gnu.texi gpl.texi fdl.texi contrib.texi languages.texi \ + gnu.texi gpl_v3.texi fdl.texi contrib.texi languages.texi \ sourcebuild.texi gty.texi libgcc.texi cfg.texi tree-ssa.texi \ loop.texi @@ -3453,7 +3456,7 @@ then echo "@set DEVELOPMENT"; \ else echo "@clear DEVELOPMENT"; \ fi) > $@T - echo "@set srcdir $(srcdir)" >> $@T + $(build_file_translate) echo @set srcdir $(abs_srcdir) >> $@T mv -f $@T $@ @@ -3584,6 +3587,9 @@ fsf-funding.pod: funding.texi $(STAMP) $@ -$(TEXI2POD) $< > $@ +gpl.pod: gpl_v3.texi + $(STAMP) $@ + -$(TEXI2POD) $< > $@ # # clean-target removes all files made by compilation. diff -Nru gcc/addresses.h gcc/addresses.h --- gcc/addresses.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/addresses.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Inline functions to test validity of reg classes for addressing modes. - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Wrapper function to unify target macros MODE_CODE_BASE_REG_CLASS, MODE_BASE_REG_REG_CLASS, MODE_BASE_REG_CLASS and BASE_REG_CLASS. diff -Nru gcc/alias.c gcc/alias.c --- gcc/alias.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/alias.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,13 +1,13 @@ /* Alias analysis for GNU C - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, + 2007 Free Software Foundation, Inc. Contributed by John Carr (jfc@mit.edu). 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/alias.h gcc/alias.h --- gcc/alias.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/alias.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Exported functions from alias.c - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_ALIAS_H #define GCC_ALIAS_H diff -Nru gcc/alloc-pool.c gcc/alloc-pool.c --- gcc/alloc-pool.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/alloc-pool.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,13 +1,13 @@ /* Functions to support a pool of allocatable objects. - Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, + 2007 Free Software Foundation, Inc. Contributed by Daniel Berlin 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/alloc-pool.h gcc/alloc-pool.h --- gcc/alloc-pool.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/alloc-pool.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,5 +1,5 @@ /* Functions to support a pool of allocatable objects - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004 + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Daniel Berlin @@ -7,7 +7,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef ALLOC_POOL_H #define ALLOC_POOL_H diff -Nru gcc/attribs.c gcc/attribs.c --- gcc/attribs.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/attribs.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Functions dealing with attribute handling, used by most front ends. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -139,6 +138,9 @@ tree a; tree returned_attrs = NULL_TREE; + if (TREE_TYPE (*node) == error_mark_node) + return NULL_TREE; + if (!attributes_initialized) init_attributes (); diff -Nru gcc/basic-block.h gcc/basic-block.h --- gcc/basic-block.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/basic-block.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Define control and data flow tables, and regsets. - Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, + 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_BASIC_BLOCK_H #define GCC_BASIC_BLOCK_H diff -Nru gcc/bb-reorder.c gcc/bb-reorder.c --- gcc/bb-reorder.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/bb-reorder.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Basic block reordering routines for the GNU compiler. - Copyright (C) 2000, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* This (greedy) algorithm constructs traces in several rounds. The construction starts from "seeds". The seed for the first round diff -Nru gcc/bitmap.c gcc/bitmap.c --- gcc/bitmap.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/bitmap.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Functions to support general ended bitmaps. - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/bitmap.h gcc/bitmap.h --- gcc/bitmap.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/bitmap.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Functions to support general ended bitmaps. - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_BITMAP_H #define GCC_BITMAP_H diff -Nru gcc/bt-load.c gcc/bt-load.c --- gcc/bt-load.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/bt-load.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Perform branch target register load optimizations. - Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/builtin-attrs.def gcc/builtin-attrs.def --- gcc/builtin-attrs.def 2010-10-14 22:27:54.000000000 +0200 +++ gcc/builtin-attrs.def 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ -/* Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc. +/* Copyright (C) 2001, 2002, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Joseph Myers . 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This header provides a declarative way of describing the attributes that are applied to some functions by default. diff -Nru gcc/builtin-types.def gcc/builtin-types.def --- gcc/builtin-types.def 2010-10-14 22:27:54.000000000 +0200 +++ gcc/builtin-types.def 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ -/* Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 +/* Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This header provides a declarative way of describing the types that are used when declaring builtin functions. diff -Nru gcc/builtins.c gcc/builtins.c --- gcc/builtins.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/builtins.c 2013-01-01 12:29:53.000000000 +0100 @@ -1,12 +1,13 @@ /* Expand builtin functions. Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -9396,12 +9396,11 @@ if (! POINTER_TYPE_P (TREE_TYPE (TREE_VALUE (arglist)))) goto end; } - /* APPLE LOCAL begin 5813921 */ - else if (code == INTEGER_TYPE - && (TREE_CODE (TREE_TYPE (TREE_VALUE (arglist))) - == ENUMERAL_TYPE)) - /* Allow ENUMERAL_TYPE to match INTEGER_TYPE. */ ; - /* APPLE LOCAL end 5813921 */ + else if (code == INTEGER_TYPE) + { + if (! INTEGRAL_TYPE_P (TREE_TYPE (TREE_VALUE (arglist)))) + goto end; + } else if (code != TREE_CODE (TREE_TYPE (TREE_VALUE (arglist)))) goto end; break; diff -Nru gcc/builtins.def gcc/builtins.def --- gcc/builtins.def 2010-10-14 22:27:54.000000000 +0200 +++ gcc/builtins.def 2012-12-31 17:06:01.000000000 +0100 @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Before including this file, you should define a macro: diff -Nru gcc/c-aux-info.c gcc/c-aux-info.c --- gcc/c-aux-info.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-aux-info.c 2012-12-31 17:06:01.000000000 +0100 @@ -2,14 +2,14 @@ on information stored in GCC's tree structure. This code implements the -aux-info option. Copyright (C) 1989, 1991, 1994, 1995, 1997, 1998, - 1999, 2000, 2003, 2004 Free Software Foundation, Inc. + 1999, 2000, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Ron Guilmette (rfg@segfault.us.com). 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-common.c gcc/c-common.c --- gcc/c-common.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-common.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Subroutines shared by all languages that are variants of C. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -6893,6 +6892,16 @@ else type = c_build_qualified_type (main_type, quals); + if (COMPLETE_TYPE_P (type) + && TREE_CODE (TYPE_SIZE_UNIT (type)) == INTEGER_CST + && TREE_OVERFLOW (TYPE_SIZE_UNIT (type))) + { + error ("size of array is too large"); + /* If we proceed with the array type as it is, we'll eventually + crash in tree_low_cst(). */ + type = error_mark_node; + } + *ptype = type; return failure; } diff -Nru gcc/c-common.def gcc/c-common.def --- gcc/c-common.def 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-common.def 2012-12-31 17:06:01.000000000 +0100 @@ -2,14 +2,14 @@ additional tree codes used in the GNU C compiler (see tree.def for the standard codes). Copyright (C) 1987, 1988, 1990, 1993, 1997, 1998, - 1999, 2000, 2001, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Benjamin Chelf 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Tree nodes used in the C frontend. These are also shared with the C++ and Objective C frontends. */ diff -Nru gcc/c-common.h gcc/c-common.h --- gcc/c-common.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-common.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for c-common.c. Copyright (C) 1987, 1993, 1994, 1995, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_C_COMMON_H #define GCC_C_COMMON_H diff -Nru gcc/c-config-lang.in gcc/c-config-lang.in --- gcc/c-config-lang.in 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-config-lang.in 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ # Top level configure fragment for GNU C - C language. -# Copyright (C) 1994, 1995, 1997, 1998, 2000, 2001, 2002, 2005 Free Software Foundation, Inc. +# Copyright (C) 1994, 1995, 1997, 1998, 2000, 2001, 2002, 2005, 2007 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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston, MA 02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # This file c-config-lang.c is a special pseudo config-lang.in file # for the language C. It has limited use, specifically to record the diff -Nru gcc/c-convert.c gcc/c-convert.c --- gcc/c-convert.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-convert.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Language-level data type conversion for GNU C. - Copyright (C) 1987, 1988, 1991, 1998, 2002, 2003, 2004, 2005 + Copyright (C) 1987, 1988, 1991, 1998, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains the functions for converting C expressions diff -Nru gcc/c-cppbuiltin.c gcc/c-cppbuiltin.c --- gcc/c-cppbuiltin.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-cppbuiltin.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,12 @@ /* Define builtin-in macros for the C family front ends. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-decl.c gcc/c-decl.c --- gcc/c-decl.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-decl.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Process declarations and variables for C compiler. Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Process declarations and symbol lookup for C front end. Also constructs types; the standard scalar types at initialization, @@ -1757,6 +1756,9 @@ /* APPLE LOCAL end mainline aligned functions 5933878 */ } + /* Keep the old rtl since we can safely use it. */ + if (HAS_RTL_P (olddecl)) + COPY_DECL_RTL (olddecl, newdecl); /* Merge the type qualifiers. */ if (TREE_READONLY (newdecl)) diff -Nru gcc/c-dump.c gcc/c-dump.c --- gcc/c-dump.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-dump.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Tree-dumping functionality for C-family languages. - Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Mark Mitchell 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-errors.c gcc/c-errors.c --- gcc/c-errors.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-errors.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Various diagnostic subroutines for the GNU C language. - Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc. + Copyright (C) 2000, 2001, 2003, 2007 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-format.c gcc/c-format.c --- gcc/c-format.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-format.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Check calls to formatted I/O functions (-Wformat). Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -2517,7 +2516,8 @@ locus = identifier_global_value (locus); if (locus) { - if (TREE_CODE (locus) != TYPE_DECL) + if (TREE_CODE (locus) != TYPE_DECL + || TREE_TYPE (locus) == error_mark_node) { error ("% is not defined as a type"); locus = 0; diff -Nru gcc/c-format.h gcc/c-format.h --- gcc/c-format.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-format.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Check calls to formatted I/O functions (-Wformat). Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_C_FORMAT_H #define GCC_C_FORMAT_H diff -Nru gcc/c-gimplify.c gcc/c-gimplify.c --- gcc/c-gimplify.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-gimplify.c 2012-12-31 17:06:01.000000000 +0100 @@ -2,7 +2,7 @@ by the C-based front ends. The structure of gimplified, or language-independent, trees is dictated by the grammar described in this file. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Lowering of expressions contributed by Sebastian Pop Re-written to support lowering of whole function trees, documentation and miscellaneous cleanups by Diego Novillo @@ -11,7 +11,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -20,9 +20,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-incpath.c gcc/c-incpath.c --- gcc/c-incpath.c 2013-01-03 11:23:37.000000000 +0100 +++ gcc/c-incpath.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,23 +1,23 @@ /* Set up combined include path chain for the preprocessor. Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Broken out of cppinit.c and cppfiles.c and rewritten Mar 2003. -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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/c-incpath.h gcc/c-incpath.h --- gcc/c-incpath.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-incpath.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,19 +1,19 @@ /* Set up combined include path for the preprocessor. - Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006, 2007 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ extern void split_quote_chain (void); extern void add_path (char *, int, int, bool); diff -Nru gcc/c-lang.c gcc/c-lang.c --- gcc/c-lang.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-lang.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Language-specific hook definitions for C front end. Copyright (C) 1991, 1995, 1997, 1998, - 1999, 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/c-lex.c gcc/c-lex.c --- gcc/c-lex.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-lex.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,13 +1,13 @@ /* Mainly the interface between cpplib and the C front ends. Copyright (C) 1987, 1988, 1989, 1992, 1994, 1995, 1996, 1997 - 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-objc-common.c gcc/c-objc-common.c --- gcc/c-objc-common.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-objc-common.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Some code common to C and ObjC front ends. - Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-objc-common.h gcc/c-objc-common.h --- gcc/c-objc-common.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-objc-common.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Language hooks common to C and ObjC front ends. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Ziemowit Laski 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_C_OBJC_COMMON #define GCC_C_OBJC_COMMON diff -Nru gcc/c-omp.c gcc/c-omp.c --- gcc/c-omp.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-omp.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,7 +1,7 @@ /* This file contains routines to construct GNU OpenMP constructs, called from parsing in the C and C++ front ends. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 Free Software Foundation, Inc. Contributed by Richard Henderson , Diego Novillo . @@ -9,7 +9,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-opts.c gcc/c-opts.c --- gcc/c-opts.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-opts.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,5 +1,5 @@ /* C/ObjC/C++ command line option handling. - Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. Contributed by Neil Booth. @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -435,8 +434,10 @@ if (c_dialect_cxx ()) warn_sign_compare = value; warn_switch = value; - warn_strict_aliasing = value; - warn_strict_overflow = value; + if (warn_strict_aliasing == -1) + warn_strict_aliasing = value; + if (warn_strict_overflow == -1) + warn_strict_overflow = value; warn_address = value; /* Only warn about unknown pragmas that are not in system @@ -1159,6 +1160,11 @@ if (warn_pointer_sign == -1) warn_pointer_sign = 0; + if (warn_strict_aliasing == -1) + warn_strict_aliasing = 0; + if (warn_strict_overflow == -1) + warn_strict_overflow = 0; + /* -Woverlength-strings is off by default, but is enabled by -pedantic. It is never enabled in C++, as the minimum limit is not normative in that standard. */ diff -Nru gcc/c-parser.c gcc/c-parser.c --- gcc/c-parser.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-parser.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,6 +1,6 @@ /* Parser for C and Objective-C. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Parser actions based on the old Bison parser; structure somewhat influenced by and fragments based on the C++ parser. @@ -9,7 +9,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* TODO: diff -Nru gcc/c-pch.c gcc/c-pch.c --- gcc/c-pch.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-pch.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Precompiled header implementation for the C languages. - Copyright (C) 2000, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-ppoutput.c gcc/c-ppoutput.c --- gcc/c-ppoutput.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-ppoutput.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,21 +1,21 @@ /* Preprocess only, using cpplib. - Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 + Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2007 Free Software Foundation, Inc. Written by Per Bothner, 1994-95. -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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/c-pragma.c gcc/c-pragma.c --- gcc/c-pragma.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-pragma.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Handle #pragma, system V.4 style. Supports #pragma weak and #pragma pack. Copyright (C) 1992, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, - 2006 Free Software Foundation, Inc. + 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-pragma.h gcc/c-pragma.h --- gcc/c-pragma.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-pragma.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Pragma related interfaces. - Copyright (C) 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, + 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_C_PRAGMA_H #define GCC_C_PRAGMA_H diff -Nru gcc/c-pretty-print.c gcc/c-pretty-print.c --- gcc/c-pretty-print.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-pretty-print.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Subroutines common to both C and C++ pretty-printers. - Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-pretty-print.h gcc/c-pretty-print.h --- gcc/c-pretty-print.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-pretty-print.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Various declarations for the C and C++ pretty-printers. - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_C_PRETTY_PRINTER #define GCC_C_PRETTY_PRINTER diff -Nru gcc/c-semantics.c gcc/c-semantics.c --- gcc/c-semantics.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-semantics.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,7 +1,7 @@ /* This file contains the definitions and documentation for the common tree codes used in the GNU C and C++ compilers (see c-common.def for the standard codes). - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Benjamin Chelf (chelf@codesourcery.com). @@ -9,7 +9,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/c-tree.h gcc/c-tree.h --- gcc/c-tree.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/c-tree.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for C parsing and type checking. - Copyright (C) 1987, 1993, 1994, 1995, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1987, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001, + 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_C_TREE_H #define GCC_C_TREE_H diff -Nru gcc/c-typeck.c gcc/c-typeck.c --- gcc/c-typeck.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c-typeck.c 2013-01-01 12:35:17.000000000 +0100 @@ -1,13 +1,13 @@ /* Build expressions with type checking for C compiler. Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file is part of the C front end. @@ -536,6 +535,7 @@ tree pointed_to_1, mv1; tree pointed_to_2, mv2; tree target; + unsigned target_quals; /* Save time if the two types are the same. */ @@ -567,10 +567,17 @@ if (TREE_CODE (mv2) != ARRAY_TYPE) mv2 = TYPE_MAIN_VARIANT (pointed_to_2); target = composite_type (mv1, mv2); + + /* For function types do not merge const qualifiers, but drop them + if used inconsistently. The middle-end uses these to mark const + and noreturn functions. */ + if (TREE_CODE (pointed_to_1) == FUNCTION_TYPE) + target_quals = TYPE_QUALS (pointed_to_1) & TYPE_QUALS (pointed_to_2); + else + target_quals = TYPE_QUALS (pointed_to_1) | TYPE_QUALS (pointed_to_2); + /* APPLE LOCAL begin blocks 6065211 */ - t1 = c_build_qualified_type (target, - TYPE_QUALS (pointed_to_1) | - TYPE_QUALS (pointed_to_2)); + t1 = c_build_qualified_type (target, target_quals); if (TREE_CODE (t2) == BLOCK_POINTER_TYPE) t1 = build_block_pointer_type (t1); else @@ -1721,14 +1728,19 @@ if (TREE_NO_WARNING (orig_exp)) TREE_NO_WARNING (exp) = 1; - if (INTEGRAL_TYPE_P (type)) - return perform_integral_promotions (exp); - if (code == VOID_TYPE) { error ("void value not ignored as it ought to be"); return error_mark_node; } + + exp = require_complete_type (exp); + if (exp == error_mark_node) + return error_mark_node; + + if (INTEGRAL_TYPE_P (type)) + return perform_integral_promotions (exp); + return exp; } @@ -3068,11 +3080,15 @@ /* No default_conversion here. It causes trouble for ADDR_EXPR. */ tree arg = xarg; tree argtype = 0; - enum tree_code typecode = TREE_CODE (TREE_TYPE (arg)); + enum tree_code typecode; tree val; int noconvert = flag; const char *invalid_op_diag; + if (code != ADDR_EXPR) + arg = require_complete_type (arg); + + typecode = TREE_CODE (TREE_TYPE (arg)); if (typecode == ERROR_MARK) return error_mark_node; if (typecode == ENUMERAL_TYPE || typecode == BOOLEAN_TYPE) @@ -3831,6 +3847,13 @@ return error_mark_node; } + if (!VOID_TYPE_P (type)) + { + value = require_complete_type (value); + if (value == error_mark_node) + return error_mark_node; + } + if (type == TYPE_MAIN_VARIANT (TREE_TYPE (value))) { if (pedantic) @@ -4401,6 +4424,9 @@ error ("void value not ignored as it ought to be"); return error_mark_node; } + rhs = require_complete_type (rhs); + if (rhs == error_mark_node) + return error_mark_node; /* A type converts to a reference to it. This code doesn't fully support references, it's just for the special case of va_start and va_copy. */ diff -Nru gcc/c.opt gcc/c.opt --- gcc/c.opt 2010-10-14 22:27:55.000000000 +0200 +++ gcc/c.opt 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ ; Options for the C, ObjC, C++ and ObjC++ front ends. -; Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +; Copyright (C) 2003, 2004, 2005, 2006, 2007 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . ; See the GCC internals manual for a description of this file's format. diff -Nru gcc/caller-save.c gcc/caller-save.c --- gcc/caller-save.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/caller-save.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Save and restore call-clobbered registers which are live across a call. - Copyright (C) 1989, 1992, 1994, 1995, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1989, 1992, 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, + 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/calls.c gcc/calls.c --- gcc/calls.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/calls.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,13 +1,13 @@ /* Convert function calls to rtl insns, for GNU C compiler. Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cfg.c gcc/cfg.c --- gcc/cfg.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cfg.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,13 +1,13 @@ /* Control flow graph manipulation code for GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains low level functions to manipulate the CFG and analyze it. All other modules should not transform the data structure diff -Nru gcc/cfganal.c gcc/cfganal.c --- gcc/cfganal.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cfganal.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Control flow graph analysis code for GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains various simple utilities to analyze the CFG. */ #include "config.h" diff -Nru gcc/cfgbuild.c gcc/cfgbuild.c --- gcc/cfgbuild.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cfgbuild.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Control flow graph building code for GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* find_basic_blocks divides the current function's rtl into basic blocks and constructs the CFG. The blocks are recorded in the diff -Nru gcc/cfgcleanup.c gcc/cfgcleanup.c --- gcc/cfgcleanup.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cfgcleanup.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Control flow optimization code for GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains optimizer of the control flow. The main entry point is cleanup_cfg. Following optimizations are performed: diff -Nru gcc/cfgexpand.c gcc/cfgexpand.c --- gcc/cfgexpand.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cfgexpand.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* A pass for lowering trees to RTL. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cfghooks.c gcc/cfghooks.c --- gcc/cfghooks.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cfghooks.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Hooks for cfg representation specific functions. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Sebastian Pop 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cfghooks.h gcc/cfghooks.h --- gcc/cfghooks.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cfghooks.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Hooks for cfg representation specific functions. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Sebastian Pop 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_CFGHOOKS_H #define GCC_CFGHOOKS_H diff -Nru gcc/cfglayout.c gcc/cfglayout.c --- gcc/cfglayout.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cfglayout.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Basic block reordering routines for the GNU compiler. - Copyright (C) 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cfglayout.h gcc/cfglayout.h --- gcc/cfglayout.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cfglayout.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Basic block reordering routines for the GNU compiler. - Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2000, 2003, 2004, 2007 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #ifndef GCC_CFGLAYOUT_H #define GCC_CFGLAYOUT_H diff -Nru gcc/cfgloop.c gcc/cfgloop.c --- gcc/cfgloop.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cfgloop.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Natural loop discovery code for GNU compiler. - Copyright (C) 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cfgloop.h gcc/cfgloop.h --- gcc/cfgloop.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cfgloop.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Natural loop functions - Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, + 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_CFGLOOP_H #define GCC_CFGLOOP_H diff -Nru gcc/cfgloopanal.c gcc/cfgloopanal.c --- gcc/cfgloopanal.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cfgloopanal.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Natural loop analysis code for GNU compiler. - Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cfgloopmanip.c gcc/cfgloopmanip.c --- gcc/cfgloopmanip.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cfgloopmanip.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,11 +1,11 @@ /* Loop manipulation code for GNU compiler. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cfgrtl.c gcc/cfgrtl.c --- gcc/cfgrtl.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cfgrtl.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Control flow graph manipulation code for GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains low level functions to manipulate the CFG and analyze it that are aware of the RTL intermediate language. diff -Nru gcc/cgraph.c gcc/cgraph.c --- gcc/cgraph.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cgraph.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Callgraph handling code. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Jan Hubicka 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains basic routines manipulating call graph and variable pool diff -Nru gcc/cgraph.h gcc/cgraph.h --- gcc/cgraph.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cgraph.h 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Callgraph handling code. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Jan Hubicka 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_CGRAPH_H #define GCC_CGRAPH_H diff -Nru gcc/cgraphunit.c gcc/cgraphunit.c --- gcc/cgraphunit.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cgraphunit.c 2012-12-31 17:06:01.000000000 +0100 @@ -1,12 +1,12 @@ /* Callgraph based interprocedural optimizations. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Jan Hubicka 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This module implements main driver of compilation process as well as few basic interprocedural optimizers. diff -Nru gcc/collect2.c gcc/collect2.c --- gcc/collect2.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/collect2.c 2012-12-31 17:06:02.000000000 +0100 @@ -1,7 +1,7 @@ /* Collect static initialization info into data structures that can be traversed by C++ initialization and finalization routines. - Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, + 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Chris Smith (csmith@convex.com). Heavily modified by Michael Meissner (meissner@cygnus.com), Per Bothner (bothner@cygnus.com), and John Gilmore (gnu@cygnus.com). @@ -10,7 +10,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -19,9 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Build tables of static constructors and destructors and run ld. */ @@ -132,6 +131,10 @@ #define SCAN_LIBRARIES #endif +#ifndef SHLIB_SUFFIX +#define SHLIB_SUFFIX ".so" +#endif + #ifdef USE_COLLECT2 int do_collecting = 1; #else @@ -1803,9 +1806,9 @@ } else { - if (strncmp (q, ".so", 3) == 0) + if (strncmp (q, SHLIB_SUFFIX, strlen (SHLIB_SUFFIX)) == 0) { - q += 3; + q += strlen (SHLIB_SUFFIX); break; } else diff -Nru gcc/collect2.h gcc/collect2.h --- gcc/collect2.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/collect2.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,11 +1,11 @@ /* Header file for collect/tlink routines. - Copyright (C) 1998, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1998, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_COLLECT2_H #define GCC_COLLECT2_H diff -Nru gcc/combine.c gcc/combine.c --- gcc/combine.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/combine.c 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,13 @@ /* Optimize by combining instructions for GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This module is essentially the "combiner" phase of the U. of Arizona Portable Optimizer, but redone to work on our list-structured @@ -2454,12 +2454,17 @@ if (i1 && GET_CODE (newpat) != CLOBBER) { - /* Before we can do this substitution, we must redo the test done - above (see detailed comments there) that ensures that I1DEST - isn't mentioned in any SETs in NEWPAT that are field assignments. */ - - if (! combinable_i3pat (NULL_RTX, &newpat, i1dest, NULL_RTX, - 0, (rtx*) 0)) + /* Check that an autoincrement side-effect on I1 has not been lost. + This happens if I1DEST is mentioned in I2 and dies there, and + has disappeared from the new pattern. */ + if ((FIND_REG_INC_NOTE (i1, NULL_RTX) != 0 + && !i1_feeds_i3 + && dead_or_set_p (i2, i1dest) + && !reg_overlap_mentioned_p (i1dest, newpat)) + /* Before we can do this substitution, we must redo the test done + above (see detailed comments there) that ensures that I1DEST + isn't mentioned in any SETs in NEWPAT that are field assignments. */ + || !combinable_i3pat (NULL_RTX, &newpat, i1dest, NULL_RTX, 0, 0)) { undo_all (); return 0; @@ -5132,9 +5137,10 @@ /* Look for cases where we have (abs x) or (neg (abs X)). */ if (GET_MODE_CLASS (mode) == MODE_INT + && comparison_p + && XEXP (cond, 1) == const0_rtx && GET_CODE (false_rtx) == NEG && rtx_equal_p (true_rtx, XEXP (false_rtx, 0)) - && comparison_p && rtx_equal_p (true_rtx, XEXP (cond, 0)) && ! side_effects_p (true_rtx)) switch (true_code) diff -Nru gcc/common.opt gcc/common.opt --- gcc/common.opt 2010-10-14 22:27:55.000000000 +0200 +++ gcc/common.opt 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ; Options for the language- and target-independent parts of the compiler. -; Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +; Copyright (C) 2003, 2004, 2005, 2006, 2007 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . ; See the GCC internals manual for a description of this file's format. @@ -130,7 +129,7 @@ Warn about code which might break strict aliasing rules Wstrict-aliasing= -Common Joined UInteger +Common Joined UInteger Var(warn_strict_aliasing) Init(-1) Warn about code which might break strict aliasing rules Wstrict-overflow @@ -138,7 +137,7 @@ Warn about optimizations that assume that signed overflow is undefined Wstrict-overflow= -Common Joined UInteger +Common Joined UInteger Var(warn_strict_overflow) Init(-1) Warn about optimizations that assume that signed overflow is undefined Wswitch @@ -480,7 +479,7 @@ Perform unused type elimination in debug info femit-class-debug-always -Common Report Var(flag_emit_class_debug_always) Init(1) +Common Report Var(flag_emit_class_debug_always) Init(0) Do not suppress C++ class debug information. fexceptions diff -Nru gcc/conditions.h gcc/conditions.h --- gcc/conditions.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/conditions.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,11 +1,11 @@ /* Definitions for condition code handling in final.c and output routines. - Copyright (C) 1987 Free Software Foundation, Inc. + Copyright (C) 1987, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* None of the things in the files exist if we don't use CC0. */ diff -Nru gcc/config/arm/aof.h gcc/config/arm/aof.h --- gcc/config/arm/aof.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/aof.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler, for Advanced RISC Machines ARM compilation, AOF Assembler. - Copyright (C) 1995, 1996, 1997, 2000, 2003, 2004 + Copyright (C) 1995, 1996, 1997, 2000, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Richard Earnshaw (rearnsha@armltd.co.uk) @@ -8,7 +8,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ diff -Nru gcc/config/arm/aout.h gcc/config/arm/aout.h --- gcc/config/arm/aout.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/aout.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for ARM with a.out - Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2004 + Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2004, 2007 Free Software Foundation, Inc. Contributed by Richard Earnshaw (rearnsha@armltd.co.uk). @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #ifndef ASM_APP_ON #define ASM_APP_ON "" diff -Nru gcc/config/arm/arm-cores.def gcc/config/arm/arm-cores.def --- gcc/config/arm/arm-cores.def 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm-cores.def 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* ARM CPU Cores - Copyright (C) 2003, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2005, 2007 Free Software Foundation, Inc. Written by CodeSourcery, LLC 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Before using #include to read this file, define a macro: diff -Nru gcc/config/arm/arm-generic.md gcc/config/arm/arm-generic.md --- gcc/config/arm/arm-generic.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm-generic.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,11 +1,11 @@ ;; Generic ARM Pipeline Description -;; Copyright (C) 2003 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, but @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, MA -;; 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ (define_automaton "arm") diff -Nru gcc/config/arm/arm-modes.def gcc/config/arm/arm-modes.def --- gcc/config/arm/arm-modes.def 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm-modes.def 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for ARM. - Copyright (C) 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2007 Free Software Foundation, Inc. Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl) and Martin Simmons (@harleqn.co.uk). More major hacks by Richard Earnshaw (rearnsha@arm.com) @@ -9,7 +9,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Extended precision floating point. FIXME What format is this? */ diff -Nru gcc/config/arm/arm-protos.h gcc/config/arm/arm-protos.h --- gcc/config/arm/arm-protos.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm-protos.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Prototypes for exported functions defined in arm.c and pe.c - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Richard Earnshaw (rearnsha@arm.com) Minor hacks by Nick Clifton (nickc@cygnus.com) @@ -8,7 +8,7 @@ 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #ifndef GCC_ARM_PROTOS_H #define GCC_ARM_PROTOS_H diff -Nru gcc/config/arm/arm.c gcc/config/arm/arm.c --- gcc/config/arm/arm.c 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm.c 2012-12-31 17:06:02.000000000 +0100 @@ -1,6 +1,6 @@ /* Output routines for GCC for ARM. Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl) and Martin Simmons (@harleqn.co.uk). More major hacks by Richard Earnshaw (rearnsha@arm.com). @@ -9,7 +9,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* APPLE LOCAL begin 6902792 Q register clobbers in inline asm */ #include diff -Nru gcc/config/arm/arm.h gcc/config/arm/arm.h --- gcc/config/arm/arm.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler, for ARM. Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl) and Martin Simmons (@harleqn.co.uk). More major hacks by Richard Earnshaw (rearnsha@arm.com) @@ -10,7 +10,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -19,9 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #ifndef GCC_ARM_H #define GCC_ARM_H diff -Nru gcc/config/arm/arm.md gcc/config/arm/arm.md --- gcc/config/arm/arm.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,6 +1,6 @@ ;;- Machine description for ARM for GNU compiler ;; Copyright 1991, 1993, 1994, 1995, 1996, 1996, 1997, 1998, 1999, 2000, -;; 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +;; 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. ;; Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl) ;; and Martin Simmons (@harleqn.co.uk). ;; More major hacks by Richard Earnshaw (rearnsha@arm.com). @@ -9,7 +9,7 @@ ;; 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -18,9 +18,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;;- See file "rtl.def" for documentation on define_insn, match_*, et. al. diff -Nru gcc/config/arm/arm.opt gcc/config/arm/arm.opt --- gcc/config/arm/arm.opt 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm.opt 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ; Options for the ARM port of the compiler. -; Copyright (C) 2005 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . mabi= Target RejectNegative Joined Var(target_abi_name) diff -Nru gcc/config/arm/arm1020e.md gcc/config/arm/arm1020e.md --- gcc/config/arm/arm1020e.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm1020e.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ;; ARM 1020E & ARM 1022E Pipeline Description -;; Copyright (C) 2005 Free Software Foundation, Inc. +;; Copyright (C) 2005, 2007 Free Software Foundation, Inc. ;; Contributed by Richard Earnshaw (richard.earnshaw@arm.com) ;; ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, but @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, MA -;; 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ ;; These descriptions are based on the information contained in the ;; ARM1020E Technical Reference Manual, Copyright (c) 2003 ARM diff -Nru gcc/config/arm/arm1026ejs.md gcc/config/arm/arm1026ejs.md --- gcc/config/arm/arm1026ejs.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm1026ejs.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ;; ARM 1026EJ-S Pipeline Description -;; Copyright (C) 2003 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2007 Free Software Foundation, Inc. ;; Written by CodeSourcery, LLC. ;; ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, but @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, MA -;; 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ ;; These descriptions are based on the information contained in the ;; ARM1026EJ-S Technical Reference Manual, Copyright (c) 2003 ARM diff -Nru gcc/config/arm/arm1136jfs.md gcc/config/arm/arm1136jfs.md --- gcc/config/arm/arm1136jfs.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm1136jfs.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ;; ARM 1136J[F]-S Pipeline Description -;; Copyright (C) 2003 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2007 Free Software Foundation, Inc. ;; Written by CodeSourcery, LLC. ;; ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, but @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, MA -;; 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ ;; These descriptions are based on the information contained in the ;; ARM1136JF-S Technical Reference Manual, Copyright (c) 2003 ARM diff -Nru gcc/config/arm/arm926ejs.md gcc/config/arm/arm926ejs.md --- gcc/config/arm/arm926ejs.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/arm926ejs.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ;; ARM 926EJ-S Pipeline Description -;; Copyright (C) 2003 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2007 Free Software Foundation, Inc. ;; Written by CodeSourcery, LLC. ;; ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, but @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, MA -;; 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ ;; These descriptions are based on the information contained in the ;; ARM926EJ-S Technical Reference Manual, Copyright (c) 2002 ARM diff -Nru gcc/config/arm/bpabi.h gcc/config/arm/bpabi.h --- gcc/config/arm/bpabi.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/bpabi.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Configuration file for ARM BPABI targets. - Copyright (C) 2004, 2005 + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Use the AAPCS ABI by default. */ #define ARM_DEFAULT_ABI ARM_ABI_AAPCS diff -Nru gcc/config/arm/cirrus.md gcc/config/arm/cirrus.md --- gcc/config/arm/cirrus.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/cirrus.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ ;; Cirrus EP9312 "Maverick" ARM floating point co-processor description. -;; Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. ;; Contributed by Red Hat. ;; Written by Aldy Hernandez (aldyh@redhat.com) @@ -7,7 +7,7 @@ ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ; Cirrus types for invalid insn combinations diff -Nru gcc/config/arm/coff.h gcc/config/arm/coff.h --- gcc/config/arm/coff.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/coff.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,14 +1,14 @@ /* Definitions of target machine for GNU compiler. For ARM with COFF object format. - Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, + 2007 Free Software Foundation, Inc. Contributed by Doug Evans (devans@cygnus.com). 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Note - it is important that this definition matches the one in tcoff.h. */ #undef USER_LABEL_PREFIX diff -Nru gcc/config/arm/constraints.md gcc/config/arm/constraints.md --- gcc/config/arm/constraints.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/constraints.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ;; Constraint definitions for ARM and Thumb -;; Copyright (C) 2006 Free Software Foundation, Inc. +;; Copyright (C) 2006, 2007 Free Software Foundation, Inc. ;; Contributed by ARM Ltd. ;; 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; APPLE LOCAL begin v7 support. Merge from mainline ;; The following register constraints have been used: diff -Nru gcc/config/arm/ecos-elf.h gcc/config/arm/ecos-elf.h --- gcc/config/arm/ecos-elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/ecos-elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,11 +1,11 @@ /* Definitions for ecos based ARM systems using ELF - Copyright (C) 1998, 2001 Free Software Foundation, Inc. + Copyright (C) 1998, 2001, 2007 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Run-time Target Specification. */ #undef TARGET_VERSION diff -Nru gcc/config/arm/elf.h gcc/config/arm/elf.h --- gcc/config/arm/elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,7 +1,7 @@ /* Definitions of target machine for GNU compiler. For ARM with ELF obj format. - Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2004, 2005, + 2007 Free Software Foundation, Inc. Contributed by Philip Blundell and Catherine Moore @@ -9,7 +9,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #ifndef OBJECT_FORMAT_ELF #error elf.h included before elfos.h diff -Nru gcc/config/arm/fpa.md gcc/config/arm/fpa.md --- gcc/config/arm/fpa.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/fpa.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,6 +1,6 @@ ;;- Machine description for FPA co-processor for ARM cpus. ;; Copyright 1991, 1993, 1994, 1995, 1996, 1996, 1997, 1998, 1999, 2000, -;; 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. ;; Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl) ;; and Martin Simmons (@harleqn.co.uk). ;; More major hacks by Richard Earnshaw (rearnsha@arm.com). @@ -9,7 +9,7 @@ ;; 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -18,9 +18,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; APPLE LOCAL begin v7 support. Merge from mainline ;; Some FPA mnemonics are ambiguous between conditional infixes and diff -Nru gcc/config/arm/freebsd.h gcc/config/arm/freebsd.h --- gcc/config/arm/freebsd.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/freebsd.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for StrongARM running FreeBSD using the ELF format - Copyright (C) 2001, 2004 Free Software Foundation, Inc. + Copyright (C) 2001, 2004, 2007 Free Software Foundation, Inc. Contributed by David E. O'Brien and BSDi. 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #undef SUBTARGET_EXTRA_SPECS diff -Nru gcc/config/arm/iwmmxt.md gcc/config/arm/iwmmxt.md --- gcc/config/arm/iwmmxt.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/iwmmxt.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,14 +1,14 @@ ;; APPLE LOCAL v7 support. Merge from mainline ;; ??? This file needs auditing for thumb2 ;; Patterns for the Intel Wireless MMX technology architecture. -;; Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. ;; Contributed by Red Hat. ;; 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 +;; Software Foundation; either version 3, or (at your option) any later ;; version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; APPLE LOCAL begin v7 support. Merge from Codesourcery ;; Integer element sizes implemented by IWMMXT. diff -Nru gcc/config/arm/kaos-arm.h gcc/config/arm/kaos-arm.h --- gcc/config/arm/kaos-arm.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/kaos-arm.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GNU compiler. kaOS on arm architecture version. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #undef TARGET_VERSION #define TARGET_VERSION fputs (" (ARM/kaOS[ELF])", stderr); diff -Nru gcc/config/arm/kaos-strongarm.h gcc/config/arm/kaos-strongarm.h --- gcc/config/arm/kaos-strongarm.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/kaos-strongarm.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GNU compiler. kaOS on strongarm architecture version. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #undef TARGET_VERSION #define TARGET_VERSION fputs (" (StrongARM/kaOS[ELF])", stderr); diff -Nru gcc/config/arm/linux-eabi.h gcc/config/arm/linux-eabi.h --- gcc/config/arm/linux-eabi.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/linux-eabi.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Configuration file for ARM GNU/Linux EABI targets. - Copyright (C) 2004, 2005, 2006 + Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* On EABI GNU/Linux, we want both the BPABI builtins and the GNU/Linux builtins. */ diff -Nru gcc/config/arm/linux-elf.h gcc/config/arm/linux-elf.h --- gcc/config/arm/linux-elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/linux-elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,6 +1,6 @@ /* Definitions for ARM running Linux-based GNU systems using ELF Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, - 2005, 2006 + 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Philip Blundell @@ -8,7 +8,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* elfos.h should have already been included. Now just override any conflicting definitions and add any extras. */ diff -Nru gcc/config/arm/linux-gas.h gcc/config/arm/linux-gas.h --- gcc/config/arm/linux-gas.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/linux-gas.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler. ARM Linux-based GNU systems version. - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004 + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004, 2007 Free Software Foundation, Inc. Contributed by Russell King . @@ -8,7 +8,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* This is how we tell the assembler that a symbol is weak. GAS always supports weak symbols. */ diff -Nru gcc/config/arm/netbsd-elf.h gcc/config/arm/netbsd-elf.h --- gcc/config/arm/netbsd-elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/netbsd-elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GNU compiler, NetBSD/arm ELF version. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Wasabi Systems, 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Run-time Target Specification. */ #undef TARGET_VERSION diff -Nru gcc/config/arm/netbsd.h gcc/config/arm/netbsd.h --- gcc/config/arm/netbsd.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/netbsd.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* NetBSD/arm a.out version. - Copyright (C) 1993, 1994, 1997, 1998, 2003, 2004, 2005 + Copyright (C) 1993, 1994, 1997, 1998, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Mark Brinicombe (amb@physig.ph.kcl.ac.uk) @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Run-time Target Specification. */ #undef TARGET_VERSION diff -Nru gcc/config/arm/pe.c gcc/config/arm/pe.c --- gcc/config/arm/pe.c 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/pe.c 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Routines for GCC for ARM/pe. - Copyright (C) 1995, 1996, 2000, 2001, 2002, 2004, 2005 + Copyright (C) 1995, 1996, 2000, 2001, 2002, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Doug Evans (dje@cygnus.com). @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/config/arm/pe.h gcc/config/arm/pe.h --- gcc/config/arm/pe.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/pe.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for ARM with PE obj format. - Copyright (C) 1995, 1996, 1999, 2000, 2002, 2003, 2004, 2005 + Copyright (C) 1995, 1996, 1999, 2000, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Doug Evans (dje@cygnus.com). @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Enable PE specific code. */ #define ARM_PE 1 diff -Nru gcc/config/arm/pe.opt gcc/config/arm/pe.opt --- gcc/config/arm/pe.opt 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/pe.opt 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ; PE-specific options for the ARM port -; Copyright (C) 2005 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . mnop-fun-dllimport Target Report Mask(NOP_FUN_DLLIMPORT) diff -Nru gcc/config/arm/predicates.md gcc/config/arm/predicates.md --- gcc/config/arm/predicates.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/predicates.md 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ ;; Predicate definitions for ARM and Thumb -;; Copyright (C) 2004 Free Software Foundation, Inc. +;; Copyright (C) 2004, 2007 Free Software Foundation, Inc. ;; Contributed by ARM Ltd. ;; 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_predicate "s_register_operand" (match_code "reg,subreg") diff -Nru gcc/config/arm/rtems-elf.h gcc/config/arm/rtems-elf.h --- gcc/config/arm/rtems-elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/rtems-elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,11 +1,11 @@ /* Definitions for RTEMS based ARM systems using ELF - Copyright (C) 2000, 2002, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2002, 2005, 2007 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Run-time Target Specification. */ #undef TARGET_VERSION @@ -27,6 +26,7 @@ #define TARGET_OS_CPP_BUILTINS() \ do { \ builtin_define ("__rtems__"); \ + builtin_define ("__USE_INIT_FINI__"); \ builtin_assert ("system=rtems"); \ } while (0) diff -Nru gcc/config/arm/semi.h gcc/config/arm/semi.h --- gcc/config/arm/semi.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/semi.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. ARM on semi-hosted platform - Copyright (C) 1994, 1995, 1996, 1997, 2001, 2004, 2005 + Copyright (C) 1994, 1995, 1996, 1997, 2001, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Richard Earnshaw (richard.earnshaw@arm.com) @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #define STARTFILE_SPEC "crt0.o%s" diff -Nru gcc/config/arm/semiaof.h gcc/config/arm/semiaof.h --- gcc/config/arm/semiaof.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/semiaof.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,13 +1,13 @@ /* Definitions of target machine for GNU compiler. ARM on semi-hosted platform AOF Syntax assembler. - Copyright (C) 1995, 1996, 1997, 2004 Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 2004, 2007 Free Software Foundation, Inc. Contributed by Richard Earnshaw (richard.earnshaw@armltd.co.uk) 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #define TARGET_OS_CPP_BUILTINS() \ do { \ diff -Nru gcc/config/arm/strongarm-coff.h gcc/config/arm/strongarm-coff.h --- gcc/config/arm/strongarm-coff.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/strongarm-coff.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for StrongARM systems using COFF - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2007 Free Software Foundation, Inc. Contributed by Catherine Moore 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Run-time Target Specification. */ #ifndef SUBTARGET_CPU_DEFAULT diff -Nru gcc/config/arm/strongarm-elf.h gcc/config/arm/strongarm-elf.h --- gcc/config/arm/strongarm-elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/strongarm-elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for non-Linux based StrongARM systems using ELF - Copyright (C) 1999, 2001 Free Software Foundation, Inc. + Copyright (C) 1999, 2001, 2007 Free Software Foundation, Inc. Contributed by Catherine Moore 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Run-time Target Specification. */ #ifndef TARGET_VERSION diff -Nru gcc/config/arm/strongarm-pe.h gcc/config/arm/strongarm-pe.h --- gcc/config/arm/strongarm-pe.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/strongarm-pe.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GNU compiler, for ARM with PE obj format. - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2007 Free Software Foundation, Inc. Contributed by Doug Evans (dje@cygnus.com). 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #undef TARGET_VERSION #define TARGET_VERSION fputs (" (StrongARM/PE)", stderr); diff -Nru gcc/config/arm/symbian.h gcc/config/arm/symbian.h --- gcc/config/arm/symbian.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/symbian.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Configuration file for Symbian OS on ARM processors. - Copyright (C) 2004, 2005 + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Do not expand builtin functions (unless explicitly prefixed with "__builtin"). Symbian OS code relies on properties of the standard diff -Nru gcc/config/arm/uclinux-elf.h gcc/config/arm/uclinux-elf.h --- gcc/config/arm/uclinux-elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/uclinux-elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for ARM running ucLinux using ELF - Copyright (C) 1999, 2001, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1999, 2001, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Philip Blundell 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* We don't want a PLT. */ #undef NEED_PLT_RELOC diff -Nru gcc/config/arm/unknown-elf.h gcc/config/arm/unknown-elf.h --- gcc/config/arm/unknown-elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/unknown-elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,5 +1,5 @@ /* Definitions for non-Linux based ARM systems using ELF - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Catherine Moore @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* elfos.h should have already been included. Now just override any conflicting definitions and add any extras. */ diff -Nru gcc/config/arm/vfp.md gcc/config/arm/vfp.md --- gcc/config/arm/vfp.md 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/vfp.md 2012-12-31 17:06:02.000000000 +0100 @@ -7,7 +7,7 @@ ;; ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, but @@ -16,9 +16,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, MA -;; 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ ;; Additional register numbers (define_constants diff -Nru gcc/config/arm/vxworks.h gcc/config/arm/vxworks.h --- gcc/config/arm/vxworks.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/vxworks.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,6 +1,6 @@ /* Definitions of target machine for GCC, for ARM with targetting the VXWorks run time environment. - Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by: Mike Stump Brought up to date by CodeSourcery, LLC. @@ -9,7 +9,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #define TARGET_OS_CPP_BUILTINS() \ diff -Nru gcc/config/arm/wince-pe.h gcc/config/arm/wince-pe.h --- gcc/config/arm/wince-pe.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/wince-pe.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GNU compiler, for ARM with WINCE-PE obj format. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Nick Clifton 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #undef TARGET_DEFAULT #define TARGET_DEFAULT (MASK_NOP_FUN_DLLIMPORT) diff -Nru gcc/config/arm/xscale-coff.h gcc/config/arm/xscale-coff.h --- gcc/config/arm/xscale-coff.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/xscale-coff.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for XScale systems using COFF - Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2001, 2007 Free Software Foundation, Inc. Contributed by Catherine Moore 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Run-time Target Specification. */ #undef SUBTARGET_CPU_DEFAULT diff -Nru gcc/config/arm/xscale-elf.h gcc/config/arm/xscale-elf.h --- gcc/config/arm/xscale-elf.h 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/arm/xscale-elf.h 2012-12-31 17:06:02.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for XScale architectures using ELF - Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2001, 2007 Free Software Foundation, Inc. Contributed by Catherine Moore 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ License for more details. You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. If not, write to - the Free Software Foundation, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Run-time Target Specification. */ #ifndef TARGET_VERSION diff -Nru gcc/config/chorus.h gcc/config/chorus.h --- gcc/config/chorus.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/chorus.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GNU compiler. Sun Chorus OS big-endian - Copyright (c) 2001 Free Software Foundation, Inc. + Copyright (c) 2001, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #define DWARF2_DEBUGGING_INFO 1 diff -Nru gcc/config/darwin-c.c gcc/config/darwin-c.c --- gcc/config/darwin-c.c 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/darwin-c.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Darwin support needed only by C/C++ frontends. - Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Apple Computer 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/config/darwin-protos.h gcc/config/darwin-protos.h --- gcc/config/darwin-protos.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/darwin-protos.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Prototypes. - Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ extern void darwin_init_sections (void); extern int name_needs_quotes (const char *); diff -Nru gcc/config/darwin.c gcc/config/darwin.c --- gcc/config/darwin.c 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/darwin.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,6 @@ /* Functions for generic Darwin as target machine for GNU C compiler. Copyright (C) 1989, 1990, 1991, 1992, 1993, 2000, 2001, 2002, 2003, 2004, - 2005 + 2005, 2007 Free Software Foundation, Inc. Contributed by Apple Computer Inc. @@ -8,7 +8,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/config/darwin.h gcc/config/darwin.h --- gcc/config/darwin.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/darwin.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,6 @@ /* Target definitions for Darwin (Mac OS X) systems. Copyright (C) 1989, 1990, 1991, 1992, 1993, 2000, 2001, 2002, 2003, 2004, - 2005 + 2005, 2007 Free Software Foundation, Inc. Contributed by Apple Computer Inc. @@ -8,7 +8,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, diff -Nru gcc/config/darwin.opt gcc/config/darwin.opt --- gcc/config/darwin.opt 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/darwin.opt 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ; Processor-independent options for Darwin. -; Copyright (C) 2005 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . mfix-and-continue Target Report Var(darwin_fix_and_continue) diff -Nru gcc/config/dbx.h gcc/config/dbx.h --- gcc/config/dbx.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/dbx.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Prefer DBX (stabs) debugging information. - Copyright (C) 1996 Free Software Foundation, Inc. + Copyright (C) 1996, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file causes gcc to prefer using DBX (stabs) debugging information. The configure script will add a #include of this file diff -Nru gcc/config/dbxcoff.h gcc/config/dbxcoff.h --- gcc/config/dbxcoff.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/dbxcoff.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Definitions needed when using stabs embedded in COFF sections. - Copyright (C) 1996, 2004 Free Software Foundation, Inc. + Copyright (C) 1996, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file may be included by any COFF target which wishes to support -gstabs generating stabs in sections, as produced by gas diff -Nru gcc/config/dbxelf.h gcc/config/dbxelf.h --- gcc/config/dbxelf.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/dbxelf.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Definitions needed when using stabs embedded in ELF sections. - Copyright (C) 1999, 2004 Free Software Foundation, Inc. + Copyright (C) 1999, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file may be included by any ELF target which wishes to support -gstabs generating stabs in sections, as produced by gas diff -Nru gcc/config/elfos.h gcc/config/elfos.h --- gcc/config/elfos.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/elfos.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,14 +1,14 @@ /* elfos.h -- operating system specific defines to be used when targeting GCC for some generic ELF system - Copyright (C) 1991, 1994, 1995, 1999, 2000, 2001, 2002, 2003, 2004 - Free Software Foundation, Inc. + Copyright (C) 1991, 1994, 1995, 1999, 2000, 2001, 2002, 2003, 2004, + 2007 Free Software Foundation, Inc. Based on svr4.h contributed by Ron Guilmette (rfg@netcom.com). 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #define TARGET_OBJFMT_CPP_BUILTINS() \ do \ diff -Nru gcc/config/freebsd-nthr.h gcc/config/freebsd-nthr.h --- gcc/config/freebsd-nthr.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/freebsd-nthr.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* FreeBSD configuration setting for FreeBSD systems. - Copyright (C) 2001 Free Software Foundation, Inc. + Copyright (C) 2001, 2007 Free Software Foundation, Inc. Contributed by Loren J. Rittle 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,8 +15,7 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #define FBSD_NO_THREADS diff -Nru gcc/config/freebsd-spec.h gcc/config/freebsd-spec.h --- gcc/config/freebsd-spec.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/freebsd-spec.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Base configuration file for all FreeBSD targets. - Copyright (C) 1999, 2000, 2001, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2001, 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Common FreeBSD configuration. All FreeBSD architectures should include this file, which will specify diff -Nru gcc/config/freebsd.h gcc/config/freebsd.h --- gcc/config/freebsd.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/freebsd.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Base configuration file for all FreeBSD targets. - Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2001, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Common FreeBSD configuration. All FreeBSD architectures should include this file, which will specify diff -Nru gcc/config/gofast.h gcc/config/gofast.h --- gcc/config/gofast.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/gofast.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* US Software GOFAST floating point library support. - Copyright (C) 1994, 1998, 1999, 2002, 2003, 2004 + Copyright (C) 1994, 1998, 1999, 2002, 2003, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* The US Software GOFAST library requires special optabs support. This file is intended to be included by config/ARCH/ARCH.c. It diff -Nru gcc/config/host-darwin.c gcc/config/host-darwin.c --- gcc/config/host-darwin.c 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/host-darwin.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Darwin host-specific hook definitions. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/config/host-darwin.h gcc/config/host-darwin.h --- gcc/config/host-darwin.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/host-darwin.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Darwin host-specific hook definitions. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ extern void * darwin_gt_pch_get_address (size_t sz, int fd); extern int darwin_gt_pch_use_address (void *addr, size_t sz, int fd, diff -Nru gcc/config/host-hpux.c gcc/config/host-hpux.c --- gcc/config/host-hpux.c 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/host-hpux.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* HP-UX host-specific hook definitions. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/config/host-linux.c gcc/config/host-linux.c --- gcc/config/host-linux.c 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/host-linux.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Linux host-specific hook definitions. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/config/host-solaris.c gcc/config/host-solaris.c --- gcc/config/host-solaris.c 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/host-solaris.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Solaris host-specific hook definitions. - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2007 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/config/i386/biarch64.h gcc/config/i386/biarch64.h --- gcc/config/i386/biarch64.h 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/biarch64.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,14 +1,14 @@ /* Make configure files to produce biarch compiler defaulting to 64bit mode. This file must be included very first, while the OS specific file later to overwrite otherwise wrong defaults. - Copyright (C) 2001 Free Software Foundation, Inc. + Copyright (C) 2001, 2007 Free Software Foundation, Inc. Contributed by Bo Thorsen . 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #define TARGET_64BIT_DEFAULT MASK_64BIT #define TARGET_BI_ARCH 1 diff -Nru gcc/config/i386/constraints.md gcc/config/i386/constraints.md --- gcc/config/i386/constraints.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/constraints.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Constraint definitions for IA-32 and x86-64. -;; Copyright (C) 2006 Free Software Foundation, Inc. +;; Copyright (C) 2006, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;;; Unused letters: ;;; B H TU W diff -Nru gcc/config/i386/darwin.h gcc/config/i386/darwin.h --- gcc/config/i386/darwin.h 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/darwin.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,13 @@ /* Target definitions for x86 running Darwin. - Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2004, 2005, 2007 + Free Software Foundation, Inc. Contributed by Apple Computer 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Enable Mach-O bits in generic x86 code. */ #undef TARGET_MACHO diff -Nru gcc/config/i386/darwin64.h gcc/config/i386/darwin64.h --- gcc/config/i386/darwin64.h 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/darwin64.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Target definitions for x86_64 running Darwin. - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 Free Software Foundation, Inc. Contributed by Apple Computer 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #undef TARGET_VERSION #define TARGET_VERSION fprintf (stderr, " (x86_64 Darwin)"); diff -Nru gcc/config/i386/driver-i386.c gcc/config/i386/driver-i386.c --- gcc/config/i386/driver-i386.c 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/driver-i386.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Subroutines for the gcc driver. - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -26,7 +25,7 @@ const char *host_detect_local_cpu (int argc, const char **argv); -#ifdef GCC_VERSION +#ifdef __GNUC__ #define cpuid(num,a,b,c,d) \ asm volatile ("xchgl %%ebx, %1; cpuid; xchgl %%ebx, %1" \ : "=a" (a), "=r" (b), "=c" (c), "=d" (d) \ @@ -297,4 +296,4 @@ return concat ("-m", argv[0], "=", cpu, NULL); } -#endif /* GCC_VERSION */ +#endif /* __GNUC__ */ diff -Nru gcc/config/i386/emmintrin.h gcc/config/i386/emmintrin.h --- gcc/config/i386/emmintrin.h 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/emmintrin.h 2012-12-31 17:06:03.000000000 +0100 @@ -1456,12 +1456,6 @@ { return (__m128i)__builtin_ia32_psradi128 ((__v4si)__A, __B); } -#else -#define _mm_srai_epi16(__A, __B) \ - ((__m128i)__builtin_ia32_psrawi128 ((__v8hi)(__A), __B)) -#define _mm_srai_epi32(__A, __B) \ - ((__m128i)__builtin_ia32_psradi128 ((__v8hi)(__A), __B)) -#endif #if 0 static __m128i __attribute__((__always_inline__)) @@ -1506,14 +1500,6 @@ { return (__m128i)__builtin_ia32_psrlqi128 ((__v2di)__A, __B); } -#else -#define _mm_srli_epi16(__A, __B) \ - ((__m128i)__builtin_ia32_psrlwi128 ((__v8hi)(__A), __B)) -#define _mm_srli_epi32(__A, __B) \ - ((__m128i)__builtin_ia32_psrldi128 ((__v4si)(__A), __B)) -#define _mm_srli_epi64(__A, __B) \ - ((__m128i)__builtin_ia32_psrlqi128 ((__v4si)(__A), __B)) -#endif /* APPLE LOCAL begin radar 5618945 */ __STATIC_INLINE __m128i __attribute__((__always_inline__)) diff -Nru gcc/config/i386/host-i386-darwin.c gcc/config/i386/host-i386-darwin.c --- gcc/config/i386/host-i386-darwin.c 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/host-i386-darwin.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* i386-darwin host-specific hook definitions. - Copyright (C) 2003, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/config/i386/i386-modes.def gcc/config/i386/i386-modes.def --- gcc/config/i386/i386-modes.def 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/i386-modes.def 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Definitions of target machine for GCC for IA-32. - Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* The x86_64 ABI specifies both XF and TF modes. XFmode is __float80 is IEEE extended; TFmode is __float128 diff -Nru gcc/config/i386/i386-protos.h gcc/config/i386/i386-protos.h --- gcc/config/i386/i386-protos.h 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/i386-protos.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,13 +1,13 @@ /* Definitions of target machine for GCC for IA-32. Copyright (C) 1988, 1992, 1994, 1995, 1996, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Functions in i386.c */ extern void override_options (void); diff -Nru gcc/config/i386/i386.c gcc/config/i386/i386.c --- gcc/config/i386/i386.c 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/i386.c 2012-12-31 17:06:03.000000000 +0100 @@ -6,7 +6,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -18719,8 +18718,10 @@ if (! (*insn_data[icode].operand[1].predicate) (op0, mode1)) op0 = copy_to_reg (op0); - op1 = simplify_gen_subreg (TImode, op1, GET_MODE (op1), 0); - if (! (*insn_data[icode].operand[2].predicate) (op1, TImode)) + if (!CONST_INT_P (op1)) + op1 = simplify_gen_subreg (SImode, op1, GET_MODE (op1), 0); + + if (! (*insn_data[icode].operand[2].predicate) (op1, SImode)) op1 = copy_to_reg (op1); target = gen_reg_rtx (tmode); @@ -19914,7 +19915,7 @@ nbits = 7; /* Compute costs correctly for widening multiplication. */ - if ((GET_CODE (op0) == SIGN_EXTEND || GET_CODE (op1) == ZERO_EXTEND) + if ((GET_CODE (op0) == SIGN_EXTEND || GET_CODE (op0) == ZERO_EXTEND) && GET_MODE_SIZE (GET_MODE (XEXP (op0, 0))) * 2 == GET_MODE_SIZE (mode)) { diff -Nru gcc/config/i386/i386.h gcc/config/i386/i386.h --- gcc/config/i386/i386.h 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/i386.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GCC for IA-32. Copyright (C) 1988, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2006, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* The purpose of this file is to define the characteristics of the i386, independent of assembler syntax or operating system. diff -Nru gcc/config/i386/i386.md gcc/config/i386/i386.md --- gcc/config/i386/i386.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/i386.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,6 @@ ;; GCC machine description for IA-32 and x86-64. ;; Copyright (C) 1988, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -;; 2001, 2002, 2003, 2004, 2005, 2006 +;; 2001, 2002, 2003, 2004, 2005, 2006, 2007 ;; Free Software Foundation, Inc. ;; Mostly by William Schelter. ;; x86_64 support added by Jan Hubicka @@ -9,7 +9,7 @@ ;; ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -18,9 +18,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ ;; ;; The original PO technology requires these to be ordered by speed, ;; so that assigner will pick the fastest. @@ -3800,7 +3799,8 @@ ; else { - rtx temp = assign_386_stack_local (SFmode, SLOT_VIRTUAL); + int slot = virtuals_instantiated ? SLOT_TEMP : SLOT_VIRTUAL; + rtx temp = assign_386_stack_local (SFmode, slot); emit_insn (gen_truncdfsf2_with_temp (operands[0], operands[1], temp)); DONE; } @@ -3958,7 +3958,10 @@ DONE; } else - operands[2] = assign_386_stack_local (SFmode, SLOT_VIRTUAL); + { + int slot = virtuals_instantiated ? SLOT_TEMP : SLOT_VIRTUAL; + operands[2] = assign_386_stack_local (SFmode, slot); + } }) (define_insn "*truncxfsf2_mixed" @@ -4056,7 +4059,10 @@ DONE; } else - operands[2] = assign_386_stack_local (DFmode, SLOT_VIRTUAL); + { + int slot = virtuals_instantiated ? SLOT_TEMP : SLOT_VIRTUAL; + operands[2] = assign_386_stack_local (DFmode, slot); + } }) (define_insn "*truncxfdf2_mixed" @@ -15945,11 +15951,20 @@ { rtx label = gen_label_rtx (); - emit_label (label); + rtx op2; + + if (rtx_equal_p (operands[1], operands[2])) + { + op2 = gen_reg_rtx (XFmode); + emit_move_insn (op2, operands[2]); + } + else + op2 = operands[2]; - emit_insn (gen_fpremxf4 (operands[1], operands[2], - operands[1], operands[2])); + emit_label (label); + emit_insn (gen_fpremxf4 (operands[1], op2, operands[1], op2)); ix86_emit_fp_unordered_jump (label); + LABEL_NUSES (label) = 1; emit_move_insn (operands[0], operands[1]); DONE; @@ -16030,11 +16045,20 @@ { rtx label = gen_label_rtx (); - emit_label (label); + rtx op2; - emit_insn (gen_fprem1xf4 (operands[1], operands[2], - operands[1], operands[2])); + if (rtx_equal_p (operands[1], operands[2])) + { + op2 = gen_reg_rtx (XFmode); + emit_move_insn (op2, operands[2]); + } + else + op2 = operands[2]; + + emit_label (label); + emit_insn (gen_fprem1xf4 (operands[1], op2, operands[1], op2)); ix86_emit_fp_unordered_jump (label); + LABEL_NUSES (label) = 1; emit_move_insn (operands[0], operands[1]); DONE; diff -Nru gcc/config/i386/i386.opt gcc/config/i386/i386.opt --- gcc/config/i386/i386.opt 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/i386.opt 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ; Options for the IA-32 and AMD64 ports of the compiler. -; Copyright (C) 2005 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . m128bit-long-double Target RejectNegative Report Mask(128BIT_LONG_DOUBLE) diff -Nru gcc/config/i386/k6.md gcc/config/i386/k6.md --- gcc/config/i386/k6.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/k6.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ;; AMD K6/K6-2 Scheduling -;; Copyright (C) 2002, 2004 +;; Copyright (C) 2002, 2004, 2007 ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; ;; The K6 architecture is quite similar to PPro. Important difference is ;; that there are only two decoders and they seems to be much slower than diff -Nru gcc/config/i386/mmx.md gcc/config/i386/mmx.md --- gcc/config/i386/mmx.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/mmx.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ;; GCC machine description for MMX and 3dNOW! instructions -;; Copyright (C) 2005 +;; Copyright (C) 2005, 2007 ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; The MMX and 3dNOW! patterns are in the same file because they use ;; the same register file, and 3dNOW! adds a number of extensions to diff -Nru gcc/config/i386/pentium.md gcc/config/i386/pentium.md --- gcc/config/i386/pentium.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/pentium.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Pentium Scheduling -;; Copyright (C) 2002 Free Software Foundation, Inc. +;; Copyright (C) 2002, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ ;; ;; The Pentium is an in-order core with two integer pipelines. diff -Nru gcc/config/i386/ppro.md gcc/config/i386/ppro.md --- gcc/config/i386/ppro.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/ppro.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling for the Intel P6 family of processors -;; Copyright (C) 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2004, 2005, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ ;; The P6 family includes the Pentium Pro, Pentium II, Pentium III, Celeron ;; and Xeon lines of CPUs. The DFA scheduler description in this file is diff -Nru gcc/config/i386/predicates.md gcc/config/i386/predicates.md --- gcc/config/i386/predicates.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/predicates.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Predicate definitions for IA-32 and x86-64. -;; Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. +;; Copyright (C) 2004, 2005, 2006, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; Return nonzero if OP is either a i387 or SSE fp register. (define_predicate "any_fp_register_operand" diff -Nru gcc/config/i386/sse.md gcc/config/i386/sse.md --- gcc/config/i386/sse.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/sse.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,11 @@ ;; GCC machine description for SSE instructions -;; Copyright (C) 2005, 2006 -;; Free Software Foundation, Inc. +;; Copyright (C) 2005, 2006, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -15,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; 16 byte integral modes handled by SSE, minus TImode, which gets @@ -3019,7 +3017,7 @@ [(set (match_operand:SSEMODE24 0 "register_operand" "=x") (ashiftrt:SSEMODE24 (match_operand:SSEMODE24 1 "register_operand" "0") - (match_operand:TI 2 "nonmemory_operand" "xn")))] + (match_operand:SI 2 "nonmemory_operand" "xN")))] "TARGET_SSE2" "psra\t{%2, %0|%0, %2}" [(set_attr "type" "sseishft") @@ -3029,7 +3027,7 @@ [(set (match_operand:SSEMODE248 0 "register_operand" "=x") (lshiftrt:SSEMODE248 (match_operand:SSEMODE248 1 "register_operand" "0") - (match_operand:TI 2 "nonmemory_operand" "xn")))] + (match_operand:SI 2 "nonmemory_operand" "xN")))] "TARGET_SSE2" "psrl\t{%2, %0|%0, %2}" [(set_attr "type" "sseishft") @@ -3039,7 +3037,7 @@ [(set (match_operand:SSEMODE248 0 "register_operand" "=x") (ashift:SSEMODE248 (match_operand:SSEMODE248 1 "register_operand" "0") - (match_operand:TI 2 "nonmemory_operand" "xn")))] + (match_operand:SI 2 "nonmemory_operand" "xN")))] "TARGET_SSE2" "psll\t{%2, %0|%0, %2}" [(set_attr "type" "sseishft") @@ -3052,11 +3050,9 @@ (define_expand "vec_shl_" [(set (match_operand:SSEMODEI 0 "register_operand" "") (ashift:TI (match_operand:SSEMODEI 1 "register_operand" "") - (match_operand:SI 2 "general_operand" "")))] + (match_operand:SI 2 "const_0_to_255_mul_8_operand" "")))] "TARGET_SSE2" { - if (!const_0_to_255_mul_8_operand (operands[2], SImode)) - FAIL; operands[0] = gen_lowpart (TImode, operands[0]); operands[1] = gen_lowpart (TImode, operands[1]); }) @@ -3068,11 +3064,9 @@ (define_expand "vec_shr_" [(set (match_operand:SSEMODEI 0 "register_operand" "") (lshiftrt:TI (match_operand:SSEMODEI 1 "register_operand" "") - (match_operand:SI 2 "general_operand" "")))] + (match_operand:SI 2 "const_0_to_255_mul_8_operand" "")))] "TARGET_SSE2" { - if (!const_0_to_255_mul_8_operand (operands[2], SImode)) - FAIL; operands[0] = gen_lowpart (TImode, operands[0]); operands[1] = gen_lowpart (TImode, operands[1]); }) diff -Nru gcc/config/i386/sync.md gcc/config/i386/sync.md --- gcc/config/i386/sync.md 2010-10-14 22:27:48.000000000 +0200 +++ gcc/config/i386/sync.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ;; GCC machine description for i386 synchronization instructions. -;; Copyright (C) 2005, 2006 +;; Copyright (C) 2005, 2006, 2007 ;; 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_mode_macro IMODE [QI HI SI (DI "TARGET_64BIT")]) (define_mode_attr modesuffix [(QI "b") (HI "w") (SI "l") (DI "q")]) diff -Nru gcc/config/interix.h gcc/config/interix.h --- gcc/config/interix.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/interix.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,7 @@ /* Operating system specific defines to be used when targeting GCC for Interix - Copyright (C) 1994, 1995, 1999, 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 1994, 1995, 1999, 2002, 2004, 2007 + Free Software Foundation, Inc. Donn Terry, Softway Systems, Inc. (donn@softway.com) Modified from code Contributed by Douglas B. Rupp (drupp@cs.washington.edu). @@ -9,7 +10,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -18,9 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* POSIX/Uni-thread only for now. Look at the winnt version for windows/multi thread */ diff -Nru gcc/config/interix3.h gcc/config/interix3.h --- gcc/config/interix3.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/interix3.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,13 +1,13 @@ /* Operating system specific defines to be used when targeting GCC for Interix version 3. - Copyright (C) 2001 Free Software Foundation, Inc. + Copyright (C) 2001, 2007 Free Software Foundation, Inc. Contributed by Douglas B. Rupp (rupp@gnat.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Interix 3.x has a single rooted file system and properly named libraries, so LIB_SPEC can be simplified */ diff -Nru gcc/config/kaos.h gcc/config/kaos.h --- gcc/config/kaos.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/kaos.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GCC. common kaOS definitions for all architectures. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Specify predefined symbols in preprocessor. */ #define TARGET_OS_CPP_BUILTINS() \ diff -Nru gcc/config/kfreebsd-gnu.h gcc/config/kfreebsd-gnu.h --- gcc/config/kfreebsd-gnu.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/kfreebsd-gnu.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,5 +1,5 @@ /* Definitions for kFreeBSD-based GNU systems with ELF format - Copyright (C) 2004, 2006 + Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc. Contributed by Robert Millan. @@ -7,7 +7,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #undef LINUX_TARGET_OS_CPP_BUILTINS #define LINUX_TARGET_OS_CPP_BUILTINS() \ diff -Nru gcc/config/knetbsd-gnu.h gcc/config/knetbsd-gnu.h --- gcc/config/knetbsd-gnu.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/knetbsd-gnu.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,5 +1,5 @@ /* Definitions for kNetBSD-based GNU systems with ELF format - Copyright (C) 2004, 2006 + Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc. Contributed by Robert Millan. @@ -7,7 +7,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #undef LINUX_TARGET_OS_CPP_BUILTINS #define LINUX_TARGET_OS_CPP_BUILTINS() \ diff -Nru gcc/config/libgloss.h gcc/config/libgloss.h --- gcc/config/libgloss.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/libgloss.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* libgloss.h -- operating system specific defines to be used when targeting GCC for Libgloss supported targets. - Copyright (C) 1996, 2004 Free Software Foundation, Inc. + Copyright (C) 1996, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file should not be used for ELF targets, as this definition of STARTFILE_SPEC is all wrong. */ diff -Nru gcc/config/linux.h gcc/config/linux.h --- gcc/config/linux.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/linux.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,6 @@ /* Definitions for Linux-based GNU systems with ELF format - Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2003, 2004, 2005, 2006, + 2007 Free Software Foundation, Inc. Contributed by Eric Youngdale. Modified for stabs-in-ELF by H.J. Lu (hjl@lucon.org). @@ -8,7 +8,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Don't assume anything about the header files. */ #define NO_IMPLICIT_EXTERN_C diff -Nru gcc/config/linux.opt gcc/config/linux.opt --- gcc/config/linux.opt 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/linux.opt 2012-12-31 17:06:03.000000000 +0100 @@ -1,13 +1,13 @@ ; Processor-independent options for GNU/Linux. ; -; Copyright (C) 2006 Free Software Foundation, Inc. +; Copyright (C) 2006, 2007 Free Software Foundation, Inc. ; Contributed by CodeSourcery. ; ; 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . muclibc Target RejectNegative Report Mask(UCLIBC) Var(linux_uclibc) Init(UCLIBC_DEFAULT ? OPTION_MASK_UCLIBC : 0) diff -Nru gcc/config/lynx.h gcc/config/lynx.h --- gcc/config/lynx.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/lynx.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Target independent definitions for LynxOS. - Copyright (C) 1993, 1994, 1995, 1996, 1999, 2000, 2002, 2003, 2004 - Free Software Foundation, Inc. + Copyright (C) 1993, 1994, 1995, 1996, 1999, 2000, 2002, 2003, 2004, + 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* In this file we set up defaults that can be chosen by /lynx.h files. A target-specific lynx.h file can decide diff -Nru gcc/config/lynx.opt gcc/config/lynx.opt --- gcc/config/lynx.opt 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/lynx.opt 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ; Processor-independent options for LynxOS. -; Copyright (C) 2005 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . mlegacy-threads Target RejectNegative diff -Nru gcc/config/netbsd-aout.h gcc/config/netbsd-aout.h --- gcc/config/netbsd-aout.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/netbsd-aout.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Common configuration file for NetBSD a.out targets. - Copyright (C) 2002 Free Software Foundation, Inc. + Copyright (C) 2002, 2007 Free Software Foundation, Inc. Contributed by Wasabi Systems, 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* TARGET_OS_CPP_BUILTINS() common to all NetBSD a.out targets. */ #define NETBSD_OS_CPP_BUILTINS_AOUT() \ diff -Nru gcc/config/netbsd-elf.h gcc/config/netbsd-elf.h --- gcc/config/netbsd-elf.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/netbsd-elf.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Common configuration file for NetBSD ELF targets. - Copyright (C) 2002 Free Software Foundation, Inc. + Copyright (C) 2002, 2007 Free Software Foundation, Inc. Contributed by Wasabi Systems, 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* TARGET_OS_CPP_BUILTINS() common to all NetBSD ELF targets. */ #define NETBSD_OS_CPP_BUILTINS_ELF() \ diff -Nru gcc/config/netbsd.h gcc/config/netbsd.h --- gcc/config/netbsd.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/netbsd.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Base configuration file for all NetBSD targets. - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 - Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, + 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* TARGET_OS_CPP_BUILTINS() common to all NetBSD targets. */ #define NETBSD_OS_CPP_BUILTINS_COMMON() \ diff -Nru gcc/config/openbsd-oldgas.h gcc/config/openbsd-oldgas.h --- gcc/config/openbsd-oldgas.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/openbsd-oldgas.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Generic settings for a.out OpenBSD systems. - Copyright (C) 2002 Free Software Foundation, Inc. + Copyright (C) 2002, 2007 Free Software Foundation, Inc. Contributed by David E. O'Brien . 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #define OBSD_OLD_GAS diff -Nru gcc/config/openbsd.h gcc/config/openbsd.h --- gcc/config/openbsd.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/openbsd.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Base configuration file for all OpenBSD targets. - Copyright (C) 1999, 2000, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Common OpenBSD configuration. All OpenBSD architectures include this file, which is intended as diff -Nru gcc/config/ptx4.h gcc/config/ptx4.h --- gcc/config/ptx4.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/ptx4.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,6 @@ /* Operating system specific defines to be used when targeting GCC for Sequent's Dynix/ptx v4 and later. - Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004 + Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2007 Free Software Foundation, Inc. Generic SysV4 file Contributed by Ron Guilmette (rfg@monkeys.com). Renamed and changed to suit Dynix/ptx v4 and later. @@ -11,7 +11,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -20,9 +20,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. +along with GCC; see the file COPYING3. If not see +. */ diff -Nru gcc/config/rs6000/40x.md gcc/config/rs6000/40x.md --- gcc/config/rs6000/40x.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/40x.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for IBM PowerPC 403 and PowerPC 405 processors. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "ppc40x,ppc40xiu") (define_cpu_unit "bpu_40x,fpu_405" "ppc40x") diff -Nru gcc/config/rs6000/440.md gcc/config/rs6000/440.md --- gcc/config/rs6000/440.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/440.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for IBM PowerPC 440 processor. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; PPC440 Embedded PowerPC controller ;; dual issue diff -Nru gcc/config/rs6000/603.md gcc/config/rs6000/603.md --- gcc/config/rs6000/603.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/603.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for PowerPC 603 processor. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "ppc603,ppc603fp") (define_cpu_unit "iu_603" "ppc603") diff -Nru gcc/config/rs6000/6xx.md gcc/config/rs6000/6xx.md --- gcc/config/rs6000/6xx.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/6xx.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ;; Scheduling description for PowerPC 604, PowerPC 604e, PowerPC 620, ;; and PowerPC 630 processors. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "ppc6xx,ppc6xxfp,ppc6xxfp2") (define_cpu_unit "iu1_6xx,iu2_6xx,mciu_6xx" "ppc6xx") diff -Nru gcc/config/rs6000/7450.md gcc/config/rs6000/7450.md --- gcc/config/rs6000/7450.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/7450.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for Motorola PowerPC 7450 processor. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "ppc7450,ppc7450mciu,ppc7450fp,ppc7450vec") (define_cpu_unit "iu1_7450,iu2_7450,iu3_7450" "ppc7450") diff -Nru gcc/config/rs6000/7xx.md gcc/config/rs6000/7xx.md --- gcc/config/rs6000/7xx.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/7xx.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for Motorola PowerPC 750 and PowerPC 7400 processors. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "ppc7xx,ppc7xxfp") (define_cpu_unit "iu1_7xx,iu2_7xx" "ppc7xx") diff -Nru gcc/config/rs6000/8540.md gcc/config/rs6000/8540.md --- gcc/config/rs6000/8540.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/8540.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Pipeline description for Motorola PowerPC 8540 processor. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "ppc8540_most,ppc8540_long,ppc8540_retire") (define_cpu_unit "ppc8540_decode_0,ppc8540_decode_1" "ppc8540_most") diff -Nru gcc/config/rs6000/aix61.h gcc/config/rs6000/aix61.h --- gcc/config/rs6000/aix61.h 1970-01-01 01:00:00.000000000 +0100 +++ gcc/config/rs6000/aix61.h 2012-12-31 17:06:03.000000000 +0100 @@ -0,0 +1,196 @@ +/* Definitions of target machine for GNU compiler, + for IBM RS/6000 POWER running AIX V6.1. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 + Free Software Foundation, Inc. + Contributed by David Edelsohn (edelsohn@gnu.org). + + 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 3, 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 COPYING3. If not see + . */ + +/* Sometimes certain combinations of command options do not make sense + on a particular target machine. You can define a macro + `OVERRIDE_OPTIONS' to take account of this. This macro, if + defined, is executed once just after all the command options have + been parsed. + + The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to + get control. */ + +#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2) +#define SUBTARGET_OVERRIDE_OPTIONS \ +do { \ + if (TARGET_64BIT && (target_flags & NON_POWERPC_MASKS)) \ + { \ + target_flags &= ~NON_POWERPC_MASKS; \ + warning (0, "-maix64 and POWER architecture are incompatible"); \ + } \ + if (TARGET_64BIT && ! TARGET_POWERPC64) \ + { \ + target_flags |= MASK_POWERPC64; \ + warning (0, "-maix64 requires PowerPC64 architecture remain enabled"); \ + } \ + if (TARGET_SOFT_FLOAT && TARGET_LONG_DOUBLE_128) \ + { \ + rs6000_long_double_type_size = 64; \ + if (rs6000_explicit_options.long_double) \ + warning (0, "soft-float and long-double-128 are incompatible"); \ + } \ + if (TARGET_POWERPC64 && ! TARGET_64BIT) \ + { \ + error ("-maix64 required: 64-bit computation with 32-bit addressing not yet supported"); \ + } \ +} while (0); + +#undef ASM_SPEC +#define ASM_SPEC "-u %{maix64:-a64 %{!mcpu*:-mppc64}} %(asm_cpu)" + +/* Common ASM definitions used by ASM_SPEC amongst the various targets + for handling -mcpu=xxx switches. */ +#undef ASM_CPU_SPEC +#define ASM_CPU_SPEC \ +"%{!mcpu*: %{!maix64: \ + %{mpowerpc64: -mppc64} \ + %{!mpower64: %(asm_default)}}} \ +%{mcpu=power3: -m620} \ +%{mcpu=power4: -mpwr4} \ +%{mcpu=power5: -mpwr5} \ +%{mcpu=power5+: -mpwr5x} \ +%{mcpu=power6: -mpwr6} \ +%{mcpu=power6x: -mpwr6} \ +%{mcpu=powerpc: -mppc} \ +%{mcpu=rs64a: -mppc} \ +%{mcpu=603: -m603} \ +%{mcpu=603e: -m603} \ +%{mcpu=604: -m604} \ +%{mcpu=604e: -m604} \ +%{mcpu=620: -m620} \ +%{mcpu=630: -m620} \ +%{mcpu=970: -m970} \ +%{mcpu=G5: -m970}" + +#undef ASM_DEFAULT_SPEC +#define ASM_DEFAULT_SPEC "-mppc" + +#undef TARGET_OS_CPP_BUILTINS +#define TARGET_OS_CPP_BUILTINS() \ + do \ + { \ + builtin_define ("_AIX43"); \ + builtin_define ("_AIX51"); \ + builtin_define ("_AIX52"); \ + builtin_define ("_AIX53"); \ + builtin_define ("_AIX61"); \ + TARGET_OS_AIX_CPP_BUILTINS (); \ + } \ + while (0) + +#undef CPP_SPEC +#define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \ + %{ansi: -D_ANSI_C_SOURCE} \ + %{maix64: -D__64BIT__} \ + %{mpe: -I/usr/lpp/ppe.poe/include} \ + %{pthread: -D_THREAD_SAFE}" + +/* The GNU C++ standard library requires that these macros be + defined. Synchronize with libstdc++ os_defines.h. */ +#undef CPLUSPLUS_CPP_SPEC +#define CPLUSPLUS_CPP_SPEC \ + "-D_ALL_SOURCE -D__COMPATMATH__ \ + %{maix64: -D__64BIT__} \ + %{mpe: -I/usr/lpp/ppe.poe/include} \ + %{pthread: -D_THREAD_SAFE}" + +#undef TARGET_DEFAULT +#define TARGET_DEFAULT (MASK_POWERPC | MASK_NEW_MNEMONICS) + +#undef PROCESSOR_DEFAULT +#define PROCESSOR_DEFAULT PROCESSOR_POWER5 +#undef PROCESSOR_DEFAULT64 +#define PROCESSOR_DEFAULT64 PROCESSOR_POWER5 + +#undef TARGET_POWER +#define TARGET_POWER 0 + +/* Define this macro as a C expression for the initializer of an + array of string to tell the driver program which options are + defaults for this target and thus do not need to be handled + specially when using `MULTILIB_OPTIONS'. + + Do not define this macro if `MULTILIB_OPTIONS' is not defined in + the target makefile fragment or if none of the options listed in + `MULTILIB_OPTIONS' are set by default. *Note Target Fragment::. */ + +#undef MULTILIB_DEFAULTS + +#undef LIB_SPEC +#define LIB_SPEC "%{pg:-L/lib/profiled -L/usr/lib/profiled}\ + %{p:-L/lib/profiled -L/usr/lib/profiled}\ + %{!maix64:%{!shared:%{g*:-lg}}}\ + %{mpe:-L/usr/lpp/ppe.poe/lib -lmpi -lvtd}\ + %{pthread:-lpthreads} -lc" + +#undef LINK_SPEC +#define LINK_SPEC "-bpT:0x10000000 -bpD:0x20000000 %{!r:-btextro} -bnodelcsect\ + %{static:-bnso %(link_syscalls) } %{shared:-bM:SRE %{!e:-bnoentry}}\ + %{!maix64:%{!shared:%{g*: %(link_libg) }}} %{maix64:-b64}\ + %{mpe:-binitfini:poe_remote_main}" + +#undef STARTFILE_SPEC +#define STARTFILE_SPEC "%{!shared:\ + %{maix64:%{pg:gcrt0_64%O%s}%{!pg:%{p:mcrt0_64%O%s}%{!p:crt0_64%O%s}}}\ + %{!maix64:\ + %{pthread:%{pg:gcrt0_r%O%s}%{!pg:%{p:mcrt0_r%O%s}%{!p:crt0_r%O%s}}}\ + %{!pthread:%{pg:gcrt0%O%s}%{!pg:%{p:mcrt0%O%s}%{!p:crt0%O%s}}}}}" + +/* AIX V5 typedefs ptrdiff_t as "long" while earlier releases used "int". */ + +#undef PTRDIFF_TYPE +#define PTRDIFF_TYPE "long int" + +/* Type used for wchar_t, as a string used in a declaration. */ +#undef WCHAR_TYPE +#define WCHAR_TYPE (!TARGET_64BIT ? "short unsigned int" : "unsigned int") + +/* Width of wchar_t in bits. */ +#undef WCHAR_TYPE_SIZE +#define WCHAR_TYPE_SIZE (!TARGET_64BIT ? 16 : 32) + +/* AIX V5 uses PowerPC nop (ori 0,0,0) instruction as call glue for PowerPC + and "cror 31,31,31" for POWER architecture. */ + +#undef RS6000_CALL_GLUE +#define RS6000_CALL_GLUE "{cror 31,31,31|nop}" + +/* AIX 4.2 and above provides initialization and finalization function + support from linker command line. */ +#undef HAS_INIT_SECTION +#define HAS_INIT_SECTION + +#undef LD_INIT_SWITCH +#define LD_INIT_SWITCH "-binitfini" + +/* AIX 5.2 has the float and long double forms of math functions. */ +#undef TARGET_C99_FUNCTIONS +#define TARGET_C99_FUNCTIONS 1 + +#ifndef _AIX52 +extern long long int atoll(const char *); +#endif + +/* This target uses the aix64.opt file. */ +#define TARGET_USES_AIX64_OPT 1 + +#define RS6000_DEFAULT_LONG_DOUBLE_SIZE 128 diff -Nru gcc/config/rs6000/altivec.md gcc/config/rs6000/altivec.md --- gcc/config/rs6000/altivec.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/altivec.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,13 @@ ;; AltiVec patterns. -;; Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 +;; Free Software Foundation, Inc. ;; Contributed by Aldy Hernandez (aldy@quesejoda.com) ;; 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +16,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_constants [(UNSPEC_VCMPBFP 50) diff -Nru gcc/config/rs6000/constraints.md gcc/config/rs6000/constraints.md --- gcc/config/rs6000/constraints.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/constraints.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Constraint definitions for RS6000 -;; Copyright (C) 2006 Free Software Foundation, Inc. +;; Copyright (C) 2006, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; Register constraints diff -Nru gcc/config/rs6000/darwin.h gcc/config/rs6000/darwin.h --- gcc/config/rs6000/darwin.h 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/darwin.h 2013-01-01 12:16:54.000000000 +0100 @@ -1,5 +1,5 @@ /* Target definitions for PowerPC running Darwin (Mac OS X). - Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006 + Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Apple Computer Inc. @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #undef TARGET_VERSION #define TARGET_VERSION fprintf (stderr, " (Darwin/PowerPC)"); diff -Nru gcc/config/rs6000/darwin.md gcc/config/rs6000/darwin.md --- gcc/config/rs6000/darwin.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/darwin.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Machine description patterns for PowerPC running Darwin (Mac OS X). - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Apple Computer Inc. This file is part of GCC. GNU CC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) +the Free Software Foundation; either version 3, or (at your option) any later version. GNU CC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +;; along with GCC; see the file COPYING3. If not see +;; . */ (define_insn "adddi3_high" [(set (match_operand:DI 0 "gpc_reg_operand" "=b") diff -Nru gcc/config/rs6000/darwin.opt gcc/config/rs6000/darwin.opt --- gcc/config/rs6000/darwin.opt 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/darwin.opt 2012-12-31 17:06:03.000000000 +0100 @@ -1,13 +1,13 @@ ; Darwin options for PPC port. ; -; Copyright (C) 2005 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007 Free Software Foundation, Inc. ; Contributed by Aldy Hernandez . ; ; 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . m64 Target RejectNegative Mask(64BIT) diff -Nru gcc/config/rs6000/darwin64.h gcc/config/rs6000/darwin64.h --- gcc/config/rs6000/darwin64.h 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/darwin64.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Target definitions for PowerPC running Darwin (Mac OS X). - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 Free Software Foundation, Inc. Contributed by Apple Computer 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #undef TARGET_VERSION #define TARGET_VERSION fprintf (stderr, " (Darwin/PowerPC64)"); diff -Nru gcc/config/rs6000/darwin7.h gcc/config/rs6000/darwin7.h --- gcc/config/rs6000/darwin7.h 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/darwin7.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Target definitions for Darwin 7.x (Mac OS X) systems. - Copyright (C) 2004, 2005 + Copyright (C) 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Machine dependent libraries. Include libmx when compiling for Darwin 7.0 and above, but before libSystem, since the functions are diff -Nru gcc/config/rs6000/darwin8.h gcc/config/rs6000/darwin8.h --- gcc/config/rs6000/darwin8.h 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/darwin8.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Target definitions for Darwin 8.0 and above (Mac OS X) systems. - Copyright (C) 2004, 2005 + Copyright (C) 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Machine dependent libraries. Include libmx when compiling on Darwin 7.0 and above, but before libSystem, since the functions are diff -Nru gcc/config/rs6000/host-darwin.c gcc/config/rs6000/host-darwin.c --- gcc/config/rs6000/host-darwin.c 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/host-darwin.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* APPLE LOCAL file mainline 2006-06-02 4508814 */ /* Darwin/powerpc host-specific hook definitions. - Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006, 2007 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/config/rs6000/host-ppc64-darwin.c gcc/config/rs6000/host-ppc64-darwin.c --- gcc/config/rs6000/host-ppc64-darwin.c 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/host-ppc64-darwin.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* ppc64-darwin host-specific hook definitions. - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/config/rs6000/mpc.md gcc/config/rs6000/mpc.md --- gcc/config/rs6000/mpc.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/mpc.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for Motorola PowerPC processor cores. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "mpc,mpcfp") (define_cpu_unit "iu_mpc,mciu_mpc" "mpc") diff -Nru gcc/config/rs6000/power4.md gcc/config/rs6000/power4.md --- gcc/config/rs6000/power4.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/power4.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for IBM Power4 and PowerPC 970 processors. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; Sources: IBM Red Book and White Paper on POWER4 diff -Nru gcc/config/rs6000/power5.md gcc/config/rs6000/power5.md --- gcc/config/rs6000/power5.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/power5.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for IBM POWER5 processor. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; Sources: IBM Red Book and White Paper on POWER5 diff -Nru gcc/config/rs6000/predicates.md gcc/config/rs6000/predicates.md --- gcc/config/rs6000/predicates.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/predicates.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Predicate definitions for POWER and PowerPC. -;; Copyright (C) 2005, 2006 Free Software Foundation, Inc. +;; Copyright (C) 2005, 2006, 2007 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) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; ;; GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;; Return 1 for anything except PARALLEL. (define_predicate "any_operand" diff -Nru gcc/config/rs6000/rios1.md gcc/config/rs6000/rios1.md --- gcc/config/rs6000/rios1.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rios1.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for IBM POWER processor. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "rios1,rios1fp") (define_cpu_unit "iu_rios1" "rios1") diff -Nru gcc/config/rs6000/rios2.md gcc/config/rs6000/rios2.md --- gcc/config/rs6000/rios2.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rios2.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for IBM Power2 processor. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "rios2,rios2fp") (define_cpu_unit "iu1_rios2,iu2_rios2" "rios2") diff -Nru gcc/config/rs6000/rs6000-c.c gcc/config/rs6000/rs6000-c.c --- gcc/config/rs6000/rs6000-c.c 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rs6000-c.c 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,5 @@ /* Subroutines for the C front end on the POWER and PowerPC architectures. - Copyright (C) 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Zack Weinberg and Paolo Bonzini @@ -9,7 +8,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -18,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" @@ -292,7 +290,10 @@ RS6000_CPU_CPP_ENDIAN_BUILTINS(); if (TARGET_LONG_DOUBLE_128) - builtin_define ("__LONG_DOUBLE_128__"); + { + builtin_define ("__LONG_DOUBLE_128__"); + builtin_define ("__LONGDOUBLE128"); + } switch (rs6000_current_abi) { diff -Nru gcc/config/rs6000/rs6000-modes.def gcc/config/rs6000/rs6000-modes.def --- gcc/config/rs6000/rs6000-modes.def 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rs6000-modes.def 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions of target machine for GNU compiler, for IBM RS/6000. - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* 128-bit floating point. ABI_V4 uses IEEE quad, AIX/Darwin adjust this in rs6000_override_options. */ diff -Nru gcc/config/rs6000/rs6000-protos.h gcc/config/rs6000/rs6000-protos.h --- gcc/config/rs6000/rs6000-protos.h 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rs6000-protos.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for IBM RS/6000. - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu) @@ -7,7 +7,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #ifndef GCC_RS6000_PROTOS_H #define GCC_RS6000_PROTOS_H diff -Nru gcc/config/rs6000/rs6000.c gcc/config/rs6000/rs6000.c --- gcc/config/rs6000/rs6000.c 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rs6000.c 2013-01-01 12:15:12.000000000 +0100 @@ -8,7 +8,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/config/rs6000/rs6000.h gcc/config/rs6000/rs6000.h --- gcc/config/rs6000/rs6000.h 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rs6000.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler, for IBM RS/6000. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu) @@ -8,7 +8,7 @@ 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 + by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Note that some other tm.h files include this one and then override many of the definitions. */ diff -Nru gcc/config/rs6000/rs6000.md gcc/config/rs6000/rs6000.md --- gcc/config/rs6000/rs6000.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rs6000.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,6 +1,6 @@ ;; Machine description for IBM RISC System 6000 (POWER) for GNU C compiler ;; Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, -;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +;; 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 ;; Free Software Foundation, Inc. ;; Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu) @@ -8,7 +8,7 @@ ;; 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . ;;- See file "rtl.def" for documentation on define_insn, match_*, et. al. @@ -10110,6 +10109,7 @@ "" " { + operands[1] = force_reg (Pmode, operands[1]); operands[2] = gen_reg_rtx (Pmode); operands[3] = gen_frame_mem (Pmode, operands[0]); operands[4] = gen_frame_mem (Pmode, operands[1]); diff -Nru gcc/config/rs6000/rs6000.opt gcc/config/rs6000/rs6000.opt --- gcc/config/rs6000/rs6000.opt 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rs6000.opt 2012-12-31 17:06:03.000000000 +0100 @@ -1,13 +1,13 @@ ; Options for the rs6000 port of the compiler ; -; Copyright (C) 2005 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007 Free Software Foundation, Inc. ; Contributed by Aldy Hernandez . ; ; 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -16,9 +16,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . mpower Target Report RejectNegative Mask(POWER) diff -Nru gcc/config/rs6000/rs64.md gcc/config/rs6000/rs64.md --- gcc/config/rs6000/rs64.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/rs64.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ ;; Scheduling description for IBM RS64 processors. -;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2007 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_automaton "rs64,rs64fp") (define_cpu_unit "iu_rs64" "rs64") diff -Nru gcc/config/rs6000/spe.md gcc/config/rs6000/spe.md --- gcc/config/rs6000/spe.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/spe.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ;; e500 SPE description -;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. ;; Contributed by Aldy Hernandez (aldy@quesejoda.com) ;; 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_constants [(SPE_ACC_REGNO 111) diff -Nru gcc/config/rs6000/sync.md gcc/config/rs6000/sync.md --- gcc/config/rs6000/sync.md 2010-10-14 22:27:49.000000000 +0200 +++ gcc/config/rs6000/sync.md 2012-12-31 17:06:03.000000000 +0100 @@ -1,12 +1,12 @@ ;; Machine description for PowerPC synchronization instructions. -;; Copyright (C) 2005 Free Software Foundation, Inc. +;; Copyright (C) 2005, 2007 Free Software Foundation, Inc. ;; Contributed by Geoffrey Keating. ;; 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 +;; by the Free Software Foundation; either version 3, or (at your ;; option) any later version. ;; GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ ;; 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, 51 Franklin Street, Fifth Floor, Boston, -;; MA 02110-1301, USA. +;; along with GCC; see the file COPYING3. If not see +;; . (define_mode_attr larx [(SI "lwarx") (DI "ldarx")]) (define_mode_attr stcx [(SI "stwcx.") (DI "stdcx.")]) diff -Nru gcc/config/rtems.h gcc/config/rtems.h --- gcc/config/rtems.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/rtems.h 2012-12-31 17:06:03.000000000 +0100 @@ -1,11 +1,11 @@ /* Configuration common to all targets running RTEMS. - Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 2000, 2002, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* The system headers under RTEMS are C++-aware. */ #define NO_IMPLICIT_EXTERN_C diff -Nru gcc/config/score/score-generic.md gcc/config/score/score-generic.md --- gcc/config/score/score-generic.md 1970-01-01 01:00:00.000000000 +0100 +++ gcc/config/score/score-generic.md 2012-12-31 17:06:03.000000000 +0100 @@ -0,0 +1,45 @@ +;; Machine description for Sunplus S+CORE +;; Sunplus S+CORE Pipeline Description +;; Copyright (C) 2005, 2007 +;; Free Software Foundation, Inc. +;; Contributed by Sunnorth. + +;; 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 3, 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 COPYING3. If not see +;; . + +(define_automaton "score") + +(define_cpu_unit "core" "score") + +(define_insn_reservation "memory" 3 + (eq_attr "type" "load") + "core") + +(define_insn_reservation "mul" 3 + (eq_attr "type" "mul,div") + "core") + +(define_insn_reservation "fce" 1 + (eq_attr "type" "fce") + "core") + +(define_insn_reservation "tsr" 1 + (eq_attr "type" "tsr,fsr") + "core") + +(define_insn_reservation "up_c" 1 + (eq_attr "up_c" "yes") + "core") diff -Nru gcc/config/score/score3.c gcc/config/score/score3.c --- gcc/config/score/score3.c 1970-01-01 01:00:00.000000000 +0100 +++ gcc/config/score/score3.c 2012-12-31 17:06:04.000000000 +0100 @@ -0,0 +1,1945 @@ +/* score3.c for Sunplus S+CORE processor + Copyright (C) 2005, 2007 Free Software Foundation, Inc. + Contributed by Sunnorth + + 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 3, 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 COPYING3. If not see + . */ + +#include "config.h" +#include "system.h" +#include "coretypes.h" +#include "tm.h" +#include "rtl.h" +#include "regs.h" +#include "hard-reg-set.h" +#include "real.h" +#include "insn-config.h" +#include "conditions.h" +#include "insn-attr.h" +#include "recog.h" +#include "toplev.h" +#include "output.h" +#include "tree.h" +#include "function.h" +#include "expr.h" +#include "optabs.h" +#include "flags.h" +#include "reload.h" +#include "tm_p.h" +#include "ggc.h" +#include "gstab.h" +#include "hashtab.h" +#include "debug.h" +#include "target.h" +#include "target-def.h" +#include "integrate.h" +#include "langhooks.h" +#include "cfglayout.h" +#include "score3.h" + +#define BITSET_P(VALUE, BIT) (((VALUE) & (1L << (BIT))) != 0) +#define INS_BUF_SZ 128 + +/* Define the information needed to generate branch insns. This is + stored from the compare operation. */ +extern rtx cmp_op0, cmp_op1; +extern enum reg_class score_char_to_class[256]; + +static int score3_sdata_max; +static char score3_ins[INS_BUF_SZ + 8]; + +/* Return true if SYMBOL is a SYMBOL_REF and OFFSET + SYMBOL points + to the same object as SYMBOL. */ +static int +score3_offset_within_object_p (rtx symbol, HOST_WIDE_INT offset) +{ + if (GET_CODE (symbol) != SYMBOL_REF) + return 0; + + if (CONSTANT_POOL_ADDRESS_P (symbol) + && offset >= 0 + && offset < (int)GET_MODE_SIZE (get_pool_mode (symbol))) + return 1; + + if (SYMBOL_REF_DECL (symbol) != 0 + && offset >= 0 + && offset < int_size_in_bytes (TREE_TYPE (SYMBOL_REF_DECL (symbol)))) + return 1; + + return 0; +} + +/* Split X into a base and a constant offset, storing them in *BASE + and *OFFSET respectively. */ +static void +score3_split_const (rtx x, rtx *base, HOST_WIDE_INT *offset) +{ + *offset = 0; + + if (GET_CODE (x) == CONST) + x = XEXP (x, 0); + + if (GET_CODE (x) == PLUS && GET_CODE (XEXP (x, 1)) == CONST_INT) + { + *offset += INTVAL (XEXP (x, 1)); + x = XEXP (x, 0); + } + + *base = x; +} + +/* Classify symbol X, which must be a SYMBOL_REF or a LABEL_REF. */ +static enum score_symbol_type +score3_classify_symbol (rtx x) +{ + if (GET_CODE (x) == LABEL_REF) + return SYMBOL_GENERAL; + + gcc_assert (GET_CODE (x) == SYMBOL_REF); + + if (CONSTANT_POOL_ADDRESS_P (x)) + { + if (GET_MODE_SIZE (get_pool_mode (x)) <= SCORE3_SDATA_MAX) + return SYMBOL_SMALL_DATA; + return SYMBOL_GENERAL; + } + if (SYMBOL_REF_SMALL_P (x)) + return SYMBOL_SMALL_DATA; + return SYMBOL_GENERAL; +} + +/* Return true if the current function must save REGNO. */ +static int +score3_save_reg_p (unsigned int regno) +{ + /* Check call-saved registers. */ + if (regs_ever_live[regno] && !call_used_regs[regno]) + return 1; + + /* We need to save the old frame pointer before setting up a new one. */ + if (regno == HARD_FRAME_POINTER_REGNUM && frame_pointer_needed) + return 1; + + /* We need to save the incoming return address if it is ever clobbered + within the function. */ + if (regno == RA_REGNUM && regs_ever_live[regno]) + return 1; + + return 0; +} + +/* Return one word of double-word value OP, taking into account the fixed + endianness of certain registers. HIGH_P is true to select the high part, + false to select the low part. */ +static rtx +score3_subw (rtx op, int high_p) +{ + unsigned int byte; + enum machine_mode mode = GET_MODE (op); + + if (mode == VOIDmode) + mode = DImode; + + byte = (TARGET_LITTLE_ENDIAN ? high_p : !high_p) ? UNITS_PER_WORD : 0; + + if (GET_CODE (op) == REG && REGNO (op) == HI_REGNUM) + return gen_rtx_REG (SImode, high_p ? HI_REGNUM : LO_REGNUM); + + if (GET_CODE (op) == MEM) + return adjust_address (op, SImode, byte); + + return simplify_gen_subreg (SImode, op, mode, byte); +} + +static struct score3_frame_info * +score3_cached_frame (void) +{ + static struct score3_frame_info _frame_info; + return &_frame_info; +} + +/* Return the bytes needed to compute the frame pointer from the current + stack pointer. SIZE is the size (in bytes) of the local variables. */ +static struct score3_frame_info * +score3_compute_frame_size (HOST_WIDE_INT size) +{ + unsigned int regno; + struct score3_frame_info *f = score3_cached_frame (); + + memset (f, 0, sizeof (struct score3_frame_info)); + f->gp_reg_size = 0; + f->mask = 0; + f->var_size = SCORE3_STACK_ALIGN (size); + f->args_size = current_function_outgoing_args_size; + f->cprestore_size = flag_pic ? UNITS_PER_WORD : 0; + + if (f->var_size == 0 && current_function_is_leaf) + f->args_size = f->cprestore_size = 0; + + if (f->args_size == 0 && current_function_calls_alloca) + f->args_size = UNITS_PER_WORD; + + f->total_size = f->var_size + f->args_size + f->cprestore_size; + for (regno = GP_REG_FIRST; regno <= GP_REG_LAST; regno++) + { + if (score3_save_reg_p (regno)) + { + f->gp_reg_size += GET_MODE_SIZE (SImode); + f->mask |= 1 << (regno - GP_REG_FIRST); + } + } + + if (current_function_calls_eh_return) + { + unsigned int i; + for (i = 0;; ++i) + { + regno = EH_RETURN_DATA_REGNO (i); + if (regno == INVALID_REGNUM) + break; + f->gp_reg_size += GET_MODE_SIZE (SImode); + f->mask |= 1 << (regno - GP_REG_FIRST); + } + } + + f->total_size += f->gp_reg_size; + f->num_gp = f->gp_reg_size / UNITS_PER_WORD; + + if (f->mask) + { + HOST_WIDE_INT offset; + offset = (f->args_size + f->cprestore_size + f->var_size + + f->gp_reg_size - GET_MODE_SIZE (SImode)); + f->gp_sp_offset = offset; + } + else + f->gp_sp_offset = 0; + + return f; +} + +/* Return true if X is a valid base register for the given mode. + Allow only hard registers if STRICT. */ +static int +score3_valid_base_register_p (rtx x, int strict) +{ + if (!strict && GET_CODE (x) == SUBREG) + x = SUBREG_REG (x); + + return (GET_CODE (x) == REG + && score3_regno_mode_ok_for_base_p (REGNO (x), strict)); +} + +/* Return true if X is a valid address for machine mode MODE. If it is, + fill in INFO appropriately. STRICT is true if we should only accept + hard base registers. */ +static int +score3_classify_address (struct score3_address_info *info, + enum machine_mode mode, rtx x, int strict) +{ + info->code = GET_CODE (x); + + switch (info->code) + { + case REG: + case SUBREG: + info->type = SCORE3_ADD_REG; + info->reg = x; + info->offset = const0_rtx; + return score3_valid_base_register_p (info->reg, strict); + case PLUS: + info->type = SCORE3_ADD_REG; + info->reg = XEXP (x, 0); + info->offset = XEXP (x, 1); + return (score3_valid_base_register_p (info->reg, strict) + && GET_CODE (info->offset) == CONST_INT + && IMM_IN_RANGE (INTVAL (info->offset), 15, 1)); + case PRE_DEC: + case POST_DEC: + case PRE_INC: + case POST_INC: + if (GET_MODE_SIZE (mode) > GET_MODE_SIZE (SImode)) + return false; + info->type = SCORE3_ADD_REG; + info->reg = XEXP (x, 0); + info->offset = GEN_INT (GET_MODE_SIZE (mode)); + return score3_valid_base_register_p (info->reg, strict); + case CONST_INT: + info->type = SCORE3_ADD_CONST_INT; + return 1; + case CONST: + case LABEL_REF: + case SYMBOL_REF: + info->type = SCORE3_ADD_SYMBOLIC; + return (score3_symbolic_constant_p (x, &info->symbol_type) + && (info->symbol_type == SYMBOL_GENERAL + || info->symbol_type == SYMBOL_SMALL_DATA)); + default: + return 0; + } +} + +bool +score3_return_in_memory (tree type, tree fndecl ATTRIBUTE_UNUSED) +{ + return ((TYPE_MODE (type) == BLKmode) + || (int_size_in_bytes (type) > 2 * UNITS_PER_WORD) + || (int_size_in_bytes (type) == -1)); +} + +/* Return a legitimate address for REG + OFFSET. */ +static rtx +score3_add_offset (rtx reg, HOST_WIDE_INT offset) +{ + if (!IMM_IN_RANGE (offset, 15, 1)) + { + reg = expand_simple_binop (GET_MODE (reg), PLUS, + gen_int_mode (offset & 0xffffc000, + GET_MODE (reg)), + reg, NULL, 0, OPTAB_WIDEN); + offset &= 0x3fff; + } + + return plus_constant (reg, offset); +} + +/* Implement TARGET_ASM_OUTPUT_MI_THUNK. Generate rtl rather than asm text + in order to avoid duplicating too much logic from elsewhere. */ +void +score3_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED, + HOST_WIDE_INT delta, HOST_WIDE_INT vcall_offset, + tree function) +{ + rtx this, temp1, insn, fnaddr; + + /* Pretend to be a post-reload pass while generating rtl. */ + no_new_pseudos = 1; + reload_completed = 1; + reset_block_changes (); + + /* We need two temporary registers in some cases. */ + temp1 = gen_rtx_REG (Pmode, 8); + + /* Find out which register contains the "this" pointer. */ + if (aggregate_value_p (TREE_TYPE (TREE_TYPE (function)), function)) + this = gen_rtx_REG (Pmode, ARG_REG_FIRST + 1); + else + this = gen_rtx_REG (Pmode, ARG_REG_FIRST); + + /* Add DELTA to THIS. */ + if (delta != 0) + { + rtx offset = GEN_INT (delta); + if (!CONST_OK_FOR_LETTER_P (delta, 'L')) + { + emit_move_insn (temp1, offset); + offset = temp1; + } + emit_insn (gen_add3_insn (this, this, offset)); + } + + /* If needed, add *(*THIS + VCALL_OFFSET) to THIS. */ + if (vcall_offset != 0) + { + rtx addr; + + /* Set TEMP1 to *THIS. */ + emit_move_insn (temp1, gen_rtx_MEM (Pmode, this)); + + /* Set ADDR to a legitimate address for *THIS + VCALL_OFFSET. */ + addr = score3_add_offset (temp1, vcall_offset); + + /* Load the offset and add it to THIS. */ + emit_move_insn (temp1, gen_rtx_MEM (Pmode, addr)); + emit_insn (gen_add3_insn (this, this, temp1)); + } + + /* Jump to the target function. */ + fnaddr = XEXP (DECL_RTL (function), 0); + insn = emit_call_insn (gen_sibcall_internal_score3 (fnaddr, const0_rtx)); + SIBLING_CALL_P (insn) = 1; + + /* Run just enough of rest_of_compilation. This sequence was + "borrowed" from alpha.c. */ + insn = get_insns (); + insn_locators_initialize (); + split_all_insns_noflow (); + shorten_branches (insn); + final_start_function (insn, file, 1); + final (insn, file, 1); + final_end_function (); + + /* Clean up the vars set above. Note that final_end_function resets + the global pointer for us. */ + reload_completed = 0; + no_new_pseudos = 0; +} + +/* Copy VALUE to a register and return that register. If new psuedos + are allowed, copy it into a new register, otherwise use DEST. */ +static rtx +score3_force_temporary (rtx dest, rtx value) +{ + if (!no_new_pseudos) + return force_reg (Pmode, value); + else + { + emit_move_insn (copy_rtx (dest), value); + return dest; + } +} + +/* Return a LO_SUM expression for ADDR. TEMP is as for score_force_temporary + and is used to load the high part into a register. */ +static rtx +score3_split_symbol (rtx temp, rtx addr) +{ + rtx high = score3_force_temporary (temp, + gen_rtx_HIGH (Pmode, copy_rtx (addr))); + return gen_rtx_LO_SUM (Pmode, high, addr); +} + +/* This function is used to implement LEGITIMIZE_ADDRESS. If *XLOC can + be legitimized in a way that the generic machinery might not expect, + put the new address in *XLOC and return true. */ +int +score3_legitimize_address (rtx *xloc) +{ + enum score_symbol_type symbol_type; + + if (score3_symbolic_constant_p (*xloc, &symbol_type) + && symbol_type == SYMBOL_GENERAL) + { + *xloc = score3_split_symbol (0, *xloc); + return 1; + } + + if (GET_CODE (*xloc) == PLUS + && GET_CODE (XEXP (*xloc, 1)) == CONST_INT) + { + rtx reg = XEXP (*xloc, 0); + if (!score3_valid_base_register_p (reg, 0)) + reg = copy_to_mode_reg (Pmode, reg); + *xloc = score3_add_offset (reg, INTVAL (XEXP (*xloc, 1))); + return 1; + } + return 0; +} + +/* Fill INFO with information about a single argument. CUM is the + cumulative state for earlier arguments. MODE is the mode of this + argument and TYPE is its type (if known). NAMED is true if this + is a named (fixed) argument rather than a variable one. */ +static void +score3_classify_arg (const CUMULATIVE_ARGS *cum, enum machine_mode mode, + tree type, int named, struct score3_arg_info *info) +{ + int even_reg_p; + unsigned int num_words, max_regs; + + even_reg_p = 0; + if (GET_MODE_CLASS (mode) == MODE_INT + || GET_MODE_CLASS (mode) == MODE_FLOAT) + even_reg_p = (GET_MODE_SIZE (mode) > UNITS_PER_WORD); + else + if (type != NULL_TREE && TYPE_ALIGN (type) > BITS_PER_WORD && named) + even_reg_p = 1; + + if (TARGET_MUST_PASS_IN_STACK (mode, type)) + info->reg_offset = ARG_REG_NUM; + else + { + info->reg_offset = cum->num_gprs; + if (even_reg_p) + info->reg_offset += info->reg_offset & 1; + } + + if (mode == BLKmode) + info->num_bytes = int_size_in_bytes (type); + else + info->num_bytes = GET_MODE_SIZE (mode); + + num_words = (info->num_bytes + UNITS_PER_WORD - 1) / UNITS_PER_WORD; + max_regs = ARG_REG_NUM - info->reg_offset; + + /* Partition the argument between registers and stack. */ + info->reg_words = MIN (num_words, max_regs); + info->stack_words = num_words - info->reg_words; + + /* The alignment applied to registers is also applied to stack arguments. */ + if (info->stack_words) + { + info->stack_offset = cum->stack_words; + if (even_reg_p) + info->stack_offset += info->stack_offset & 1; + } +} + +/* Set up the stack and frame (if desired) for the function. */ +void +score3_function_prologue (FILE *file, HOST_WIDE_INT size ATTRIBUTE_UNUSED) +{ + const char *fnname; + struct score3_frame_info *f = score3_cached_frame (); + HOST_WIDE_INT tsize = f->total_size; + + fnname = XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0); + if (!flag_inhibit_size_directive) + { + fputs ("\t.ent\t", file); + assemble_name (file, fnname); + fputs ("\n", file); + } + assemble_name (file, fnname); + fputs (":\n", file); + + if (!flag_inhibit_size_directive) + { + fprintf (file, + "\t.frame\t%s," HOST_WIDE_INT_PRINT_DEC ",%s, %d\t\t" + "# vars= " HOST_WIDE_INT_PRINT_DEC ", regs= %d" + ", args= " HOST_WIDE_INT_PRINT_DEC + ", gp= " HOST_WIDE_INT_PRINT_DEC "\n", + (reg_names[(frame_pointer_needed) + ? HARD_FRAME_POINTER_REGNUM : STACK_POINTER_REGNUM]), + tsize, + reg_names[RA_REGNUM], + current_function_is_leaf ? 1 : 0, + f->var_size, + f->num_gp, + f->args_size, + f->cprestore_size); + + fprintf(file, "\t.mask\t0x%08x," HOST_WIDE_INT_PRINT_DEC "\n", + f->mask, + (f->gp_sp_offset - f->total_size)); + } +} + +/* Do any necessary cleanup after a function to restore stack, frame, + and regs. */ +void +score3_function_epilogue (FILE *file, + HOST_WIDE_INT size ATTRIBUTE_UNUSED) +{ + if (!flag_inhibit_size_directive) + { + const char *fnname; + fnname = XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0); + fputs ("\t.end\t", file); + assemble_name (file, fnname); + fputs ("\n", file); + } +} + +/* Returns true if X contains a SYMBOL_REF. */ +static bool +score3_symbolic_expression_p (rtx x) +{ + if (GET_CODE (x) == SYMBOL_REF) + return true; + + if (GET_CODE (x) == CONST) + return score3_symbolic_expression_p (XEXP (x, 0)); + + if (UNARY_P (x)) + return score3_symbolic_expression_p (XEXP (x, 0)); + + if (ARITHMETIC_P (x)) + return (score3_symbolic_expression_p (XEXP (x, 0)) + || score3_symbolic_expression_p (XEXP (x, 1))); + + return false; +} + +/* Choose the section to use for the constant rtx expression X that has + mode MODE. */ +section * +score3_select_rtx_section (enum machine_mode mode, rtx x, + unsigned HOST_WIDE_INT align) +{ + if (GET_MODE_SIZE (mode) <= SCORE3_SDATA_MAX) + return get_named_section (0, ".sdata", 0); + else if (flag_pic && score3_symbolic_expression_p (x)) + return get_named_section (0, ".data.rel.ro", 3); + else + return mergeable_constant_section (mode, align, 0); +} + +/* Implement TARGET_IN_SMALL_DATA_P. */ +bool +score3_in_small_data_p (tree decl) +{ + HOST_WIDE_INT size; + + if (TREE_CODE (decl) == STRING_CST + || TREE_CODE (decl) == FUNCTION_DECL) + return false; + + if (TREE_CODE (decl) == VAR_DECL && DECL_SECTION_NAME (decl) != 0) + { + const char *name; + name = TREE_STRING_POINTER (DECL_SECTION_NAME (decl)); + if (strcmp (name, ".sdata") != 0 + && strcmp (name, ".sbss") != 0) + return true; + if (!DECL_EXTERNAL (decl)) + return false; + } + size = int_size_in_bytes (TREE_TYPE (decl)); + return (size > 0 && size <= SCORE3_SDATA_MAX); +} + +/* Implement TARGET_ASM_FILE_START. */ +void +score3_asm_file_start (void) +{ + default_file_start (); + fprintf (asm_out_file, ASM_COMMENT_START + "GCC for S+core %s \n", SCORE_GCC_VERSION); + + if (flag_pic) + fprintf (asm_out_file, "\t.set pic\n"); +} + +/* Implement TARGET_ASM_FILE_END. When using assembler macros, emit + .externs for any small-data variables that turned out to be external. */ +void +score3_asm_file_end (void) +{ + tree name_tree; + struct extern_list *p; + if (extern_head) + { + fputs ("\n", asm_out_file); + for (p = extern_head; p != 0; p = p->next) + { + name_tree = get_identifier (p->name); + if (!TREE_ASM_WRITTEN (name_tree) + && TREE_SYMBOL_REFERENCED (name_tree)) + { + TREE_ASM_WRITTEN (name_tree) = 1; + fputs ("\t.extern\t", asm_out_file); + assemble_name (asm_out_file, p->name); + fprintf (asm_out_file, ", %d\n", p->size); + } + } + } +} + +/* Implement OVERRIDE_OPTIONS macro. */ +void +score3_override_options (void) +{ + flag_pic = false; + if (!flag_pic) + score3_sdata_max = g_switch_set ? g_switch_value : SCORE3_DEFAULT_SDATA_MAX; + else + { + score3_sdata_max = 0; + if (g_switch_set && (g_switch_value != 0)) + warning (0, "-fPIC and -G are incompatible"); + } + + score_char_to_class['d'] = G32_REGS; + score_char_to_class['e'] = G16_REGS; + score_char_to_class['t'] = T32_REGS; + + score_char_to_class['h'] = HI_REG; + score_char_to_class['l'] = LO_REG; + score_char_to_class['x'] = CE_REGS; + + score_char_to_class['q'] = CN_REG; + score_char_to_class['y'] = LC_REG; + score_char_to_class['z'] = SC_REG; + score_char_to_class['a'] = SP_REGS; + + score_char_to_class['c'] = CR_REGS; +} + +/* Implement REGNO_REG_CLASS macro. */ +int +score3_reg_class (int regno) +{ + int c; + gcc_assert (regno >= 0 && regno < FIRST_PSEUDO_REGISTER); + + if (regno == FRAME_POINTER_REGNUM + || regno == ARG_POINTER_REGNUM) + return ALL_REGS; + + for (c = 0; c < N_REG_CLASSES; c++) + if (TEST_HARD_REG_BIT (reg_class_contents[c], regno)) + return c; + + return NO_REGS; +} + +/* Implement PREFERRED_RELOAD_CLASS macro. */ +enum reg_class +score3_preferred_reload_class (rtx x ATTRIBUTE_UNUSED, enum reg_class class) +{ + if (reg_class_subset_p (G16_REGS, class)) + return G16_REGS; + if (reg_class_subset_p (G32_REGS, class)) + return G32_REGS; + return class; +} + +/* Implement SECONDARY_INPUT_RELOAD_CLASS + and SECONDARY_OUTPUT_RELOAD_CLASS macro. */ +enum reg_class +score3_secondary_reload_class (enum reg_class class, + enum machine_mode mode ATTRIBUTE_UNUSED, + rtx x) +{ + int regno = -1; + if (GET_CODE (x) == REG || GET_CODE(x) == SUBREG) + regno = true_regnum (x); + + if (!GR_REG_CLASS_P (class)) + return GP_REG_P (regno) ? NO_REGS : G32_REGS; + return NO_REGS; +} + +/* Implement CONST_OK_FOR_LETTER_P macro. */ +/* imm constraints + I imm16 << 16 + J uimm5 + K uimm16 + L simm16 + M uimm14 + N simm14 + O simm14 + P simm5 + Q uimm32 */ +int +score3_const_ok_for_letter_p (HOST_WIDE_INT value, char c) +{ + switch (c) + { + case 'I': return ((value & 0xffff) == 0); + case 'J': return IMM_IN_RANGE (value, 5, 0); + case 'K': return IMM_IN_RANGE (value, 16, 0); + case 'L': return IMM_IN_RANGE (value, 16, 1); + case 'M': return IMM_IN_RANGE (value, 14, 0); + case 'N': return IMM_IN_RANGE (value, 14, 1); + case 'O': return IMM_IN_RANGE (value, 5, 1); + case 'P': return IMM_IN_RANGE (value, 6, 1); + case 'Q': return score_extra_constraint (GEN_INT(value), c); + default : return 0; + } +} + +/* Implement EXTRA_CONSTRAINT macro. */ +/* + Q uimm32 + Z symbol_ref */ +int +score3_extra_constraint (rtx op, char c) +{ + switch (c) + { + case 'Q': return IMM_IN_RANGE (INTVAL(op), 32, 0); + case 'Z': + return GET_CODE (op) == SYMBOL_REF; + default: + gcc_unreachable (); + } +} + +/* Return truth value on whether or not a given hard register + can support a given mode. */ +int +score3_hard_regno_mode_ok (unsigned int regno, enum machine_mode mode) +{ + int size = GET_MODE_SIZE (mode); + enum mode_class class = GET_MODE_CLASS (mode); + + if (class == MODE_CC) + return regno == CC_REGNUM; + else if (regno == FRAME_POINTER_REGNUM + || regno == ARG_POINTER_REGNUM) + return class == MODE_INT; + else if (GP_REG_P (regno)) + return !(regno & 1) || (size <= UNITS_PER_WORD); + else if (CE_REG_P (regno)) + return (class == MODE_INT + && ((size <= UNITS_PER_WORD) + || (regno == CE_REG_FIRST && size == 2 * UNITS_PER_WORD))); + else + return (class == MODE_INT) && (size <= UNITS_PER_WORD); +} + +/* Implement INITIAL_ELIMINATION_OFFSET. FROM is either the frame + pointer or argument pointer. TO is either the stack pointer or + hard frame pointer. */ +HOST_WIDE_INT +score3_initial_elimination_offset (int from, + int to ATTRIBUTE_UNUSED) +{ + struct score3_frame_info *f = score3_compute_frame_size (get_frame_size ()); + switch (from) + { + case ARG_POINTER_REGNUM: + return f->total_size; + case FRAME_POINTER_REGNUM: + return 0; + default: + gcc_unreachable (); + } +} + +/* Implement FUNCTION_ARG_ADVANCE macro. */ +void +score3_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, + tree type, int named) +{ + struct score3_arg_info info; + score3_classify_arg (cum, mode, type, named, &info); + cum->num_gprs = info.reg_offset + info.reg_words; + if (info.stack_words > 0) + cum->stack_words = info.stack_offset + info.stack_words; + cum->arg_number++; +} + +/* Implement TARGET_ARG_PARTIAL_BYTES macro. */ +int +score3_arg_partial_bytes (CUMULATIVE_ARGS *cum, + enum machine_mode mode, tree type, bool named) +{ + struct score3_arg_info info; + score3_classify_arg (cum, mode, type, named, &info); + return info.stack_words > 0 ? info.reg_words * UNITS_PER_WORD : 0; +} + +/* Implement FUNCTION_ARG macro. */ +rtx +score3_function_arg (const CUMULATIVE_ARGS *cum, enum machine_mode mode, + tree type, int named) +{ + struct score3_arg_info info; + + if (mode == VOIDmode || !named) + return 0; + + score3_classify_arg (cum, mode, type, named, &info); + + if (info.reg_offset == ARG_REG_NUM) + return 0; + + if (!info.stack_words) + return gen_rtx_REG (mode, ARG_REG_FIRST + info.reg_offset); + else + { + rtx ret = gen_rtx_PARALLEL (mode, rtvec_alloc (info.reg_words)); + unsigned int i, part_offset = 0; + for (i = 0; i < info.reg_words; i++) + { + rtx reg; + reg = gen_rtx_REG (SImode, ARG_REG_FIRST + info.reg_offset + i); + XVECEXP (ret, 0, i) = gen_rtx_EXPR_LIST (SImode, reg, + GEN_INT (part_offset)); + part_offset += UNITS_PER_WORD; + } + return ret; + } +} + +/* Implement FUNCTION_VALUE and LIBCALL_VALUE. For normal calls, + VALTYPE is the return type and MODE is VOIDmode. For libcalls, + VALTYPE is null and MODE is the mode of the return value. */ +rtx +score3_function_value (tree valtype, tree func ATTRIBUTE_UNUSED, + enum machine_mode mode) +{ + if (valtype) + { + int unsignedp; + mode = TYPE_MODE (valtype); + unsignedp = TYPE_UNSIGNED (valtype); + mode = promote_mode (valtype, mode, &unsignedp, 1); + } + return gen_rtx_REG (mode, RT_REGNUM); +} + +/* Implement INITIALIZE_TRAMPOLINE macro. */ +void +score3_initialize_trampoline (rtx ADDR, rtx FUNC, rtx CHAIN) +{ +#define FFCACHE "_flush_cache" +#define CODE_SIZE (TRAMPOLINE_INSNS * UNITS_PER_WORD) + + rtx pfunc, pchain; + + pfunc = plus_constant (ADDR, CODE_SIZE); + pchain = plus_constant (ADDR, CODE_SIZE + GET_MODE_SIZE (SImode)); + + emit_move_insn (gen_rtx_MEM (SImode, pfunc), FUNC); + emit_move_insn (gen_rtx_MEM (SImode, pchain), CHAIN); + emit_library_call (gen_rtx_SYMBOL_REF (Pmode, FFCACHE), + 0, VOIDmode, 2, + ADDR, Pmode, + GEN_INT (TRAMPOLINE_SIZE), SImode); +#undef FFCACHE +#undef CODE_SIZE +} + +/* This function is used to implement REG_MODE_OK_FOR_BASE_P macro. */ +int +score3_regno_mode_ok_for_base_p (int regno, int strict) +{ + if (regno >= FIRST_PSEUDO_REGISTER) + { + if (!strict) + return 1; + regno = reg_renumber[regno]; + } + if (regno == ARG_POINTER_REGNUM + || regno == FRAME_POINTER_REGNUM) + return 1; + return GP_REG_P (regno); +} + +/* Implement GO_IF_LEGITIMATE_ADDRESS macro. */ +int +score3_address_p (enum machine_mode mode, rtx x, int strict) +{ + struct score3_address_info addr; + + return score3_classify_address (&addr, mode, x, strict); +} + +/* Return a number assessing the cost of moving a register in class + FROM to class TO. */ +int +score3_register_move_cost (enum machine_mode mode ATTRIBUTE_UNUSED, + enum reg_class from, enum reg_class to) +{ + if (GR_REG_CLASS_P (from)) + { + if (GR_REG_CLASS_P (to)) + return 2; + else if (SP_REG_CLASS_P (to)) + return 4; + else if (CP_REG_CLASS_P (to)) + return 5; + else if (CE_REG_CLASS_P (to)) + return 6; + } + if (GR_REG_CLASS_P (to)) + { + if (GR_REG_CLASS_P (from)) + return 2; + else if (SP_REG_CLASS_P (from)) + return 4; + else if (CP_REG_CLASS_P (from)) + return 5; + else if (CE_REG_CLASS_P (from)) + return 6; + } + return 12; +} + +/* Return the number of instructions needed to load a symbol of the + given type into a register. */ +static int +score3_symbol_insns (enum score_symbol_type type) +{ + switch (type) + { + case SYMBOL_GENERAL: + return 2; + + case SYMBOL_SMALL_DATA: + return 1; + } + + gcc_unreachable (); +} + +/* Return the number of instructions needed to load or store a value + of mode MODE at X. Return 0 if X isn't valid for MODE. */ +static int +score3_address_insns (rtx x, enum machine_mode mode) +{ + struct score3_address_info addr; + int factor; + + if (mode == BLKmode) + factor = 1; + else + factor = (GET_MODE_SIZE (mode) + UNITS_PER_WORD - 1) / UNITS_PER_WORD; + + if (score3_classify_address (&addr, mode, x, false)) + switch (addr.type) + { + case SCORE3_ADD_REG: + case SCORE3_ADD_CONST_INT: + return factor; + + case SCORE3_ADD_SYMBOLIC: + return factor * score3_symbol_insns (addr.symbol_type); + } + return 0; +} + +/* Implement TARGET_RTX_COSTS macro. */ +bool +score3_rtx_costs (rtx x, int code, int outer_code, int *total) +{ + enum machine_mode mode = GET_MODE (x); + + switch (code) + { + case CONST_INT: + if (outer_code == SET) + { + if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'I') + || CONST_OK_FOR_LETTER_P (INTVAL (x), 'L')) + *total = COSTS_N_INSNS (1); + else + *total = COSTS_N_INSNS (2); + } + else if (outer_code == PLUS || outer_code == MINUS) + { + if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'N')) + *total = 0; + else if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'I') + || CONST_OK_FOR_LETTER_P (INTVAL (x), 'L')) + *total = 1; + else + *total = COSTS_N_INSNS (2); + } + else if (outer_code == AND || outer_code == IOR) + { + if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'M')) + *total = 0; + else if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'I') + || CONST_OK_FOR_LETTER_P (INTVAL (x), 'K')) + *total = 1; + else + *total = COSTS_N_INSNS (2); + } + else + { + *total = 0; + } + return true; + + case CONST: + case SYMBOL_REF: + case LABEL_REF: + case CONST_DOUBLE: + *total = COSTS_N_INSNS (2); + return true; + + case MEM: + { + /* If the address is legitimate, return the number of + instructions it needs, otherwise use the default handling. */ + int n = score3_address_insns (XEXP (x, 0), GET_MODE (x)); + if (n > 0) + { + *total = COSTS_N_INSNS (n + 1); + return true; + } + return false; + } + + case FFS: + *total = COSTS_N_INSNS (6); + return true; + + case NOT: + *total = COSTS_N_INSNS (1); + return true; + + case AND: + case IOR: + case XOR: + if (mode == DImode) + { + *total = COSTS_N_INSNS (2); + return true; + } + return false; + + case ASHIFT: + case ASHIFTRT: + case LSHIFTRT: + if (mode == DImode) + { + *total = COSTS_N_INSNS ((GET_CODE (XEXP (x, 1)) == CONST_INT) + ? 4 : 12); + return true; + } + return false; + + case ABS: + *total = COSTS_N_INSNS (4); + return true; + + case PLUS: + case MINUS: + if (mode == DImode) + { + *total = COSTS_N_INSNS (4); + return true; + } + *total = COSTS_N_INSNS (1); + return true; + + case NEG: + if (mode == DImode) + { + *total = COSTS_N_INSNS (4); + return true; + } + return false; + + case MULT: + *total = optimize_size ? COSTS_N_INSNS (2) : COSTS_N_INSNS (12); + return true; + + case DIV: + case MOD: + case UDIV: + case UMOD: + *total = optimize_size ? COSTS_N_INSNS (2) : COSTS_N_INSNS (33); + return true; + + case SIGN_EXTEND: + case ZERO_EXTEND: + switch (GET_MODE (XEXP (x, 0))) + { + case QImode: + case HImode: + if (GET_CODE (XEXP (x, 0)) == MEM) + { + *total = COSTS_N_INSNS (2); + + if (!TARGET_LITTLE_ENDIAN && + side_effects_p (XEXP (XEXP (x, 0), 0))) + *total = 100; + } + else + *total = COSTS_N_INSNS (1); + break; + + default: + *total = COSTS_N_INSNS (1); + break; + } + return true; + + default: + return false; + } +} + +/* Implement TARGET_ADDRESS_COST macro. */ +int +score3_address_cost (rtx addr) +{ + return score3_address_insns (addr, SImode); +} + +/* Implement ASM_OUTPUT_EXTERNAL macro. */ +int +score3_output_external (FILE *file ATTRIBUTE_UNUSED, + tree decl, const char *name) +{ + register struct extern_list *p; + + if (score3_in_small_data_p (decl)) + { + p = (struct extern_list *) ggc_alloc (sizeof (struct extern_list)); + p->next = extern_head; + p->name = name; + p->size = int_size_in_bytes (TREE_TYPE (decl)); + extern_head = p; + } + return 0; +} + +/* Implement RETURN_ADDR_RTX. Note, we do not support moving + back to a previous frame. */ +rtx +score3_return_addr (int count, rtx frame ATTRIBUTE_UNUSED) +{ + if (count != 0) + return const0_rtx; + return get_hard_reg_initial_val (Pmode, RA_REGNUM); +} + +/* Implement PRINT_OPERAND macro. */ +/* Score-specific operand codes: + '[' print .set nor1 directive + ']' print .set r1 directive + 'U' print hi part of a CONST_INT rtx + 'E' print log2(v) + 'F' print log2(~v) + 'D' print SFmode const double + 'S' selectively print "!" if operand is 15bit instruction accessible + 'V' print "v!" if operand is 15bit instruction accessible, or "lfh!" + 'L' low part of DImode reg operand + 'H' high part of DImode reg operand + 'C' print part of opcode for a branch condition. */ +void +score3_print_operand (FILE *file, rtx op, int c) +{ + enum rtx_code code = -1; + if (!PRINT_OPERAND_PUNCT_VALID_P (c)) + code = GET_CODE (op); + + if (c == '[') + { + fprintf (file, ".set r1\n"); + } + else if (c == ']') + { + fprintf (file, "\n\t.set nor1"); + } + else if (c == 'U') + { + gcc_assert (code == CONST_INT); + fprintf (file, HOST_WIDE_INT_PRINT_HEX, + (INTVAL (op) >> 16) & 0xffff); + } + else if (c == 'D') + { + if (GET_CODE (op) == CONST_DOUBLE) + { + rtx temp = gen_lowpart (SImode, op); + gcc_assert (GET_MODE (op) == SFmode); + fprintf (file, HOST_WIDE_INT_PRINT_HEX, INTVAL (temp) & 0xffffffff); + } + else + output_addr_const (file, op); + } + else if (c == 'S') + { + gcc_assert (code == REG); + if (G16_REG_P (REGNO (op))) + fprintf (file, "!"); + } + else if (c == 'V') + { + gcc_assert (code == REG); + fprintf (file, G16_REG_P (REGNO (op)) ? "v!" : "lfh!"); + } + else if (c == 'C') + { + enum machine_mode mode = GET_MODE (XEXP (op, 0)); + + switch (code) + { + case EQ: fputs ("eq!", file); break; + case NE: fputs ("ne!", file); break; + case GT: fputs ("gt!", file); break; + case GE: fputs (mode != CCmode ? "pl" : "ge", file); break; + case LT: fputs (mode != CCmode ? "mi" : "lt", file); break; + case LE: fputs ("le!", file); break; + case GTU: fputs ("gtu!", file); break; + case GEU: fputs ("cs", file); break; + case LTU: fputs ("cc", file); break; + case LEU: fputs ("leu!", file); break; + default: + output_operand_lossage ("invalid operand for code: '%c'", code); + } + } + else if (c == 'G') /* Seperate from b, use for mv. */ + { + enum machine_mode mode = GET_MODE (XEXP (op, 0)); + + switch (code) + { + case EQ: fputs ("eq", file); break; + case NE: fputs ("ne", file); break; + case GT: fputs ("gt", file); break; + case GE: fputs (mode != CCmode ? "pl" : "ge", file); break; + case LT: fputs (mode != CCmode ? "mi" : "lt", file); break; + case LE: fputs ("le", file); break; + case GTU: fputs ("gtu", file); break; + case GEU: fputs ("cs", file); break; + case LTU: fputs ("cc", file); break; + case LEU: fputs ("leu", file); break; + default: + output_operand_lossage ("invalid operand for code: '%c'", code); + } + } + else if (c == 'E') + { + unsigned HOST_WIDE_INT i; + unsigned HOST_WIDE_INT pow2mask = 1; + unsigned HOST_WIDE_INT val; + + val = INTVAL (op); + for (i = 0; i < 32; i++) + { + if (val == pow2mask) + break; + pow2mask <<= 1; + } + gcc_assert (i < 32); + fprintf (file, HOST_WIDE_INT_PRINT_HEX, i); + } + else if (c == 'F') + { + unsigned HOST_WIDE_INT i; + unsigned HOST_WIDE_INT pow2mask = 1; + unsigned HOST_WIDE_INT val; + + val = ~INTVAL (op); + for (i = 0; i < 32; i++) + { + if (val == pow2mask) + break; + pow2mask <<= 1; + } + gcc_assert (i < 32); + fprintf (file, HOST_WIDE_INT_PRINT_HEX, i); + } + else if (code == REG) + { + int regnum = REGNO (op); + if ((c == 'H' && !WORDS_BIG_ENDIAN) + || (c == 'L' && WORDS_BIG_ENDIAN)) + regnum ++; + fprintf (file, "%s", reg_names[regnum]); + } + else + { + switch (code) + { + case MEM: + score3_print_operand_address (file, op); + break; + default: + output_addr_const (file, op); + } + } +} + +/* Implement PRINT_OPERAND_ADDRESS macro. */ +void +score3_print_operand_address (FILE *file, rtx x) +{ + struct score3_address_info addr; + enum rtx_code code = GET_CODE (x); + enum machine_mode mode = GET_MODE (x); + + if (code == MEM) + x = XEXP (x, 0); + + if (score3_classify_address (&addr, mode, x, true)) + { + switch (addr.type) + { + case SCORE3_ADD_REG: + { + switch (addr.code) + { + case PRE_DEC: + fprintf (file, "[%s,-%ld]+", reg_names[REGNO (addr.reg)], + INTVAL (addr.offset)); + break; + case POST_DEC: + fprintf (file, "[%s]+,-%ld", reg_names[REGNO (addr.reg)], + INTVAL (addr.offset)); + break; + case PRE_INC: + fprintf (file, "[%s, %ld]+", reg_names[REGNO (addr.reg)], + INTVAL (addr.offset)); + break; + case POST_INC: + fprintf (file, "[%s]+, %ld", reg_names[REGNO (addr.reg)], + INTVAL (addr.offset)); + break; + default: + if (INTVAL(addr.offset) == 0) + fprintf(file, "[%s]", reg_names[REGNO (addr.reg)]); + else + fprintf(file, "[%s, %ld]", reg_names[REGNO (addr.reg)], + INTVAL(addr.offset)); + break; + } + } + return; + case SCORE3_ADD_CONST_INT: + case SCORE3_ADD_SYMBOLIC: + output_addr_const (file, x); + return; + } + } + print_rtl (stderr, x); + gcc_unreachable (); +} + +/* Implement SELECT_CC_MODE macro. */ +enum machine_mode +score3_select_cc_mode (enum rtx_code op, rtx x, rtx y) +{ + if ((op == EQ || op == NE || op == LT || op == GE) + && y == const0_rtx + && GET_MODE (x) == SImode) + { + switch (GET_CODE (x)) + { + case PLUS: + case MINUS: + case NEG: + case AND: + case IOR: + case XOR: + case NOT: + case ASHIFT: + case LSHIFTRT: + case ASHIFTRT: + return CC_NZmode; + + case SIGN_EXTEND: + case ZERO_EXTEND: + case ROTATE: + case ROTATERT: + return (op == LT || op == GE) ? CC_Nmode : CCmode; + + default: + return CCmode; + } + } + + if ((op == EQ || op == NE) + && (GET_CODE (y) == NEG) + && register_operand (XEXP (y, 0), SImode) + && register_operand (x, SImode)) + { + return CC_NZmode; + } + + return CCmode; +} + +#define EMIT_PL(_rtx) RTX_FRAME_RELATED_P (_rtx) = 1 +/* return 0, no more bit set in mask. */ +static int rpush_first (int mask, int sb, int *rd) +{ + int i, cnt = 1; + + if ((mask & (1 << sb)) == 0) + return 0; + + *rd = sb; + + for (i = sb-1; i >= 0; i--) + { + if (mask & (1 << i)) + { + cnt ++; + continue; + } + + *rd = i+1; + break;; + } + + return cnt; +} + +static void +rpush (int rd, int cnt) +{ + rtx mem = gen_rtx_MEM (SImode, gen_rtx_PRE_DEC (SImode, stack_pointer_rtx)); + rtx reg = gen_rtx_REG (SImode, rd); + + if (!current_function_calls_eh_return) + MEM_READONLY_P (mem) = 1; + + if (cnt == 1) + EMIT_PL (emit_insn (gen_pushsi_score3 (mem, reg))); + else + { + int i; + rtx insn = gen_store_multiple (gen_rtx_MEM (SImode, stack_pointer_rtx), + gen_rtx_REG (SImode, rd), + GEN_INT (cnt)); + + rtx pat = PATTERN (insn); + + for (i = 0; i < XVECLEN (pat, 0); i++) + if (GET_CODE (XVECEXP (pat, 0, i)) == SET) + RTX_FRAME_RELATED_P (XVECEXP (pat, 0, i)) = 1; + + EMIT_PL (emit_insn (insn)); + } +} + +/* Generate the prologue instructions for entry into a S+core function. */ +void +score3_prologue (void) +{ + struct score3_frame_info *f = score3_compute_frame_size (get_frame_size ()); + HOST_WIDE_INT size; + int regno; + + size = f->total_size - f->gp_reg_size; + + if (flag_pic) + emit_insn (gen_cpload_score3 ()); + + { + int cnt, rd; + + for (regno = (int) GP_REG_LAST; regno >= (int) GP_REG_FIRST; regno--) + { + cnt = rpush_first (f->mask, regno, &rd); + if (cnt != 0) + { + rpush (rd, cnt); + regno = regno - cnt; + } + } + } + + if (size > 0) + { + rtx insn; + + if (CONST_OK_FOR_LETTER_P (-size, 'L')) + EMIT_PL (emit_insn (gen_add3_insn (stack_pointer_rtx, + stack_pointer_rtx, + GEN_INT (-size)))); + else + { + EMIT_PL (emit_move_insn (gen_rtx_REG (Pmode, SCORE3_PROLOGUE_TEMP_REGNUM), + GEN_INT (size))); + EMIT_PL (emit_insn + (gen_sub3_insn (stack_pointer_rtx, + stack_pointer_rtx, + gen_rtx_REG (Pmode, + SCORE3_PROLOGUE_TEMP_REGNUM)))); + } + insn = get_last_insn (); + REG_NOTES (insn) = + alloc_EXPR_LIST (REG_FRAME_RELATED_EXPR, + gen_rtx_SET (VOIDmode, stack_pointer_rtx, + plus_constant (stack_pointer_rtx, + -size)), + REG_NOTES (insn)); + } + + if (frame_pointer_needed) + EMIT_PL (emit_move_insn (hard_frame_pointer_rtx, stack_pointer_rtx)); + + if (flag_pic && f->cprestore_size) + { + if (frame_pointer_needed) + emit_insn (gen_cprestore_use_fp_score3 (GEN_INT (size - f->cprestore_size))); + else + emit_insn (gen_cprestore_use_sp_score3 (GEN_INT (size - f->cprestore_size))); + } +} + +/* return 0, no more bit set in mask. */ +static int +rpop_first (int mask, int sb, int *rd) +{ + int i, cnt = 1; + + if ((mask & (1 << sb)) == 0) + return 0; + + *rd = sb; + + for (i = sb+1; i < 32; i++) + if (mask & (1 << i)) + cnt++; + else + break;; + + return cnt; +} + +static void +rpop (int rd, int cnt) +{ + rtx mem = gen_rtx_MEM (SImode, gen_rtx_POST_INC (SImode, stack_pointer_rtx)); + rtx reg = gen_rtx_REG (SImode, rd); + + if (!current_function_calls_eh_return) + MEM_READONLY_P (mem) = 1; + + if (cnt == 1) + emit_insn (gen_popsi_score3 (reg, mem)); + else + emit_insn (gen_load_multiple (reg, + gen_rtx_MEM (SImode, stack_pointer_rtx), + GEN_INT (cnt))); +} + +/* Generate the epilogue instructions in a S+core function. */ +void +score3_epilogue (int sibcall_p) +{ + struct score3_frame_info *f = score3_compute_frame_size (get_frame_size ()); + HOST_WIDE_INT size; + int regno; + rtx base; + + size = f->total_size - f->gp_reg_size; + + if (!frame_pointer_needed) + base = stack_pointer_rtx; + else + base = hard_frame_pointer_rtx; + + if (size) + { + if (CONST_OK_FOR_LETTER_P (size, 'L')) + emit_insn (gen_add3_insn (base, base, GEN_INT (size))); + else + { + emit_move_insn (gen_rtx_REG (Pmode, SCORE3_EPILOGUE_TEMP_REGNUM), + GEN_INT (size)); + emit_insn (gen_add3_insn (base, base, + gen_rtx_REG (Pmode, + SCORE3_EPILOGUE_TEMP_REGNUM))); + } + } + + if (base != stack_pointer_rtx) + emit_move_insn (stack_pointer_rtx, base); + + if (current_function_calls_eh_return) + emit_insn (gen_add3_insn (stack_pointer_rtx, + stack_pointer_rtx, + EH_RETURN_STACKADJ_RTX)); + + { + int cnt, rd; + + for (regno = (int) GP_REG_FIRST; regno <= (int) GP_REG_LAST; regno++) + { + cnt = rpop_first (f->mask, regno, &rd); + if (cnt != 0) + { + rpop (rd, cnt); + regno = regno + cnt; + } + } + } + + if (!sibcall_p) + emit_jump_insn (gen_return_internal_score3 (gen_rtx_REG (Pmode, RA_REGNUM))); +} + +void +score3_gen_cmp (enum machine_mode mode) +{ + emit_insn (gen_rtx_SET (VOIDmode, gen_rtx_REG (mode, CC_REGNUM), + gen_rtx_COMPARE (mode, cmp_op0, cmp_op1))); +} + +/* Return true if X is a symbolic constant that can be calculated in + the same way as a bare symbol. If it is, store the type of the + symbol in *SYMBOL_TYPE. */ +int +score3_symbolic_constant_p (rtx x, enum score_symbol_type *symbol_type) +{ + HOST_WIDE_INT offset; + + score3_split_const (x, &x, &offset); + if (GET_CODE (x) == SYMBOL_REF || GET_CODE (x) == LABEL_REF) + *symbol_type = score3_classify_symbol (x); + else + return 0; + + if (offset == 0) + return 1; + + /* if offset > 15bit, must reload */ + if (!IMM_IN_RANGE (offset, 15, 1)) + return 0; + + switch (*symbol_type) + { + case SYMBOL_GENERAL: + return 1; + case SYMBOL_SMALL_DATA: + return score3_offset_within_object_p (x, offset); + } + gcc_unreachable (); +} + +void +score3_movsicc (rtx *ops) +{ + enum machine_mode mode; + + mode = score3_select_cc_mode (GET_CODE (ops[1]), ops[2], ops[3]); + emit_insn (gen_rtx_SET (VOIDmode, gen_rtx_REG (mode, CC_REGNUM), + gen_rtx_COMPARE (mode, cmp_op0, cmp_op1))); +} + +/* Call and sibcall pattern all need call this function. */ +void +score3_call (rtx *ops, bool sib) +{ + rtx addr = XEXP (ops[0], 0); + if (!call_insn_operand (addr, VOIDmode)) + { + rtx oaddr = addr; + addr = gen_reg_rtx (Pmode); + gen_move_insn (addr, oaddr); + } + + if (sib) + emit_call_insn (gen_sibcall_internal_score3 (addr, ops[1])); + else + emit_call_insn (gen_call_internal_score3 (addr, ops[1])); +} + +/* Call value and sibcall value pattern all need call this function. */ +void +score3_call_value (rtx *ops, bool sib) +{ + rtx result = ops[0]; + rtx addr = XEXP (ops[1], 0); + rtx arg = ops[2]; + + if (!call_insn_operand (addr, VOIDmode)) + { + rtx oaddr = addr; + addr = gen_reg_rtx (Pmode); + gen_move_insn (addr, oaddr); + } + + if (sib) + emit_call_insn (gen_sibcall_value_internal_score3 (result, addr, arg)); + else + emit_call_insn (gen_call_value_internal_score3 (result, addr, arg)); +} + +/* Machine Split */ +void +score3_movdi (rtx *ops) +{ + rtx dst = ops[0]; + rtx src = ops[1]; + rtx dst0 = score3_subw (dst, 0); + rtx dst1 = score3_subw (dst, 1); + rtx src0 = score3_subw (src, 0); + rtx src1 = score3_subw (src, 1); + + if (GET_CODE (dst0) == REG && reg_overlap_mentioned_p (dst0, src)) + { + emit_move_insn (dst1, src1); + emit_move_insn (dst0, src0); + } + else + { + emit_move_insn (dst0, src0); + emit_move_insn (dst1, src1); + } +} + +void +score3_zero_extract_andi (rtx *ops) +{ + if (INTVAL (ops[1]) == 1 && const_uimm5 (ops[2], SImode)) + emit_insn (gen_zero_extract_bittst_score3 (ops[0], ops[2])); + else + { + unsigned HOST_WIDE_INT mask; + mask = (0xffffffffU & ((1U << INTVAL (ops[1])) - 1U)); + mask = mask << INTVAL (ops[2]); + emit_insn (gen_andsi3_cmp_score3 (ops[3], ops[0], + gen_int_mode (mask, SImode))); + } +} + +const char * +score3_rpush (rtx *ops) +{ + snprintf (score3_ins, INS_BUF_SZ, "rpush!\t%%1, %d", XVECLEN (ops[0], 0)); + return score3_ins; +} + +const char * +score3_rpop (rtx *ops) +{ + snprintf (score3_ins, INS_BUF_SZ, "rpop!\t%%1, %d", XVECLEN (ops[0], 0)); + return score3_ins; +} + +/* Output asm code for ld/sw insn. */ +static int +score3_pr_addr_post (rtx *ops, int idata, int iaddr, char *ip, + enum score_mem_unit unit ATTRIBUTE_UNUSED) +{ + struct score3_address_info ai; + + gcc_assert (GET_CODE (ops[idata]) == REG); + gcc_assert (score3_classify_address (&ai, SImode, XEXP (ops[iaddr], 0), true)); + + if (ai.type == SCORE3_ADD_REG + && ai.code == REG + && GET_CODE (ai.offset) == CONST_INT + && G16_REG_P (REGNO (ops[idata])) + && G8_REG_P (REGNO (ai.reg)) + && ((INTVAL (ai.offset) & 3) == 0) + && (IMM_IN_RANGE (INTVAL (ai.offset), 7, 0))) + { + ops[iaddr] = ai.reg; + return snprintf (ip, INS_BUF_SZ, "!\t%%%d, [%%%d, " + HOST_WIDE_INT_PRINT_DEC "]", + idata, iaddr, INTVAL (ai.offset)); + } + + if (ai.type == SCORE3_ADD_SYMBOLIC) + return snprintf (ip, INS_BUF_SZ, "48\t%%%d, %%a%d", idata, iaddr); + + return snprintf (ip, INS_BUF_SZ, "\t%%%d, %%a%d", idata, iaddr); +} + +/* Output asm insn for load. */ +const char * +score3_linsn (rtx *ops, enum score_mem_unit unit, bool sign) +{ + const char *pre_ins[] = + {"lbu", "lhu", "lw", "??", "lb", "lh", "lw", "??"}; + char *ip; + + strcpy (score3_ins, pre_ins[(sign ? 4 : 0) + unit]); + ip = score3_ins + strlen (score3_ins); + + if (unit == SCORE_WORD) + score3_pr_addr_post (ops, 0, 1, ip, unit); + else + snprintf (ip, INS_BUF_SZ, "\t%%0, %%a1"); + + return score3_ins; +} + +/* Output asm insn for store. */ +const char * +score3_sinsn (rtx *ops, enum score_mem_unit unit) +{ + const char *pre_ins[] = {"sb", "sh", "sw"}; + char *ip; + + strcpy (score3_ins, pre_ins[unit]); + ip = score3_ins + strlen (score3_ins); + + if (unit == SCORE_WORD) + score3_pr_addr_post (ops, 1, 0, ip, unit); + else + snprintf (ip, INS_BUF_SZ, "\t%%1, %%a0"); + + return score3_ins; +} + +/* Output asm insn for load immediate. */ +const char * +score3_limm (rtx *ops) +{ + HOST_WIDE_INT v; + + gcc_assert (GET_CODE (ops[0]) == REG); + gcc_assert (GET_CODE (ops[1]) == CONST_INT); + + v = INTVAL (ops[1]); + if (G16_REG_P (REGNO (ops[0])) && IMM_IN_RANGE (v, 5, 0)) + return "ldiu!\t%0, %c1"; + else if (IMM_IN_RANGE (v, 16, 1)) + return "ldi\t%0, %c1"; + else if ((v & 0xffff) == 0) + return "ldis\t%0, %U1"; + else + return "li\t%0, %c1"; +} + +/* Output asm insn for move. */ +const char * +score3_move (rtx *ops) +{ + gcc_assert (GET_CODE (ops[0]) == REG); + gcc_assert (GET_CODE (ops[1]) == REG); + + return "mv!\t%0, %1"; +} + +/* Generate add insn. */ +const char * +score3_select_add_imm (rtx *ops, bool set_cc) +{ + HOST_WIDE_INT v = INTVAL (ops[2]); + + gcc_assert (GET_CODE (ops[2]) == CONST_INT); + gcc_assert (REGNO (ops[0]) == REGNO (ops[1])); + + if (set_cc) + return "addi.c\t%0, %c2"; + else + if (IMM_IN_RANGE (v, 6, 1) && G16_REG_P (REGNO (ops[0]))) + return "addi!\t%0, %c2"; + else + return "addi\t%0, %c2"; +} + +/* Output arith insn. */ +const char * +score3_select (rtx *ops, const char *inst_pre, bool commu ATTRIBUTE_UNUSED, + const char *letter, bool set_cc) +{ + gcc_assert (GET_CODE (ops[0]) == REG); + gcc_assert (GET_CODE (ops[1]) == REG); + + if (set_cc) + snprintf (score3_ins, INS_BUF_SZ, "%s.c\t%%0, %%1, %%%s2", inst_pre, letter); + else + snprintf (score3_ins, INS_BUF_SZ, "%s\t%%0, %%1, %%%s2", inst_pre, letter); + return score3_ins; +} + +/* Output a Score3 casesi instruction. */ +const char * +score3_output_casesi (rtx *operands) +{ + rtx diff_vec = PATTERN (next_real_insn (operands[2])); + gcc_assert (GET_CODE (diff_vec) == ADDR_DIFF_VEC); + + output_asm_insn ("cmpi.c\t%0, %1", operands); + output_asm_insn ("bgtu\t%3", operands); + switch (GET_MODE(diff_vec)) + { + case QImode: + output_asm_insn ("ldi48\t%4, %2", operands); + output_asm_insn ("ltbb\t%4, [%4, %0]\n%2_tbb:", operands); + return "brr!\t%4"; + case HImode: + output_asm_insn ("ldi48\t%4, %2", operands); + output_asm_insn ("ltbh\t%4, [%4, %0]\n%2_tbb:", operands); + return "brr!\t%4"; + case SImode: + output_asm_insn ("ldi48\t%4, %2", operands); + output_asm_insn ("ltbw\t%4, [%4, %0]", operands); + return "br!\t%4"; + default: + gcc_unreachable (); + } +} diff -Nru gcc/config/score/score3.h gcc/config/score/score3.h --- gcc/config/score/score3.h 1970-01-01 01:00:00.000000000 +0100 +++ gcc/config/score/score3.h 2012-12-31 17:06:04.000000000 +0100 @@ -0,0 +1,159 @@ +/* score3.h for Sunplus S+CORE processor + Copyright (C) 2005, 2007 Free Software Foundation, Inc. + Contributed by Sunnorth + + 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 3, 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 COPYING3. If not see + . */ + +#ifndef GCC_SCORE3_H +#define GCC_SCORE3_H + +enum score3_address_type +{ + SCORE3_ADD_REG, + SCORE3_ADD_CONST_INT, + SCORE3_ADD_SYMBOLIC +}; + +struct score3_frame_info +{ + HOST_WIDE_INT total_size; /* bytes that the entire frame takes up */ + HOST_WIDE_INT var_size; /* bytes that variables take up */ + HOST_WIDE_INT args_size; /* bytes that outgoing arguments take up */ + HOST_WIDE_INT gp_reg_size; /* bytes needed to store gp regs */ + HOST_WIDE_INT gp_sp_offset; /* offset from new sp to store gp registers */ + HOST_WIDE_INT cprestore_size; /* # bytes that the .cprestore slot takes up */ + unsigned int mask; /* mask of saved gp registers */ + int num_gp; /* number of gp registers saved */ +}; + +struct score3_arg_info +{ + unsigned int num_bytes; /* The argument's size in bytes */ + unsigned int reg_words; /* The number of words passed in registers */ + unsigned int reg_offset; /* The offset of the first register from */ + /* GP_ARG_FIRST or FP_ARG_FIRST etc */ + unsigned int stack_words; /* The number of words that must be passed */ + /* on the stack */ + unsigned int stack_offset; /* The offset from the start of the stack */ + /* overflow area */ +}; + +#ifdef RTX_CODE +struct score3_address_info +{ + enum score3_address_type type; + rtx reg; + rtx offset; + enum rtx_code code; + enum score_symbol_type symbol_type; +}; +#endif + +#define SCORE3_SDATA_MAX score3_sdata_max +#define SCORE3_STACK_ALIGN(LOC) (((LOC) + 3) & ~3) +#define SCORE3_PROLOGUE_TEMP_REGNUM (GP_REG_FIRST + 8) +#define SCORE3_EPILOGUE_TEMP_REGNUM (GP_REG_FIRST + 8) +#define SCORE3_DEFAULT_SDATA_MAX 8 + +extern int score3_symbolic_constant_p (rtx x, + enum score_symbol_type *symbol_type); +extern bool score3_return_in_memory (tree type, + tree fndecl ATTRIBUTE_UNUSED); +extern void score3_output_mi_thunk (FILE *file, + tree thunk_fndecl ATTRIBUTE_UNUSED, + HOST_WIDE_INT delta, + HOST_WIDE_INT vcall_offset, + tree function); +extern int score3_legitimize_address (rtx *xloc); +extern void +score3_function_prologue (FILE *file, + HOST_WIDE_INT size ATTRIBUTE_UNUSED); +extern void +score3_function_epilogue (FILE *file, + HOST_WIDE_INT size ATTRIBUTE_UNUSED); +extern section *score3_select_rtx_section (enum machine_mode mode, rtx x, + unsigned HOST_WIDE_INT align); +extern bool score3_in_small_data_p (tree decl); +extern void score3_asm_file_start (void); +extern void score3_asm_file_end (void); +extern void score3_override_options (void); +extern int score3_reg_class (int regno); +extern enum reg_class score3_preferred_reload_class (rtx x ATTRIBUTE_UNUSED, + enum reg_class class); +extern enum reg_class +score3_secondary_reload_class (enum reg_class class, + enum machine_mode mode ATTRIBUTE_UNUSED, + rtx x); +extern int score3_const_ok_for_letter_p (HOST_WIDE_INT value, char c); +extern int score3_extra_constraint (rtx op, char c); +extern int score3_hard_regno_mode_ok (unsigned int regno, + enum machine_mode mode); +extern HOST_WIDE_INT +score3_initial_elimination_offset (int from, + int to ATTRIBUTE_UNUSED); +extern void score3_function_arg_advance (CUMULATIVE_ARGS *cum, + enum machine_mode mode, + tree type, + int named); +extern int score3_arg_partial_bytes (CUMULATIVE_ARGS *cum, + enum machine_mode mode, + tree type, + bool named); +extern rtx score3_function_arg (const CUMULATIVE_ARGS *cum, + enum machine_mode mode, + tree type, + int named); +extern rtx score3_function_value (tree valtype, + tree func ATTRIBUTE_UNUSED, + enum machine_mode mode); +extern void score3_initialize_trampoline (rtx ADDR, rtx FUNC, rtx CHAIN); +extern int score3_regno_mode_ok_for_base_p (int regno, int strict); +extern int score3_address_p (enum machine_mode mode, rtx x, int strict); +extern int score3_register_move_cost (enum machine_mode mode ATTRIBUTE_UNUSED, + enum reg_class from, + enum reg_class to); +extern bool score3_rtx_costs (rtx x, int code, int outer_code, int *total); +extern int score3_address_cost (rtx addr); +extern int score3_output_external (FILE *file ATTRIBUTE_UNUSED, + tree decl, + const char *name); +extern rtx score3_return_addr (int count, rtx frame ATTRIBUTE_UNUSED); +extern void score3_print_operand (FILE *file, rtx op, int c); +extern void score3_print_operand_address (FILE *file, rtx x); +extern enum machine_mode +score3_select_cc_mode (enum rtx_code op, rtx x, rtx y); +extern void score3_prologue (void); +extern void score3_epilogue (int sibcall_p); +extern void score3_gen_cmp (enum machine_mode mode); +extern void score3_call (rtx *ops, bool sib); +extern void score3_call_value (rtx *ops, bool sib); +extern void score3_movsicc (rtx *ops); +extern void score3_movdi (rtx *ops); +extern void score3_zero_extract_andi (rtx *ops); +extern const char * score3_select_add_imm (rtx *ops, bool set_cc); +extern const char * score3_select (rtx *ops, const char *inst_pre, bool commu, + const char *letter, bool set_cc); +extern const char * score3_move (rtx *ops); +extern const char * score3_limm (rtx *ops); +extern const char * +score3_linsn (rtx *ops, enum score_mem_unit unit, bool sign); +extern const char * +score3_sinsn (rtx *ops, enum score_mem_unit unit); +extern const char * score3_output_casesi (rtx *operands); +extern const char * score3_rpush (rtx *ops); +extern const char * score3_rpop (rtx *ops); +#endif diff -Nru gcc/config/score/score7.c gcc/config/score/score7.c --- gcc/config/score/score7.c 1970-01-01 01:00:00.000000000 +0100 +++ gcc/config/score/score7.c 2012-12-31 17:06:04.000000000 +0100 @@ -0,0 +1,1849 @@ +/* score7.c for Sunplus S+CORE processor + Copyright (C) 2005, 2007 Free Software Foundation, Inc. + Contributed by Sunnorth + + 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 3, 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 COPYING3. If not see + . */ + +#include "config.h" +#include "system.h" +#include "coretypes.h" +#include "tm.h" +#include "rtl.h" +#include "regs.h" +#include "hard-reg-set.h" +#include "real.h" +#include "insn-config.h" +#include "conditions.h" +#include "insn-attr.h" +#include "recog.h" +#include "toplev.h" +#include "output.h" +#include "tree.h" +#include "function.h" +#include "expr.h" +#include "optabs.h" +#include "flags.h" +#include "reload.h" +#include "tm_p.h" +#include "ggc.h" +#include "gstab.h" +#include "hashtab.h" +#include "debug.h" +#include "target.h" +#include "target-def.h" +#include "integrate.h" +#include "langhooks.h" +#include "cfglayout.h" +#include "score7.h" + +#define BITSET_P(VALUE, BIT) (((VALUE) & (1L << (BIT))) != 0) +#define INS_BUF_SZ 128 + +/* Define the information needed to generate branch insns. This is + stored from the compare operation. */ +extern rtx cmp_op0, cmp_op1; +extern enum reg_class score_char_to_class[256]; + +static int score7_sdata_max; +static char score7_ins[INS_BUF_SZ + 8]; + +/* Return true if SYMBOL is a SYMBOL_REF and OFFSET + SYMBOL points + to the same object as SYMBOL. */ +static int +score7_offset_within_object_p (rtx symbol, HOST_WIDE_INT offset) +{ + if (GET_CODE (symbol) != SYMBOL_REF) + return 0; + + if (CONSTANT_POOL_ADDRESS_P (symbol) + && offset >= 0 + && offset < (int)GET_MODE_SIZE (get_pool_mode (symbol))) + return 1; + + if (SYMBOL_REF_DECL (symbol) != 0 + && offset >= 0 + && offset < int_size_in_bytes (TREE_TYPE (SYMBOL_REF_DECL (symbol)))) + return 1; + + return 0; +} + +/* Split X into a base and a constant offset, storing them in *BASE + and *OFFSET respectively. */ +static void +score7_split_const (rtx x, rtx *base, HOST_WIDE_INT *offset) +{ + *offset = 0; + + if (GET_CODE (x) == CONST) + x = XEXP (x, 0); + + if (GET_CODE (x) == PLUS && GET_CODE (XEXP (x, 1)) == CONST_INT) + { + *offset += INTVAL (XEXP (x, 1)); + x = XEXP (x, 0); + } + + *base = x; +} + +/* Classify symbol X, which must be a SYMBOL_REF or a LABEL_REF. */ +static enum score_symbol_type +score7_classify_symbol (rtx x) +{ + if (GET_CODE (x) == LABEL_REF) + return SYMBOL_GENERAL; + + gcc_assert (GET_CODE (x) == SYMBOL_REF); + + if (CONSTANT_POOL_ADDRESS_P (x)) + { + if (GET_MODE_SIZE (get_pool_mode (x)) <= SCORE7_SDATA_MAX) + return SYMBOL_SMALL_DATA; + return SYMBOL_GENERAL; + } + if (SYMBOL_REF_SMALL_P (x)) + return SYMBOL_SMALL_DATA; + return SYMBOL_GENERAL; +} + +/* Return true if the current function must save REGNO. */ +static int +score7_save_reg_p (unsigned int regno) +{ + /* Check call-saved registers. */ + if (regs_ever_live[regno] && !call_used_regs[regno]) + return 1; + + /* We need to save the old frame pointer before setting up a new one. */ + if (regno == HARD_FRAME_POINTER_REGNUM && frame_pointer_needed) + return 1; + + /* We need to save the incoming return address if it is ever clobbered + within the function. */ + if (regno == RA_REGNUM && regs_ever_live[regno]) + return 1; + + return 0; +} + +/* Return one word of double-word value OP, taking into account the fixed + endianness of certain registers. HIGH_P is true to select the high part, + false to select the low part. */ +static rtx +score7_subw (rtx op, int high_p) +{ + unsigned int byte; + enum machine_mode mode = GET_MODE (op); + + if (mode == VOIDmode) + mode = DImode; + + byte = (TARGET_LITTLE_ENDIAN ? high_p : !high_p) ? UNITS_PER_WORD : 0; + + if (GET_CODE (op) == REG && REGNO (op) == HI_REGNUM) + return gen_rtx_REG (SImode, high_p ? HI_REGNUM : LO_REGNUM); + + if (GET_CODE (op) == MEM) + return adjust_address (op, SImode, byte); + + return simplify_gen_subreg (SImode, op, mode, byte); +} + +static struct score7_frame_info * +score7_cached_frame (void) +{ + static struct score7_frame_info _frame_info; + return &_frame_info; +} + +/* Return the bytes needed to compute the frame pointer from the current + stack pointer. SIZE is the size (in bytes) of the local variables. */ +static struct score7_frame_info * +score7_compute_frame_size (HOST_WIDE_INT size) +{ + unsigned int regno; + struct score7_frame_info *f = score7_cached_frame (); + + memset (f, 0, sizeof (struct score7_frame_info)); + f->gp_reg_size = 0; + f->mask = 0; + f->var_size = SCORE7_STACK_ALIGN (size); + f->args_size = current_function_outgoing_args_size; + f->cprestore_size = flag_pic ? UNITS_PER_WORD : 0; + if (f->var_size == 0 && current_function_is_leaf) + f->args_size = f->cprestore_size = 0; + + if (f->args_size == 0 && current_function_calls_alloca) + f->args_size = UNITS_PER_WORD; + + f->total_size = f->var_size + f->args_size + f->cprestore_size; + for (regno = GP_REG_FIRST; regno <= GP_REG_LAST; regno++) + { + if (score7_save_reg_p (regno)) + { + f->gp_reg_size += GET_MODE_SIZE (SImode); + f->mask |= 1 << (regno - GP_REG_FIRST); + } + } + + if (current_function_calls_eh_return) + { + unsigned int i; + for (i = 0;; ++i) + { + regno = EH_RETURN_DATA_REGNO (i); + if (regno == INVALID_REGNUM) + break; + f->gp_reg_size += GET_MODE_SIZE (SImode); + f->mask |= 1 << (regno - GP_REG_FIRST); + } + } + + f->total_size += f->gp_reg_size; + f->num_gp = f->gp_reg_size / UNITS_PER_WORD; + + if (f->mask) + { + HOST_WIDE_INT offset; + offset = (f->args_size + f->cprestore_size + f->var_size + + f->gp_reg_size - GET_MODE_SIZE (SImode)); + f->gp_sp_offset = offset; + } + else + f->gp_sp_offset = 0; + + return f; +} + +/* Return true if X is a valid base register for the given mode. + Allow only hard registers if STRICT. */ +static int +score7_valid_base_register_p (rtx x, int strict) +{ + if (!strict && GET_CODE (x) == SUBREG) + x = SUBREG_REG (x); + + return (GET_CODE (x) == REG + && score7_regno_mode_ok_for_base_p (REGNO (x), strict)); +} + +/* Return true if X is a valid address for machine mode MODE. If it is, + fill in INFO appropriately. STRICT is true if we should only accept + hard base registers. */ +static int +score7_classify_address (struct score7_address_info *info, + enum machine_mode mode, rtx x, int strict) +{ + info->code = GET_CODE (x); + + switch (info->code) + { + case REG: + case SUBREG: + info->type = SCORE7_ADD_REG; + info->reg = x; + info->offset = const0_rtx; + return score7_valid_base_register_p (info->reg, strict); + case PLUS: + info->type = SCORE7_ADD_REG; + info->reg = XEXP (x, 0); + info->offset = XEXP (x, 1); + return (score7_valid_base_register_p (info->reg, strict) + && GET_CODE (info->offset) == CONST_INT + && IMM_IN_RANGE (INTVAL (info->offset), 15, 1)); + case PRE_DEC: + case POST_DEC: + case PRE_INC: + case POST_INC: + if (GET_MODE_SIZE (mode) > GET_MODE_SIZE (SImode)) + return false; + info->type = SCORE7_ADD_REG; + info->reg = XEXP (x, 0); + info->offset = GEN_INT (GET_MODE_SIZE (mode)); + return score7_valid_base_register_p (info->reg, strict); + case CONST_INT: + info->type = SCORE7_ADD_CONST_INT; + return IMM_IN_RANGE (INTVAL (x), 15, 1); + case CONST: + case LABEL_REF: + case SYMBOL_REF: + info->type = SCORE7_ADD_SYMBOLIC; + return (score7_symbolic_constant_p (x, &info->symbol_type) + && (info->symbol_type == SYMBOL_GENERAL + || info->symbol_type == SYMBOL_SMALL_DATA)); + default: + return 0; + } +} + +bool +score7_return_in_memory (tree type, tree fndecl ATTRIBUTE_UNUSED) +{ + return ((TYPE_MODE (type) == BLKmode) + || (int_size_in_bytes (type) > 2 * UNITS_PER_WORD) + || (int_size_in_bytes (type) == -1)); +} + +/* Return a legitimate address for REG + OFFSET. */ +static rtx +score7_add_offset (rtx reg, HOST_WIDE_INT offset) +{ + if (!IMM_IN_RANGE (offset, 15, 1)) + { + reg = expand_simple_binop (GET_MODE (reg), PLUS, + gen_int_mode (offset & 0xffffc000, + GET_MODE (reg)), + reg, NULL, 0, OPTAB_WIDEN); + offset &= 0x3fff; + } + + return plus_constant (reg, offset); +} + +/* Implement TARGET_ASM_OUTPUT_MI_THUNK. Generate rtl rather than asm text + in order to avoid duplicating too much logic from elsewhere. */ +void +score7_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED, + HOST_WIDE_INT delta, HOST_WIDE_INT vcall_offset, + tree function) +{ + rtx this, temp1, insn, fnaddr; + + /* Pretend to be a post-reload pass while generating rtl. */ + no_new_pseudos = 1; + reload_completed = 1; + reset_block_changes (); + + /* We need two temporary registers in some cases. */ + temp1 = gen_rtx_REG (Pmode, 8); + + /* Find out which register contains the "this" pointer. */ + if (aggregate_value_p (TREE_TYPE (TREE_TYPE (function)), function)) + this = gen_rtx_REG (Pmode, ARG_REG_FIRST + 1); + else + this = gen_rtx_REG (Pmode, ARG_REG_FIRST); + + /* Add DELTA to THIS. */ + if (delta != 0) + { + rtx offset = GEN_INT (delta); + if (!CONST_OK_FOR_LETTER_P (delta, 'L')) + { + emit_move_insn (temp1, offset); + offset = temp1; + } + emit_insn (gen_add3_insn (this, this, offset)); + } + + /* If needed, add *(*THIS + VCALL_OFFSET) to THIS. */ + if (vcall_offset != 0) + { + rtx addr; + + /* Set TEMP1 to *THIS. */ + emit_move_insn (temp1, gen_rtx_MEM (Pmode, this)); + + /* Set ADDR to a legitimate address for *THIS + VCALL_OFFSET. */ + addr = score7_add_offset (temp1, vcall_offset); + + /* Load the offset and add it to THIS. */ + emit_move_insn (temp1, gen_rtx_MEM (Pmode, addr)); + emit_insn (gen_add3_insn (this, this, temp1)); + } + + /* Jump to the target function. */ + fnaddr = XEXP (DECL_RTL (function), 0); + insn = emit_call_insn (gen_sibcall_internal_score7 (fnaddr, const0_rtx)); + SIBLING_CALL_P (insn) = 1; + + /* Run just enough of rest_of_compilation. This sequence was + "borrowed" from alpha.c. */ + insn = get_insns (); + insn_locators_initialize (); + split_all_insns_noflow (); + shorten_branches (insn); + final_start_function (insn, file, 1); + final (insn, file, 1); + final_end_function (); + + /* Clean up the vars set above. Note that final_end_function resets + the global pointer for us. */ + reload_completed = 0; + no_new_pseudos = 0; +} + +/* Copy VALUE to a register and return that register. If new psuedos + are allowed, copy it into a new register, otherwise use DEST. */ +static rtx +score7_force_temporary (rtx dest, rtx value) +{ + if (!no_new_pseudos) + return force_reg (Pmode, value); + else + { + emit_move_insn (copy_rtx (dest), value); + return dest; + } +} + +/* Return a LO_SUM expression for ADDR. TEMP is as for score_force_temporary + and is used to load the high part into a register. */ +static rtx +score7_split_symbol (rtx temp, rtx addr) +{ + rtx high = score7_force_temporary (temp, + gen_rtx_HIGH (Pmode, copy_rtx (addr))); + return gen_rtx_LO_SUM (Pmode, high, addr); +} + +/* This function is used to implement LEGITIMIZE_ADDRESS. If *XLOC can + be legitimized in a way that the generic machinery might not expect, + put the new address in *XLOC and return true. */ +int +score7_legitimize_address (rtx *xloc) +{ + enum score_symbol_type symbol_type; + + if (score7_symbolic_constant_p (*xloc, &symbol_type) + && symbol_type == SYMBOL_GENERAL) + { + *xloc = score7_split_symbol (0, *xloc); + return 1; + } + + if (GET_CODE (*xloc) == PLUS + && GET_CODE (XEXP (*xloc, 1)) == CONST_INT) + { + rtx reg = XEXP (*xloc, 0); + if (!score7_valid_base_register_p (reg, 0)) + reg = copy_to_mode_reg (Pmode, reg); + *xloc = score7_add_offset (reg, INTVAL (XEXP (*xloc, 1))); + return 1; + } + return 0; +} + +/* Fill INFO with information about a single argument. CUM is the + cumulative state for earlier arguments. MODE is the mode of this + argument and TYPE is its type (if known). NAMED is true if this + is a named (fixed) argument rather than a variable one. */ +static void +score7_classify_arg (const CUMULATIVE_ARGS *cum, enum machine_mode mode, + tree type, int named, struct score7_arg_info *info) +{ + int even_reg_p; + unsigned int num_words, max_regs; + + even_reg_p = 0; + if (GET_MODE_CLASS (mode) == MODE_INT + || GET_MODE_CLASS (mode) == MODE_FLOAT) + even_reg_p = (GET_MODE_SIZE (mode) > UNITS_PER_WORD); + else + if (type != NULL_TREE && TYPE_ALIGN (type) > BITS_PER_WORD && named) + even_reg_p = 1; + + if (TARGET_MUST_PASS_IN_STACK (mode, type)) + info->reg_offset = ARG_REG_NUM; + else + { + info->reg_offset = cum->num_gprs; + if (even_reg_p) + info->reg_offset += info->reg_offset & 1; + } + + if (mode == BLKmode) + info->num_bytes = int_size_in_bytes (type); + else + info->num_bytes = GET_MODE_SIZE (mode); + + num_words = (info->num_bytes + UNITS_PER_WORD - 1) / UNITS_PER_WORD; + max_regs = ARG_REG_NUM - info->reg_offset; + + /* Partition the argument between registers and stack. */ + info->reg_words = MIN (num_words, max_regs); + info->stack_words = num_words - info->reg_words; + + /* The alignment applied to registers is also applied to stack arguments. */ + if (info->stack_words) + { + info->stack_offset = cum->stack_words; + if (even_reg_p) + info->stack_offset += info->stack_offset & 1; + } +} + +/* Set up the stack and frame (if desired) for the function. */ +void +score7_function_prologue (FILE *file, HOST_WIDE_INT size ATTRIBUTE_UNUSED) +{ + const char *fnname; + struct score7_frame_info *f = score7_cached_frame (); + HOST_WIDE_INT tsize = f->total_size; + + fnname = XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0); + if (!flag_inhibit_size_directive) + { + fputs ("\t.ent\t", file); + assemble_name (file, fnname); + fputs ("\n", file); + } + assemble_name (file, fnname); + fputs (":\n", file); + + if (!flag_inhibit_size_directive) + { + fprintf (file, + "\t.frame\t%s," HOST_WIDE_INT_PRINT_DEC ",%s, %d\t\t" + "# vars= " HOST_WIDE_INT_PRINT_DEC ", regs= %d" + ", args= " HOST_WIDE_INT_PRINT_DEC + ", gp= " HOST_WIDE_INT_PRINT_DEC "\n", + (reg_names[(frame_pointer_needed) + ? HARD_FRAME_POINTER_REGNUM : STACK_POINTER_REGNUM]), + tsize, + reg_names[RA_REGNUM], + current_function_is_leaf ? 1 : 0, + f->var_size, + f->num_gp, + f->args_size, + f->cprestore_size); + + fprintf(file, "\t.mask\t0x%08x," HOST_WIDE_INT_PRINT_DEC "\n", + f->mask, + (f->gp_sp_offset - f->total_size)); + } +} + +/* Do any necessary cleanup after a function to restore stack, frame, + and regs. */ +void +score7_function_epilogue (FILE *file, + HOST_WIDE_INT size ATTRIBUTE_UNUSED) +{ + if (!flag_inhibit_size_directive) + { + const char *fnname; + fnname = XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0); + fputs ("\t.end\t", file); + assemble_name (file, fnname); + fputs ("\n", file); + } +} + +/* Returns true if X contains a SYMBOL_REF. */ +static bool +score7_symbolic_expression_p (rtx x) +{ + if (GET_CODE (x) == SYMBOL_REF) + return true; + + if (GET_CODE (x) == CONST) + return score7_symbolic_expression_p (XEXP (x, 0)); + + if (UNARY_P (x)) + return score7_symbolic_expression_p (XEXP (x, 0)); + + if (ARITHMETIC_P (x)) + return (score7_symbolic_expression_p (XEXP (x, 0)) + || score7_symbolic_expression_p (XEXP (x, 1))); + + return false; +} + +/* Choose the section to use for the constant rtx expression X that has + mode MODE. */ +section * +score7_select_rtx_section (enum machine_mode mode, rtx x, + unsigned HOST_WIDE_INT align) +{ + if (GET_MODE_SIZE (mode) <= SCORE7_SDATA_MAX) + return get_named_section (0, ".sdata", 0); + else if (flag_pic && score7_symbolic_expression_p (x)) + return get_named_section (0, ".data.rel.ro", 3); + else + return mergeable_constant_section (mode, align, 0); +} + +/* Implement TARGET_IN_SMALL_DATA_P. */ +bool +score7_in_small_data_p (tree decl) +{ + HOST_WIDE_INT size; + + if (TREE_CODE (decl) == STRING_CST + || TREE_CODE (decl) == FUNCTION_DECL) + return false; + + if (TREE_CODE (decl) == VAR_DECL && DECL_SECTION_NAME (decl) != 0) + { + const char *name; + name = TREE_STRING_POINTER (DECL_SECTION_NAME (decl)); + if (strcmp (name, ".sdata") != 0 + && strcmp (name, ".sbss") != 0) + return true; + if (!DECL_EXTERNAL (decl)) + return false; + } + size = int_size_in_bytes (TREE_TYPE (decl)); + return (size > 0 && size <= SCORE7_SDATA_MAX); +} + +/* Implement TARGET_ASM_FILE_START. */ +void +score7_asm_file_start (void) +{ + default_file_start (); + fprintf (asm_out_file, ASM_COMMENT_START + "GCC for S+core %s \n", SCORE_GCC_VERSION); + + if (flag_pic) + fprintf (asm_out_file, "\t.set pic\n"); +} + +/* Implement TARGET_ASM_FILE_END. When using assembler macros, emit + .externs for any small-data variables that turned out to be external. */ +void +score7_asm_file_end (void) +{ + tree name_tree; + struct extern_list *p; + if (extern_head) + { + fputs ("\n", asm_out_file); + for (p = extern_head; p != 0; p = p->next) + { + name_tree = get_identifier (p->name); + if (!TREE_ASM_WRITTEN (name_tree) + && TREE_SYMBOL_REFERENCED (name_tree)) + { + TREE_ASM_WRITTEN (name_tree) = 1; + fputs ("\t.extern\t", asm_out_file); + assemble_name (asm_out_file, p->name); + fprintf (asm_out_file, ", %d\n", p->size); + } + } + } +} + +/* Implement OVERRIDE_OPTIONS macro. */ +void +score7_override_options (void) +{ + flag_pic = false; + if (!flag_pic) + score7_sdata_max = g_switch_set ? g_switch_value : SCORE7_DEFAULT_SDATA_MAX; + else + { + score7_sdata_max = 0; + if (g_switch_set && (g_switch_value != 0)) + warning (0, "-fPIC and -G are incompatible"); + } + + score_char_to_class['d'] = G32_REGS; + score_char_to_class['e'] = G16_REGS; + score_char_to_class['t'] = T32_REGS; + + score_char_to_class['h'] = HI_REG; + score_char_to_class['l'] = LO_REG; + score_char_to_class['x'] = CE_REGS; + + score_char_to_class['q'] = CN_REG; + score_char_to_class['y'] = LC_REG; + score_char_to_class['z'] = SC_REG; + score_char_to_class['a'] = SP_REGS; + + score_char_to_class['c'] = CR_REGS; +} + +/* Implement REGNO_REG_CLASS macro. */ +int +score7_reg_class (int regno) +{ + int c; + gcc_assert (regno >= 0 && regno < FIRST_PSEUDO_REGISTER); + + if (regno == FRAME_POINTER_REGNUM + || regno == ARG_POINTER_REGNUM) + return ALL_REGS; + + for (c = 0; c < N_REG_CLASSES; c++) + if (TEST_HARD_REG_BIT (reg_class_contents[c], regno)) + return c; + + return NO_REGS; +} + +/* Implement PREFERRED_RELOAD_CLASS macro. */ +enum reg_class +score7_preferred_reload_class (rtx x ATTRIBUTE_UNUSED, enum reg_class class) +{ + if (reg_class_subset_p (G16_REGS, class)) + return G16_REGS; + if (reg_class_subset_p (G32_REGS, class)) + return G32_REGS; + return class; +} + +/* Implement SECONDARY_INPUT_RELOAD_CLASS + and SECONDARY_OUTPUT_RELOAD_CLASS macro. */ +enum reg_class +score7_secondary_reload_class (enum reg_class class, + enum machine_mode mode ATTRIBUTE_UNUSED, + rtx x) +{ + int regno = -1; + if (GET_CODE (x) == REG || GET_CODE(x) == SUBREG) + regno = true_regnum (x); + + if (!GR_REG_CLASS_P (class)) + return GP_REG_P (regno) ? NO_REGS : G32_REGS; + return NO_REGS; +} + +/* Implement CONST_OK_FOR_LETTER_P macro. */ +/* imm constraints + I imm16 << 16 + J uimm5 + K uimm16 + L simm16 + M uimm14 + N simm14 */ +int +score7_const_ok_for_letter_p (HOST_WIDE_INT value, char c) +{ + switch (c) + { + case 'I': return ((value & 0xffff) == 0); + case 'J': return IMM_IN_RANGE (value, 5, 0); + case 'K': return IMM_IN_RANGE (value, 16, 0); + case 'L': return IMM_IN_RANGE (value, 16, 1); + case 'M': return IMM_IN_RANGE (value, 14, 0); + case 'N': return IMM_IN_RANGE (value, 14, 1); + default : return 0; + } +} + +/* Implement EXTRA_CONSTRAINT macro. */ +/* Z symbol_ref */ +int +score7_extra_constraint (rtx op, char c) +{ + switch (c) + { + case 'Z': + return GET_CODE (op) == SYMBOL_REF; + default: + gcc_unreachable (); + } +} + +/* Return truth value on whether or not a given hard register + can support a given mode. */ +int +score7_hard_regno_mode_ok (unsigned int regno, enum machine_mode mode) +{ + int size = GET_MODE_SIZE (mode); + enum mode_class class = GET_MODE_CLASS (mode); + + if (class == MODE_CC) + return regno == CC_REGNUM; + else if (regno == FRAME_POINTER_REGNUM + || regno == ARG_POINTER_REGNUM) + return class == MODE_INT; + else if (GP_REG_P (regno)) + /* ((regno <= (GP_REG_LAST- HARD_REGNO_NREGS (dummy, mode)) + 1) */ + return !(regno & 1) || (size <= UNITS_PER_WORD); + else if (CE_REG_P (regno)) + return (class == MODE_INT + && ((size <= UNITS_PER_WORD) + || (regno == CE_REG_FIRST && size == 2 * UNITS_PER_WORD))); + else + return (class == MODE_INT) && (size <= UNITS_PER_WORD); +} + +/* Implement INITIAL_ELIMINATION_OFFSET. FROM is either the frame + pointer or argument pointer. TO is either the stack pointer or + hard frame pointer. */ +HOST_WIDE_INT +score7_initial_elimination_offset (int from, + int to ATTRIBUTE_UNUSED) +{ + struct score7_frame_info *f = score7_compute_frame_size (get_frame_size ()); + switch (from) + { + case ARG_POINTER_REGNUM: + return f->total_size; + case FRAME_POINTER_REGNUM: + return 0; + default: + gcc_unreachable (); + } +} + +/* Implement FUNCTION_ARG_ADVANCE macro. */ +void +score7_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, + tree type, int named) +{ + struct score7_arg_info info; + score7_classify_arg (cum, mode, type, named, &info); + cum->num_gprs = info.reg_offset + info.reg_words; + if (info.stack_words > 0) + cum->stack_words = info.stack_offset + info.stack_words; + cum->arg_number++; +} + +/* Implement TARGET_ARG_PARTIAL_BYTES macro. */ +int +score7_arg_partial_bytes (CUMULATIVE_ARGS *cum, + enum machine_mode mode, tree type, bool named) +{ + struct score7_arg_info info; + score7_classify_arg (cum, mode, type, named, &info); + return info.stack_words > 0 ? info.reg_words * UNITS_PER_WORD : 0; +} + +/* Implement FUNCTION_ARG macro. */ +rtx +score7_function_arg (const CUMULATIVE_ARGS *cum, enum machine_mode mode, + tree type, int named) +{ + struct score7_arg_info info; + + if (mode == VOIDmode || !named) + return 0; + + score7_classify_arg (cum, mode, type, named, &info); + + if (info.reg_offset == ARG_REG_NUM) + return 0; + + if (!info.stack_words) + return gen_rtx_REG (mode, ARG_REG_FIRST + info.reg_offset); + else + { + rtx ret = gen_rtx_PARALLEL (mode, rtvec_alloc (info.reg_words)); + unsigned int i, part_offset = 0; + for (i = 0; i < info.reg_words; i++) + { + rtx reg; + reg = gen_rtx_REG (SImode, ARG_REG_FIRST + info.reg_offset + i); + XVECEXP (ret, 0, i) = gen_rtx_EXPR_LIST (SImode, reg, + GEN_INT (part_offset)); + part_offset += UNITS_PER_WORD; + } + return ret; + } +} + +/* Implement FUNCTION_VALUE and LIBCALL_VALUE. For normal calls, + VALTYPE is the return type and MODE is VOIDmode. For libcalls, + VALTYPE is null and MODE is the mode of the return value. */ +rtx +score7_function_value (tree valtype, tree func ATTRIBUTE_UNUSED, + enum machine_mode mode) +{ + if (valtype) + { + int unsignedp; + mode = TYPE_MODE (valtype); + unsignedp = TYPE_UNSIGNED (valtype); + mode = promote_mode (valtype, mode, &unsignedp, 1); + } + return gen_rtx_REG (mode, RT_REGNUM); +} + +/* Implement INITIALIZE_TRAMPOLINE macro. */ +void +score7_initialize_trampoline (rtx ADDR, rtx FUNC, rtx CHAIN) +{ +#define FFCACHE "_flush_cache" +#define CODE_SIZE (TRAMPOLINE_INSNS * UNITS_PER_WORD) + + rtx pfunc, pchain; + + pfunc = plus_constant (ADDR, CODE_SIZE); + pchain = plus_constant (ADDR, CODE_SIZE + GET_MODE_SIZE (SImode)); + + emit_move_insn (gen_rtx_MEM (SImode, pfunc), FUNC); + emit_move_insn (gen_rtx_MEM (SImode, pchain), CHAIN); + emit_library_call (gen_rtx_SYMBOL_REF (Pmode, FFCACHE), + 0, VOIDmode, 2, + ADDR, Pmode, + GEN_INT (TRAMPOLINE_SIZE), SImode); +#undef FFCACHE +#undef CODE_SIZE +} + +/* This function is used to implement REG_MODE_OK_FOR_BASE_P macro. */ +int +score7_regno_mode_ok_for_base_p (int regno, int strict) +{ + if (regno >= FIRST_PSEUDO_REGISTER) + { + if (!strict) + return 1; + regno = reg_renumber[regno]; + } + if (regno == ARG_POINTER_REGNUM + || regno == FRAME_POINTER_REGNUM) + return 1; + return GP_REG_P (regno); +} + +/* Implement GO_IF_LEGITIMATE_ADDRESS macro. */ +int +score7_address_p (enum machine_mode mode, rtx x, int strict) +{ + struct score7_address_info addr; + + return score7_classify_address (&addr, mode, x, strict); +} + +/* Return a number assessing the cost of moving a register in class + FROM to class TO. */ +int +score7_register_move_cost (enum machine_mode mode ATTRIBUTE_UNUSED, + enum reg_class from, enum reg_class to) +{ + if (GR_REG_CLASS_P (from)) + { + if (GR_REG_CLASS_P (to)) + return 2; + else if (SP_REG_CLASS_P (to)) + return 4; + else if (CP_REG_CLASS_P (to)) + return 5; + else if (CE_REG_CLASS_P (to)) + return 6; + } + if (GR_REG_CLASS_P (to)) + { + if (GR_REG_CLASS_P (from)) + return 2; + else if (SP_REG_CLASS_P (from)) + return 4; + else if (CP_REG_CLASS_P (from)) + return 5; + else if (CE_REG_CLASS_P (from)) + return 6; + } + return 12; +} + +/* Return the number of instructions needed to load a symbol of the + given type into a register. */ +static int +score7_symbol_insns (enum score_symbol_type type) +{ + switch (type) + { + case SYMBOL_GENERAL: + return 2; + + case SYMBOL_SMALL_DATA: + return 1; + } + + gcc_unreachable (); +} + +/* Return the number of instructions needed to load or store a value + of mode MODE at X. Return 0 if X isn't valid for MODE. */ +static int +score7_address_insns (rtx x, enum machine_mode mode) +{ + struct score7_address_info addr; + int factor; + + if (mode == BLKmode) + factor = 1; + else + factor = (GET_MODE_SIZE (mode) + UNITS_PER_WORD - 1) / UNITS_PER_WORD; + + if (score7_classify_address (&addr, mode, x, false)) + switch (addr.type) + { + case SCORE7_ADD_REG: + case SCORE7_ADD_CONST_INT: + return factor; + + case SCORE7_ADD_SYMBOLIC: + return factor * score7_symbol_insns (addr.symbol_type); + } + return 0; +} + +/* Implement TARGET_RTX_COSTS macro. */ +bool +score7_rtx_costs (rtx x, int code, int outer_code, int *total) +{ + enum machine_mode mode = GET_MODE (x); + + switch (code) + { + case CONST_INT: + if (outer_code == SET) + { + if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'I') + || CONST_OK_FOR_LETTER_P (INTVAL (x), 'L')) + *total = COSTS_N_INSNS (1); + else + *total = COSTS_N_INSNS (2); + } + else if (outer_code == PLUS || outer_code == MINUS) + { + if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'N')) + *total = 0; + else if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'I') + || CONST_OK_FOR_LETTER_P (INTVAL (x), 'L')) + *total = 1; + else + *total = COSTS_N_INSNS (2); + } + else if (outer_code == AND || outer_code == IOR) + { + if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'M')) + *total = 0; + else if (CONST_OK_FOR_LETTER_P (INTVAL (x), 'I') + || CONST_OK_FOR_LETTER_P (INTVAL (x), 'K')) + *total = 1; + else + *total = COSTS_N_INSNS (2); + } + else + { + *total = 0; + } + return true; + + case CONST: + case SYMBOL_REF: + case LABEL_REF: + case CONST_DOUBLE: + *total = COSTS_N_INSNS (2); + return true; + + case MEM: + { + /* If the address is legitimate, return the number of + instructions it needs, otherwise use the default handling. */ + int n = score7_address_insns (XEXP (x, 0), GET_MODE (x)); + if (n > 0) + { + *total = COSTS_N_INSNS (n + 1); + return true; + } + return false; + } + + case FFS: + *total = COSTS_N_INSNS (6); + return true; + + case NOT: + *total = COSTS_N_INSNS (1); + return true; + + case AND: + case IOR: + case XOR: + if (mode == DImode) + { + *total = COSTS_N_INSNS (2); + return true; + } + return false; + + case ASHIFT: + case ASHIFTRT: + case LSHIFTRT: + if (mode == DImode) + { + *total = COSTS_N_INSNS ((GET_CODE (XEXP (x, 1)) == CONST_INT) + ? 4 : 12); + return true; + } + return false; + + case ABS: + *total = COSTS_N_INSNS (4); + return true; + + case PLUS: + case MINUS: + if (mode == DImode) + { + *total = COSTS_N_INSNS (4); + return true; + } + *total = COSTS_N_INSNS (1); + return true; + + case NEG: + if (mode == DImode) + { + *total = COSTS_N_INSNS (4); + return true; + } + return false; + + case MULT: + *total = optimize_size ? COSTS_N_INSNS (2) : COSTS_N_INSNS (12); + return true; + + case DIV: + case MOD: + case UDIV: + case UMOD: + *total = optimize_size ? COSTS_N_INSNS (2) : COSTS_N_INSNS (33); + return true; + + case SIGN_EXTEND: + case ZERO_EXTEND: + switch (GET_MODE (XEXP (x, 0))) + { + case QImode: + case HImode: + if (GET_CODE (XEXP (x, 0)) == MEM) + { + *total = COSTS_N_INSNS (2); + + if (!TARGET_LITTLE_ENDIAN && + side_effects_p (XEXP (XEXP (x, 0), 0))) + *total = 100; + } + else + *total = COSTS_N_INSNS (1); + break; + + default: + *total = COSTS_N_INSNS (1); + break; + } + return true; + + default: + return false; + } +} + +/* Implement TARGET_ADDRESS_COST macro. */ +int +score7_address_cost (rtx addr) +{ + return score7_address_insns (addr, SImode); +} + +/* Implement ASM_OUTPUT_EXTERNAL macro. */ +int +score7_output_external (FILE *file ATTRIBUTE_UNUSED, + tree decl, const char *name) +{ + register struct extern_list *p; + + if (score7_in_small_data_p (decl)) + { + p = (struct extern_list *) ggc_alloc (sizeof (struct extern_list)); + p->next = extern_head; + p->name = name; + p->size = int_size_in_bytes (TREE_TYPE (decl)); + extern_head = p; + } + return 0; +} + +/* Implement RETURN_ADDR_RTX. Note, we do not support moving + back to a previous frame. */ +rtx +score7_return_addr (int count, rtx frame ATTRIBUTE_UNUSED) +{ + if (count != 0) + return const0_rtx; + return get_hard_reg_initial_val (Pmode, RA_REGNUM); +} + +/* Implement PRINT_OPERAND macro. */ +/* Score-specific operand codes: + '[' print .set nor1 directive + ']' print .set r1 directive + 'U' print hi part of a CONST_INT rtx + 'E' print log2(v) + 'F' print log2(~v) + 'D' print SFmode const double + 'S' selectively print "!" if operand is 15bit instruction accessible + 'V' print "v!" if operand is 15bit instruction accessible, or "lfh!" + 'L' low part of DImode reg operand + 'H' high part of DImode reg operand + 'C' print part of opcode for a branch condition. */ +void +score7_print_operand (FILE *file, rtx op, int c) +{ + enum rtx_code code = -1; + if (!PRINT_OPERAND_PUNCT_VALID_P (c)) + code = GET_CODE (op); + + if (c == '[') + { + fprintf (file, ".set r1\n"); + } + else if (c == ']') + { + fprintf (file, "\n\t.set nor1"); + } + else if (c == 'U') + { + gcc_assert (code == CONST_INT); + fprintf (file, HOST_WIDE_INT_PRINT_HEX, + (INTVAL (op) >> 16) & 0xffff); + } + else if (c == 'D') + { + if (GET_CODE (op) == CONST_DOUBLE) + { + rtx temp = gen_lowpart (SImode, op); + gcc_assert (GET_MODE (op) == SFmode); + fprintf (file, HOST_WIDE_INT_PRINT_HEX, INTVAL (temp) & 0xffffffff); + } + else + output_addr_const (file, op); + } + else if (c == 'S') + { + gcc_assert (code == REG); + if (G16_REG_P (REGNO (op))) + fprintf (file, "!"); + } + else if (c == 'V') + { + gcc_assert (code == REG); + fprintf (file, G16_REG_P (REGNO (op)) ? "v!" : "lfh!"); + } + else if (c == 'C') + { + enum machine_mode mode = GET_MODE (XEXP (op, 0)); + + switch (code) + { + case EQ: fputs ("eq", file); break; + case NE: fputs ("ne", file); break; + case GT: fputs ("gt", file); break; + case GE: fputs (mode != CCmode ? "pl" : "ge", file); break; + case LT: fputs (mode != CCmode ? "mi" : "lt", file); break; + case LE: fputs ("le", file); break; + case GTU: fputs ("gtu", file); break; + case GEU: fputs ("cs", file); break; + case LTU: fputs ("cc", file); break; + case LEU: fputs ("leu", file); break; + default: + output_operand_lossage ("invalid operand for code: '%c'", code); + } + } + else if (c == 'E') + { + unsigned HOST_WIDE_INT i; + unsigned HOST_WIDE_INT pow2mask = 1; + unsigned HOST_WIDE_INT val; + + val = INTVAL (op); + for (i = 0; i < 32; i++) + { + if (val == pow2mask) + break; + pow2mask <<= 1; + } + gcc_assert (i < 32); + fprintf (file, HOST_WIDE_INT_PRINT_HEX, i); + } + else if (c == 'F') + { + unsigned HOST_WIDE_INT i; + unsigned HOST_WIDE_INT pow2mask = 1; + unsigned HOST_WIDE_INT val; + + val = ~INTVAL (op); + for (i = 0; i < 32; i++) + { + if (val == pow2mask) + break; + pow2mask <<= 1; + } + gcc_assert (i < 32); + fprintf (file, HOST_WIDE_INT_PRINT_HEX, i); + } + else if (code == REG) + { + int regnum = REGNO (op); + if ((c == 'H' && !WORDS_BIG_ENDIAN) + || (c == 'L' && WORDS_BIG_ENDIAN)) + regnum ++; + fprintf (file, "%s", reg_names[regnum]); + } + else + { + switch (code) + { + case MEM: + score7_print_operand_address (file, op); + break; + default: + output_addr_const (file, op); + } + } +} + +/* Implement PRINT_OPERAND_ADDRESS macro. */ +void +score7_print_operand_address (FILE *file, rtx x) +{ + struct score7_address_info addr; + enum rtx_code code = GET_CODE (x); + enum machine_mode mode = GET_MODE (x); + + if (code == MEM) + x = XEXP (x, 0); + + if (score7_classify_address (&addr, mode, x, true)) + { + switch (addr.type) + { + case SCORE7_ADD_REG: + { + switch (addr.code) + { + case PRE_DEC: + fprintf (file, "[%s,-%ld]+", reg_names[REGNO (addr.reg)], + INTVAL (addr.offset)); + break; + case POST_DEC: + fprintf (file, "[%s]+,-%ld", reg_names[REGNO (addr.reg)], + INTVAL (addr.offset)); + break; + case PRE_INC: + fprintf (file, "[%s, %ld]+", reg_names[REGNO (addr.reg)], + INTVAL (addr.offset)); + break; + case POST_INC: + fprintf (file, "[%s]+, %ld", reg_names[REGNO (addr.reg)], + INTVAL (addr.offset)); + break; + default: + if (INTVAL(addr.offset) == 0) + fprintf(file, "[%s]", reg_names[REGNO (addr.reg)]); + else + fprintf(file, "[%s, %ld]", reg_names[REGNO (addr.reg)], + INTVAL(addr.offset)); + break; + } + } + return; + case SCORE7_ADD_CONST_INT: + case SCORE7_ADD_SYMBOLIC: + output_addr_const (file, x); + return; + } + } + print_rtl (stderr, x); + gcc_unreachable (); +} + +/* Implement SELECT_CC_MODE macro. */ +enum machine_mode +score7_select_cc_mode (enum rtx_code op, rtx x, rtx y) +{ + if ((op == EQ || op == NE || op == LT || op == GE) + && y == const0_rtx + && GET_MODE (x) == SImode) + { + switch (GET_CODE (x)) + { + case PLUS: + case MINUS: + case NEG: + case AND: + case IOR: + case XOR: + case NOT: + case ASHIFT: + case LSHIFTRT: + case ASHIFTRT: + return CC_NZmode; + + case SIGN_EXTEND: + case ZERO_EXTEND: + case ROTATE: + case ROTATERT: + return (op == LT || op == GE) ? CC_Nmode : CCmode; + + default: + return CCmode; + } + } + + if ((op == EQ || op == NE) + && (GET_CODE (y) == NEG) + && register_operand (XEXP (y, 0), SImode) + && register_operand (x, SImode)) + { + return CC_NZmode; + } + + return CCmode; +} + +/* Generate the prologue instructions for entry into a S+core function. */ +void +score7_prologue (void) +{ +#define EMIT_PL(_rtx) RTX_FRAME_RELATED_P (_rtx) = 1 + + struct score7_frame_info *f = score7_compute_frame_size (get_frame_size ()); + HOST_WIDE_INT size; + int regno; + + size = f->total_size - f->gp_reg_size; + + if (flag_pic) + emit_insn (gen_cpload_score7 ()); + + for (regno = (int) GP_REG_LAST; regno >= (int) GP_REG_FIRST; regno--) + { + if (BITSET_P (f->mask, regno - GP_REG_FIRST)) + { + rtx mem = gen_rtx_MEM (SImode, + gen_rtx_PRE_DEC (SImode, stack_pointer_rtx)); + rtx reg = gen_rtx_REG (SImode, regno); + if (!current_function_calls_eh_return) + MEM_READONLY_P (mem) = 1; + EMIT_PL (emit_insn (gen_pushsi_score7 (mem, reg))); + } + } + + if (size > 0) + { + rtx insn; + + if (CONST_OK_FOR_LETTER_P (-size, 'L')) + EMIT_PL (emit_insn (gen_add3_insn (stack_pointer_rtx, + stack_pointer_rtx, + GEN_INT (-size)))); + else + { + EMIT_PL (emit_move_insn (gen_rtx_REG (Pmode, SCORE7_PROLOGUE_TEMP_REGNUM), + GEN_INT (size))); + EMIT_PL (emit_insn + (gen_sub3_insn (stack_pointer_rtx, + stack_pointer_rtx, + gen_rtx_REG (Pmode, + SCORE7_PROLOGUE_TEMP_REGNUM)))); + } + insn = get_last_insn (); + REG_NOTES (insn) = + alloc_EXPR_LIST (REG_FRAME_RELATED_EXPR, + gen_rtx_SET (VOIDmode, stack_pointer_rtx, + plus_constant (stack_pointer_rtx, + -size)), + REG_NOTES (insn)); + } + + if (frame_pointer_needed) + EMIT_PL (emit_move_insn (hard_frame_pointer_rtx, stack_pointer_rtx)); + + if (flag_pic && f->cprestore_size) + { + if (frame_pointer_needed) + emit_insn (gen_cprestore_use_fp_score7 (GEN_INT (size - f->cprestore_size))); + else + emit_insn (gen_cprestore_use_sp_score7 (GEN_INT (size - f->cprestore_size))); + } + +#undef EMIT_PL +} + +/* Generate the epilogue instructions in a S+core function. */ +void +score7_epilogue (int sibcall_p) +{ + struct score7_frame_info *f = score7_compute_frame_size (get_frame_size ()); + HOST_WIDE_INT size; + int regno; + rtx base; + + size = f->total_size - f->gp_reg_size; + + if (!frame_pointer_needed) + base = stack_pointer_rtx; + else + base = hard_frame_pointer_rtx; + + if (size) + { + if (CONST_OK_FOR_LETTER_P (size, 'L')) + emit_insn (gen_add3_insn (base, base, GEN_INT (size))); + else + { + emit_move_insn (gen_rtx_REG (Pmode, SCORE7_EPILOGUE_TEMP_REGNUM), + GEN_INT (size)); + emit_insn (gen_add3_insn (base, base, + gen_rtx_REG (Pmode, + SCORE7_EPILOGUE_TEMP_REGNUM))); + } + } + + if (base != stack_pointer_rtx) + emit_move_insn (stack_pointer_rtx, base); + + if (current_function_calls_eh_return) + emit_insn (gen_add3_insn (stack_pointer_rtx, + stack_pointer_rtx, + EH_RETURN_STACKADJ_RTX)); + + for (regno = (int) GP_REG_FIRST; regno <= (int) GP_REG_LAST; regno++) + { + if (BITSET_P (f->mask, regno - GP_REG_FIRST)) + { + rtx mem = gen_rtx_MEM (SImode, + gen_rtx_POST_INC (SImode, stack_pointer_rtx)); + rtx reg = gen_rtx_REG (SImode, regno); + + if (!current_function_calls_eh_return) + MEM_READONLY_P (mem) = 1; + + emit_insn (gen_popsi_score7 (reg, mem)); + } + } + + if (!sibcall_p) + emit_jump_insn (gen_return_internal_score7 (gen_rtx_REG (Pmode, RA_REGNUM))); +} + +void +score7_gen_cmp (enum machine_mode mode) +{ + emit_insn (gen_rtx_SET (VOIDmode, gen_rtx_REG (mode, CC_REGNUM), + gen_rtx_COMPARE (mode, cmp_op0, cmp_op1))); +} + +/* Return true if X is a symbolic constant that can be calculated in + the same way as a bare symbol. If it is, store the type of the + symbol in *SYMBOL_TYPE. */ +int +score7_symbolic_constant_p (rtx x, enum score_symbol_type *symbol_type) +{ + HOST_WIDE_INT offset; + + score7_split_const (x, &x, &offset); + if (GET_CODE (x) == SYMBOL_REF || GET_CODE (x) == LABEL_REF) + *symbol_type = score7_classify_symbol (x); + else + return 0; + + if (offset == 0) + return 1; + + /* if offset > 15bit, must reload */ + if (!IMM_IN_RANGE (offset, 15, 1)) + return 0; + + switch (*symbol_type) + { + case SYMBOL_GENERAL: + return 1; + case SYMBOL_SMALL_DATA: + return score7_offset_within_object_p (x, offset); + } + gcc_unreachable (); +} + +void +score7_movsicc (rtx *ops) +{ + enum machine_mode mode; + + mode = score7_select_cc_mode (GET_CODE (ops[1]), ops[2], ops[3]); + emit_insn (gen_rtx_SET (VOIDmode, gen_rtx_REG (mode, CC_REGNUM), + gen_rtx_COMPARE (mode, cmp_op0, cmp_op1))); +} + +/* Call and sibcall pattern all need call this function. */ +void +score7_call (rtx *ops, bool sib) +{ + rtx addr = XEXP (ops[0], 0); + if (!call_insn_operand (addr, VOIDmode)) + { + rtx oaddr = addr; + addr = gen_reg_rtx (Pmode); + gen_move_insn (addr, oaddr); + } + + if (sib) + emit_call_insn (gen_sibcall_internal_score7 (addr, ops[1])); + else + emit_call_insn (gen_call_internal_score7 (addr, ops[1])); +} + +/* Call value and sibcall value pattern all need call this function. */ +void +score7_call_value (rtx *ops, bool sib) +{ + rtx result = ops[0]; + rtx addr = XEXP (ops[1], 0); + rtx arg = ops[2]; + + if (!call_insn_operand (addr, VOIDmode)) + { + rtx oaddr = addr; + addr = gen_reg_rtx (Pmode); + gen_move_insn (addr, oaddr); + } + + if (sib) + emit_call_insn (gen_sibcall_value_internal_score7 (result, addr, arg)); + else + emit_call_insn (gen_call_value_internal_score7 (result, addr, arg)); +} + +/* Machine Split */ +void +score7_movdi (rtx *ops) +{ + rtx dst = ops[0]; + rtx src = ops[1]; + rtx dst0 = score7_subw (dst, 0); + rtx dst1 = score7_subw (dst, 1); + rtx src0 = score7_subw (src, 0); + rtx src1 = score7_subw (src, 1); + + if (GET_CODE (dst0) == REG && reg_overlap_mentioned_p (dst0, src)) + { + emit_move_insn (dst1, src1); + emit_move_insn (dst0, src0); + } + else + { + emit_move_insn (dst0, src0); + emit_move_insn (dst1, src1); + } +} + +void +score7_zero_extract_andi (rtx *ops) +{ + if (INTVAL (ops[1]) == 1 && const_uimm5 (ops[2], SImode)) + emit_insn (gen_zero_extract_bittst_score7 (ops[0], ops[2])); + else + { + unsigned HOST_WIDE_INT mask; + mask = (0xffffffffU & ((1U << INTVAL (ops[1])) - 1U)); + mask = mask << INTVAL (ops[2]); + emit_insn (gen_andsi3_cmp_score7 (ops[3], ops[0], + gen_int_mode (mask, SImode))); + } +} + +/* Check addr could be present as PRE/POST mode. */ +static bool +score7_pindex_mem (rtx addr) +{ + if (GET_CODE (addr) == MEM) + { + switch (GET_CODE (XEXP (addr, 0))) + { + case PRE_DEC: + case POST_DEC: + case PRE_INC: + case POST_INC: + return true; + default: + break; + } + } + return false; +} + +/* Output asm code for ld/sw insn. */ +static int +score7_pr_addr_post (rtx *ops, int idata, int iaddr, char *ip, enum score_mem_unit unit) +{ + struct score7_address_info ai; + + gcc_assert (GET_CODE (ops[idata]) == REG); + gcc_assert (score7_classify_address (&ai, SImode, XEXP (ops[iaddr], 0), true)); + + if (!score7_pindex_mem (ops[iaddr]) + && ai.type == SCORE7_ADD_REG + && GET_CODE (ai.offset) == CONST_INT + && G16_REG_P (REGNO (ops[idata])) + && G16_REG_P (REGNO (ai.reg))) + { + if (INTVAL (ai.offset) == 0) + { + ops[iaddr] = ai.reg; + return snprintf (ip, INS_BUF_SZ, + "!\t%%%d, [%%%d]", idata, iaddr); + } + if (REGNO (ai.reg) == HARD_FRAME_POINTER_REGNUM) + { + HOST_WIDE_INT offset = INTVAL (ai.offset); + if (SCORE_ALIGN_UNIT (offset, unit) + && CONST_OK_FOR_LETTER_P (offset >> unit, 'J')) + { + ops[iaddr] = ai.offset; + return snprintf (ip, INS_BUF_SZ, + "p!\t%%%d, %%c%d", idata, iaddr); + } + } + } + return snprintf (ip, INS_BUF_SZ, "\t%%%d, %%a%d", idata, iaddr); +} + +/* Output asm insn for load. */ +const char * +score7_linsn (rtx *ops, enum score_mem_unit unit, bool sign) +{ + const char *pre_ins[] = + {"lbu", "lhu", "lw", "??", "lb", "lh", "lw", "??"}; + char *ip; + + strcpy (score7_ins, pre_ins[(sign ? 4 : 0) + unit]); + ip = score7_ins + strlen (score7_ins); + + if ((!sign && unit != SCORE_HWORD) + || (sign && unit != SCORE_BYTE)) + score7_pr_addr_post (ops, 0, 1, ip, unit); + else + snprintf (ip, INS_BUF_SZ, "\t%%0, %%a1"); + + return score7_ins; +} + +/* Output asm insn for store. */ +const char * +score7_sinsn (rtx *ops, enum score_mem_unit unit) +{ + const char *pre_ins[] = {"sb", "sh", "sw"}; + char *ip; + + strcpy (score7_ins, pre_ins[unit]); + ip = score7_ins + strlen (score7_ins); + score7_pr_addr_post (ops, 1, 0, ip, unit); + return score7_ins; +} + +/* Output asm insn for load immediate. */ +const char * +score7_limm (rtx *ops) +{ + HOST_WIDE_INT v; + + gcc_assert (GET_CODE (ops[0]) == REG); + gcc_assert (GET_CODE (ops[1]) == CONST_INT); + + v = INTVAL (ops[1]); + if (G16_REG_P (REGNO (ops[0])) && IMM_IN_RANGE (v, 8, 0)) + return "ldiu!\t%0, %c1"; + else if (IMM_IN_RANGE (v, 16, 1)) + return "ldi\t%0, %c1"; + else if ((v & 0xffff) == 0) + return "ldis\t%0, %U1"; + else + return "li\t%0, %c1"; +} + +/* Output asm insn for move. */ +const char * +score7_move (rtx *ops) +{ + gcc_assert (GET_CODE (ops[0]) == REG); + gcc_assert (GET_CODE (ops[1]) == REG); + + if (G16_REG_P (REGNO (ops[0]))) + { + if (G16_REG_P (REGNO (ops[1]))) + return "mv!\t%0, %1"; + else + return "mlfh!\t%0, %1"; + } + else if (G16_REG_P (REGNO (ops[1]))) + return "mhfl!\t%0, %1"; + else + return "mv\t%0, %1"; +} + +/* Generate add insn. */ +const char * +score7_select_add_imm (rtx *ops, bool set_cc) +{ + HOST_WIDE_INT v = INTVAL (ops[2]); + + gcc_assert (GET_CODE (ops[2]) == CONST_INT); + gcc_assert (REGNO (ops[0]) == REGNO (ops[1])); + + if (set_cc && G16_REG_P (REGNO (ops[0]))) + { + if (v > 0 && IMM_IS_POW_OF_2 ((unsigned HOST_WIDE_INT) v, 0, 15)) + { + ops[2] = GEN_INT (ffs (v) - 1); + return "addei!\t%0, %c2"; + } + + if (v < 0 && IMM_IS_POW_OF_2 ((unsigned HOST_WIDE_INT) (-v), 0, 15)) + { + ops[2] = GEN_INT (ffs (-v) - 1); + return "subei!\t%0, %c2"; + } + } + + if (set_cc) + return "addi.c\t%0, %c2"; + else + return "addi\t%0, %c2"; +} + +/* Output arith insn. */ +const char * +score7_select (rtx *ops, const char *inst_pre, + bool commu, const char *letter, bool set_cc) +{ + gcc_assert (GET_CODE (ops[0]) == REG); + gcc_assert (GET_CODE (ops[1]) == REG); + + if (set_cc && G16_REG_P (REGNO (ops[0])) + && (GET_CODE (ops[2]) == REG ? G16_REG_P (REGNO (ops[2])) : 1) + && REGNO (ops[0]) == REGNO (ops[1])) + { + snprintf (score7_ins, INS_BUF_SZ, "%s!\t%%0, %%%s2", inst_pre, letter); + return score7_ins; + } + + if (commu && set_cc && G16_REG_P (REGNO (ops[0])) + && G16_REG_P (REGNO (ops[1])) + && REGNO (ops[0]) == REGNO (ops[2])) + { + gcc_assert (GET_CODE (ops[2]) == REG); + snprintf (score7_ins, INS_BUF_SZ, "%s!\t%%0, %%%s1", inst_pre, letter); + return score7_ins; + } + + if (set_cc) + snprintf (score7_ins, INS_BUF_SZ, "%s.c\t%%0, %%1, %%%s2", inst_pre, letter); + else + snprintf (score7_ins, INS_BUF_SZ, "%s\t%%0, %%1, %%%s2", inst_pre, letter); + return score7_ins; +} + diff -Nru gcc/config/score/score7.h gcc/config/score/score7.h --- gcc/config/score/score7.h 1970-01-01 01:00:00.000000000 +0100 +++ gcc/config/score/score7.h 2012-12-31 17:06:04.000000000 +0100 @@ -0,0 +1,157 @@ +/* score7.h for Sunplus S+CORE processor + Copyright (C) 2005, 2007 Free Software Foundation, Inc. + Contributed by Sunnorth + + 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 3, 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 COPYING3. If not see + . */ + +#ifndef GCC_SCORE7_H +#define GCC_SCORE7_H + +enum score7_address_type +{ + SCORE7_ADD_REG, + SCORE7_ADD_CONST_INT, + SCORE7_ADD_SYMBOLIC +}; + +struct score7_frame_info +{ + HOST_WIDE_INT total_size; /* bytes that the entire frame takes up */ + HOST_WIDE_INT var_size; /* bytes that variables take up */ + HOST_WIDE_INT args_size; /* bytes that outgoing arguments take up */ + HOST_WIDE_INT gp_reg_size; /* bytes needed to store gp regs */ + HOST_WIDE_INT gp_sp_offset; /* offset from new sp to store gp registers */ + HOST_WIDE_INT cprestore_size; /* # bytes that the .cprestore slot takes up */ + unsigned int mask; /* mask of saved gp registers */ + int num_gp; /* number of gp registers saved */ +}; + +struct score7_arg_info +{ + unsigned int num_bytes; /* The argument's size in bytes */ + unsigned int reg_words; /* The number of words passed in registers */ + unsigned int reg_offset; /* The offset of the first register from */ + /* GP_ARG_FIRST or FP_ARG_FIRST etc */ + unsigned int stack_words; /* The number of words that must be passed */ + /* on the stack */ + unsigned int stack_offset; /* The offset from the start of the stack */ + /* overflow area */ +}; + +#ifdef RTX_CODE +struct score7_address_info +{ + enum score7_address_type type; + rtx reg; + rtx offset; + enum rtx_code code; + enum score_symbol_type symbol_type; +}; +#endif + +#define SCORE7_SDATA_MAX score7_sdata_max +#define SCORE7_STACK_ALIGN(LOC) (((LOC) + 3) & ~3) +#define SCORE7_PROLOGUE_TEMP_REGNUM (GP_REG_FIRST + 8) +#define SCORE7_EPILOGUE_TEMP_REGNUM (GP_REG_FIRST + 8) +#define SCORE7_DEFAULT_SDATA_MAX 8 + +extern int score7_symbolic_constant_p (rtx x, + enum score_symbol_type *symbol_type); +extern bool score7_return_in_memory (tree type, + tree fndecl ATTRIBUTE_UNUSED); +extern void score7_output_mi_thunk (FILE *file, + tree thunk_fndecl ATTRIBUTE_UNUSED, + HOST_WIDE_INT delta, + HOST_WIDE_INT vcall_offset, + tree function); +extern int score7_legitimize_address (rtx *xloc); +extern void +score7_function_prologue (FILE *file, + HOST_WIDE_INT size ATTRIBUTE_UNUSED); +extern void +score7_function_epilogue (FILE *file, + HOST_WIDE_INT size ATTRIBUTE_UNUSED); +extern section *score7_select_rtx_section (enum machine_mode mode, rtx x, + unsigned HOST_WIDE_INT align); +extern bool score7_in_small_data_p (tree decl); +extern void score7_asm_file_start (void); +extern void score7_asm_file_end (void); +extern void score7_override_options (void); +extern int score7_reg_class (int regno); +extern enum reg_class score7_preferred_reload_class (rtx x ATTRIBUTE_UNUSED, + enum reg_class class); +extern enum +reg_class score7_secondary_reload_class (enum reg_class class, + enum machine_mode mode ATTRIBUTE_UNUSED, + rtx x); +extern int score7_const_ok_for_letter_p (HOST_WIDE_INT value, char c); +extern int score7_extra_constraint (rtx op, char c); +extern int score7_hard_regno_mode_ok (unsigned int regno, + enum machine_mode mode); +extern HOST_WIDE_INT +score7_initial_elimination_offset (int from, + int to ATTRIBUTE_UNUSED); +extern void score7_function_arg_advance (CUMULATIVE_ARGS *cum, + enum machine_mode mode, + tree type, + int named); +extern int score7_arg_partial_bytes (CUMULATIVE_ARGS *cum, + enum machine_mode mode, + tree type, + bool named); +extern rtx score7_function_arg (const CUMULATIVE_ARGS *cum, + enum machine_mode mode, + tree type, + int named); +extern rtx score7_function_value (tree valtype, + tree func ATTRIBUTE_UNUSED, + enum machine_mode mode); +extern void score7_initialize_trampoline (rtx ADDR, rtx FUNC, rtx CHAIN); +extern int score7_regno_mode_ok_for_base_p (int regno, int strict); +extern int score7_address_p (enum machine_mode mode, rtx x, int strict); +extern int score7_register_move_cost (enum machine_mode mode ATTRIBUTE_UNUSED, + enum reg_class from, + enum reg_class to); +extern bool score7_rtx_costs (rtx x, int code, int outer_code, int *total); +extern int score7_address_cost (rtx addr); +extern int score7_output_external (FILE *file ATTRIBUTE_UNUSED, + tree decl, + const char *name); +extern rtx score7_return_addr (int count, rtx frame ATTRIBUTE_UNUSED); +extern void score7_print_operand (FILE *file, rtx op, int c); +extern void score7_print_operand_address (FILE *file, rtx x); +extern enum machine_mode score7_select_cc_mode (enum rtx_code op, + rtx x, + rtx y); +extern void score7_prologue (void); +extern void score7_epilogue (int sibcall_p); +extern void score7_gen_cmp (enum machine_mode mode); +extern void score7_call (rtx *ops, bool sib); +extern void score7_call_value (rtx *ops, bool sib); +extern void score7_movsicc (rtx *ops); +extern void score7_movdi (rtx *ops); +extern void score7_zero_extract_andi (rtx *ops); +extern const char * score7_select_add_imm (rtx *ops, bool set_cc); +extern const char * score7_select (rtx *ops, const char *inst_pre, bool commu, + const char *letter, bool set_cc); +extern const char * score7_move (rtx *ops); +extern const char * score7_limm (rtx *ops); +extern const char * +score7_linsn (rtx *ops, enum score_mem_unit unit, bool sign); +extern const char * +score7_sinsn (rtx *ops, enum score_mem_unit unit); +#endif diff -Nru gcc/config/soft-fp/t-softfp gcc/config/soft-fp/t-softfp --- gcc/config/soft-fp/t-softfp 2010-10-14 22:27:52.000000000 +0200 +++ gcc/config/soft-fp/t-softfp 2012-12-31 17:06:04.000000000 +0100 @@ -1,10 +1,10 @@ -# Copyright (C) 2006 Free Software Foundation, Inc. +# Copyright (C) 2006, 2007 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) +# the Free Software Foundation; either version 3, or (at your option) # any later version. # GCC is distributed in the hope that it will be useful, @@ -13,9 +13,8 @@ # 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, 51 Franklin Street, Fifth Floor, -# Boston MA 02110-1301, USA. +# along with GCC; see the file COPYING3. If not see +# . # Targets using soft-fp should define the following variables: # diff -Nru gcc/config/sol2-10.h gcc/config/sol2-10.h --- gcc/config/sol2-10.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/sol2-10.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Operating system specific defines to be used when targeting GCC for any Solaris 2 system starting from Solaris 10. - Copyright 2006 Free Software Foundation, Inc. + Copyright 2006, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Solaris 10 has the float and long double forms of math functions. */ #undef TARGET_C99_FUNCTIONS diff -Nru gcc/config/sol2-6.h gcc/config/sol2-6.h --- gcc/config/sol2-6.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/sol2-6.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Operating system specific defines to be used when targeting GCC for any Solaris 2 system up to Solaris 2.6. - Copyright 2004 Free Software Foundation, Inc. + Copyright 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #undef CPP_SUBTARGET_SPEC #define CPP_SUBTARGET_SPEC "\ diff -Nru gcc/config/sol2-c.c gcc/config/sol2-c.c --- gcc/config/sol2-c.c 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/sol2-c.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Solaris support needed only by C/C++ frontends. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005 , 2007 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC. 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/config/sol2-protos.h gcc/config/sol2-protos.h --- gcc/config/sol2-protos.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/sol2-protos.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Operating system specific prototypes to be used when targeting GCC for any Solaris 2 system. - Copyright 2004 Free Software Foundation, Inc. + Copyright 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ extern void solaris_insert_attributes (tree, tree *); extern void solaris_register_pragmas (void); diff -Nru gcc/config/sol2.c gcc/config/sol2.c --- gcc/config/sol2.c 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/sol2.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* General Solaris system support. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005 , 2007 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC. 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/config/sol2.h gcc/config/sol2.h --- gcc/config/sol2.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/sol2.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Operating system specific defines to be used when targeting GCC for any Solaris 2 system. - Copyright 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright 2002, 2003, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* We use stabs-in-elf for debugging, because that is what the native toolchain uses. */ diff -Nru gcc/config/svr3.h gcc/config/svr3.h --- gcc/config/svr3.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/svr3.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,13 +1,13 @@ /* Operating system specific defines to be used when targeting GCC for generic System V Release 3 system. - Copyright (C) 1991, 1996, 2000, 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 1991, 1996, 2000, 2002, 2004, 2007 Free Software Foundation, Inc. Contributed by Ron Guilmette (rfg@monkeys.com). 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Define a symbol indicating that we are using svr3.h. */ #define USING_SVR3_H diff -Nru gcc/config/svr4.h gcc/config/svr4.h --- gcc/config/svr4.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/svr4.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,14 +1,14 @@ /* Operating system specific defines to be used when targeting GCC for some generic System V Release 4 system. Copyright (C) 1991, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001 Free Software Foundation, Inc. + 2000, 2001, 2007 Free Software Foundation, Inc. Contributed by Ron Guilmette (rfg@monkeys.com). 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. +along with GCC; see the file COPYING3. If not see +. To use this file, make up a line like that in config.gcc: diff -Nru gcc/config/t-freebsd gcc/config/t-freebsd --- gcc/config/t-freebsd 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/t-freebsd 2012-12-31 17:06:04.000000000 +0100 @@ -1,5 +1,5 @@ # Compile crtbeginS.o and crtendS.o with pic. -CRTSTUFF_T_CFLAGS_S = -fPIC +CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC # Compile libgcc.a with pic. TARGET_LIBGCC2_CFLAGS += -fPIC diff -Nru gcc/config/t-libc-ok gcc/config/t-libc-ok --- gcc/config/t-libc-ok 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/t-libc-ok 2012-12-31 17:06:04.000000000 +0100 @@ -1 +1 @@ -CRTSTUFF_T_CFLAGS_S=-fPIC +CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC diff -Nru gcc/config/t-lynx gcc/config/t-lynx --- gcc/config/t-lynx 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/t-lynx 2012-12-31 17:06:04.000000000 +0100 @@ -1,5 +1,5 @@ # Compile crtbeginS.o and crtendS.o with pic. -CRTSTUFF_T_CFLAGS_S = -fPIC +CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC # Compile libgcc2.a with pic. TARGET_LIBGCC2_CFLAGS = -fPIC diff -Nru gcc/config/t-netbsd gcc/config/t-netbsd --- gcc/config/t-netbsd 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/t-netbsd 2012-12-31 17:06:04.000000000 +0100 @@ -1,2 +1,2 @@ # Always build crtstuff with PIC. -CRTSTUFF_T_CFLAGS = -fPIC +CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC diff -Nru gcc/config/t-svr4 gcc/config/t-svr4 --- gcc/config/t-svr4 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/t-svr4 2012-12-31 17:06:04.000000000 +0100 @@ -4,7 +4,7 @@ # we will be doing that, we just always use -fPIC when compiling the # routines in crtstuff.c. Likewise for libgcc2.c. -CRTSTUFF_T_CFLAGS = -fPIC +CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC TARGET_LIBGCC2_CFLAGS = -fPIC # See all the declarations. diff -Nru gcc/config/usegas.h gcc/config/usegas.h --- gcc/config/usegas.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/usegas.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,10 +1,10 @@ -/* Copyright (C) 2001 Free Software Foundation, Inc. +/* Copyright (C) 2001, 2007 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -13,9 +13,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* Just set a single flag we can test for it inside other files. */ #define USE_GAS 1 diff -Nru gcc/config/vx-common.h gcc/config/vx-common.h --- gcc/config/vx-common.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/vx-common.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Target-independent configuration for VxWorks and VxWorks AE. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 Free Software Foundation, Inc. Contributed by by CodeSourcery, LLC. 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* VxWorks headers are C++-aware. */ #undef NO_IMPLICIT_EXTERN_C diff -Nru gcc/config/vxworks.h gcc/config/vxworks.h --- gcc/config/vxworks.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/vxworks.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,5 +1,5 @@ /* Common VxWorks target definitions for GNU compiler. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Wind River Systems. Rewritten by CodeSourcery, LLC. @@ -8,7 +8,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* In kernel mode, VxWorks provides all the libraries itself, as well as the functionality of startup files, etc. In RTP mode, it behaves more diff -Nru gcc/config/vxworks.opt gcc/config/vxworks.opt --- gcc/config/vxworks.opt 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/vxworks.opt 2012-12-31 17:06:04.000000000 +0100 @@ -1,13 +1,13 @@ ; Processor-independent options for VxWorks. ; -; Copyright (C) 2005 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007 Free Software Foundation, Inc. ; Contributed by CodeSourcery, LLC. ; ; 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 +; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ ; 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, 51 Franklin Street, Fifth Floor, Boston, MA -; 02110-1301, USA. +; along with GCC; see the file COPYING3. If not see +; . mrtp Target Report RejectNegative Mask(VXWORKS_RTP) Condition(VXWORKS_KIND == VXWORKS_KIND_NORMAL) diff -Nru gcc/config/vxworksae.h gcc/config/vxworksae.h --- gcc/config/vxworksae.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/vxworksae.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Common VxWorks AE target definitions for GNU compiler. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC. 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This header should be included after including vx-common.h. */ diff -Nru gcc/config/windiss.h gcc/config/windiss.h --- gcc/config/windiss.h 2010-10-14 22:27:53.000000000 +0200 +++ gcc/config/windiss.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Support for GCC using WindISS simulator. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2007 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC. 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* windiss uses wchar_t == unsigned short (UCS2) on all architectures. */ diff -Nru gcc/config.build gcc/config.build --- gcc/config.build 2010-10-14 22:27:55.000000000 +0200 +++ gcc/config.build 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ # GCC build-specific configuration file. -# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003 +# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2007, 2008 # 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 +#Software Foundation; either version 3, or (at your option) any later #version. #GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ #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, 51 Franklin Street, Fifth Floor, Boston, MA -#02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # This is the GCC build-specific configuration file # where a configuration type is mapped to different system-specific @@ -48,6 +47,7 @@ build_xm_defines= build_exeext= build_install_headers_dir=install-headers-tar +build_file_translate= # System-specific settings. case $build in @@ -80,6 +80,11 @@ i[34567]86-*-mingw32*) build_xm_file=i386/xm-mingw32.h build_exeext=.exe + t=`(CMD //c echo /c) 2>/dev/null` + case $t in ?:*) + build_file_translate="CMD //c" + ;; + esac ;; i[34567]86-pc-msdosdjgpp*) build_xm_file=i386/xm-djgpp.h diff -Nru gcc/config.gcc gcc/config.gcc --- gcc/config.gcc 2010-10-14 22:27:55.000000000 +0200 +++ gcc/config.gcc 2013-01-01 12:38:24.000000000 +0100 @@ -1,12 +1,12 @@ # GCC target-specific configuration file. -# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 # 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 +#Software Foundation; either version 3, or (at your option) any later #version. #GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ #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, 51 Franklin Street, Fifth Floor, Boston, MA -#02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # This is the GCC target-specific configuration file # where a configuration type is mapped to different system-specific @@ -445,6 +444,10 @@ tm_defines="${tm_defines} FBSD_MAJOR=8" ;; *-*-freebsd9 | *-*-freebsd[9].*) tm_defines="${tm_defines} FBSD_MAJOR=9" ;; + *-*-freebsd10 | *-*-freebsd10.*) + tm_defines="${tm_defines} FBSD_MAJOR=10" ;; + *-*-freebsd11 | *-*-freebsd11.*) + tm_defines="${tm_defines} FBSD_MAJOR=11" ;; *) echo 'Please update *-*-freebsd* in gcc/config.gcc' exit 1 @@ -1090,6 +1093,7 @@ ;; x86_64-*-freebsd*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h" + tmake_file="${tmake_file} i386/t-crtstuff" ;; i[34567]86-*-netbsdelf*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h" @@ -1102,6 +1106,7 @@ ;; x86_64-*-netbsd*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h" + tmake_file="${tmake_file} i386/t-crtstuff" ;; i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123]) tm_file="i386/i386.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h openbsd-oldgas.h openbsd.h i386/openbsd.h" @@ -1137,7 +1142,7 @@ x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h" ;; x86_64-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h" ;; esac - tmake_file="${tmake_file} i386/t-linux64 i386/t-crtfm t-dfprules" + tmake_file="${tmake_file} i386/t-linux64 i386/t-crtstuff i386/t-crtfm t-dfprules" ;; i[34567]86-*-gnu*) ;; @@ -1234,7 +1239,7 @@ *-*-solaris2.1[0-9]*) tm_file="${tm_file} i386/x86-64.h i386/sol2-10.h" tm_defines="${tm_defines} TARGET_BI_ARCH=1" - tmake_file="$tmake_file i386/t-sol2-10" + tmake_file="$tmake_file i386/t-crtstuff i386/t-sol2-10" need_64bit_hwint=yes # FIXME: -m64 for i[34567]86-*-* should be allowed just # like -m32 for x86_64-*-*. @@ -1965,7 +1970,7 @@ thread_file='aix' extra_headers= ;; -rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*) +rs6000-ibm-aix5.[23].* | powerpc-ibm-aix5.[23].*) tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h" tmake_file=rs6000/t-aix52 extra_options="${extra_options} rs6000/aix64.opt" @@ -1973,6 +1978,14 @@ thread_file='aix' extra_headers= ;; +rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*) + tm_file="${tm_file} rs6000/aix.h rs6000/aix61.h rs6000/xcoff.h" + tmake_file=rs6000/t-aix52 + extra_options="${extra_options} rs6000/aix64.opt" + use_collect2=yes + thread_file='aix' + extra_headers= + ;; s390-*-linux*) tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h" tmake_file="${tmake_file} t-dfprules s390/t-crtstuff s390/t-linux" @@ -1999,7 +2012,7 @@ score-*-elf) tm_file="dbxelf.h elfos.h score/elf.h score/score.h" tmake_file=score/t-score-elf - extra_objs="score-mdaux.o" + extra_objs="score7.o score3.o" ;; sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \ diff -Nru gcc/config.host gcc/config.host --- gcc/config.host 2010-10-14 22:27:55.000000000 +0200 +++ gcc/config.host 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ # GCC host-specific configuration file. -# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2006 +# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2007 # 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 +#Software Foundation; either version 3, or (at your option) any later #version. #GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ #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, 51 Franklin Street, Fifth Floor, Boston, MA -#02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # This is the GCC host-specific configuration file # where a configuration type is mapped to different system-specific diff -Nru gcc/configure gcc/configure --- gcc/configure 2010-10-14 22:27:54.000000000 +0200 +++ gcc/configure 2012-12-31 17:06:04.000000000 +0100 @@ -309,7 +309,7 @@ # 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_libsubdir 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 cxx_compat_warn warn_cflags WERROR nocommon_flag TREEBROWSER valgrind_path valgrind_path_defines valgrind_command coverage_flags enable_multilib enable_decimal_float enable_shared TARGET_SYSTEM_ROOT TARGET_SYSTEM_ROOT_DEFINE CROSS_SYSTEM_HEADER_DIR onestep datarootdir docdir htmldir 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 LTLIBICONV LIBICONV_DEP manext objext gthread_flags extra_modes_file extra_opt_files USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT host_cc_for_libada CROSS ALL SYSTEM_HEADER_DIR inhibit_libc CC_FOR_BUILD BUILD_CFLAGS STMP_FIXINC STMP_FIXPROTO collect2 gcc_cv_as ORIGINAL_AS_FOR_TARGET gcc_cv_ld ORIGINAL_LD_FOR_TARGET gcc_cv_nm ORIGINAL_NM_FOR_TARGET gcc_cv_objdump 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_selected_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 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 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_libsubdir 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 cxx_compat_warn warn_cflags WERROR nocommon_flag TREEBROWSER valgrind_path valgrind_path_defines valgrind_command coverage_flags enable_multilib enable_decimal_float enable_shared TARGET_SYSTEM_ROOT TARGET_SYSTEM_ROOT_DEFINE CROSS_SYSTEM_HEADER_DIR onestep datarootdir docdir htmldir 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 LTLIBICONV LIBICONV_DEP manext objext gthread_flags extra_modes_file extra_opt_files USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS DATADIRNAME INSTOBJEXT GENCAT CATOBJEXT host_cc_for_libada CROSS ALL SYSTEM_HEADER_DIR inhibit_libc CC_FOR_BUILD BUILD_CFLAGS STMP_FIXINC STMP_FIXPROTO collect2 gcc_cv_as ORIGINAL_AS_FOR_TARGET gcc_cv_ld ORIGINAL_LD_FOR_TARGET gcc_cv_nm ORIGINAL_NM_FOR_TARGET gcc_cv_objdump 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_selected_languages all_stagestuff build_exeext build_install_headers_dir build_xm_file_list build_xm_include_list build_xm_defines build_file_translate 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 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 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. @@ -7807,7 +7807,7 @@ echo "configure:7807: version of makeinfo is $ac_prog_version" >&5 case $ac_prog_version in '') gcc_cv_prog_makeinfo_modern=no;; - 4.[4-9]*) + 4.[4-9]*|4.[1-9][0-9]*|[5-9]*|[1-9][0-9]*) gcc_cv_prog_makeinfo_modern=yes;; *) gcc_cv_prog_makeinfo_modern=no;; esac @@ -12306,13 +12306,35 @@ # Check whether --enable-sjlj-exceptions or --disable-sjlj-exceptions was given. if test "${enable_sjlj_exceptions+set}" = set; then enableval="$enable_sjlj_exceptions" + case $target in + *-*-hpux10*) + if test $enableval != yes; then + { echo "$as_me:$LINENO: WARNING: dwarf2 exceptions not supported, sjlj exceptions forced" >&5 +echo "$as_me: WARNING: dwarf2 exceptions not supported, sjlj exceptions forced" >&2;} + enableval=yes + fi + ;; +esac +force_sjlj_exceptions=yes +else + case $target in + *-*-hpux10*) + force_sjlj_exceptions=yes + enableval=yes + ;; + *) + force_sjlj_exceptions=no + ;; +esac +fi; +if test $force_sjlj_exceptions = yes; then sjlj=`if test $enableval = yes; then echo 1; else echo 0; fi` cat >>confdefs.h <<_ACEOF #define CONFIG_SJLJ_EXCEPTIONS $sjlj _ACEOF -fi; +fi # For platforms with the unwind ABI which includes an unwind library, # libunwind, we can choose to use the system libunwind. @@ -14134,9 +14156,7 @@ ld_ver=`$gcc_cv_ld --version 2>/dev/null | sed 1q` if echo "$ld_ver" | grep GNU > /dev/null; then ld_vers=`echo $ld_ver | sed -n \ - -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\)$,\1,p' \ - -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)$,\1,p' \ - -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)$,\1,p' \ + -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*.*\)$,\1,p' \ -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\)[ ].*$,\1,p' \ -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)[ ].*$,\1,p' \ -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)[ ].*$,\1,p' \ @@ -16785,6 +16805,7 @@ + # Echo link setup. if test x${build} = x${host} ; then if test x${host} = x${target} ; then @@ -17574,6 +17595,7 @@ s,@build_xm_file_list@,$build_xm_file_list,;t t s,@build_xm_include_list@,$build_xm_include_list,;t t s,@build_xm_defines@,$build_xm_defines,;t t +s,@build_file_translate@,$build_file_translate,;t t s,@check_languages@,$check_languages,;t t s,@cc_set_by_configure@,$cc_set_by_configure,;t t s,@quoted_cc_set_by_configure@,$quoted_cc_set_by_configure,;t t diff -Nru gcc/configure.ac gcc/configure.ac --- gcc/configure.ac 2010-10-14 22:27:54.000000000 +0200 +++ gcc/configure.ac 2012-12-31 17:06:04.000000000 +0100 @@ -8,7 +8,7 @@ #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 +#Software Foundation; either version 3, or (at your option) any later #version. #GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ #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, 51 Franklin Street, Fifth Floor, Boston, MA -#02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # -------------------------------- # Initialization and sanity checks @@ -882,7 +881,7 @@ # that we can use it. gcc_AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version, [GNU texinfo.* \([0-9][0-9.]*\)], - [4.[4-9]*]) + [4.[4-9]*|4.[1-9][0-9]*|[5-9]*|[1-9][0-9]*]) if test $gcc_cv_prog_makeinfo_modern = no; then MAKEINFO="$MISSING makeinfo" AC_MSG_WARN([ @@ -1217,9 +1216,29 @@ AC_ARG_ENABLE(sjlj-exceptions, [ --enable-sjlj-exceptions arrange to use setjmp/longjmp exception handling], -[sjlj=`if test $enableval = yes; then echo 1; else echo 0; fi` -AC_DEFINE_UNQUOTED(CONFIG_SJLJ_EXCEPTIONS, $sjlj, - [Define 0/1 to force the choice for exception handling model.])]) +[case $target in + *-*-hpux10*) + if test $enableval != yes; then + AC_MSG_WARN([dwarf2 exceptions not supported, sjlj exceptions forced]) + enableval=yes + fi + ;; +esac +force_sjlj_exceptions=yes], +[case $target in + *-*-hpux10*) + force_sjlj_exceptions=yes + enableval=yes + ;; + *) + force_sjlj_exceptions=no + ;; +esac]) +if test $force_sjlj_exceptions = yes; then + sjlj=`if test $enableval = yes; then echo 1; else echo 0; fi` + AC_DEFINE_UNQUOTED(CONFIG_SJLJ_EXCEPTIONS, $sjlj, + [Define 0/1 to force the choice for exception handling model.]) +fi # For platforms with the unwind ABI which includes an unwind library, # libunwind, we can choose to use the system libunwind. @@ -2111,9 +2130,7 @@ if echo "$ld_ver" | grep GNU > /dev/null; then changequote(,)dnl ld_vers=`echo $ld_ver | sed -n \ - -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\)$,\1,p' \ - -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)$,\1,p' \ - -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)$,\1,p' \ + -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*.*\)$,\1,p' \ -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\)[ ].*$,\1,p' \ -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)[ ].*$,\1,p' \ -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)[ ].*$,\1,p' \ @@ -3623,6 +3640,7 @@ AC_SUBST(build_xm_file_list) AC_SUBST(build_xm_include_list) AC_SUBST(build_xm_defines) +AC_SUBST(build_file_translate) AC_SUBST(check_languages) AC_SUBST(cc_set_by_configure) AC_SUBST(quoted_cc_set_by_configure) diff -Nru gcc/conflict.c gcc/conflict.c --- gcc/conflict.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/conflict.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Register conflict graph computation routines. - Copyright (C) 2000, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* References: diff -Nru gcc/convert.c gcc/convert.c --- gcc/convert.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/convert.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,13 @@ /* Utility routines for data type conversion for GCC. Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1997, 1998, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* These routines are somewhat language-independent utility function diff -Nru gcc/convert.h gcc/convert.h --- gcc/convert.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/convert.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,11 +1,11 @@ /* Definition of functions in convert.c. - Copyright (C) 1993, 2000, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 1993, 2000, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_CONVERT_H #define GCC_CONVERT_H diff -Nru gcc/coretypes.h gcc/coretypes.h --- gcc/coretypes.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/coretypes.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,11 +1,11 @@ /* GCC core type declarations. - Copyright (C) 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Provide forward declarations of core types which are referred to by most of the compiler. This allows header files to use these types diff -Nru gcc/coverage.c gcc/coverage.c --- gcc/coverage.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/coverage.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,6 +1,6 @@ /* Read and write coverage files, and associated functionality. Copyright (C) 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 1999, - 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + 2000, 2001, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by James E. Wilson, UC Berkeley/Cygnus Support; based on some ideas from Dain Samples of UC Berkeley. Further mangling by Bob Manson, Cygnus Support. @@ -10,7 +10,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -19,9 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #define GCOV_LINKAGE diff -Nru gcc/coverage.h gcc/coverage.h --- gcc/coverage.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/coverage.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* coverage.h - Defines data exported from coverage.c - Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005 + Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_COVERAGE_H #define GCC_COVERAGE_H diff -Nru gcc/cp/Make-lang.in gcc/cp/Make-lang.in --- gcc/cp/Make-lang.in 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/Make-lang.in 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,13 @@ # Top level -*- makefile -*- fragment for GNU C++. # Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005 +# 2005, 2007 # 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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -15,10 +15,9 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston, MA 02110-1301, USA. +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . # This file provides the language dependent support in the main Makefile. # Each language makefile fragment must provide the following targets: diff -Nru gcc/cp/call.c gcc/cp/call.c --- gcc/cp/call.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/call.c 2013-01-01 13:32:10.000000000 +0100 @@ -1,6 +1,7 @@ /* Functions related to invoking methods and overloaded functions. Copyright (C) 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) and modified by Brendan Kehoe (brendan@cygnus.com). @@ -8,7 +9,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* High-level class interface. */ @@ -743,19 +743,7 @@ that necessitates this conversion is ill-formed. Therefore, we use DERIVED_FROM_P, and do not check access or uniqueness. */ - && DERIVED_FROM_P (TREE_TYPE (to), TREE_TYPE (from)) - /* If FROM is not yet complete, then we must be parsing - the body of a class. We know what's derived from - what, but we can't actually perform a - derived-to-base conversion. For example, in: - - struct D : public B { - static const int i = sizeof((B*)(D*)0); - }; - - the D*-to-B* conversion is a reinterpret_cast, not a - static_cast. */ - && COMPLETE_TYPE_P (TREE_TYPE (from))) + && DERIVED_FROM_P (TREE_TYPE (to), TREE_TYPE (from))) { /* APPLE LOCAL begin radar 4668465 */ tree fr = c_dialect_objc () ? @@ -1197,7 +1185,12 @@ return conv; } - else if (CLASS_TYPE_P (from) && !(flags & LOOKUP_NO_CONVERSION)) + /* [class.conv.fct] A conversion function is never used to convert a + (possibly cv-qualified) object to the (possibly cv-qualified) same + object type (or a reference to it), to a (possibly cv-qualified) base + class of that type (or a reference to it).... */ + else if (CLASS_TYPE_P (from) && !related_p + && !(flags & LOOKUP_NO_CONVERSION)) { /* [dcl.init.ref] @@ -2594,7 +2587,21 @@ ctors = lookup_fnfields (totype, complete_ctor_identifier, 0); if (IS_AGGR_TYPE (fromtype)) - conv_fns = lookup_conversions (fromtype); + { + tree to_nonref = non_reference (totype); + if (same_type_ignoring_top_level_qualifiers_p (to_nonref, fromtype) || + (CLASS_TYPE_P (to_nonref) && CLASS_TYPE_P (fromtype) + && DERIVED_FROM_P (to_nonref, fromtype))) + { + /* [class.conv.fct] A conversion function is never used to + convert a (possibly cv-qualified) object to the (possibly + cv-qualified) same object type (or a reference to it), to a + (possibly cv-qualified) base class of that type (or a + reference to it)... */ + } + else + conv_fns = lookup_conversions (fromtype); + } candidates = 0; flags |= LOOKUP_NO_CONVERSION; @@ -4764,7 +4771,27 @@ tree convert_for_arg_passing (tree type, tree val) { - val = convert_bitfield_to_declared_type (val); + tree bitfield_type; + + /* If VAL is a bitfield, then -- since it has already been converted + to TYPE -- it cannot have a precision greater than TYPE. + + If it has a smaller precision, we must widen it here. For + example, passing "int f:3;" to a function expecting an "int" will + not result in any conversion before this point. + + If the precision is the same we must not risk widening. For + example, the COMPONENT_REF for a 32-bit "long long" bitfield will + often have type "int", even though the C++ type for the field is + "long long". If the value is being passed to a function + expecting an "int", then no conversions will be required. But, + if we call convert_bitfield_to_declared_type, the bitfield will + be converted to "long long". */ + bitfield_type = is_bitfield_expr_with_lowered_type (val); + if (bitfield_type + && TYPE_PRECISION (TREE_TYPE (val)) < TYPE_PRECISION (type)) + val = convert_to_integer (TYPE_MAIN_VARIANT (bitfield_type), val); + if (val == error_mark_node) ; /* Pass classes with copy ctors by invisible reference. */ diff -Nru gcc/cp/class.c gcc/cp/class.c --- gcc/cp/class.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/class.c 2013-01-01 13:32:10.000000000 +0100 @@ -1,13 +1,14 @@ /* Functions related to building classes and their related objects. Copyright (C) 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* High-level class interface. */ @@ -295,6 +295,16 @@ /* Do we need to look in the vtable for the real offset? */ virtual_access = (v_binfo && fixed_type_p <= 0); + /* Don't bother with the calculations inside sizeof; they'll ICE if the + source type is incomplete and the pointer value doesn't matter. */ + if (skip_evaluation) + { + expr = build_nop (build_pointer_type (target_type), expr); + if (!want_pointer) + expr = build_indirect_ref (expr, NULL); + return expr; + } + /* Do we need to check for a null pointer? */ if (want_pointer && !nonnull) { diff -Nru gcc/cp/config-lang.in gcc/cp/config-lang.in --- gcc/cp/config-lang.in 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/config-lang.in 2013-01-01 13:21:35.000000000 +0100 @@ -1,12 +1,12 @@ # Top level configure fragment for GNU C++. -# Copyright (C) 1994, 1995, 1997, 1998, 2000, 2001, 2002 +# Copyright (C) 1994, 1995, 1997, 1998, 2000, 2001, 2002, 2007 # 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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -14,10 +14,9 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston, MA 02110-1301, USA. +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . # Configure looks for the existence of this file to auto-config each language. # We define several parameters used by configure: diff -Nru gcc/cp/cp-gimplify.c gcc/cp/cp-gimplify.c --- gcc/cp/cp-gimplify.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cp-gimplify.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,14 @@ /* C++-specific tree lowering bits; see also c-gimplify.c and tree-gimple.c. - Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Contributed by Jason Merrill 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cp/cp-lang.c gcc/cp/cp-lang.c --- gcc/cp/cp-lang.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cp-lang.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,12 +1,12 @@ /* Language-dependent hooks for C++. - Copyright 2001, 2002, 2004 Free Software Foundation, Inc. + Copyright 2001, 2002, 2004, 2007 Free Software Foundation, Inc. Contributed by Alexandre Oliva 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cp/cp-objcp-common.c gcc/cp/cp-objcp-common.c --- gcc/cp/cp-objcp-common.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cp-objcp-common.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,12 +1,12 @@ /* Some code common to C++ and ObjC++ front ends. - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2007 Free Software Foundation, Inc. Contributed by Ziemowit Laski 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cp/cp-objcp-common.h gcc/cp/cp-objcp-common.h --- gcc/cp/cp-objcp-common.h 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cp-objcp-common.h 2013-01-01 13:21:35.000000000 +0100 @@ -1,12 +1,12 @@ /* Language hooks common to C++ and ObjC++ front ends. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Ziemowit Laski 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_CP_OBJCP_COMMON #define GCC_CP_OBJCP_COMMON diff -Nru gcc/cp/cp-tree.def gcc/cp/cp-tree.def --- gcc/cp/cp-tree.def 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cp-tree.def 2013-01-01 13:21:35.000000000 +0100 @@ -2,14 +2,15 @@ additional tree codes used in the GNU C++ compiler (see tree.def for the standard codes). Copyright (C) 1987, 1988, 1990, 1993, 1997, 1998, 2003, 2004, 2005, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + Free Software Foundation, Inc. Hacked by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -18,9 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* An OFFSET_REF is used in two situations: diff -Nru gcc/cp/cp-tree.h gcc/cp/cp-tree.h --- gcc/cp/cp-tree.h 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cp-tree.h 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,14 @@ /* Definitions for C++ parsing and type checking. Copyright (C) 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_CP_TREE_H #define GCC_CP_TREE_H @@ -4258,6 +4258,7 @@ extern tree build_typeid (tree); extern tree get_tinfo_decl (tree); extern tree get_typeid (tree); +extern tree build_headof (tree); extern tree build_dynamic_cast (tree, tree); extern void emit_support_tinfos (void); extern bool emit_tinfo_decl (tree); diff -Nru gcc/cp/cvt.c gcc/cp/cvt.c --- gcc/cp/cvt.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cvt.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,14 @@ /* Language-level data type conversion for GNU C++. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Hacked by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains the functions for converting C++ expressions diff -Nru gcc/cp/cxx-pretty-print.c gcc/cp/cxx-pretty-print.c --- gcc/cp/cxx-pretty-print.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cxx-pretty-print.c 2013-01-01 13:32:10.000000000 +0100 @@ -1,12 +1,12 @@ /* Implementation of subroutines for the GNU C++ pretty-printer. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -44,6 +43,7 @@ static void pp_cxx_statement (cxx_pretty_printer *, tree); static void pp_cxx_template_parameter (cxx_pretty_printer *, tree); static void pp_cxx_cast_expression (cxx_pretty_printer *, tree); +static void pp_cxx_typeid_expression (cxx_pretty_printer *, tree); static inline void @@ -204,6 +204,18 @@ pp_cxx_unqualified_id (pp, TEMPLATE_PARM_DECL (t)); break; + case UNBOUND_CLASS_TEMPLATE: + pp_cxx_unqualified_id (pp, TYPE_NAME (t)); + break; + + case BOUND_TEMPLATE_TEMPLATE_PARM: + pp_cxx_cv_qualifier_seq (pp, t); + pp_cxx_unqualified_id (pp, TYPE_IDENTIFIER (t)); + pp_cxx_begin_template_argument_list (pp); + pp_cxx_template_argument_list (pp, TYPE_TI_ARGS (t)); + pp_cxx_end_template_argument_list (pp); + break; + default: pp_unsupported_tree (pp, t); break; @@ -337,7 +349,10 @@ :: operator-function-id :: qualifier-id ( expression ) - id-expression */ + id-expression + + GNU Extensions: + __builtin_va_arg ( assignment-expression , type-id ) */ static void pp_cxx_primary_expression (cxx_pretty_printer *pp, tree t) @@ -375,6 +390,10 @@ pp_cxx_right_paren (pp); break; + case VA_ARG_EXPR: + pp_cxx_va_arg_expression (pp, t); + break; + default: pp_c_primary_expression (pp_c_base (pp), t); break; @@ -501,14 +520,7 @@ break; case TYPEID_EXPR: - t = TREE_OPERAND (t, 0); - pp_cxx_identifier (pp, "typeid"); - pp_left_paren (pp); - if (TYPE_P (t)) - pp_cxx_type_id (pp, t); - else - pp_cxx_expression (pp, t); - pp_right_paren (pp); + pp_cxx_typeid_expression (pp, t); break; case PSEUDO_DTOR_EXPR: @@ -604,10 +616,13 @@ if (DELETE_EXPR_USE_GLOBAL (t)) pp_cxx_colon_colon (pp); pp_cxx_identifier (pp, "delete"); - if (code == VEC_DELETE_EXPR) + pp_space (pp); + if (code == VEC_DELETE_EXPR + || DELETE_EXPR_USE_VEC (t)) { pp_left_bracket (pp); pp_right_bracket (pp); + pp_space (pp); } pp_c_cast_expression (pp_c_base (pp), TREE_OPERAND (t, 0)); break; @@ -962,7 +977,7 @@ case NON_DEPENDENT_EXPR: case MUST_NOT_THROW_EXPR: - pp_cxx_expression (pp, t); + pp_cxx_expression (pp, TREE_OPERAND (t, 0)); break; default: @@ -1957,6 +1972,30 @@ } } +static void +pp_cxx_typeid_expression (cxx_pretty_printer *pp, tree t) +{ + t = TREE_OPERAND (t, 0); + pp_cxx_identifier (pp, "typeid"); + pp_cxx_left_paren (pp); + if (TYPE_P (t)) + pp_cxx_type_id (pp, t); + else + pp_cxx_expression (pp, t); + pp_cxx_right_paren (pp); +} + +void +pp_cxx_va_arg_expression (cxx_pretty_printer *pp, tree t) +{ + pp_cxx_identifier (pp, "va_arg"); + pp_cxx_left_paren (pp); + pp_cxx_assignment_expression (pp, TREE_OPERAND (t, 0)); + pp_cxx_separate_with (pp, ','); + pp_cxx_type_id (pp, TREE_TYPE (t)); + pp_cxx_right_paren (pp); +} + typedef c_pretty_print_fn pp_fun; diff -Nru gcc/cp/cxx-pretty-print.h gcc/cp/cxx-pretty-print.h --- gcc/cp/cxx-pretty-print.h 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/cxx-pretty-print.h 2013-01-01 13:32:10.000000000 +0100 @@ -1,12 +1,12 @@ /* Interface for the GNU C++ pretty-printer. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_CXX_PRETTY_PRINT_H #define GCC_CXX_PRETTY_PRINT_H @@ -70,6 +69,7 @@ void pp_cxx_declaration (cxx_pretty_printer *, tree); void pp_cxx_canonical_template_parameter (cxx_pretty_printer *, tree); +void pp_cxx_va_arg_expression (cxx_pretty_printer *, tree); #endif /* GCC_CXX_PRETTY_PRINT_H */ diff -Nru gcc/cp/decl.c gcc/cp/decl.c --- gcc/cp/decl.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/decl.c 2013-01-01 13:34:56.000000000 +0100 @@ -1,13 +1,13 @@ /* Process declarations and variables for C++ compiler. Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Process declarations and symbol lookup for C++ front end. @@ -4179,10 +4178,19 @@ return tem; } +/* Process the declaration of a variable DECL. INITIALIZED is true + iff DECL is explicitly initialized. (INITIALIZED is false if the + variable is initialized via an implicitly-called constructor.) + This function must be called for ordinary variables (including, for + example, implicit instantiations of templates), but must not be + called for template declarations. */ + void start_decl_1 (tree decl, bool initialized) { tree type; + bool complete_p; + bool aggregate_definition_p; gcc_assert (!processing_template_decl); @@ -4190,21 +4198,37 @@ return; gcc_assert (TREE_CODE (decl) == VAR_DECL); + type = TREE_TYPE (decl); + complete_p = COMPLETE_TYPE_P (type); + aggregate_definition_p = IS_AGGR_TYPE (type) && !DECL_EXTERNAL (decl); + + /* If an explicit initializer is present, or if this is a definition + of an aggregate, then we need a complete type at this point. + (Scalars are always complete types, so there is nothing to + check.) This code just sets COMPLETE_P; errors (if necessary) + are issued below. */ + if ((initialized || aggregate_definition_p) + && !complete_p + && COMPLETE_TYPE_P (complete_type (type))) + { + complete_p = true; + /* We will not yet have set TREE_READONLY on DECL if the type + was "const", but incomplete, before this point. But, now, we + have a complete type, so we can try again. */ + cp_apply_type_quals_to_decl (cp_type_quals (type), decl); + } if (initialized) - /* Is it valid for this decl to have an initializer at all? - If not, set INITIALIZED to zero, which will indirectly - tell `cp_finish_decl' to ignore the initializer once it is parsed. */ + /* Is it valid for this decl to have an initializer at all? */ { /* Don't allow initializations for incomplete types except for arrays which might be completed by the initialization. */ - if (COMPLETE_TYPE_P (complete_type (type))) + if (complete_p) ; /* A complete type is ok. */ else if (TREE_CODE (type) != ARRAY_TYPE) { error ("variable %q#D has initializer but incomplete type", decl); - initialized = 0; type = TREE_TYPE (decl) = error_mark_node; } else if (!COMPLETE_TYPE_P (complete_type (TREE_TYPE (type)))) @@ -4212,30 +4236,15 @@ if (DECL_LANG_SPECIFIC (decl) && DECL_TEMPLATE_INFO (decl)) error ("elements of array %q#D have incomplete type", decl); /* else we already gave an error in start_decl. */ - initialized = 0; } } - else if (IS_AGGR_TYPE (type) - && ! DECL_EXTERNAL (decl)) + else if (aggregate_definition_p && !complete_p) { - if (!COMPLETE_TYPE_P (complete_type (type))) - { - error ("aggregate %q#D has incomplete type and cannot be defined", - decl); - /* Change the type so that assemble_variable will give - DECL an rtl we can live with: (mem (const_int 0)). */ - type = TREE_TYPE (decl) = error_mark_node; - } - else - { - /* If any base type in the hierarchy of TYPE needs a constructor, - then we set initialized to 1. This way any nodes which are - created for the purposes of initializing this aggregate - will live as long as it does. This is necessary for global - aggregates which do not have their initializers processed until - the end of the file. */ - initialized = TYPE_NEEDS_CONSTRUCTING (type); - } + error ("aggregate %q#D has incomplete type and cannot be defined", + decl); + /* Change the type so that assemble_variable will give + DECL an rtl we can live with: (mem (const_int 0)). */ + type = TREE_TYPE (decl) = error_mark_node; } /* Create a new scope to hold this declaration if necessary. @@ -5126,15 +5135,10 @@ if (DECL_LANG_SPECIFIC (decl) && DECL_IN_AGGR_P (decl)) { gcc_assert (TREE_STATIC (decl)); - /* APPLE LOCAL begin templated static data 6298605 */ /* An in-class declaration of a static data member should be - external if the decl is accessible from outside this - translation unit (eg something not in an anonymous - namespace); it is only a declaration, and not a - definition. */ - if (init == NULL_TREE && TREE_PUBLIC (decl)) - gcc_assert (DECL_EXTERNAL (decl)); - /* APPLE LOCAL end templated static data 6298605 */ + external; it is only a declaration, and not a definition. */ + if (init == NULL_TREE) + gcc_assert (DECL_EXTERNAL (decl) || !TREE_PUBLIC (decl)); } /* We don't create any RTL for local variables. */ @@ -5754,7 +5758,21 @@ goto finish_end; } - init = fold_non_dependent_expr (init); + if (TREE_CODE (init) == TREE_LIST) + { + /* If the parenthesized-initializer form was used (e.g., + "int A::i(X)"), then INIT will be a TREE_LIST of initializer + arguments. (There is generally only one.) We convert them + individually. */ + tree list = init; + for (; list; list = TREE_CHAIN (list)) + { + tree elt = TREE_VALUE (list); + TREE_VALUE (list) = fold_non_dependent_expr (elt); + } + } + else + init = fold_non_dependent_expr (init); processing_template_decl = 0; } @@ -12120,7 +12138,7 @@ gcc_assert (stmts_are_full_exprs_p ()); /* Set up the named return value optimization, if we can. Candidate - variables are selected in check_return_value. */ + variables are selected in check_return_expr. */ if (current_function_return_value) { tree r = current_function_return_value; diff -Nru gcc/cp/decl.h gcc/cp/decl.h --- gcc/cp/decl.h 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/decl.h 2013-01-01 13:21:35.000000000 +0100 @@ -1,11 +1,12 @@ /* Variables and structures for declaration processing. - Copyright (C) 1993, 2000, 2002, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1993, 2000, 2002, 2004, 2005, 2007 + 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* In grokdeclarator, distinguish syntactic contexts of declarators. */ enum decl_context diff -Nru gcc/cp/decl2.c gcc/cp/decl2.c --- gcc/cp/decl2.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/decl2.c 2013-01-01 13:58:30.000000000 +0100 @@ -1,13 +1,13 @@ /* Process declarations and variables for C++ compiler. Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Hacked by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Process declarations and symbol lookup for C++ front end. @@ -2284,6 +2283,8 @@ DECL_ONE_ONLY (guard) = DECL_ONE_ONLY (decl); if (TREE_PUBLIC (decl)) DECL_WEAK (guard) = DECL_WEAK (decl); + DECL_VISIBILITY (guard) = DECL_VISIBILITY (decl); + DECL_VISIBILITY_SPECIFIED (guard) = DECL_VISIBILITY_SPECIFIED (decl); DECL_ARTIFICIAL (guard) = 1; DECL_IGNORED_P (guard) = 1; @@ -3596,7 +3597,9 @@ /* Static data members are just like namespace-scope globals. */ for (i = 0; VEC_iterate (tree, pending_statics, i, decl); ++i) { - if (var_finalized_p (decl) || DECL_REALLY_EXTERN (decl)) + if (var_finalized_p (decl) || DECL_REALLY_EXTERN (decl) + /* Don't write it out if we haven't seen a definition. */ + || DECL_IN_AGGR_P (decl)) continue; import_export_decl (decl); /* If this static data member is needed, provide it to the diff -Nru gcc/cp/dump.c gcc/cp/dump.c --- gcc/cp/dump.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/dump.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,5 +1,5 @@ /* Tree-dumping functionality for intermediate representation. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Mark Mitchell @@ -7,7 +7,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cp/error.c gcc/cp/error.c --- gcc/cp/error.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/error.c 2013-01-01 13:32:10.000000000 +0100 @@ -1,12 +1,12 @@ /* Call-backs for C++ error reporting. This code is non-reentrant. Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, - 2003, 2004, 2005 Free Software Foundation, Inc. + 2003, 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -910,6 +909,10 @@ pp_type_id (cxx_pp, t); break; + case UNBOUND_CLASS_TEMPLATE: + dump_type (t, flags); + break; + default: pp_unsupported_tree (cxx_pp, t); /* Fall through to error. */ @@ -1310,10 +1313,14 @@ resolve_virtual_fun_from_obj_type_ref (tree ref) { tree obj_type = TREE_TYPE (OBJ_TYPE_REF_OBJECT (ref)); - int index = tree_low_cst (OBJ_TYPE_REF_TOKEN (ref), 1); + HOST_WIDE_INT index = tree_low_cst (OBJ_TYPE_REF_TOKEN (ref), 1); tree fun = BINFO_VIRTUALS (TYPE_BINFO (TREE_TYPE (obj_type))); - while (index--) + while (index) + { fun = TREE_CHAIN (fun); + index -= (TARGET_VTABLE_USES_DESCRIPTORS + ? TARGET_VTABLE_USES_DESCRIPTORS : 1); + } return BV_FN (fun); } @@ -1326,6 +1333,12 @@ if (t == 0) return; + if (STATEMENT_CLASS_P (t)) + { + pp_cxx_identifier (cxx_pp, ""); + return; + } + switch (TREE_CODE (t)) { case VAR_DECL: @@ -1429,13 +1442,13 @@ if (TREE_CODE (ob) == ADDR_EXPR) { dump_expr (TREE_OPERAND (ob, 0), flags | TFF_EXPR_IN_PARENS); - pp_dot (cxx_pp); + pp_cxx_dot (cxx_pp); } else if (TREE_CODE (ob) != PARM_DECL || strcmp (IDENTIFIER_POINTER (DECL_NAME (ob)), "this")) { dump_expr (ob, flags | TFF_EXPR_IN_PARENS); - pp_arrow (cxx_pp); + pp_cxx_arrow (cxx_pp); } args = TREE_CHAIN (args); } @@ -1764,10 +1777,6 @@ dump_decl (TEMPLATE_PARM_DECL (t), flags & ~TFF_DECL_SPECIFIERS); break; - case SCOPE_REF: - pp_expression (cxx_pp, t); - break; - case CAST_EXPR: if (TREE_OPERAND (t, 0) == NULL_TREE || TREE_CHAIN (TREE_OPERAND (t, 0))) @@ -1895,6 +1904,18 @@ dump_expr (TREE_OPERAND (t, 0), flags); break; + case VA_ARG_EXPR: + pp_cxx_va_arg_expression (cxx_pp, t); + break; + + case SCOPE_REF: + case TYPEID_EXPR: + case DELETE_EXPR: + case VEC_DELETE_EXPR: + case MODOP_EXPR: + pp_expression (cxx_pp, t); + break; + /* This list is incomplete, but should suffice for now. It is very important that `sorry' does not call `report_error_function'. That could cause an infinite loop. */ diff -Nru gcc/cp/except.c gcc/cp/except.c --- gcc/cp/except.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/except.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,6 +1,6 @@ /* Handle exceptional things in C++. Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Michael Tiemann Rewritten by Mike Stump , based upon an initial re-implementation courtesy Tad Hunt. @@ -9,7 +9,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" @@ -117,6 +116,9 @@ /* Peel off cv qualifiers. */ type = TYPE_MAIN_VARIANT (type); + /* Functions and arrays decay to pointers. */ + type = type_decays_to (type); + return type; } @@ -409,6 +411,9 @@ See also expand_default_init. */ init = ocp_convert (TREE_TYPE (decl), init, CONV_IMPLICIT|CONV_FORCE_TEMP, 0); + /* Force cleanups now to avoid nesting problems with the + MUST_NOT_THROW_EXPR. */ + init = fold_build_cleanup_point_expr (TREE_TYPE (init), init); init = build1 (MUST_NOT_THROW_EXPR, TREE_TYPE (init), init); } diff -Nru gcc/cp/expr.c gcc/cp/expr.c --- gcc/cp/expr.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/expr.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,13 @@ /* Convert language-specific tree expression to rtl instructions, for GNU compiler. Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/cp/friend.c gcc/cp/friend.c --- gcc/cp/friend.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/friend.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,12 +1,12 @@ /* Help friends in C++. - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, + 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cp/g++spec.c gcc/cp/g++spec.c --- gcc/cp/g++spec.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/g++spec.c 2013-01-01 13:25:28.000000000 +0100 @@ -1,13 +1,13 @@ /* APPLE LOCAL mainline 2007-04-02 5027856 */ \ /* Specific flags and argument handling of the C++ front end. - Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 - Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, + 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cp/init.c gcc/cp/init.c --- gcc/cp/init.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/init.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,13 @@ /* Handle initialization things in C++. Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* High-level class interface. */ @@ -137,11 +136,12 @@ /* Return an expression for the zero-initialization of an object with type T. This expression will either be a constant (in the case that T is a scalar), or a CONSTRUCTOR (in the case that T is an - aggregate). In either case, the value can be used as DECL_INITIAL - for a decl of the indicated TYPE; it is a valid static initializer. - If NELTS is non-NULL, and TYPE is an ARRAY_TYPE, NELTS is the - number of elements in the array. If STATIC_STORAGE_P is TRUE, - initializers are only generated for entities for which + aggregate), or NULL (in the case that T does not require + initialization). In either case, the value can be used as + DECL_INITIAL for a decl of the indicated TYPE; it is a valid static + initializer. If NELTS is non-NULL, and TYPE is an ARRAY_TYPE, NELTS + is the number of elements in the array. If STATIC_STORAGE_P is + TRUE, initializers are only generated for entities for which zero-initialization does not simply mean filling the storage with zero bytes. */ @@ -200,7 +200,8 @@ tree value = build_zero_init (TREE_TYPE (field), /*nelts=*/NULL_TREE, static_storage_p); - CONSTRUCTOR_APPEND_ELT(v, field, value); + if (value) + CONSTRUCTOR_APPEND_ELT(v, field, value); } /* For unions, only the first field is initialized. */ @@ -2791,6 +2792,7 @@ } else { + tree head = NULL_TREE; tree do_delete = NULL_TREE; tree ifexp; @@ -2804,8 +2806,9 @@ { /* We will use ADDR multiple times so we must save it. */ addr = save_expr (addr); + head = get_target_expr (build_headof (addr)); /* Delete the object. */ - do_delete = build_builtin_delete_call (addr); + do_delete = build_builtin_delete_call (head); /* Otherwise, treat this like a complete object destructor call. */ auto_delete = sfk_complete_destructor; @@ -2854,6 +2857,10 @@ if (do_delete) expr = build2 (COMPOUND_EXPR, void_type_node, expr, do_delete); + /* We need to calculate this before the dtor changes the vptr. */ + if (head) + expr = build2 (COMPOUND_EXPR, void_type_node, head, expr); + if (flags & LOOKUP_DESTRUCTOR) /* Explicit destructor call; don't check for null pointer. */ ifexp = integer_one_node; diff -Nru gcc/cp/lang-specs.h gcc/cp/lang-specs.h --- gcc/cp/lang-specs.h 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/lang-specs.h 2013-01-01 13:21:35.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for specs for C++. Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This is the contribution to the `default_compilers' array in gcc.c for g++. */ diff -Nru gcc/cp/lex.c gcc/cp/lex.c --- gcc/cp/lex.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/lex.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,14 @@ /* Separate lexical analyzer for GNU C++. Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + Free Software Foundation, Inc. Hacked by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file is the lexical analyzer for GNU C++. */ diff -Nru gcc/cp/mangle.c gcc/cp/mangle.c --- gcc/cp/mangle.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/mangle.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,5 +1,5 @@ /* Name mangling for the 3.0 C++ ABI. - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Alex Samuel @@ -7,7 +7,7 @@ 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but @@ -15,10 +15,9 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING3. If not see +. */ /* This file implements mangling of C++ names according to the IA64 C++ ABI specification. A mangled name encodes a function or diff -Nru gcc/cp/method.c gcc/cp/method.c --- gcc/cp/method.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/method.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,14 +1,15 @@ /* Handle the hair of processing (but not expanding) inline functions. Also manage function and variable name overloading. Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Handle method declarations. */ diff -Nru gcc/cp/name-lookup.c gcc/cp/name-lookup.c --- gcc/cp/name-lookup.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/name-lookup.c 2013-01-01 13:57:19.000000000 +0100 @@ -1,12 +1,13 @@ /* Definitions for C++ name lookup routines. - Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Contributed by Gabriel Dos Reis 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -1375,10 +1375,6 @@ is_class_level = 0; } - /* APPLE LOCAL begin visibility 5805832 */ - /* pop_visibility() removed */ - /* APPLE LOCAL end visibility 5805832 */ - /* Move one nesting level up. */ current_binding_level = scope->level_chain; @@ -2952,7 +2948,7 @@ /* See whether this has been declared in the namespace. */ old = lookup_qualified_name (scope, DECL_NAME (decl), false, true); - if (!old) + if (old == error_mark_node) /* No old declaration at all. */ goto complain; if (!is_overloaded_fn (decl)) @@ -3010,28 +3006,64 @@ return result; } -/* Push into the scope of the NAME namespace. If NAME is NULL_TREE, then we - select a name that is unique to this compilation unit. */ +/* Process any ATTRIBUTES on a namespace definition. Currently only + attribute visibility is meaningful, which is a property of the syntactic + block rather than the namespace as a whole, so we don't touch the + NAMESPACE_DECL at all. Returns true if attribute visibility is seen. */ -void -push_namespace (tree name) +bool +handle_namespace_attrs (tree ns, tree attributes) { - push_namespace_with_attribs (name, NULL_TREE); + tree d; + bool saw_vis = false; + + for (d = attributes; d; d = TREE_CHAIN (d)) + { + tree name = TREE_PURPOSE (d); + tree args = TREE_VALUE (d); + +#ifdef HANDLE_PRAGMA_VISIBILITY + if (is_attribute_p ("visibility", name)) + { + tree x = args ? TREE_VALUE (args) : NULL_TREE; + if (x == NULL_TREE || TREE_CODE (x) != STRING_CST || TREE_CHAIN (args)) + { + warning (OPT_Wattributes, + "%qD attribute requires a single NTBS argument", + name); + continue; + } + + if (!TREE_PUBLIC (ns)) + warning (OPT_Wattributes, + "%qD attribute is meaningless since members of the " + "anonymous namespace get local symbols", name); + + push_visibility (TREE_STRING_POINTER (x)); + saw_vis = true; + } + else +#endif + { + warning (OPT_Wattributes, "%qD attribute directive ignored", + name); + continue; + } + } + return saw_vis; } + -/* Same, but specify attributes to apply to the namespace. The attributes - only apply to the current namespace-body, not to any later extensions. */ +/* Push into the scope of the NAME namespace. If NAME is NULL_TREE, then we + select a name that is unique to this compilation unit. */ -/* APPLE LOCAL visibility 5805832 */ -bool -push_namespace_with_attribs (tree name, tree attributes) +void +push_namespace (tree name) { tree d = NULL_TREE; int need_new = 1; int implicit_use = 0; bool anon = !name; - /* APPLE LOCAL visibility 5805832 */ - bool visibility_pushed = false; timevar_push (TV_NAME_LOOKUP); @@ -3095,42 +3127,7 @@ /* Enter the name space. */ current_namespace = d; -#ifdef HANDLE_PRAGMA_VISIBILITY - /* Clear has_visibility in case a previous namespace-definition had a - visibility attribute and this one doesn't. */ - current_binding_level->has_visibility = 0; - for (d = attributes; d; d = TREE_CHAIN (d)) - { - tree name = TREE_PURPOSE (d); - tree args = TREE_VALUE (d); - tree x; - - if (! is_attribute_p ("visibility", name)) - { - warning (OPT_Wattributes, "%qs attribute directive ignored", - IDENTIFIER_POINTER (name)); - continue; - } - - x = args ? TREE_VALUE (args) : NULL_TREE; - if (x == NULL_TREE || TREE_CODE (x) != STRING_CST || TREE_CHAIN (args)) - { - warning (OPT_Wattributes, "%qs attribute requires a single NTBS argument", - IDENTIFIER_POINTER (name)); - continue; - } - - /* APPLE LOCAL visibility 5805832 */ - visibility_pushed = true; - push_visibility (TREE_STRING_POINTER (x)); - goto found; - } - found: -#endif - timevar_pop (TV_NAME_LOOKUP); - /* APPLE LOCAL visibility 5805832 */ - return visibility_pushed; } /* Pop from the scope of the current namespace. */ @@ -4047,12 +4044,49 @@ if (binding) { - /* APPLE LOCAL begin 6322334 */ - /* Ick, we don't want to find a hidden friend inside a - local class! */ if (hidden_name_p (binding)) - POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, NULL_TREE); - /* APPLE LOCAL end 6322334 */ + { + /* A non namespace-scope binding can only be hidden if + we are in a local class, due to friend declarations. + In particular, consider: + + void f() { + struct A { + friend struct B; + void g() { B* b; } // error: B is hidden + } + struct B {}; + } + + The standard says that "B" is a local class in "f" + (but not nested within "A") -- but that name lookup + for "B" does not find this declaration until it is + declared directly with "f". + + In particular: + + [class.friend] + + If a friend declaration appears in a local class and + the name specified is an unqualified name, a prior + declaration is looked up without considering scopes + that are outside the innermost enclosing non-class + scope. For a friend class declaration, if there is no + prior declaration, the class that is specified + belongs to the innermost enclosing non-class scope, + but if it is subsequently referenced, its name is not + found by name lookup until a matching declaration is + provided in the innermost enclosing nonclass scope. + */ + gcc_assert (current_class_type && + LOCAL_CLASS_P (current_class_type)); + + /* This binding comes from a friend declaration in the local + class. The standard (11.4.8) states that the lookup can + only succeed if there is a non-hidden declaration in the + current scope, which is not the case here. */ + POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, NULL_TREE); + } val = binding; break; diff -Nru gcc/cp/name-lookup.h gcc/cp/name-lookup.h --- gcc/cp/name-lookup.h 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/name-lookup.h 2013-01-01 13:57:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Declarations for C++ name lookup routines. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_CP_NAME_LOOKUP_H #define GCC_CP_NAME_LOOKUP_H @@ -261,11 +260,7 @@ unsigned more_cleanups_ok : 1; unsigned have_cleanups : 1; - /* Nonzero if this level has associated visibility which we should pop - when leaving the scope. */ - unsigned has_visibility : 1; - - /* 23 bits left to fill a 32-bit word. */ + /* 24 bits left to fill a 32-bit word. */ }; /* The binding level currently in effect. */ @@ -313,11 +308,10 @@ extern void push_binding_level (struct cp_binding_level *); extern void push_namespace (tree); -/* APPLE LOCAL visibility 5805832 */ -extern bool push_namespace_with_attribs (tree, tree); extern void pop_namespace (void); extern void push_nested_namespace (tree); extern void pop_nested_namespace (tree); +extern bool handle_namespace_attrs (tree, tree); extern void pushlevel_class (void); extern void poplevel_class (void); extern tree pushdecl_with_scope (tree, cxx_scope *, bool); diff -Nru gcc/cp/operators.def gcc/cp/operators.def --- gcc/cp/operators.def 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/operators.def 2013-01-01 13:21:35.000000000 +0100 @@ -5,13 +5,14 @@ non-overloadable operators (like the `?:' ternary operator). Written by Mark Mitchell - Copyright (C) 2000, 2001, 2002, 2003, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2001, 2002, 2003, 2005, 2007 + 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -20,9 +21,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* The DEF_OPERATOR macro takes the following arguments: diff -Nru gcc/cp/optimize.c gcc/cp/optimize.c --- gcc/cp/optimize.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/optimize.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,5 +1,5 @@ /* Perform optimizations on tree structure. - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Mark Michell (mark@codesourcery.com). @@ -7,7 +7,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cp/parser.c gcc/cp/parser.c --- gcc/cp/parser.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/parser.c 2013-01-01 13:58:30.000000000 +0100 @@ -1,13 +1,13 @@ /* C++ Parser. Copyright (C) 2000, 2001, 2002, 2003, 2004, - 2005 Free Software Foundation, Inc. + 2005, 2007 Free Software Foundation, Inc. Written by Mark Mitchell . 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but @@ -15,10 +15,9 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -5264,6 +5263,7 @@ tree expression_list = NULL_TREE; bool fold_expr_p = is_attribute_list; tree identifier = NULL_TREE; + bool saved_greater_than_is_operator_p; /* Assume all the expressions will be constant. */ if (non_constant_p) @@ -5272,6 +5272,12 @@ if (!cp_parser_require (parser, CPP_OPEN_PAREN, "`('")) return error_mark_node; + /* Within a parenthesized expression, a `>' token is always + the greater-than operator. */ + saved_greater_than_is_operator_p + = parser->greater_than_is_operator_p; + parser->greater_than_is_operator_p = true; + /* Consume expressions until there are no more. */ if (cp_lexer_next_token_is_not (parser->lexer, CPP_CLOSE_PAREN)) while (true) @@ -5345,9 +5351,16 @@ if (ending < 0) goto get_comma; if (!ending) - return error_mark_node; + { + parser->greater_than_is_operator_p + = saved_greater_than_is_operator_p; + return error_mark_node; + } } + parser->greater_than_is_operator_p + = saved_greater_than_is_operator_p; + /* We built up the list in reverse order so we must reverse it now. */ expression_list = nreverse (expression_list); if (identifier) @@ -8482,7 +8495,7 @@ case RID_FRIEND: if (!at_class_scope_p ()) { - error ("% used outside of class"); + error ("%H% used outside of class", &token->location); cp_lexer_purge_token (parser->lexer); } else @@ -11563,8 +11576,7 @@ cp_parser_namespace_definition (cp_parser* parser) { tree identifier, attribs; - /* APPLE LOCAL visibility 5805832 */ - bool visibility_pushed = false; + bool has_visibility; /* Look for the `namespace' keyword. */ cp_parser_require_keyword (parser, RID_NAMESPACE, "`namespace'"); @@ -11584,16 +11596,18 @@ /* Look for the `{' to start the namespace. */ cp_parser_require (parser, CPP_OPEN_BRACE, "`{'"); /* Start the namespace. */ - /* APPLE LOCAL visibility 5805832 */ - visibility_pushed = push_namespace_with_attribs (identifier, attribs); + push_namespace (identifier); + + has_visibility = handle_namespace_attrs (current_namespace, attribs); + /* Parse the body of the namespace. */ cp_parser_namespace_body (parser); - /* APPLE LOCAL begin visibility 5805832 */ + #ifdef HANDLE_PRAGMA_VISIBILITY - if (visibility_pushed) + if (has_visibility) pop_visibility (); #endif - /* APPLE LOCAL end visibility 5805832 */ + /* Finish the namespace. */ pop_namespace (); /* Look for the final `}'. */ @@ -15745,7 +15759,7 @@ asm_specification = cp_parser_string_literal (parser, false, false); /* Look for the `)'. */ - cp_parser_require (parser, CPP_CLOSE_PAREN, "`('"); + cp_parser_require (parser, CPP_CLOSE_PAREN, "%<)%>"); return asm_specification; } @@ -22434,7 +22448,8 @@ code = TRUTH_ORIF_EXPR; break; default: - cp_parser_error (parser, "`+', `*', `-', `&', `^', `|', `&&', or `||'"); + cp_parser_error (parser, "expected `+', `*', `-', `&', `^', `|', " + "`&&', or `||'"); resync_fail: cp_parser_skip_to_closing_parenthesis (parser, /*recovering=*/true, /*or_comma=*/false, @@ -22465,7 +22480,7 @@ { tree c, t; - if (!cp_parser_require (parser, CPP_OPEN_PAREN, "expected %<(%>")) + if (!cp_parser_require (parser, CPP_OPEN_PAREN, "%<(%>")) return list; c = build_omp_clause (OMP_CLAUSE_SCHEDULE); diff -Nru gcc/cp/pt.c gcc/cp/pt.c --- gcc/cp/pt.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/pt.c 2013-01-01 13:58:30.000000000 +0100 @@ -1,6 +1,6 @@ /* Handle parameterized types (templates) for GNU C++. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Ken Raeburn (raeburn@cygnus.com) while at Watchmaker Computing. Rewritten by Jason Merrill (jason@cygnus.com). @@ -8,7 +8,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Known bugs or deficiencies include: @@ -508,6 +507,37 @@ return new_args; } +/* The inverse of get_innermost_template_args: Return all but the innermost + EXTRA_LEVELS levels of template arguments from the ARGS. */ + +static tree +strip_innermost_template_args (tree args, int extra_levels) +{ + tree new_args; + int n = TMPL_ARGS_DEPTH (args) - extra_levels; + int i; + + gcc_assert (n >= 0); + + /* If N is 1, just return the outermost set of template arguments. */ + if (n == 1) + return TMPL_ARGS_LEVEL (args, 1); + + /* If we're not removing anything, just return the arguments we were + given. */ + gcc_assert (extra_levels >= 0); + if (extra_levels == 0) + return args; + + /* Make a new set of arguments, not containing the inner arguments. */ + new_args = make_tree_vec (n); + for (i = 1; i <= n; ++i) + SET_TMPL_ARGS_LEVEL (new_args, i, + TMPL_ARGS_LEVEL (args, i)); + + return new_args; +} + /* We've got a template header coming up; push to a new level for storing the parms. */ @@ -1971,7 +2001,7 @@ context. */ fns = lookup_qualified_name (CP_DECL_CONTEXT (decl), dname, false, true); - if (!fns || !is_overloaded_fn (fns)) + if (fns == error_mark_node || !is_overloaded_fn (fns)) { error ("%qD is not a template function", dname); fns = error_mark_node; @@ -6305,8 +6335,14 @@ up. */ context = TYPE_CONTEXT (t); if (context) - context = tsubst_aggr_type (context, args, complain, - in_decl, /*entering_scope=*/1); + { + context = tsubst_aggr_type (context, args, complain, + in_decl, /*entering_scope=*/1); + /* If context is a nested class inside a class template, + it may still need to be instantiated (c++/33959). */ + if (TYPE_P (context)) + context = complete_type (context); + } /* Then, figure out what arguments are appropriate for the type we are trying to find. For example, given: @@ -10141,6 +10177,7 @@ if (TREE_CODE (fn) != TEMPLATE_DECL) continue; + ++processing_template_decl; subargs = get_bindings (fn, DECL_TEMPLATE_RESULT (fn), expl_subargs, /*check_ret=*/false); if (subargs) @@ -10149,6 +10186,7 @@ good += try_one_overload (tparms, targs, tempargs, parm, elem, strict, sub_strict, addr_p); } + --processing_template_decl; } } else if (TREE_CODE (arg) != OVERLOAD @@ -10532,6 +10570,8 @@ case TEMPLATE_TEMPLATE_PARM: case BOUND_TEMPLATE_TEMPLATE_PARM: tparm = TREE_VALUE (TREE_VEC_ELT (tparms, 0)); + if (tparm == error_mark_node) + return 1; if (TEMPLATE_TYPE_LEVEL (parm) != template_decl_level (tparm)) @@ -11590,20 +11630,57 @@ int fate; bool ambiguous_p; tree args; + tree outer_args = NULL_TREE; tmpl = most_general_template (tmpl); args = CLASSTYPE_TI_ARGS (type); + + /* For determining which partial specialization to use, only the + innermost args are interesting. */ + if (TMPL_ARGS_HAVE_MULTIPLE_LEVELS (args)) + { + outer_args = strip_innermost_template_args (args, 1); + args = INNERMOST_TEMPLATE_ARGS (args); + } + for (t = DECL_TEMPLATE_SPECIALIZATIONS (tmpl); t; t = TREE_CHAIN (t)) { tree partial_spec_args; tree spec_args; + tree parms = TREE_VALUE (t); partial_spec_args = CLASSTYPE_TI_ARGS (TREE_TYPE (t)); - spec_args = get_class_bindings (TREE_VALUE (t), + if (outer_args) + { + int i; + + ++processing_template_decl; + + /* Discard the outer levels of args, and then substitute in the + template args from the enclosing class. */ + partial_spec_args = INNERMOST_TEMPLATE_ARGS (partial_spec_args); + partial_spec_args = tsubst_template_args + (partial_spec_args, outer_args, tf_none, NULL_TREE); + + /* PARMS already refers to just the innermost parms, but the + template parms in partial_spec_args had their levels lowered + by tsubst, so we need to do the same for the parm list. We + can't just tsubst the TREE_VEC itself, as tsubst wants to + treat a TREE_VEC as an argument vector. */ + parms = copy_node (parms); + for (i = TREE_VEC_LENGTH (parms) - 1; i >= 0; --i) + TREE_VEC_ELT (parms, i) = + tsubst (TREE_VEC_ELT (parms, i), outer_args, tf_none, NULL_TREE); + + --processing_template_decl; + } + spec_args = get_class_bindings (parms, partial_spec_args, args); if (spec_args) { + if (outer_args) + spec_args = add_to_template_args (outer_args, spec_args); list = tree_cons (spec_args, TREE_VALUE (t), list); TREE_TYPE (list) = TREE_TYPE (t); } @@ -12939,7 +13016,7 @@ /* A non-type template parm. */ if (DECL_TEMPLATE_PARM_P (expression)) return true; - return false; + return value_dependent_expression_p (DECL_INITIAL (expression)); case VAR_DECL: /* A constant with integral or enumeration type and is initialized diff -Nru gcc/cp/ptree.c gcc/cp/ptree.c --- gcc/cp/ptree.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/ptree.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,14 @@ /* Prints out trees in human readable form. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + Free Software Foundation, Inc. Hacked by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/cp/repo.c gcc/cp/repo.c --- gcc/cp/repo.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/repo.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,13 @@ /* Code to maintain a C++ template repository. - Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, + 2007 Free Software Foundation, Inc. Contributed by Jason Merrill (jason@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* My strategy here is as follows: diff -Nru gcc/cp/rtti.c gcc/cp/rtti.c --- gcc/cp/rtti.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/rtti.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,6 +1,6 @@ /* RunTime Type Identification Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, - 2005, 2006 + 2005, 2006, 2007 Free Software Foundation, Inc. Mostly written by Jason Merrill (jason@cygnus.com). @@ -8,7 +8,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -104,7 +103,6 @@ and are generated as needed. */ static GTY (()) VEC(tinfo_s,gc) *tinfo_descs; -static tree build_headof (tree); static tree ifnonnull (tree, tree); static tree tinfo_name (tree); static tree build_dynamic_cast_1 (tree, tree); @@ -158,7 +156,7 @@ virtual functions (TYPE_POLYMORPHIC_P), else just return the expression. */ -static tree +tree build_headof (tree exp) { tree type = TREE_TYPE (exp); diff -Nru gcc/cp/search.c gcc/cp/search.c --- gcc/cp/search.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/search.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,14 +1,14 @@ /* Breadth-first and depth-first routines for searching multiple-inheritance lattice for GNU C++. Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* High-level class interface. */ @@ -1200,6 +1199,9 @@ const char *errstr = 0; + if (name == error_mark_node) + return NULL_TREE; + gcc_assert (TREE_CODE (name) == IDENTIFIER_NODE); if (TREE_CODE (xbasetype) == TREE_BINFO) diff -Nru gcc/cp/semantics.c gcc/cp/semantics.c --- gcc/cp/semantics.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/semantics.c 2013-01-01 13:21:35.000000000 +0100 @@ -3,7 +3,7 @@ building RTL. These routines are used both during actual parsing and during the instantiation of template functions. - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Mark Mitchell (mmitchell@usa.net) based on code found formerly in parse.y and pt.c. @@ -12,7 +12,7 @@ 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but @@ -20,10 +20,9 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -1336,8 +1335,13 @@ void finish_label_decl (tree name) { - tree decl = declare_local_label (name); - add_decl_expr (decl); + if (!at_function_scope_p ()) + { + error ("__label__ declarations are only allowed in function scopes"); + return; + } + + add_decl_expr (declare_local_label (name)); } /* When DECL goes out of scope, make sure that CLEANUP is executed. */ diff -Nru gcc/cp/tree.c gcc/cp/tree.c --- gcc/cp/tree.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/tree.c 2013-01-01 13:21:35.000000000 +0100 @@ -1,13 +1,14 @@ /* 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, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + Free Software Foundation, Inc. Hacked by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cp/typeck.c gcc/cp/typeck.c --- gcc/cp/typeck.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/typeck.c 2013-01-01 13:58:30.000000000 +0100 @@ -1,13 +1,13 @@ /* Build expressions with type checking for C++ compiler. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Hacked by Michael Tiemann (tiemann@cygnus.com) 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file is part of the C++ front end. @@ -1483,6 +1482,13 @@ return DECL_BIT_FIELD_TYPE (field); } + case NOP_EXPR: + case CONVERT_EXPR: + if (TYPE_MAIN_VARIANT (TREE_TYPE (TREE_OPERAND (exp, 0))) + == TYPE_MAIN_VARIANT (TREE_TYPE (exp))) + return is_bitfield_expr_with_lowered_type (TREE_OPERAND (exp, 0)); + /* Fallthrough. */ + default: return NULL_TREE; } @@ -1841,7 +1847,7 @@ warn_deprecated_use (member); } else - member_scope = BINFO_TYPE (BASELINK_BINFO (member)); + member_scope = BINFO_TYPE (BASELINK_ACCESS_BINFO (member)); /* If MEMBER is from an anonymous aggregate, MEMBER_SCOPE will presently be the anonymous union. Go outwards until we find a type related to OBJECT_TYPE. */ @@ -7199,6 +7205,7 @@ && TREE_CODE (retval) == VAR_DECL && DECL_CONTEXT (retval) == current_function_decl && ! TREE_STATIC (retval) + && ! DECL_ANON_UNION_VAR_P (retval) && (DECL_ALIGN (retval) >= DECL_ALIGN (DECL_RESULT (current_function_decl))) && same_type_p ((TYPE_MAIN_VARIANT diff -Nru gcc/cp/typeck2.c gcc/cp/typeck2.c --- gcc/cp/typeck2.c 2010-10-14 22:27:29.000000000 +0200 +++ gcc/cp/typeck2.c 2013-01-01 13:58:30.000000000 +0100 @@ -1,7 +1,7 @@ /* Report error messages, build initializers, and perform some front-end optimizations for C++ compiler. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2004, 2005, 2006 + 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Hacked by Michael Tiemann (tiemann@cygnus.com) @@ -9,7 +9,7 @@ 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file is part of the C++ front end. @@ -1384,9 +1383,9 @@ if (parms && TREE_CHAIN (parms) == NULL_TREE) return build_c_cast (type, TREE_VALUE (parms)); - /* We need to zero-initialize POD types. */ - if (parms == NULL_TREE - && !CLASSTYPE_NON_POD_P (type) + /* We need to zero-initialize POD types. Let's do that for everything + that doesn't need a constructor. */ + if (parms == NULL_TREE && !TYPE_NEEDS_CONSTRUCTING (type) && TYPE_HAS_DEFAULT_CONSTRUCTOR (type)) { exp = build_zero_init (type, diff -Nru gcc/cppdefault.c gcc/cppdefault.c --- gcc/cppdefault.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cppdefault.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,23 +1,23 @@ /* CPP Library. Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2003, 2004, 2006 Free Software Foundation, Inc. + 1999, 2000, 2003, 2004, 2006, 2007 Free Software Foundation, Inc. Contributed by Per Bothner, 1994-95. Based on CCCP program by Paul Rubin, June 1986 Adapted to ANSI C, Richard Stallman, Jan 1987 -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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/cppdefault.h gcc/cppdefault.h --- gcc/cppdefault.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cppdefault.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,23 +1,23 @@ /* CPP Library. Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2003, 2004, 2006 Free Software Foundation, Inc. + 1999, 2000, 2003, 2004, 2006, 2007 Free Software Foundation, Inc. Contributed by Per Bothner, 1994-95. Based on CCCP program by Paul Rubin, June 1986 Adapted to ANSI C, Richard Stallman, Jan 1987 -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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ #ifndef GCC_CPPDEFAULT_H #define GCC_CPPDEFAULT_H diff -Nru gcc/cppspec.c gcc/cppspec.c --- gcc/cppspec.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cppspec.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,11 +1,11 @@ /* Specific flags and argument handling of the C preprocessor. - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cse.c gcc/cse.c --- gcc/cse.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/cse.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Common subexpression elimination for GNU compiler. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998 - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" /* stdio.h must precede rtl.h for FFS. */ @@ -583,7 +582,8 @@ static int mention_regs (rtx); static int insert_regs (rtx, struct table_elt *, int); static void remove_from_table (struct table_elt *, unsigned); -static struct table_elt *lookup (rtx, unsigned, enum machine_mode); +static void remove_pseudo_from_table (rtx, unsigned); +static struct table_elt *lookup (rtx, unsigned, enum machine_mode); static struct table_elt *lookup_for_remove (rtx, unsigned, enum machine_mode); static rtx lookup_as_function (rtx, enum rtx_code); static struct table_elt *insert (rtx, struct table_elt *, unsigned, @@ -1381,6 +1381,19 @@ table_size--; } +/* Same as above, but X is a pseudo-register. */ + +static void +remove_pseudo_from_table (rtx x, unsigned int hash) +{ + struct table_elt *elt; + + /* Because a pseudo-register can be referenced in more than one + mode, we might have to remove more than one table entry. */ + while ((elt = lookup_for_remove (x, hash, VOIDmode))) + remove_from_table (elt, hash); +} + /* Look up X in the hash table and return its table element, or 0 if X is not in the table. @@ -1717,7 +1730,10 @@ delete_reg_equiv (REGNO (exp)); } - remove_from_table (elt, hash); + if (REG_P (exp) && REGNO (exp) >= FIRST_PSEUDO_REGISTER) + remove_pseudo_from_table (exp, hash); + else + remove_from_table (elt, hash); if (insert_regs (exp, class1, 0) || need_rehash) { @@ -1813,14 +1829,7 @@ SUBREG_TICKED (regno) = -1; if (regno >= FIRST_PSEUDO_REGISTER) - { - /* Because a register can be referenced in more than one mode, - we might have to remove more than one table entry. */ - struct table_elt *elt; - - while ((elt = lookup_for_remove (x, hash, GET_MODE (x)))) - remove_from_table (elt, hash); - } + remove_pseudo_from_table (x, hash); else { HOST_WIDE_INT in_table diff -Nru gcc/cselib.c gcc/cselib.c --- gcc/cselib.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cselib.c 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Common subexpression elimination library for GNU compiler. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/cselib.h gcc/cselib.h --- gcc/cselib.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/cselib.h 2012-12-31 17:06:04.000000000 +0100 @@ -1,12 +1,12 @@ /* Common subexpression elimination for GNU compiler. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Describe a value. */ typedef struct cselib_val_struct GTY(()) diff -Nru gcc/dbxout.c gcc/dbxout.c --- gcc/dbxout.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dbxout.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Output dbx-format symbol table information from GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Output dbx-format symbol table data. diff -Nru gcc/dbxout.h gcc/dbxout.h --- gcc/dbxout.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dbxout.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,12 @@ /* dbxout.h - Various declarations for functions found in dbxout.c - Copyright (C) 1998, 1999, 2000, 2003, 2004 + Copyright (C) 1998, 1999, 2000, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_DBXOUT_H #define GCC_DBXOUT_H diff -Nru gcc/ddg.c gcc/ddg.c --- gcc/ddg.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ddg.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,5 +1,5 @@ /* DDG - Data Dependence Graph implementation. - Copyright (C) 2004, 2005, 2006 + Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Ayal Zaks and Mustafa Hagog @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/ddg.h gcc/ddg.h --- gcc/ddg.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ddg.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,5 +1,5 @@ /* DDG - Data Dependence Graph - interface. - Copyright (C) 2004 + Copyright (C) 2004, 2007 Free Software Foundation, Inc. Contributed by Ayal Zaks and Mustafa Hagog @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_DDG_H #define GCC_DDG_H diff -Nru gcc/debug.c gcc/debug.c --- gcc/debug.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/debug.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,19 +1,19 @@ /* Do-nothing debug hooks for GCC. - Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/debug.h gcc/debug.h --- gcc/debug.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/debug.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,19 +1,19 @@ /* Debug hooks for GCC. - Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ #ifndef GCC_DEBUG_H #define GCC_DEBUG_H diff -Nru gcc/defaults.h gcc/defaults.h --- gcc/defaults.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/defaults.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,6 +1,6 @@ /* Definitions of various defaults for tm.h macros. Copyright (C) 1992, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, - 2005 + 2005, 2007 Free Software Foundation, Inc. Contributed by Ron Guilmette (rfg@monkeys.com) @@ -8,7 +8,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_DEFAULTS_H #define GCC_DEFAULTS_H diff -Nru gcc/df-core.c gcc/df-core.c --- gcc/df-core.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/df-core.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,5 +1,5 @@ /* Allocation for dataflow support routines. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Originally contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz, mhayes@redhat.com) @@ -10,7 +10,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -19,10 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. -*/ +along with GCC; see the file COPYING3. If not see +. */ /* OVERVIEW: diff -Nru gcc/df-problems.c gcc/df-problems.c --- gcc/df-problems.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/df-problems.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,5 +1,5 @@ /* Standard problems for dataflow support routines. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Originally contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz, mhayes@redhat.com) @@ -10,7 +10,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -19,9 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/df-scan.c gcc/df-scan.c --- gcc/df-scan.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/df-scan.c 2012-12-31 17:06:05.000000000 +0100 @@ -3,7 +3,7 @@ /* Scanning of rtl for dataflow analysis. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Originally contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz, mhayes@redhat.com) @@ -14,7 +14,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -23,10 +23,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. -*/ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -1586,12 +1584,19 @@ so they are recorded as used. */ for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) if (global_regs[i]) - df_uses_record (dflow, ®no_reg_rtx[i], - DF_REF_REG_USE, bb, insn, - 0); + { + df_uses_record (dflow, ®no_reg_rtx[i], + DF_REF_REG_USE, bb, insn, 0); + df_ref_record (dflow, regno_reg_rtx[i], ®no_reg_rtx[i], + bb, insn, DF_REF_REG_DEF, 0, true); + } + EXECUTE_IF_SET_IN_BITMAP (df_invalidated_by_call, 0, ui, bi) - df_ref_record (dflow, regno_reg_rtx[ui], ®no_reg_rtx[ui], bb, - insn, DF_REF_REG_DEF, DF_REF_MAY_CLOBBER, false); + { + if (!global_regs[ui]) + df_ref_record (dflow, regno_reg_rtx[ui], ®no_reg_rtx[ui], bb, + insn, DF_REF_REG_DEF, DF_REF_MAY_CLOBBER, false); + } } } diff -Nru gcc/df.h gcc/df.h --- gcc/df.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/df.h 2012-12-31 17:06:05.000000000 +0100 @@ -11,7 +11,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -20,9 +20,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_DF_H #define GCC_DF_H diff -Nru gcc/dfp.c gcc/dfp.c --- gcc/dfp.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/dfp.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,11 +1,11 @@ /* Decimal floating point support. - Copyright (C) 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/dfp.h gcc/dfp.h --- gcc/dfp.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/dfp.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,11 +1,11 @@ /* Decimal floating point support functions for GNU compiler. - Copyright (C) 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_DFP_H #define GCC_DFP_H diff -Nru gcc/diagnostic.c gcc/diagnostic.c --- gcc/diagnostic.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/diagnostic.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,5 +1,5 @@ /* Language-independent diagnostic subroutines for the GNU Compiler Collection - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file implements the language independent aspect of diagnostic diff -Nru gcc/diagnostic.h gcc/diagnostic.h --- gcc/diagnostic.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/diagnostic.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,5 +1,5 @@ /* Various declarations for language-independent diagnostics subroutines. - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_DIAGNOSTIC_H #define GCC_DIAGNOSTIC_H diff -Nru gcc/doc/contrib.texi gcc/doc/contrib.texi --- gcc/doc/contrib.texi 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/contrib.texi 2012-12-31 17:06:05.000000000 +0100 @@ -514,6 +514,10 @@ Robert Lipe for OpenServer support, new testsuites, testing, etc. @item +Chen Liqin for various S+core related fixes/improvement, and for +maintaining the S+core port. + +@item Weiwen Liu for testing and various bug fixes. @item diff -Nru gcc/doc/extend.texi gcc/doc/extend.texi --- gcc/doc/extend.texi 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/extend.texi 2012-12-31 17:06:05.000000000 +0100 @@ -6291,6 +6291,14 @@ when testing pointer or floating-point values. @end deftypefn +@deftypefn {Built-in Function} void __builtin_trap (void) +This function causes the program to exit abnormally. GCC implements +this function by using a target-dependent mechanism (such as +intentionally executing an illegal instruction) or by calling +@code{abort}. The mechanism used may vary from release to release so +you should not rely on any particular implementation. +@end deftypefn + @deftypefn {Built-in Function} void __builtin_prefetch (const void *@var{addr}, ...) This function is used to minimize cache-miss latency by moving data into a cache before it is accessed. diff -Nru gcc/doc/gccint.texi gcc/doc/gccint.texi --- gcc/doc/gccint.texi 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/gccint.texi 2012-12-31 17:06:05.000000000 +0100 @@ -152,7 +152,7 @@ @include funding.texi @include gnu.texi -@include gpl.texi +@include gpl_v3.texi @c --------------------------------------------------------------------- @c GFDL diff -Nru gcc/doc/include/gpl_v3.texi gcc/doc/include/gpl_v3.texi --- gcc/doc/include/gpl_v3.texi 1970-01-01 01:00:00.000000000 +0100 +++ gcc/doc/include/gpl_v3.texi 2012-12-31 17:06:05.000000000 +0100 @@ -0,0 +1,733 @@ +@ignore +@c Set file name and title for man page. +@setfilename gpl +@settitle GNU General Public License +@c man begin SEEALSO +gfdl(7), fsf-funding(7). +@c man end +@c man begin COPYRIGHT +Copyright @copyright{} 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this +license document, but changing it is not allowed. +@c man end +@end ignore +@node Copying +@c man begin DESCRIPTION +@unnumbered GNU General Public License +@center Version 3, 29 June 2007 + +@c This file is intended to be included in another file. + +@display +Copyright @copyright{} 2007 Free Software Foundation, Inc. @url{http://fsf.org/} + +Everyone is permitted to copy and distribute verbatim copies of this +license document, but changing it is not allowed. +@end display + +@heading Preamble + +The GNU General Public License is a free, copyleft license for +software and other kinds of works. + +The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom +to share and change all versions of a program--to make sure it remains +free software for all its users. We, the Free Software Foundation, +use the GNU General Public License for most of our software; it +applies also to any other work released this way by its authors. You +can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you +have certain responsibilities if you distribute copies of the +software, or if you modify it: responsibilities to respect the freedom +of others. + +For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, +receive or can get the source code. And you must show them these +terms so they know their rights. + +Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + +For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + +Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the +manufacturer can do so. This is fundamentally incompatible with the +aim of protecting users' freedom to change the software. The +systematic pattern of such abuse occurs in the area of products for +individuals to use, which is precisely where it is most unacceptable. +Therefore, we have designed this version of the GPL to prohibit the +practice for those products. If such problems arise substantially in +other domains, we stand ready to extend this provision to those +domains in future versions of the GPL, as needed to protect the +freedom of users. + +Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish +to avoid the special danger that patents applied to a free program +could make it effectively proprietary. To prevent this, the GPL +assures that patents cannot be used to render the program non-free. + +The precise terms and conditions for copying, distribution and +modification follow. + +@heading TERMS AND CONDITIONS + +@enumerate 0 +@item Definitions. + +``This License'' refers to version 3 of the GNU General Public License. + +``Copyright'' also means copyright-like laws that apply to other kinds +of works, such as semiconductor masks. + +``The Program'' refers to any copyrightable work licensed under this +License. Each licensee is addressed as ``you''. ``Licensees'' and +``recipients'' may be individuals or organizations. + +To ``modify'' a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of +an exact copy. The resulting work is called a ``modified version'' of +the earlier work or a work ``based on'' the earlier work. + +A ``covered work'' means either the unmodified Program or a work based +on the Program. + +To ``propagate'' a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To ``convey'' a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user +through a computer network, with no transfer of a copy, is not +conveying. + +An interactive user interface displays ``Appropriate Legal Notices'' to +the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +@item Source Code. + +The ``source code'' for a work means the preferred form of the work for +making modifications to it. ``Object code'' means any non-source form +of a work. + +A ``Standard Interface'' means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The ``System Libraries'' of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +``Major Component'', in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The ``Corresponding Source'' for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users can +regenerate automatically from other parts of the Corresponding Source. + +The Corresponding Source for a work in source code form is that same +work. + +@item Basic Permissions. + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not convey, +without conditions so long as your license otherwise remains in force. +You may convey covered works to others for the sole purpose of having +them make modifications exclusively for you, or provide you with +facilities for running those works, provided that you comply with the +terms of this License in conveying all material for which you do not +control copyright. Those thus making or running the covered works for +you must do so exclusively on your behalf, under your direction and +control, on terms that prohibit them from making any copies of your +copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under the +conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + +@item Protecting Users' Legal Rights From Anti-Circumvention Law. + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such +circumvention is effected by exercising rights under this License with +respect to the covered work, and you disclaim any intention to limit +operation or modification of the work as a means of enforcing, against +the work's users, your or third parties' legal rights to forbid +circumvention of technological measures. + +@item Conveying Verbatim Copies. + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +@item Conveying Modified Source Versions. + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these +conditions: + +@enumerate a +@item +The work must carry prominent notices stating that you modified it, +and giving a relevant date. + +@item +The work must carry prominent notices stating that it is released +under this License and any conditions added under section 7. This +requirement modifies the requirement in section 4 to ``keep intact all +notices''. + +@item +You must license the entire work, as a whole, under this License to +anyone who comes into possession of a copy. This License will +therefore apply, along with any applicable section 7 additional terms, +to the whole of the work, and all its parts, regardless of how they +are packaged. This License gives no permission to license the work in +any other way, but it does not invalidate such permission if you have +separately received it. + +@item +If the work has interactive user interfaces, each must display +Appropriate Legal Notices; however, if the Program has interactive +interfaces that do not display Appropriate Legal Notices, your work +need not make them do so. +@end enumerate + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +``aggregate'' if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +@item Conveying Non-Source Forms. + +You may convey a covered work in object code form under the terms of +sections 4 and 5, provided that you also convey the machine-readable +Corresponding Source under the terms of this License, in one of these +ways: + +@enumerate a +@item +Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by the +Corresponding Source fixed on a durable physical medium customarily +used for software interchange. + +@item +Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by a written +offer, valid for at least three years and valid for as long as you +offer spare parts or customer support for that product model, to give +anyone who possesses the object code either (1) a copy of the +Corresponding Source for all the software in the product that is +covered by this License, on a durable physical medium customarily used +for software interchange, for a price no more than your reasonable +cost of physically performing this conveying of source, or (2) access +to copy the Corresponding Source from a network server at no charge. + +@item +Convey individual copies of the object code with a copy of the written +offer to provide the Corresponding Source. This alternative is +allowed only occasionally and noncommercially, and only if you +received the object code with such an offer, in accord with subsection +6b. + +@item +Convey the object code by offering access from a designated place +(gratis or for a charge), and offer equivalent access to the +Corresponding Source in the same way through the same place at no +further charge. You need not require recipients to copy the +Corresponding Source along with the object code. If the place to copy +the object code is a network server, the Corresponding Source may be +on a different server (operated by you or a third party) that supports +equivalent copying facilities, provided you maintain clear directions +next to the object code saying where to find the Corresponding Source. +Regardless of what server hosts the Corresponding Source, you remain +obligated to ensure that it is available for as long as needed to +satisfy these requirements. + +@item +Convey the object code using peer-to-peer transmission, provided you +inform other peers where the object code and Corresponding Source of +the work are being offered to the general public at no charge under +subsection 6d. + +@end enumerate + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A ``User Product'' is either (1) a ``consumer product'', which means any +tangible personal property which is normally used for personal, +family, or household purposes, or (2) anything designed or sold for +incorporation into a dwelling. In determining whether a product is a +consumer product, doubtful cases shall be resolved in favor of +coverage. For a particular product received by a particular user, +``normally used'' refers to a typical or common use of that class of +product, regardless of the status of the particular user or of the way +in which the particular user actually uses, or expects or is expected +to use, the product. A product is a consumer product regardless of +whether the product has substantial commercial, industrial or +non-consumer uses, unless such uses represent the only significant +mode of use of the product. + +``Installation Information'' for a User Product means any methods, +procedures, authorization keys, or other information required to +install and execute modified versions of a covered work in that User +Product from a modified version of its Corresponding Source. The +information must suffice to ensure that the continued functioning of +the modified object code is in no case prevented or interfered with +solely because modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or +updates for a work that has been modified or installed by the +recipient, or for the User Product in which it has been modified or +installed. Access to a network may be denied when the modification +itself materially and adversely affects the operation of the network +or violates the rules and protocols for communication across the +network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +@item Additional Terms. + +``Additional permissions'' are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders +of that material) supplement the terms of this License with terms: + +@enumerate a +@item +Disclaiming warranty or limiting liability differently from the terms +of sections 15 and 16 of this License; or + +@item +Requiring preservation of specified reasonable legal notices or author +attributions in that material or in the Appropriate Legal Notices +displayed by works containing it; or + +@item +Prohibiting misrepresentation of the origin of that material, or +requiring that modified versions of such material be marked in +reasonable ways as different from the original version; or + +@item +Limiting the use for publicity purposes of names of licensors or +authors of the material; or + +@item +Declining to grant rights under trademark law for use of some trade +names, trademarks, or service marks; or + +@item +Requiring indemnification of licensors and authors of that material by +anyone who conveys the material (or modified versions of it) with +contractual assumptions of liability to the recipient, for any +liability that these contractual assumptions directly impose on those +licensors and authors. +@end enumerate + +All other non-permissive additional terms are considered ``further +restrictions'' within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; the +above requirements apply either way. + +@item Termination. + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your license +from a particular copyright holder is reinstated (a) provisionally, +unless and until the copyright holder explicitly and finally +terminates your license, and (b) permanently, if the copyright holder +fails to notify you of the violation by some reasonable means prior to +60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +@item Acceptance Not Required for Having Copies. + +You are not required to accept this License in order to receive or run +a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +@item Automatic Licensing of Downstream Recipients. + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An ``entity transaction'' is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +@item Patents. + +A ``contributor'' is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's ``contributor version''. + +A contributor's ``essential patent claims'' are all patent claims owned +or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, ``control'' includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a ``patent license'' is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To ``grant'' such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. ``Knowingly relying'' means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is ``discriminatory'' if it does not include within the +scope of its coverage, prohibits the exercise of, or is conditioned on +the non-exercise of one or more of the rights that are specifically +granted under this License. You may not convey a covered work if you +are a party to an arrangement with a third party that is in the +business of distributing software, under which you make payment to the +third party based on the extent of your activity of conveying the +work, and under which the third party grants, to any of the parties +who would receive the covered work from you, a discriminatory patent +license (a) in connection with copies of the covered work conveyed by +you (or copies made from those copies), or (b) primarily for and in +connection with specific products or compilations that contain the +covered work, unless you entered into that arrangement, or that patent +license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +@item No Surrender of Others' Freedom. + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey +a covered work so as to satisfy simultaneously your obligations under +this License and any other pertinent obligations, then as a +consequence you may not convey it at all. For example, if you agree +to terms that obligate you to collect a royalty for further conveying +from those to whom you convey the Program, the only way you could +satisfy both those terms and this License would be to refrain entirely +from conveying the Program. + +@item Use with the GNU Affero General Public License. + +Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + +@item Revised Versions of this License. + +The Free Software Foundation may publish revised and/or new versions +of the GNU General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies that a certain numbered version of the GNU General Public +License ``or any later version'' applies to it, you have the option of +following the terms and conditions either of that numbered version or +of any later version published by the Free Software Foundation. If +the Program does not specify a version number of the GNU General +Public License, you may choose any version ever published by the Free +Software Foundation. + +If the Program specifies that a proxy can decide which future versions +of the GNU General Public License can be used, that proxy's public +statement of acceptance of a version permanently authorizes you to +choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +@item Disclaimer of Warranty. + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM ``AS IS'' WITHOUT +WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND +PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE +DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR +CORRECTION. + +@item Limitation of Liability. + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR +CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT +NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR +LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM +TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER +PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +@item Interpretation of Sections 15 and 16. + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + +@end enumerate + +@heading END OF TERMS AND CONDITIONS + +@heading How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these +terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the ``copyright'' line and a pointer to where the full notice is found. + +@smallexample +@var{one line to give the program's name and a brief idea of what it does.} +Copyright (C) @var{year} @var{name of author} + +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 3 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, see @url{http://www.gnu.org/licenses/}. +@end smallexample + +Also add information on how to contact you by electronic and paper mail. + +If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + +@smallexample +@var{program} Copyright (C) @var{year} @var{name of author} +This program comes with ABSOLUTELY NO WARRANTY; for details type @samp{show w}. +This is free software, and you are welcome to redistribute it +under certain conditions; type @samp{show c} for details. +@end smallexample + +The hypothetical commands @samp{show w} and @samp{show c} should show +the appropriate parts of the General Public License. Of course, your +program's commands might be different; for a GUI interface, you would +use an ``about box''. + +You should also get your employer (if you work as a programmer) or school, +if any, to sign a ``copyright disclaimer'' for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +@url{http://www.gnu.org/licenses/}. + +The GNU General Public License does not permit incorporating your +program into proprietary programs. If your program is a subroutine +library, you may consider it more useful to permit linking proprietary +applications with the library. If this is what you want to do, use +the GNU Lesser General Public License instead of this License. But +first, please read @url{http://www.gnu.org/philosophy/why-not-lgpl.html}. +@c man end diff -Nru gcc/doc/include/texinfo.tex gcc/doc/include/texinfo.tex --- gcc/doc/include/texinfo.tex 2010-10-14 22:24:13.000000000 +0200 +++ gcc/doc/include/texinfo.tex 2012-12-31 17:06:05.000000000 +0100 @@ -3,16 +3,16 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2005-06-10.07} +\def\texinfoversion{2008-03-07.10} % % Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, -% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software -% Foundation, Inc. +% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +% 2007, 2008 Free Software Foundation, Inc. % -% This texinfo.tex file is free software; you can redistribute it and/or +% This texinfo.tex file 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. +% published by the Free Software Foundation, either version 3 of the +% License, or (at your option) any later version. % % This texinfo.tex file is distributed in the hope that it will be % useful, but WITHOUT ANY WARRANTY; without even the implied warranty @@ -20,9 +20,7 @@ % General Public License for more details. % % You should have received a copy of the GNU General Public License -% along with this texinfo.tex file; see the file COPYING. If not, write -% to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -% Boston, MA 02110-1301, USA. +% along with this program. If not, see . % % As a special exception, when this file is read by TeX when processing % a Texinfo source document, you may use the result without @@ -67,7 +65,7 @@ \everyjob{\message{[Texinfo version \texinfoversion]}% \catcode`+=\active \catcode`\_=\active} -\message{Basics,} + \chardef\other=12 % We never want plain's \outer definition of \+ in Texinfo. @@ -99,6 +97,7 @@ \let\ptexslash=\/ \let\ptexstar=\* \let\ptext=\t +\let\ptextop=\top % If this character appears in an error message or help string, it % starts a new line in the output. @@ -153,28 +152,22 @@ \ifx\putwordDefopt\undefined \gdef\putwordDefopt{User Option}\fi \ifx\putwordDeffunc\undefined \gdef\putwordDeffunc{Function}\fi -% In some macros, we cannot use the `\? notation---the left quote is -% in some cases the escape char. -\chardef\backChar = `\\ +% Since the category of space is not known, we have to be careful. +\chardef\spacecat = 10 +\def\spaceisspace{\catcode`\ =\spacecat} + +% sometimes characters are active, so we need control sequences. \chardef\colonChar = `\: \chardef\commaChar = `\, +\chardef\dashChar = `\- \chardef\dotChar = `\. \chardef\exclamChar= `\! -\chardef\plusChar = `\+ +\chardef\lquoteChar= `\` \chardef\questChar = `\? +\chardef\rquoteChar= `\' \chardef\semiChar = `\; \chardef\underChar = `\_ -\chardef\spaceChar = `\ % -\chardef\spacecat = 10 -\def\spaceisspace{\catcode\spaceChar=\spacecat} - -{% for help with debugging. - % example usage: \expandafter\show\activebackslash - \catcode`\! = 0 \catcode`\\ = \active - !global!def!activebackslash{\} -} - % Ignore a token. % \def\gobble#1{} @@ -285,6 +278,50 @@ \newdimen\cornerthick \cornerthick=.3pt \newdimen\topandbottommargin \topandbottommargin=.75in +% Output a mark which sets \thischapter, \thissection and \thiscolor. +% We dump everything together because we only have one kind of mark. +% This works because we only use \botmark / \topmark, not \firstmark. +% +% A mark contains a subexpression of the \ifcase ... \fi construct. +% \get*marks macros below extract the needed part using \ifcase. +% +% Another complication is to let the user choose whether \thischapter +% (\thissection) refers to the chapter (section) in effect at the top +% of a page, or that at the bottom of a page. The solution is +% described on page 260 of The TeXbook. It involves outputting two +% marks for the sectioning macros, one before the section break, and +% one after. I won't pretend I can describe this better than DEK... +\def\domark{% + \toks0=\expandafter{\lastchapterdefs}% + \toks2=\expandafter{\lastsectiondefs}% + \toks4=\expandafter{\prevchapterdefs}% + \toks6=\expandafter{\prevsectiondefs}% + \toks8=\expandafter{\lastcolordefs}% + \mark{% + \the\toks0 \the\toks2 + \noexpand\or \the\toks4 \the\toks6 + \noexpand\else \the\toks8 + }% +} +% \topmark doesn't work for the very first chapter (after the title +% page or the contents), so we use \firstmark there -- this gets us +% the mark with the chapter defs, unless the user sneaks in, e.g., +% @setcolor (or @url, or @link, etc.) between @contents and the very +% first @chapter. +\def\gettopheadingmarks{% + \ifcase0\topmark\fi + \ifx\thischapter\empty \ifcase0\firstmark\fi \fi +} +\def\getbottomheadingmarks{\ifcase1\botmark\fi} +\def\getcolormarks{\ifcase2\topmark\fi} + +% Avoid "undefined control sequence" errors. +\def\lastchapterdefs{} +\def\lastsectiondefs{} +\def\prevchapterdefs{} +\def\prevsectiondefs{} +\def\lastcolordefs{} + % Main output routine. \chardef\PAGE = 255 \output = {\onepageout{\pagecontents\PAGE}} @@ -302,7 +339,9 @@ % % Do this outside of the \shipout so @code etc. will be expanded in % the headline as they should be, not taken literally (outputting ''code). + \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}% + \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}% % {% @@ -310,10 +349,14 @@ % take effect in \write's, yet the group defined by the \vbox ends % before the \shipout runs. % - \escapechar = `\\ % use backslash in output files. \indexdummies % don't expand commands in the output. \normalturnoffactive % \ in index entries must not stay \, e.g., if - % the page break happens to be in the middle of an example. + % the page break happens to be in the middle of an example. + % We don't want .vr (or whatever) entries like this: + % \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}} + % "\acronym" won't work when it's read back in; + % it needs to be + % {\code {{\tt \backslashcurfont }acronym} \shipout\vbox{% % Do this early so pdf references go to the beginning of the page. \ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi @@ -341,9 +384,9 @@ \pagebody{#1}% \ifdim\ht\footlinebox > 0pt % Only leave this space if the footline is nonempty. - % (We lessened \vsize for it in \oddfootingxxx.) + % (We lessened \vsize for it in \oddfootingyyy.) % The \baselineskip=24pt in plain's \makefootline has no effect. - \vskip 2\baselineskip + \vskip 24pt \unvbox\footlinebox \fi % @@ -364,7 +407,7 @@ \egroup % \vbox from first cropmarks clause \fi }% end of \shipout\vbox - }% end of group with \normalturnoffactive + }% end of group with \indexdummies \advancepageno \ifnum\outputpenalty>-20000 \else\dosupereject\fi } @@ -377,7 +420,7 @@ % marginal hacks, juha@viisa.uucp (Juha Takala) \ifvoid\margin\else % marginal info is present \rlap{\kern\hsize\vbox to\z@{\kern1pt\box\margin \vss}}\fi -\dimen@=\dp#1 \unvbox#1 +\dimen@=\dp#1\relax \unvbox#1\relax \ifvoid\footins\else\vskip\skip\footins\footnoterule \unvbox\footins\fi \ifr@ggedbottom \kern-\dimen@ \vfil \fi} } @@ -399,7 +442,7 @@ % \def\parsearg{\parseargusing{}} \def\parseargusing#1#2{% - \def\next{#2}% + \def\argtorun{#2}% \begingroup \obeylines \spaceisspace @@ -430,8 +473,7 @@ \def\argcheckspacesY#1\^^M#2\^^M#3\ArgTerm{% \def\temp{#3}% \ifx\temp\empty - % We cannot use \next here, as it holds the macro to run; - % thus we reuse \temp. + % Do not use \next, perhaps the caller of \parsearg uses it; reuse \temp: \let\temp\finishparsearg \else \let\temp\argcheckspaces @@ -443,14 +485,14 @@ % If a _delimited_ argument is enclosed in braces, they get stripped; so % to get _exactly_ the rest of the line, we had to prevent such situation. % We prepended an \empty token at the very beginning and we expand it now, -% just before passing the control to \next. +% just before passing the control to \argtorun. % (Similarily, we have to think about #3 of \argcheckspacesY above: it is % either the null string, or it ends with \^^M---thus there is no danger % that a pair of braces would be stripped. % % But first, we have to remove the trailing space token. % -\def\finishparsearg#1 \ArgTerm{\expandafter\next\expandafter{#1}} +\def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}} % \parseargdef\foo{...} % is roughly equivalent to @@ -875,15 +917,19 @@ \temp } -% @include file insert text of that file as input. +% @include FILE -- \input text of FILE. % \def\include{\parseargusing\filenamecatcodes\includezzz} \def\includezzz#1{% \pushthisfilestack \def\thisfile{#1}% {% - \makevalueexpandable - \def\temp{\input #1 }% + \makevalueexpandable % we want to expand any @value in FILE. + \turnoffactive % and allow special characters in the expansion + \edef\temp{\noexpand\input #1 }% + % + % This trickery is to read FILE outside of a group, in case it makes + % definitions, etc. \expandafter }\temp \popthisfilestack @@ -1054,9 +1100,9 @@ % _ active, and distinguish by seeing if the current family is \slfam, % which is what @var uses. { - \catcode\underChar = \active + \catcode`\_ = \active \gdef\mathunderscore{% - \catcode\underChar=\active + \catcode`\_=\active \def_{\ifnum\fam=\slfam \_\else\sb\fi}% } } @@ -1099,15 +1145,24 @@ \def\minus{$-$} % @dots{} outputs an ellipsis using the current font. -% We do .5em per period so that it has the same spacing in a typewriter -% font as three actual period characters. +% We do .5em per period so that it has the same spacing in the cm +% typewriter fonts as three actual period characters; on the other hand, +% in other typewriter fonts three periods are wider than 1.5em. So do +% whichever is larger. % \def\dots{% \leavevmode - \hbox to 1.5em{% - \hskip 0pt plus 0.25fil - .\hfil.\hfil.% - \hskip 0pt plus 0.5fil + \setbox0=\hbox{...}% get width of three periods + \ifdim\wd0 > 1.5em + \dimen0 = \wd0 + \else + \dimen0 = 1.5em + \fi + \hbox to \dimen0{% + \hskip 0pt plus.25fil + .\hskip 0pt plus1fil + .\hskip 0pt plus1fil + .\hskip 0pt plus.5fil }% } @@ -1200,28 +1255,28 @@ \fi \fi -% PDF uses PostScript string constants for the names of xref targets, to +% PDF uses PostScript string constants for the names of xref targets, % for display in the outlines, and in other places. Thus, we have to % double any backslashes. Otherwise, a name like "\node" will be % interpreted as a newline (\n), followed by o, d, e. Not good. % http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html % (and related messages, the final outcome is that it is up to the TeX % user to double the backslashes and otherwise make the string valid, so -% that's we do). +% that's what we do). % double active backslashes. % {\catcode`\@=0 \catcode`\\=\active - @gdef@activebackslash{@catcode`@\=@active @otherbackslash} @gdef@activebackslashdouble{% - @catcode@backChar=@active + @catcode`@\=@active @let\=@doublebackslash} } % To handle parens, we must adopt a different approach, since parens are % not active characters. hyperref.dtx (which has the same problem as -% us) handles it with this amazing macro to replace tokens. I've -% tinkered with it a little for texinfo, but it's definitely from there. +% us) handles it with this amazing macro to replace tokens, with minor +% changes for Texinfo. It is included here under the GPL by permission +% from the author, Heiko Oberdiek. % % #1 is the tokens to replace. % #2 is the replacement. @@ -1246,21 +1301,87 @@ \def\backslashparens#1{% \xdef#1{#1}% redefine it as its expansion; the definition is simply % \lastnode when called from \setref -> \pdfmkdest. - \HyPsdSubst{(}{\backslashlparen}{#1}% - \HyPsdSubst{)}{\backslashrparen}{#1}% + \HyPsdSubst{(}{\realbackslash(}{#1}% + \HyPsdSubst{)}{\realbackslash)}{#1}% } -{\catcode\exclamChar = 0 \catcode\backChar = \other - !gdef!backslashlparen{\(}% - !gdef!backslashrparen{\)}% -} +\newhelp\nopdfimagehelp{Texinfo supports .png, .jpg, .jpeg, and .pdf images +with PDF output, and none of those formats could be found. (.eps cannot +be supported due to the design of the PDF format; use regular TeX (DVI +output) for that.)} \ifpdf - \input pdfcolor - \pdfcatalog{/PageMode /UseOutlines}% + % + % Color manipulation macros based on pdfcolor.tex. + \def\cmykDarkRed{0.28 1 1 0.35} + \def\cmykBlack{0 0 0 1} + % + \def\pdfsetcolor#1{\pdfliteral{#1 k}} + % Set color, and create a mark which defines \thiscolor accordingly, + % so that \makeheadline knows which color to restore. + \def\setcolor#1{% + \xdef\lastcolordefs{\gdef\noexpand\thiscolor{#1}}% + \domark + \pdfsetcolor{#1}% + } + % + \def\maincolor{\cmykBlack} + \pdfsetcolor{\maincolor} + \edef\thiscolor{\maincolor} + \def\lastcolordefs{} + % + \def\makefootline{% + \baselineskip24pt + \line{\pdfsetcolor{\maincolor}\the\footline}% + } + % + \def\makeheadline{% + \vbox to 0pt{% + \vskip-22.5pt + \line{% + \vbox to8.5pt{}% + % Extract \thiscolor definition from the marks. + \getcolormarks + % Typeset the headline with \maincolor, then restore the color. + \pdfsetcolor{\maincolor}\the\headline\pdfsetcolor{\thiscolor}% + }% + \vss + }% + \nointerlineskip + } + % + % + \pdfcatalog{/PageMode /UseOutlines} + % + % #1 is image name, #2 width (might be empty/whitespace), #3 height (ditto). \def\dopdfimage#1#2#3{% - \def\imagewidth{#2}% - \def\imageheight{#3}% + \def\imagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}% + \def\imageheight{#3}\setbox2 = \hbox{\ignorespaces #3}% + % + % pdftex (and the PDF format) support .png, .jpg, .pdf (among + % others). Let's try in that order. + \let\pdfimgext=\empty + \begingroup + \openin 1 #1.png \ifeof 1 + \openin 1 #1.jpg \ifeof 1 + \openin 1 #1.jpeg \ifeof 1 + \openin 1 #1.JPG \ifeof 1 + \openin 1 #1.pdf \ifeof 1 + \errhelp = \nopdfimagehelp + \errmessage{Could not find image file #1 for pdf}% + \else \gdef\pdfimgext{pdf}% + \fi + \else \gdef\pdfimgext{JPG}% + \fi + \else \gdef\pdfimgext{jpeg}% + \fi + \else \gdef\pdfimgext{jpg}% + \fi + \else \gdef\pdfimgext{png}% + \fi + \closein 1 + \endgroup + % % without \immediate, pdftex seg faults when the same image is % included twice. (Version 3.14159-pre-1.0-unofficial-20010704.) \ifnum\pdftexversion < 14 @@ -1268,32 +1389,38 @@ \else \immediate\pdfximage \fi - \ifx\empty\imagewidth\else width \imagewidth \fi - \ifx\empty\imageheight\else height \imageheight \fi + \ifdim \wd0 >0pt width \imagewidth \fi + \ifdim \wd2 >0pt height \imageheight \fi \ifnum\pdftexversion<13 - #1.pdf% + #1.\pdfimgext \else - {#1.pdf}% + {#1.\pdfimgext}% \fi \ifnum\pdftexversion < 14 \else \pdfrefximage \pdflastximage \fi} + % \def\pdfmkdest#1{{% % We have to set dummies so commands such as @code, and characters % such as \, aren't expanded when present in a section title. - \atdummies + \indexnofonts \turnoffactive \activebackslashdouble + \makevalueexpandable \def\pdfdestname{#1}% \backslashparens\pdfdestname - \pdfdest name{\pdfdestname} xyz% - }}% + \safewhatsit{\pdfdest name{\pdfdestname} xyz}% + }} % % used to mark target names; must be expandable. - \def\pdfmkpgn#1{#1}% + \def\pdfmkpgn#1{#1} + % + % by default, use a color that is dark enough to print on paper as + % nearly black, but still distinguishable for online viewing. + \def\urlcolor{\cmykDarkRed} + \def\linkcolor{\cmykDarkRed} + \def\endlink{\setcolor{\maincolor}\pdfendlink} % - \let\linkcolor = \Blue % was Cyan, but that seems light? - \def\endlink{\Black\pdfendlink} % Adding outlines to PDF; macros for calculating structure of outlines % come from Petr Olsak \def\expnumber#1{\expandafter\ifx\csname#1\endcsname\relax 0% @@ -1394,8 +1521,8 @@ % now, I guess we'll just let the pdf reader have its way. \indexnofonts \setupdatafile - \activebackslash - \input \jobname.toc + \catcode`\\=\active \otherbackslash + \input \tocreadfilename \endgroup } % @@ -1413,11 +1540,19 @@ \else \let \startlink \pdfstartlink \fi + % make a live url in pdf output. \def\pdfurl#1{% \begingroup - \normalturnoffactive\def\@{@}% + % it seems we really need yet another set of dummies; have not + % tried to figure out what each command should do in the context + % of @url. for now, just make @/ a no-op, that's the only one + % people have actually reported a problem with. + % + \normalturnoffactive + \def\@{@}% + \let\/=\empty \makevalueexpandable - \leavevmode\Red + \leavevmode\setcolor{\urlcolor}% \startlink attr{/Border [0 0 0]}% user{/Subtype /Link /A << /S /URI /URI (#1) >>}% \endgroup} @@ -1444,13 +1579,14 @@ {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0} \def\pdflink#1{% \startlink attr{/Border [0 0 0]} goto name{\pdfmkpgn{#1}} - \linkcolor #1\endlink} + \setcolor{\linkcolor}#1\endlink} \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} \else \let\pdfmkdest = \gobble \let\pdfurl = \gobble \let\endlink = \relax - \let\linkcolor = \relax + \let\setcolor = \gobble + \let\pdfsetcolor = \gobble \let\pdfmakeoutlines = \relax \fi % \ifx\pdfoutput @@ -1485,6 +1621,7 @@ % We don't need math for this font style. \def\ttsl{\setfontstyle{ttsl}} + % Default leading. \newdimen\textleading \textleading = 13.2pt @@ -1496,8 +1633,12 @@ \def\strutheightpercent{.70833} \def\strutdepthpercent {.29167} % +% can get a sort of poor man's double spacing by redefining this. +\def\baselinefactor{1} +% \def\setleading#1{% - \normalbaselineskip = #1\relax + \dimen0 = #1\relax + \normalbaselineskip = \baselinefactor\dimen0 \normallineskip = \lineskipfactor\normalbaselineskip \normalbaselines \setbox\strutbox =\hbox{% @@ -1506,10 +1647,279 @@ }% } +% PDF CMaps. See also LaTeX's t1.cmap. +% +% do nothing with this by default. +\expandafter\let\csname cmapOT1\endcsname\gobble +\expandafter\let\csname cmapOT1IT\endcsname\gobble +\expandafter\let\csname cmapOT1TT\endcsname\gobble + +% if we are producing pdf, and we have \pdffontattr, then define cmaps. +% (\pdffontattr was introduced many years ago, but people still run +% older pdftex's; it's easy to conditionalize, so we do.) +\ifpdf \ifx\pdffontattr\undefined \else + \begingroup + \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. + \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-OT1-0) +%%Title: (TeX-OT1-0 TeX OT1 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (OT1) +/Supplement 0 +>> def +/CMapName /TeX-OT1-0 def +/CMapType 2 def +1 begincodespacerange +<00> <7F> +endcodespacerange +8 beginbfrange +<00> <01> <0393> +<09> <0A> <03A8> +<23> <26> <0023> +<28> <3B> <0028> +<3F> <5B> <003F> +<5D> <5E> <005D> +<61> <7A> <0061> +<7B> <7C> <2013> +endbfrange +40 beginbfchar +<02> <0398> +<03> <039B> +<04> <039E> +<05> <03A0> +<06> <03A3> +<07> <03D2> +<08> <03A6> +<0B> <00660066> +<0C> <00660069> +<0D> <0066006C> +<0E> <006600660069> +<0F> <00660066006C> +<10> <0131> +<11> <0237> +<12> <0060> +<13> <00B4> +<14> <02C7> +<15> <02D8> +<16> <00AF> +<17> <02DA> +<18> <00B8> +<19> <00DF> +<1A> <00E6> +<1B> <0153> +<1C> <00F8> +<1D> <00C6> +<1E> <0152> +<1F> <00D8> +<21> <0021> +<22> <201D> +<27> <2019> +<3C> <00A1> +<3D> <003D> +<3E> <00BF> +<5C> <201C> +<5F> <02D9> +<60> <2018> +<7D> <02DD> +<7E> <007E> +<7F> <00A8> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + }\endgroup + \expandafter\edef\csname cmapOT1\endcsname#1{% + \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% + }% +% +% \cmapOT1IT + \begingroup + \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. + \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-OT1IT-0) +%%Title: (TeX-OT1IT-0 TeX OT1IT 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (OT1IT) +/Supplement 0 +>> def +/CMapName /TeX-OT1IT-0 def +/CMapType 2 def +1 begincodespacerange +<00> <7F> +endcodespacerange +8 beginbfrange +<00> <01> <0393> +<09> <0A> <03A8> +<25> <26> <0025> +<28> <3B> <0028> +<3F> <5B> <003F> +<5D> <5E> <005D> +<61> <7A> <0061> +<7B> <7C> <2013> +endbfrange +42 beginbfchar +<02> <0398> +<03> <039B> +<04> <039E> +<05> <03A0> +<06> <03A3> +<07> <03D2> +<08> <03A6> +<0B> <00660066> +<0C> <00660069> +<0D> <0066006C> +<0E> <006600660069> +<0F> <00660066006C> +<10> <0131> +<11> <0237> +<12> <0060> +<13> <00B4> +<14> <02C7> +<15> <02D8> +<16> <00AF> +<17> <02DA> +<18> <00B8> +<19> <00DF> +<1A> <00E6> +<1B> <0153> +<1C> <00F8> +<1D> <00C6> +<1E> <0152> +<1F> <00D8> +<21> <0021> +<22> <201D> +<23> <0023> +<24> <00A3> +<27> <2019> +<3C> <00A1> +<3D> <003D> +<3E> <00BF> +<5C> <201C> +<5F> <02D9> +<60> <2018> +<7D> <02DD> +<7E> <007E> +<7F> <00A8> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + }\endgroup + \expandafter\edef\csname cmapOT1IT\endcsname#1{% + \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% + }% +% +% \cmapOT1TT + \begingroup + \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. + \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-OT1TT-0) +%%Title: (TeX-OT1TT-0 TeX OT1TT 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (OT1TT) +/Supplement 0 +>> def +/CMapName /TeX-OT1TT-0 def +/CMapType 2 def +1 begincodespacerange +<00> <7F> +endcodespacerange +5 beginbfrange +<00> <01> <0393> +<09> <0A> <03A8> +<21> <26> <0021> +<28> <5F> <0028> +<61> <7E> <0061> +endbfrange +32 beginbfchar +<02> <0398> +<03> <039B> +<04> <039E> +<05> <03A0> +<06> <03A3> +<07> <03D2> +<08> <03A6> +<0B> <2191> +<0C> <2193> +<0D> <0027> +<0E> <00A1> +<0F> <00BF> +<10> <0131> +<11> <0237> +<12> <0060> +<13> <00B4> +<14> <02C7> +<15> <02D8> +<16> <00AF> +<17> <02DA> +<18> <00B8> +<19> <00DF> +<1A> <00E6> +<1B> <0153> +<1C> <00F8> +<1D> <00C6> +<1E> <0152> +<1F> <00D8> +<20> <2423> +<27> <2019> +<60> <2018> +<7F> <00A8> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + }\endgroup + \expandafter\edef\csname cmapOT1TT\endcsname#1{% + \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% + }% +\fi\fi + + % Set the font macro #1 to the font named #2, adding on the % specified font prefix (normally `cm'). -% #3 is the font's design size, #4 is a scale factor -\def\setfont#1#2#3#4{\font#1=\fontprefix#2#3 scaled #4} +% #3 is the font's design size, #4 is a scale factor, #5 is the CMap +% encoding (currently only OT1, OT1IT and OT1TT are allowed, pass +% empty to omit). +\def\setfont#1#2#3#4#5{% + \font#1=\fontprefix#2#3 scaled #4 + \csname cmap#5\endcsname#1% +} +% This is what gets called when #5 of \setfont is empty. +\let\cmap\gobble +% emacs-page end of cmaps % Use cm as the default font prefix. % To specify the font prefix, you must define \fontprefix @@ -1534,118 +1944,297 @@ \def\scshape{csc} \def\scbshape{csc} +% Definitions for a main text size of 11pt. This is the default in +% Texinfo. +% +\def\definetextfontsizexi{% % Text fonts (11.2pt, magstep1). \def\textnominalsize{11pt} \edef\mainmagstep{\magstephalf} -\setfont\textrm\rmshape{10}{\mainmagstep} -\setfont\texttt\ttshape{10}{\mainmagstep} -\setfont\textbf\bfshape{10}{\mainmagstep} -\setfont\textit\itshape{10}{\mainmagstep} -\setfont\textsl\slshape{10}{\mainmagstep} -\setfont\textsf\sfshape{10}{\mainmagstep} -\setfont\textsc\scshape{10}{\mainmagstep} -\setfont\textttsl\ttslshape{10}{\mainmagstep} +\setfont\textrm\rmshape{10}{\mainmagstep}{OT1} +\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT} +\setfont\textbf\bfshape{10}{\mainmagstep}{OT1} +\setfont\textit\itshape{10}{\mainmagstep}{OT1IT} +\setfont\textsl\slshape{10}{\mainmagstep}{OT1} +\setfont\textsf\sfshape{10}{\mainmagstep}{OT1} +\setfont\textsc\scshape{10}{\mainmagstep}{OT1} +\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT} \font\texti=cmmi10 scaled \mainmagstep \font\textsy=cmsy10 scaled \mainmagstep +\def\textecsize{1095} % A few fonts for @defun names and args. -\setfont\defbf\bfshape{10}{\magstep1} -\setfont\deftt\ttshape{10}{\magstep1} -\setfont\defttsl\ttslshape{10}{\magstep1} +\setfont\defbf\bfshape{10}{\magstep1}{OT1} +\setfont\deftt\ttshape{10}{\magstep1}{OT1TT} +\setfont\defttsl\ttslshape{10}{\magstep1}{OT1TT} \def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf} % Fonts for indices, footnotes, small examples (9pt). \def\smallnominalsize{9pt} -\setfont\smallrm\rmshape{9}{1000} -\setfont\smalltt\ttshape{9}{1000} -\setfont\smallbf\bfshape{10}{900} -\setfont\smallit\itshape{9}{1000} -\setfont\smallsl\slshape{9}{1000} -\setfont\smallsf\sfshape{9}{1000} -\setfont\smallsc\scshape{10}{900} -\setfont\smallttsl\ttslshape{10}{900} +\setfont\smallrm\rmshape{9}{1000}{OT1} +\setfont\smalltt\ttshape{9}{1000}{OT1TT} +\setfont\smallbf\bfshape{10}{900}{OT1} +\setfont\smallit\itshape{9}{1000}{OT1IT} +\setfont\smallsl\slshape{9}{1000}{OT1} +\setfont\smallsf\sfshape{9}{1000}{OT1} +\setfont\smallsc\scshape{10}{900}{OT1} +\setfont\smallttsl\ttslshape{10}{900}{OT1TT} \font\smalli=cmmi9 \font\smallsy=cmsy9 +\def\smallecsize{0900} % Fonts for small examples (8pt). \def\smallernominalsize{8pt} -\setfont\smallerrm\rmshape{8}{1000} -\setfont\smallertt\ttshape{8}{1000} -\setfont\smallerbf\bfshape{10}{800} -\setfont\smallerit\itshape{8}{1000} -\setfont\smallersl\slshape{8}{1000} -\setfont\smallersf\sfshape{8}{1000} -\setfont\smallersc\scshape{10}{800} -\setfont\smallerttsl\ttslshape{10}{800} +\setfont\smallerrm\rmshape{8}{1000}{OT1} +\setfont\smallertt\ttshape{8}{1000}{OT1TT} +\setfont\smallerbf\bfshape{10}{800}{OT1} +\setfont\smallerit\itshape{8}{1000}{OT1IT} +\setfont\smallersl\slshape{8}{1000}{OT1} +\setfont\smallersf\sfshape{8}{1000}{OT1} +\setfont\smallersc\scshape{10}{800}{OT1} +\setfont\smallerttsl\ttslshape{10}{800}{OT1TT} \font\smalleri=cmmi8 \font\smallersy=cmsy8 +\def\smallerecsize{0800} % Fonts for title page (20.4pt): \def\titlenominalsize{20pt} -\setfont\titlerm\rmbshape{12}{\magstep3} -\setfont\titleit\itbshape{10}{\magstep4} -\setfont\titlesl\slbshape{10}{\magstep4} -\setfont\titlett\ttbshape{12}{\magstep3} -\setfont\titlettsl\ttslshape{10}{\magstep4} -\setfont\titlesf\sfbshape{17}{\magstep1} +\setfont\titlerm\rmbshape{12}{\magstep3}{OT1} +\setfont\titleit\itbshape{10}{\magstep4}{OT1IT} +\setfont\titlesl\slbshape{10}{\magstep4}{OT1} +\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT} +\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT} +\setfont\titlesf\sfbshape{17}{\magstep1}{OT1} \let\titlebf=\titlerm -\setfont\titlesc\scbshape{10}{\magstep4} +\setfont\titlesc\scbshape{10}{\magstep4}{OT1} \font\titlei=cmmi12 scaled \magstep3 \font\titlesy=cmsy10 scaled \magstep4 \def\authorrm{\secrm} \def\authortt{\sectt} +\def\titleecsize{2074} % Chapter (and unnumbered) fonts (17.28pt). \def\chapnominalsize{17pt} -\setfont\chaprm\rmbshape{12}{\magstep2} -\setfont\chapit\itbshape{10}{\magstep3} -\setfont\chapsl\slbshape{10}{\magstep3} -\setfont\chaptt\ttbshape{12}{\magstep2} -\setfont\chapttsl\ttslshape{10}{\magstep3} -\setfont\chapsf\sfbshape{17}{1000} +\setfont\chaprm\rmbshape{12}{\magstep2}{OT1} +\setfont\chapit\itbshape{10}{\magstep3}{OT1IT} +\setfont\chapsl\slbshape{10}{\magstep3}{OT1} +\setfont\chaptt\ttbshape{12}{\magstep2}{OT1TT} +\setfont\chapttsl\ttslshape{10}{\magstep3}{OT1TT} +\setfont\chapsf\sfbshape{17}{1000}{OT1} \let\chapbf=\chaprm -\setfont\chapsc\scbshape{10}{\magstep3} +\setfont\chapsc\scbshape{10}{\magstep3}{OT1} \font\chapi=cmmi12 scaled \magstep2 \font\chapsy=cmsy10 scaled \magstep3 +\def\chapecsize{1728} % Section fonts (14.4pt). \def\secnominalsize{14pt} -\setfont\secrm\rmbshape{12}{\magstep1} -\setfont\secit\itbshape{10}{\magstep2} -\setfont\secsl\slbshape{10}{\magstep2} -\setfont\sectt\ttbshape{12}{\magstep1} -\setfont\secttsl\ttslshape{10}{\magstep2} -\setfont\secsf\sfbshape{12}{\magstep1} +\setfont\secrm\rmbshape{12}{\magstep1}{OT1} +\setfont\secit\itbshape{10}{\magstep2}{OT1IT} +\setfont\secsl\slbshape{10}{\magstep2}{OT1} +\setfont\sectt\ttbshape{12}{\magstep1}{OT1TT} +\setfont\secttsl\ttslshape{10}{\magstep2}{OT1TT} +\setfont\secsf\sfbshape{12}{\magstep1}{OT1} \let\secbf\secrm -\setfont\secsc\scbshape{10}{\magstep2} +\setfont\secsc\scbshape{10}{\magstep2}{OT1} \font\seci=cmmi12 scaled \magstep1 \font\secsy=cmsy10 scaled \magstep2 +\def\sececsize{1440} % Subsection fonts (13.15pt). \def\ssecnominalsize{13pt} -\setfont\ssecrm\rmbshape{12}{\magstephalf} -\setfont\ssecit\itbshape{10}{1315} -\setfont\ssecsl\slbshape{10}{1315} -\setfont\ssectt\ttbshape{12}{\magstephalf} -\setfont\ssecttsl\ttslshape{10}{1315} -\setfont\ssecsf\sfbshape{12}{\magstephalf} +\setfont\ssecrm\rmbshape{12}{\magstephalf}{OT1} +\setfont\ssecit\itbshape{10}{1315}{OT1IT} +\setfont\ssecsl\slbshape{10}{1315}{OT1} +\setfont\ssectt\ttbshape{12}{\magstephalf}{OT1TT} +\setfont\ssecttsl\ttslshape{10}{1315}{OT1TT} +\setfont\ssecsf\sfbshape{12}{\magstephalf}{OT1} \let\ssecbf\ssecrm -\setfont\ssecsc\scbshape{10}{1315} +\setfont\ssecsc\scbshape{10}{1315}{OT1} \font\sseci=cmmi12 scaled \magstephalf \font\ssecsy=cmsy10 scaled 1315 +\def\ssececsize{1200} % Reduced fonts for @acro in text (10pt). \def\reducednominalsize{10pt} -\setfont\reducedrm\rmshape{10}{1000} -\setfont\reducedtt\ttshape{10}{1000} -\setfont\reducedbf\bfshape{10}{1000} -\setfont\reducedit\itshape{10}{1000} -\setfont\reducedsl\slshape{10}{1000} -\setfont\reducedsf\sfshape{10}{1000} -\setfont\reducedsc\scshape{10}{1000} -\setfont\reducedttsl\ttslshape{10}{1000} +\setfont\reducedrm\rmshape{10}{1000}{OT1} +\setfont\reducedtt\ttshape{10}{1000}{OT1TT} +\setfont\reducedbf\bfshape{10}{1000}{OT1} +\setfont\reducedit\itshape{10}{1000}{OT1IT} +\setfont\reducedsl\slshape{10}{1000}{OT1} +\setfont\reducedsf\sfshape{10}{1000}{OT1} +\setfont\reducedsc\scshape{10}{1000}{OT1} +\setfont\reducedttsl\ttslshape{10}{1000}{OT1TT} \font\reducedi=cmmi10 \font\reducedsy=cmsy10 +\def\reducedecsize{1000} + +% reset the current fonts +\textfonts +\rm +} % end of 11pt text font size definitions + + +% Definitions to make the main text be 10pt Computer Modern, with +% section, chapter, etc., sizes following suit. This is for the GNU +% Press printing of the Emacs 22 manual. Maybe other manuals in the +% future. Used with @smallbook, which sets the leading to 12pt. +% +\def\definetextfontsizex{% +% Text fonts (10pt). +\def\textnominalsize{10pt} +\edef\mainmagstep{1000} +\setfont\textrm\rmshape{10}{\mainmagstep}{OT1} +\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT} +\setfont\textbf\bfshape{10}{\mainmagstep}{OT1} +\setfont\textit\itshape{10}{\mainmagstep}{OT1IT} +\setfont\textsl\slshape{10}{\mainmagstep}{OT1} +\setfont\textsf\sfshape{10}{\mainmagstep}{OT1} +\setfont\textsc\scshape{10}{\mainmagstep}{OT1} +\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT} +\font\texti=cmmi10 scaled \mainmagstep +\font\textsy=cmsy10 scaled \mainmagstep +\def\textecsize{1000} + +% A few fonts for @defun names and args. +\setfont\defbf\bfshape{10}{\magstephalf}{OT1} +\setfont\deftt\ttshape{10}{\magstephalf}{OT1TT} +\setfont\defttsl\ttslshape{10}{\magstephalf}{OT1TT} +\def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf} + +% Fonts for indices, footnotes, small examples (9pt). +\def\smallnominalsize{9pt} +\setfont\smallrm\rmshape{9}{1000}{OT1} +\setfont\smalltt\ttshape{9}{1000}{OT1TT} +\setfont\smallbf\bfshape{10}{900}{OT1} +\setfont\smallit\itshape{9}{1000}{OT1IT} +\setfont\smallsl\slshape{9}{1000}{OT1} +\setfont\smallsf\sfshape{9}{1000}{OT1} +\setfont\smallsc\scshape{10}{900}{OT1} +\setfont\smallttsl\ttslshape{10}{900}{OT1TT} +\font\smalli=cmmi9 +\font\smallsy=cmsy9 +\def\smallecsize{0900} + +% Fonts for small examples (8pt). +\def\smallernominalsize{8pt} +\setfont\smallerrm\rmshape{8}{1000}{OT1} +\setfont\smallertt\ttshape{8}{1000}{OT1TT} +\setfont\smallerbf\bfshape{10}{800}{OT1} +\setfont\smallerit\itshape{8}{1000}{OT1IT} +\setfont\smallersl\slshape{8}{1000}{OT1} +\setfont\smallersf\sfshape{8}{1000}{OT1} +\setfont\smallersc\scshape{10}{800}{OT1} +\setfont\smallerttsl\ttslshape{10}{800}{OT1TT} +\font\smalleri=cmmi8 +\font\smallersy=cmsy8 +\def\smallerecsize{0800} + +% Fonts for title page (20.4pt): +\def\titlenominalsize{20pt} +\setfont\titlerm\rmbshape{12}{\magstep3}{OT1} +\setfont\titleit\itbshape{10}{\magstep4}{OT1IT} +\setfont\titlesl\slbshape{10}{\magstep4}{OT1} +\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT} +\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT} +\setfont\titlesf\sfbshape{17}{\magstep1}{OT1} +\let\titlebf=\titlerm +\setfont\titlesc\scbshape{10}{\magstep4}{OT1} +\font\titlei=cmmi12 scaled \magstep3 +\font\titlesy=cmsy10 scaled \magstep4 +\def\authorrm{\secrm} +\def\authortt{\sectt} +\def\titleecsize{2074} + +% Chapter fonts (14.4pt). +\def\chapnominalsize{14pt} +\setfont\chaprm\rmbshape{12}{\magstep1}{OT1} +\setfont\chapit\itbshape{10}{\magstep2}{OT1IT} +\setfont\chapsl\slbshape{10}{\magstep2}{OT1} +\setfont\chaptt\ttbshape{12}{\magstep1}{OT1TT} +\setfont\chapttsl\ttslshape{10}{\magstep2}{OT1TT} +\setfont\chapsf\sfbshape{12}{\magstep1}{OT1} +\let\chapbf\chaprm +\setfont\chapsc\scbshape{10}{\magstep2}{OT1} +\font\chapi=cmmi12 scaled \magstep1 +\font\chapsy=cmsy10 scaled \magstep2 +\def\chapecsize{1440} + +% Section fonts (12pt). +\def\secnominalsize{12pt} +\setfont\secrm\rmbshape{12}{1000}{OT1} +\setfont\secit\itbshape{10}{\magstep1}{OT1IT} +\setfont\secsl\slbshape{10}{\magstep1}{OT1} +\setfont\sectt\ttbshape{12}{1000}{OT1TT} +\setfont\secttsl\ttslshape{10}{\magstep1}{OT1TT} +\setfont\secsf\sfbshape{12}{1000}{OT1} +\let\secbf\secrm +\setfont\secsc\scbshape{10}{\magstep1}{OT1} +\font\seci=cmmi12 +\font\secsy=cmsy10 scaled \magstep1 +\def\sececsize{1200} + +% Subsection fonts (10pt). +\def\ssecnominalsize{10pt} +\setfont\ssecrm\rmbshape{10}{1000}{OT1} +\setfont\ssecit\itbshape{10}{1000}{OT1IT} +\setfont\ssecsl\slbshape{10}{1000}{OT1} +\setfont\ssectt\ttbshape{10}{1000}{OT1TT} +\setfont\ssecttsl\ttslshape{10}{1000}{OT1TT} +\setfont\ssecsf\sfbshape{10}{1000}{OT1} +\let\ssecbf\ssecrm +\setfont\ssecsc\scbshape{10}{1000}{OT1} +\font\sseci=cmmi10 +\font\ssecsy=cmsy10 +\def\ssececsize{1000} + +% Reduced fonts for @acro in text (9pt). +\def\reducednominalsize{9pt} +\setfont\reducedrm\rmshape{9}{1000}{OT1} +\setfont\reducedtt\ttshape{9}{1000}{OT1TT} +\setfont\reducedbf\bfshape{10}{900}{OT1} +\setfont\reducedit\itshape{9}{1000}{OT1IT} +\setfont\reducedsl\slshape{9}{1000}{OT1} +\setfont\reducedsf\sfshape{9}{1000}{OT1} +\setfont\reducedsc\scshape{10}{900}{OT1} +\setfont\reducedttsl\ttslshape{10}{900}{OT1TT} +\font\reducedi=cmmi9 +\font\reducedsy=cmsy9 +\def\reducedecsize{0900} + +% reduce space between paragraphs +\divide\parskip by 2 + +% reset the current fonts +\textfonts +\rm +} % end of 10pt text font size definitions + + +% We provide the user-level command +% @fonttextsize 10 +% (or 11) to redefine the text font size. pt is assumed. +% +\def\xword{10} +\def\xiword{11} +% +\parseargdef\fonttextsize{% + \def\textsizearg{#1}% + \wlog{doing @fonttextsize \textsizearg}% + % + % Set \globaldefs so that documents can use this inside @tex, since + % makeinfo 4.8 does not support it, but we need it nonetheless. + % + \begingroup \globaldefs=1 + \ifx\textsizearg\xword \definetextfontsizex + \else \ifx\textsizearg\xiword \definetextfontsizexi + \else + \errhelp=\EMsimple + \errmessage{@fonttextsize only supports `10' or `11', not `\textsizearg'} + \fi\fi + \endgroup +} + % In order for the font changes to affect most math symbols and letters, % we have to define the \textfont of the standard families. Since @@ -1757,7 +2346,7 @@ % Set up the default fonts, so we can use them for creating boxes. % -\textfonts \rm +\definetextfontsizexi % Define these so they can be easily changed for other fonts. \def\angleleft{$\langle$} @@ -1767,10 +2356,10 @@ \newcount\fontdepth \fontdepth=0 % Fonts for short table of contents. -\setfont\shortcontrm\rmshape{12}{1000} -\setfont\shortcontbf\bfshape{10}{\magstep1} % no cmb12 -\setfont\shortcontsl\slshape{12}{1000} -\setfont\shortconttt\ttshape{12}{1000} +\setfont\shortcontrm\rmshape{12}{1000}{OT1} +\setfont\shortcontbf\bfshape{10}{\magstep1}{OT1} % no cmb12 +\setfont\shortcontsl\slshape{12}{1000}{OT1} +\setfont\shortconttt\ttshape{12}{1000}{OT1TT} %% Add scribe-like font environments, plus @l for inline lisp (usually sans %% serif) and @ii for TeX italic @@ -1833,7 +2422,7 @@ \null } \def\samp#1{`\tclose{#1}'\null} -\setfont\keyrm\rmshape{8}{1000} +\setfont\keyrm\rmshape{8}{1000}{OT1} \font\keysy=cmsy9 \def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{% @@ -1841,6 +2430,7 @@ \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}% \kern-0.4pt\hrule}% \kern-.06em\raise0.4pt\hbox{\angleright}}}} +\def\key #1{{\nohyphenation \uppercase{#1}}\null} % The old definition, with no lozenge: %\def\key #1{{\ttsl \nohyphenation \uppercase{#1}}\null} \def\ctrl #1{{\tt \rawbackslash \hat}#1} @@ -1882,11 +2472,14 @@ % and arrange explicitly to hyphenate at a dash. % -- rms. { - \catcode`\-=\active - \catcode`\_=\active + \catcode`\-=\active \catcode`\_=\active + \catcode`\'=\active \catcode`\`=\active % \global\def\code{\begingroup - \catcode`\-=\active \catcode`\_=\active + \catcode\rquoteChar=\active \catcode\lquoteChar=\active + \let'\codequoteright \let`\codequoteleft + % + \catcode\dashChar=\active \catcode\underChar=\active \ifallowcodebreaks \let-\codedash \let_\codeunder @@ -1972,6 +2565,13 @@ \let\env=\code \let\command=\code +% @clicksequence{File @click{} Open ...} +\def\clicksequence#1{\begingroup #1\endgroup} + +% @clickstyle @arrow (by default) +\parseargdef\clickstyle{\def\click{#1}} +\def\click{\arrow} + % @uref (abbreviation for `urlref') takes an optional (comma-separated) % second argument specifying the text to display and an optional third % arg as text to display instead of (rather than in addition to) the url @@ -2122,6 +2722,35 @@ \thiseurofont } +% Hacks for glyphs from the EC fonts similar to \euro. We don't +% use \let for the aliases, because sometimes we redefine the original +% macro, and the alias should reflect the redefinition. +\def\guillemetleft{{\ecfont \char"13}} +\def\guillemotleft{\guillemetleft} +\def\guillemetright{{\ecfont \char"14}} +\def\guillemotright{\guillemetright} +\def\guilsinglleft{{\ecfont \char"0E}} +\def\guilsinglright{{\ecfont \char"0F}} +\def\quotedblbase{{\ecfont \char"12}} +\def\quotesinglbase{{\ecfont \char"0D}} +% +\def\ecfont{% + % We can't distinguish serif/sanserif and italic/slanted, but this + % is used for crude hacks anyway (like adding French and German + % quotes to documents typeset with CM, where we lose kerning), so + % hopefully nobody will notice/care. + \edef\ecsize{\csname\curfontsize ecsize\endcsname}% + \edef\nominalsize{\csname\curfontsize nominalsize\endcsname}% + \ifx\curfontstyle\bfstylename + % bold: + \font\thisecfont = ecb\ifusingit{i}{x}\ecsize \space at \nominalsize + \else + % regular: + \font\thisecfont = ec\ifusingit{ti}{rm}\ecsize \space at \nominalsize + \fi + \thisecfont +} + % @registeredsymbol - R in a circle. The font for the R should really % be smaller yet, but lllsize is the best we can do for now. % Adapted from the plain.tex definition of \copyright. @@ -2132,6 +2761,10 @@ }$% } +% @textdegree - the normal degrees sign. +% +\def\textdegree{$^\circ$} + % Laurent Siebenmann reports \Orb undefined with: % Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38 % so we'll define it if necessary. @@ -2140,6 +2773,12 @@ \def\Orb{\mathhexbox20D} \fi +% Quotes. +\chardef\quotedblleft="5C +\chardef\quotedblright=`\" +\chardef\quoteleft=`\` +\chardef\quoteright=`\' + \message{page headings,} @@ -2303,12 +2942,39 @@ % % Leave some space for the footline. Hopefully ok to assume % @evenfooting will not be used by itself. - \global\advance\pageheight by -\baselineskip - \global\advance\vsize by -\baselineskip + \global\advance\pageheight by -12pt + \global\advance\vsize by -12pt } \parseargdef\everyfooting{\oddfootingxxx{#1}\evenfootingxxx{#1}} +% @evenheadingmarks top \thischapter <- chapter at the top of a page +% @evenheadingmarks bottom \thischapter <- chapter at the bottom of a page +% +% The same set of arguments for: +% +% @oddheadingmarks +% @evenfootingmarks +% @oddfootingmarks +% @everyheadingmarks +% @everyfootingmarks + +\def\evenheadingmarks{\headingmarks{even}{heading}} +\def\oddheadingmarks{\headingmarks{odd}{heading}} +\def\evenfootingmarks{\headingmarks{even}{footing}} +\def\oddfootingmarks{\headingmarks{odd}{footing}} +\def\everyheadingmarks#1 {\headingmarks{even}{heading}{#1} + \headingmarks{odd}{heading}{#1} } +\def\everyfootingmarks#1 {\headingmarks{even}{footing}{#1} + \headingmarks{odd}{footing}{#1} } +% #1 = even/odd, #2 = heading/footing, #3 = top/bottom. +\def\headingmarks#1#2#3 {% + \expandafter\let\expandafter\temp \csname get#3headingmarks\endcsname + \global\expandafter\let\csname get#1#2marks\endcsname \temp +} + +\everyheadingmarks bottom +\everyfootingmarks bottom % @headings double turns headings on for double-sided printing. % @headings single turns headings on for single-sided printing. @@ -2963,6 +3629,7 @@ \def\doignore#1{\begingroup % Scan in ``verbatim'' mode: + \obeylines \catcode`\@ = \other \catcode`\{ = \other \catcode`\} = \other @@ -2983,16 +3650,16 @@ \gdef\dodoignore#1{% % #1 contains the command name as a string, e.g., `ifinfo'. % - % Define a command to find the next `@end #1', which must be on a line - % by itself. - \long\def\doignoretext##1^^M@end #1{\doignoretextyyy##1^^M@#1\_STOP_}% + % Define a command to find the next `@end #1'. + \long\def\doignoretext##1^^M@end #1{% + \doignoretextyyy##1^^M@#1\_STOP_}% + % % And this command to find another #1 command, at the beginning of a % line. (Otherwise, we would consider a line `@c @ifset', for % example, to count as an @ifset for nesting.) \long\def\doignoretextyyy##1^^M@#1##2\_STOP_{\doignoreyyy{##2}\_STOP_}% % % And now expand that command. - \obeylines % \doignoretext ^^M% }% } @@ -3022,7 +3689,12 @@ } % Finish off ignored text. -\def\enddoignore{\endgroup\ignorespaces} +{ \obeylines% + % Ignore anything after the last `@end #1'; this matters in verbatim + % environments, where otherwise the newline after an ignored conditional + % would result in a blank line in the output. + \gdef\enddoignore#1^^M{\endgroup\ignorespaces}% +} % @set VAR sets the variable VAR to an empty value. @@ -3222,34 +3894,41 @@ % we have to laboriously prevent expansion for those that we don't. % \def\indexdummies{% + \escapechar = `\\ % use backslash in output files. \def\@{@}% change to @@ when we switch to @ as escape char in index files. \def\ {\realbackslash\space }% + % % Need these in case \tex is in effect and \{ is a \delimiter again. % But can't use \lbracecmd and \rbracecmd because texindex assumes % braces and backslashes are used only as delimiters. \let\{ = \mylbrace \let\} = \myrbrace % - % \definedummyword defines \#1 as \realbackslash #1\space, thus - % effectively preventing its expansion. This is used only for control - % words, not control letters, because the \space would be incorrect - % for control characters, but is needed to separate the control word - % from whatever follows. - % - % For control letters, we have \definedummyletter, which omits the - % space. - % - % These can be used both for control words that take an argument and - % those that do not. If it is followed by {arg} in the input, then - % that will dutifully get written to the index (or wherever). - % - \def\definedummyword##1{% - \expandafter\def\csname ##1\endcsname{\realbackslash ##1\space}% - }% - \def\definedummyletter##1{% - \expandafter\def\csname ##1\endcsname{\realbackslash ##1}% - }% - \let\definedummyaccent\definedummyletter + % I don't entirely understand this, but when an index entry is + % generated from a macro call, the \endinput which \scanmacro inserts + % causes processing to be prematurely terminated. This is, + % apparently, because \indexsorttmp is fully expanded, and \endinput + % is an expandable command. The redefinition below makes \endinput + % disappear altogether for that purpose -- although logging shows that + % processing continues to some further point. On the other hand, it + % seems \endinput does not hurt in the printed index arg, since that + % is still getting written without apparent harm. + % + % Sample source (mac-idx3.tex, reported by Graham Percival to + % help-texinfo, 22may06): + % @macro funindex {WORD} + % @findex xyz + % @end macro + % ... + % @funindex commtest + % + % The above is not enough to reproduce the bug, but it gives the flavor. + % + % Sample whatsit resulting: + % .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}} + % + % So: + \let\endinput = \empty % % Do the redefinitions. \commondummies @@ -3266,147 +3945,162 @@ \let\{ = \lbraceatcmd \let\} = \rbraceatcmd % - % (See comments in \indexdummies.) - \def\definedummyword##1{% - \expandafter\def\csname ##1\endcsname{@##1\space}% - }% - \def\definedummyletter##1{% - \expandafter\def\csname ##1\endcsname{@##1}% - }% - \let\definedummyaccent\definedummyletter - % % Do the redefinitions. \commondummies + \otherbackslash } -% Called from \indexdummies and \atdummies. \definedummyword and -% \definedummyletter must be defined first. +% Called from \indexdummies and \atdummies. % \def\commondummies{% % - \normalturnoffactive + % \definedummyword defines \#1 as \string\#1\space, thus effectively + % preventing its expansion. This is used only for control% words, + % not control letters, because the \space would be incorrect for + % control characters, but is needed to separate the control word + % from whatever follows. + % + % For control letters, we have \definedummyletter, which omits the + % space. + % + % These can be used both for control words that take an argument and + % those that do not. If it is followed by {arg} in the input, then + % that will dutifully get written to the index (or wherever). + % + \def\definedummyword ##1{\def##1{\string##1\space}}% + \def\definedummyletter##1{\def##1{\string##1}}% + \let\definedummyaccent\definedummyletter % \commondummiesnofonts % - \definedummyletter{_}% + \definedummyletter\_% % % Non-English letters. - \definedummyword{AA}% - \definedummyword{AE}% - \definedummyword{L}% - \definedummyword{OE}% - \definedummyword{O}% - \definedummyword{aa}% - \definedummyword{ae}% - \definedummyword{l}% - \definedummyword{oe}% - \definedummyword{o}% - \definedummyword{ss}% - \definedummyword{exclamdown}% - \definedummyword{questiondown}% - \definedummyword{ordf}% - \definedummyword{ordm}% + \definedummyword\AA + \definedummyword\AE + \definedummyword\L + \definedummyword\OE + \definedummyword\O + \definedummyword\aa + \definedummyword\ae + \definedummyword\l + \definedummyword\oe + \definedummyword\o + \definedummyword\ss + \definedummyword\exclamdown + \definedummyword\questiondown + \definedummyword\ordf + \definedummyword\ordm % % Although these internal commands shouldn't show up, sometimes they do. - \definedummyword{bf}% - \definedummyword{gtr}% - \definedummyword{hat}% - \definedummyword{less}% - \definedummyword{sf}% - \definedummyword{sl}% - \definedummyword{tclose}% - \definedummyword{tt}% + \definedummyword\bf + \definedummyword\gtr + \definedummyword\hat + \definedummyword\less + \definedummyword\sf + \definedummyword\sl + \definedummyword\tclose + \definedummyword\tt % - \definedummyword{LaTeX}% - \definedummyword{TeX}% + \definedummyword\LaTeX + \definedummyword\TeX % % Assorted special characters. - \definedummyword{bullet}% - \definedummyword{comma}% - \definedummyword{copyright}% - \definedummyword{registeredsymbol}% - \definedummyword{dots}% - \definedummyword{enddots}% - \definedummyword{equiv}% - \definedummyword{error}% - \definedummyword{euro}% - \definedummyword{expansion}% - \definedummyword{minus}% - \definedummyword{pounds}% - \definedummyword{point}% - \definedummyword{print}% - \definedummyword{result}% + \definedummyword\bullet + \definedummyword\comma + \definedummyword\copyright + \definedummyword\registeredsymbol + \definedummyword\dots + \definedummyword\enddots + \definedummyword\equiv + \definedummyword\error + \definedummyword\euro + \definedummyword\guillemetleft + \definedummyword\guillemetright + \definedummyword\guilsinglleft + \definedummyword\guilsinglright + \definedummyword\expansion + \definedummyword\minus + \definedummyword\pounds + \definedummyword\point + \definedummyword\print + \definedummyword\quotedblbase + \definedummyword\quotedblleft + \definedummyword\quotedblright + \definedummyword\quoteleft + \definedummyword\quoteright + \definedummyword\quotesinglbase + \definedummyword\result + \definedummyword\textdegree + % + % We want to disable all macros so that they are not expanded by \write. + \macrolist + % + \normalturnoffactive % % Handle some cases of @value -- where it does not contain any % (non-fully-expandable) commands. \makevalueexpandable - % - % Normal spaces, not active ones. - \unsepspaces - % - % No macro expansion. - \turnoffmacros } % \commondummiesnofonts: common to \commondummies and \indexnofonts. % -% Better have this without active chars. -{ - \catcode`\~=\other - \gdef\commondummiesnofonts{% - % Control letters and accents. - \definedummyletter{!}% - \definedummyaccent{"}% - \definedummyaccent{'}% - \definedummyletter{*}% - \definedummyaccent{,}% - \definedummyletter{.}% - \definedummyletter{/}% - \definedummyletter{:}% - \definedummyaccent{=}% - \definedummyletter{?}% - \definedummyaccent{^}% - \definedummyaccent{`}% - \definedummyaccent{~}% - \definedummyword{u}% - \definedummyword{v}% - \definedummyword{H}% - \definedummyword{dotaccent}% - \definedummyword{ringaccent}% - \definedummyword{tieaccent}% - \definedummyword{ubaraccent}% - \definedummyword{udotaccent}% - \definedummyword{dotless}% - % - % Texinfo font commands. - \definedummyword{b}% - \definedummyword{i}% - \definedummyword{r}% - \definedummyword{sc}% - \definedummyword{t}% - % - % Commands that take arguments. - \definedummyword{acronym}% - \definedummyword{cite}% - \definedummyword{code}% - \definedummyword{command}% - \definedummyword{dfn}% - \definedummyword{emph}% - \definedummyword{env}% - \definedummyword{file}% - \definedummyword{kbd}% - \definedummyword{key}% - \definedummyword{math}% - \definedummyword{option}% - \definedummyword{samp}% - \definedummyword{strong}% - \definedummyword{tie}% - \definedummyword{uref}% - \definedummyword{url}% - \definedummyword{var}% - \definedummyword{verb}% - \definedummyword{w}% - } +\def\commondummiesnofonts{% + % Control letters and accents. + \definedummyletter\!% + \definedummyaccent\"% + \definedummyaccent\'% + \definedummyletter\*% + \definedummyaccent\,% + \definedummyletter\.% + \definedummyletter\/% + \definedummyletter\:% + \definedummyaccent\=% + \definedummyletter\?% + \definedummyaccent\^% + \definedummyaccent\`% + \definedummyaccent\~% + \definedummyword\u + \definedummyword\v + \definedummyword\H + \definedummyword\dotaccent + \definedummyword\ringaccent + \definedummyword\tieaccent + \definedummyword\ubaraccent + \definedummyword\udotaccent + \definedummyword\dotless + % + % Texinfo font commands. + \definedummyword\b + \definedummyword\i + \definedummyword\r + \definedummyword\sc + \definedummyword\t + % + % Commands that take arguments. + \definedummyword\acronym + \definedummyword\cite + \definedummyword\code + \definedummyword\command + \definedummyword\dfn + \definedummyword\emph + \definedummyword\env + \definedummyword\file + \definedummyword\kbd + \definedummyword\key + \definedummyword\math + \definedummyword\option + \definedummyword\pxref + \definedummyword\ref + \definedummyword\samp + \definedummyword\strong + \definedummyword\tie + \definedummyword\uref + \definedummyword\url + \definedummyword\var + \definedummyword\verb + \definedummyword\w + \definedummyword\xref } % \indexnofonts is used when outputting the strings to sort the index @@ -3416,13 +4110,9 @@ % \def\indexnofonts{% % Accent commands should become @asis. - \def\definedummyaccent##1{% - \expandafter\let\csname ##1\endcsname\asis - }% + \def\definedummyaccent##1{\let##1\asis}% % We can just ignore other control letters. - \def\definedummyletter##1{% - \expandafter\def\csname ##1\endcsname{}% - }% + \def\definedummyletter##1{\let##1\empty}% % Hopefully, all control words can become @asis. \let\definedummyword\definedummyaccent % @@ -3469,15 +4159,35 @@ \def\equiv{==}% \def\error{error}% \def\euro{euro}% + \def\guillemetleft{<<}% + \def\guillemetright{>>}% + \def\guilsinglleft{<}% + \def\guilsinglright{>}% \def\expansion{==>}% \def\minus{-}% \def\pounds{pounds}% \def\point{.}% \def\print{-|}% + \def\quotedblbase{"}% + \def\quotedblleft{"}% + \def\quotedblright{"}% + \def\quoteleft{`}% + \def\quoteright{'}% + \def\quotesinglbase{,}% \def\result{=>}% + \def\textdegree{degrees}% % - % Don't write macro names. - \emptyusermacros + % We need to get rid of all macros, leaving only the arguments (if present). + % Of course this is not nearly correct, but it is the best we can do for now. + % makeinfo does not expand macros in the argument to @deffn, which ends up + % writing an index entry, and texindex isn't prepared for an index sort entry + % that starts with \. + % + % Since macro invocations are followed by braces, we can just redefine them + % to take a single TeX argument. The case of a macro invocation that + % goes to end-of-line is not handled. + % + \macrolist } \let\indexbackslash=0 %overridden during \printindex. @@ -3505,11 +4215,7 @@ % \edef\writeto{\csname#1indfile\endcsname}% % - \ifvmode - \dosubindsanitize - \else - \dosubindwrite - \fi + \safewhatsit\dosubindwrite }% \fi } @@ -3524,7 +4230,6 @@ % % Remember, we are within a group. \indexdummies % Must do this here, since \bf, etc expand at this stage - \escapechar=`\\ \def\backslashcurfont{\indexbackslash}% \indexbackslash isn't defined now % so it will be output as is; and it will print as backslash. % @@ -3547,13 +4252,13 @@ \temp } -% Take care of unwanted page breaks: +% Take care of unwanted page breaks/skips around a whatsit: % % If a skip is the last thing on the list now, preserve it % by backing up by \lastskip, doing the \write, then inserting % the skip again. Otherwise, the whatsit generated by the -% \write will make \lastskip zero. The result is that sequences -% like this: +% \write or \pdfdest will make \lastskip zero. The result is that +% sequences like this: % @end defun % @tindex whatever % @defun ... @@ -3577,25 +4282,31 @@ % \edef\zeroskipmacro{\expandafter\the\csname z@skip\endcsname} % +\newskip\whatsitskip +\newcount\whatsitpenalty +% % ..., ready, GO: % -\def\dosubindsanitize{% +\def\safewhatsit#1{% +\ifhmode + #1% +\else % \lastskip and \lastpenalty cannot both be nonzero simultaneously. - \skip0 = \lastskip + \whatsitskip = \lastskip \edef\lastskipmacro{\the\lastskip}% - \count255 = \lastpenalty + \whatsitpenalty = \lastpenalty % % If \lastskip is nonzero, that means the last item was a % skip. And since a skip is discardable, that means this - % -\skip0 glue we're inserting is preceded by a + % -\whatsitskip glue we're inserting is preceded by a % non-discardable item, therefore it is not a potential % breakpoint, therefore no \nobreak needed. \ifx\lastskipmacro\zeroskipmacro \else - \vskip-\skip0 + \vskip-\whatsitskip \fi % - \dosubindwrite + #1% % \ifx\lastskipmacro\zeroskipmacro % If \lastskip was zero, perhaps the last item was a penalty, and @@ -3609,13 +4320,14 @@ % Description. % would allow a break between the index-whatever whatsit % and the "Description." paragraph. - \ifnum\count255>9999 \penalty\count255 \fi + \ifnum\whatsitpenalty>9999 \penalty\whatsitpenalty \fi \else % On the other hand, if we had a nonzero \lastskip, % this make-up glue would be preceded by a non-discardable item % (the whatsit from the \write), so we must insert a \nobreak. - \nobreak\vskip\skip0 + \nobreak\vskip\whatsitskip \fi +\fi } % The index entry written in the file actually looks like @@ -3658,6 +4370,7 @@ % \smallfonts \rm \tolerance = 9500 + \plainfrenchspacing \everypar = {}% don't want the \kern\-parindent from indentation suppression. % % See if the index file exists and is nonempty. @@ -3787,11 +4500,8 @@ % The following is kludged to not output a line of dots in the index if % there are no page numbers. The next person who breaks this will be % cursed by a Unix daemon. - \def\tempa{{\rm }}% - \def\tempb{#1}% - \edef\tempc{\tempa}% - \edef\tempd{\tempb}% - \ifx\tempc\tempd + \setbox\boxA = \hbox{#1}% + \ifdim\wd\boxA = 0pt \ % \else % @@ -3815,9 +4525,9 @@ \endgroup } -% Like \dotfill except takes at least 1 em. +% Like plain.tex's \dotfill, except uses up at least 1 em. \def\indexdotfill{\cleaders - \hbox{$\mathsurround=0pt \mkern1.5mu ${\it .}$ \mkern1.5mu$}\hskip 1em plus 1fill} + \hbox{$\mathsurround=0pt \mkern1.5mu.\mkern1.5mu$}\hskip 1em plus 1fill} \def\primary #1{\line{#1\hfil}} @@ -3927,6 +4637,34 @@ % % All done with double columns. \def\enddoublecolumns{% + % The following penalty ensures that the page builder is exercised + % _before_ we change the output routine. This is necessary in the + % following situation: + % + % The last section of the index consists only of a single entry. + % Before this section, \pagetotal is less than \pagegoal, so no + % break occurs before the last section starts. However, the last + % section, consisting of \initial and the single \entry, does not + % fit on the page and has to be broken off. Without the following + % penalty the page builder will not be exercised until \eject + % below, and by that time we'll already have changed the output + % routine to the \balancecolumns version, so the next-to-last + % double-column page will be processed with \balancecolumns, which + % is wrong: The two columns will go to the main vertical list, with + % the broken-off section in the recent contributions. As soon as + % the output routine finishes, TeX starts reconsidering the page + % break. The two columns and the broken-off section both fit on the + % page, because the two columns now take up only half of the page + % goal. When TeX sees \eject from below which follows the final + % section, it invokes the new output routine that we've set after + % \balancecolumns below; \onepageout will try to fit the two columns + % and the final section into the vbox of \pageheight (see + % \pagebody), causing an overfull box. + % + % Note that glue won't work here, because glue does not exercise the + % page builder, unlike penalties (see The TeXbook, pp. 280-281). + \penalty0 + % \output = {% % Split the last of the double-column material. Leave it on the % current page, no automatic page break. @@ -4036,11 +4774,15 @@ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} -% Each @chapter defines this as the name of the chapter. -% page headings and footings can use it. @section does likewise. -% However, they are not reliable, because we don't use marks. +% Each @chapter defines these (using marks) as the number+name, number +% and name of the chapter. Page headings and footings can use +% these. @section does likewise. \def\thischapter{} +\def\thischapternum{} +\def\thischaptername{} \def\thissection{} +\def\thissectionnum{} +\def\thissectionname{} \newcount\absseclevel % used to calculate proper heading level \newcount\secbase\secbase=0 % @raisesections/@lowersections modify this count @@ -4341,7 +5083,20 @@ \def\chapbreak{\dobreak \chapheadingskip {-4000}} \def\chappager{\par\vfill\supereject} -\def\chapoddpage{\chappager \ifodd\pageno \else \hbox to 0pt{} \chappager\fi} +% Because \domark is called before \chapoddpage, the filler page will +% get the headings for the next chapter, which is wrong. But we don't +% care -- we just disable all headings on the filler page. +\def\chapoddpage{% + \chappager + \ifodd\pageno \else + \begingroup + \evenheadline={\hfil}\evenfootline={\hfil}% + \oddheadline={\hfil}\oddfootline={\hfil}% + \hbox to 0pt{}% + \chappager + \endgroup + \fi +} \def\setchapternewpage #1 {\csname CHAPPAG#1\endcsname} @@ -4375,41 +5130,72 @@ \def\Yappendixkeyword{Yappendix} % \def\chapmacro#1#2#3{% + % Insert the first mark before the heading break (see notes for \domark). + \let\prevchapterdefs=\lastchapterdefs + \let\prevsectiondefs=\lastsectiondefs + \gdef\lastsectiondefs{\gdef\thissectionname{}\gdef\thissectionnum{}% + \gdef\thissection{}}% + % + \def\temptype{#2}% + \ifx\temptype\Ynothingkeyword + \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}% + \gdef\thischapter{\thischaptername}}% + \else\ifx\temptype\Yomitfromtockeyword + \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}% + \gdef\thischapter{}}% + \else\ifx\temptype\Yappendixkeyword + \toks0={#1}% + \xdef\lastchapterdefs{% + \gdef\noexpand\thischaptername{\the\toks0}% + \gdef\noexpand\thischapternum{\appendixletter}% + \gdef\noexpand\thischapter{\putwordAppendix{} \noexpand\thischapternum: + \noexpand\thischaptername}% + }% + \else + \toks0={#1}% + \xdef\lastchapterdefs{% + \gdef\noexpand\thischaptername{\the\toks0}% + \gdef\noexpand\thischapternum{\the\chapno}% + \gdef\noexpand\thischapter{\putwordChapter{} \noexpand\thischapternum: + \noexpand\thischaptername}% + }% + \fi\fi\fi + % + % Output the mark. Pass it through \safewhatsit, to take care of + % the preceding space. + \safewhatsit\domark + % + % Insert the chapter heading break. \pchapsepmacro + % + % Now the second mark, after the heading break. No break points + % between here and the heading. + \let\prevchapterdefs=\lastchapterdefs + \let\prevsectiondefs=\lastsectiondefs + \domark + % {% \chapfonts \rm % - % Have to define \thissection before calling \donoderef, because the + % Have to define \lastsection before calling \donoderef, because the % xref code eventually uses it. On the other hand, it has to be called % after \pchapsepmacro, or the headline will change too soon. - \gdef\thissection{#1}% - \gdef\thischaptername{#1}% + \gdef\lastsection{#1}% % % Only insert the separating space if we have a chapter/appendix % number, and don't print the unnumbered ``number''. - \def\temptype{#2}% \ifx\temptype\Ynothingkeyword \setbox0 = \hbox{}% \def\toctype{unnchap}% - \gdef\thischapter{#1}% \else\ifx\temptype\Yomitfromtockeyword \setbox0 = \hbox{}% contents like unnumbered, but no toc entry \def\toctype{omit}% - \gdef\thischapter{}% \else\ifx\temptype\Yappendixkeyword \setbox0 = \hbox{\putwordAppendix{} #3\enspace}% \def\toctype{app}% - % We don't substitute the actual chapter name into \thischapter - % because we don't want its macros evaluated now. And we don't - % use \thissection because that changes with each section. - % - \xdef\thischapter{\putwordAppendix{} \appendixletter: - \noexpand\thischaptername}% \else \setbox0 = \hbox{#3\enspace}% \def\toctype{numchap}% - \xdef\thischapter{\putwordChapter{} \the\chapno: - \noexpand\thischaptername}% \fi\fi\fi % % Write the toc entry for this chapter. Must come before the @@ -4425,6 +5211,7 @@ \donoderef{#2}% % % Typeset the actual heading. + \nobreak % Avoid page breaks at the interline glue. \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright \hangindent=\wd0 \centerparametersmaybe \unhbox0 #1\par}% @@ -4487,45 +5274,95 @@ % the section type for xrefs (Ynumbered, Ynothing, Yappendix), #4 is the % section number. % +\def\seckeyword{sec} +% \def\sectionheading#1#2#3#4{% {% % Switch to the right set of fonts. \csname #2fonts\endcsname \rm % + \def\sectionlevel{#2}% + \def\temptype{#3}% + % + % Insert first mark before the heading break (see notes for \domark). + \let\prevsectiondefs=\lastsectiondefs + \ifx\temptype\Ynothingkeyword + \ifx\sectionlevel\seckeyword + \gdef\lastsectiondefs{\gdef\thissectionname{#1}\gdef\thissectionnum{}% + \gdef\thissection{\thissectionname}}% + \fi + \else\ifx\temptype\Yomitfromtockeyword + % Don't redefine \thissection. + \else\ifx\temptype\Yappendixkeyword + \ifx\sectionlevel\seckeyword + \toks0={#1}% + \xdef\lastsectiondefs{% + \gdef\noexpand\thissectionname{\the\toks0}% + \gdef\noexpand\thissectionnum{#4}% + \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum: + \noexpand\thissectionname}% + }% + \fi + \else + \ifx\sectionlevel\seckeyword + \toks0={#1}% + \xdef\lastsectiondefs{% + \gdef\noexpand\thissectionname{\the\toks0}% + \gdef\noexpand\thissectionnum{#4}% + \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum: + \noexpand\thissectionname}% + }% + \fi + \fi\fi\fi + % + % Output the mark. Pass it through \safewhatsit, to take care of + % the preceding space. + \safewhatsit\domark + % % Insert space above the heading. \csname #2headingbreak\endcsname % - % Only insert the space after the number if we have a section number. - \def\sectionlevel{#2}% - \def\temptype{#3}% + % Now the second mark, after the heading break. No break points + % between here and the heading. + \let\prevsectiondefs=\lastsectiondefs + \domark % + % Only insert the space after the number if we have a section number. \ifx\temptype\Ynothingkeyword \setbox0 = \hbox{}% \def\toctype{unn}% - \gdef\thissection{#1}% + \gdef\lastsection{#1}% \else\ifx\temptype\Yomitfromtockeyword % for @headings -- no section number, don't include in toc, - % and don't redefine \thissection. + % and don't redefine \lastsection. \setbox0 = \hbox{}% \def\toctype{omit}% \let\sectionlevel=\empty \else\ifx\temptype\Yappendixkeyword \setbox0 = \hbox{#4\enspace}% \def\toctype{app}% - \gdef\thissection{#1}% + \gdef\lastsection{#1}% \else \setbox0 = \hbox{#4\enspace}% \def\toctype{num}% - \gdef\thissection{#1}% + \gdef\lastsection{#1}% \fi\fi\fi % - % Write the toc entry (before \donoderef). See comments in \chfplain. + % Write the toc entry (before \donoderef). See comments in \chapmacro. \writetocentry{\toctype\sectionlevel}{#1}{#4}% % % Write the node reference (= pdf destination for pdftex). - % Again, see comments in \chfplain. + % Again, see comments in \chapmacro. \donoderef{#3}% % + % Interline glue will be inserted when the vbox is completed. + % That glue will be a valid breakpoint for the page, since it'll be + % preceded by a whatsit (usually from the \donoderef, or from the + % \writetocentry if there was no node). We don't want to allow that + % break, since then the whatsits could end up on page n while the + % section is on page n+1, thus toc/etc. are wrong. Debian bug 276000. + \nobreak + % % Output the actual section heading. \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright \hangindent=\wd0 % zero if no section number @@ -4584,11 +5421,11 @@ \fi % \iflinks - {\atdummies \turnoffactive + {\atdummies \edef\temp{% \write\tocfile{@#1entry{#2}{#3}{\lastnode}{\noexpand\folio}}}% \temp - } + }% \fi \fi % @@ -4623,7 +5460,7 @@ \def\readtocfile{% \setupdatafile \activecatcodes - \input \jobname.toc + \input \tocreadfilename } \newskip\contentsrightmargin \contentsrightmargin=1in @@ -4642,7 +5479,6 @@ % % Don't need to put `Contents' or `Short Contents' in the headline. % It is abundantly clear what they are. - \def\thischapter{}% \chapmacro{#1}{Yomitfromtoc}{}% % \savepageno = \pageno @@ -4654,11 +5490,16 @@ \ifnum \pageno>0 \global\pageno = \lastnegativepageno \fi } +% redefined for the two-volume lispref. We always output on +% \jobname.toc even if this is redefined. +% +\def\tocreadfilename{\jobname.toc} % Normal (long) toc. +% \def\contents{% \startcontents{\putwordTOC}% - \openin 1 \jobname.toc + \openin 1 \tocreadfilename\space \ifeof 1 \else \readtocfile \fi @@ -4696,7 +5537,7 @@ \let\numsubsubsecentry = \numsecentry \let\appsubsubsecentry = \numsecentry \let\unnsubsubsecentry = \numsecentry - \openin 1 \jobname.toc + \openin 1 \tocreadfilename\space \ifeof 1 \else \readtocfile \fi @@ -4823,14 +5664,15 @@ % @point{}, @result{}, @expansion{}, @print{}, @equiv{}. % -% Since these characters are used in examples, it should be an even number of +% Since these characters are used in examples, they should be an even number of % \tt widths. Each \tt character is 1en, so two makes it 1em. % \def\point{$\star$} -\def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}} -\def\expansion{\leavevmode\raise.1ex\hbox to 1em{\hfil$\mapsto$\hfil}} +\def\arrow{\leavevmode\raise.05ex\hbox to 1em{\hfil$\rightarrow$\hfil}} +\def\result{\leavevmode\raise.05ex\hbox to 1em{\hfil$\Rightarrow$\hfil}} +\def\expansion{\leavevmode\hbox to 1em{\hfil$\mapsto$\hfil}} \def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}} -\def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}} +\def\equiv{\leavevmode\hbox to 1em{\hfil$\ptexequiv$\hfil}} % The @error{} command. % Adapted from the TeXbook's \boxit. @@ -4840,7 +5682,7 @@ {\tentt \global\dimen0 = 3em}% Width of the box. \dimen2 = .55pt % Thickness of rules % The text. (`r' is open on the right, `e' somewhat less so on the left.) -\setbox0 = \hbox{\kern-.75pt \tensf error\kern-1.5pt} +\setbox0 = \hbox{\kern-.75pt \reducedsf error\kern-1.5pt} % \setbox\errorbox=\hbox to \dimen0{\hfil \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right. @@ -4888,6 +5730,7 @@ \let\/=\ptexslash \let\*=\ptexstar \let\t=\ptext + \expandafter \let\csname top\endcsname=\ptextop % outer \let\frenchspacing=\plainfrenchspacing % \def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}% @@ -4934,7 +5777,8 @@ \let\afterenvbreak = \aboveenvbreak -% \nonarrowing is a flag. If "set", @lisp etc don't narrow margins. +% \nonarrowing is a flag. If "set", @lisp etc don't narrow margins; it will +% also clear it, so that its embedded environments do the narrowing again. \let\nonarrowing=\relax % @cartouche ... @end cartouche: draw rectangle w/rounded corners around @@ -4971,7 +5815,7 @@ % each corner char, and rule thickness \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip % Flag to tell @lisp, etc., not to narrow margin. - \let\nonarrowing=\comment + \let\nonarrowing = t% \vbox\bgroup \baselineskip=0pt\parskip=0pt\lineskip=0pt \carttop @@ -5011,11 +5855,11 @@ \parskip = 0pt \parindent = 0pt \emergencystretch = 0pt % don't try to avoid overfull boxes - % @cartouche defines \nonarrowing to inhibit narrowing - % at next level down. \ifx\nonarrowing\relax \advance \leftskip by \lispnarrowing \exdentamount=\lispnarrowing + \else + \let\nonarrowing = \relax \fi \let\exdent=\nofillexdent } @@ -5030,12 +5874,18 @@ \let\SETdispenvsize\relax \def\setnormaldispenv{% \ifx\SETdispenvsize\smallword + % end paragraph for sake of leading, in case document has no blank + % line. This is redundant with what happens in \aboveenvbreak, but + % we need to do it before changing the fonts, and it's inconvenient + % to change the fonts afterward. + \ifnum \lastpenalty=10000 \else \endgraf \fi \smallexamplefonts \rm \fi } \def\setsmalldispenv{% \ifx\SETdispenvsize\nosmallword \else + \ifnum \lastpenalty=10000 \else \endgraf \fi \smallexamplefonts \rm \fi } @@ -5062,11 +5912,10 @@ % \maketwodispenvs {lisp}{example}{% \nonfillstart - \tt + \tt\quoteexpand \let\kbdfont = \kbdexamplefont % Allow @kbd to do something special. \gobble % eat return } - % @display/@smalldisplay: same as @lisp except keep current font. % \makedispenv {display}{% @@ -5115,6 +5964,7 @@ \advance\leftskip by \lispnarrowing \advance\rightskip by \lispnarrowing \exdentamount = \lispnarrowing + \else \let\nonarrowing = \relax \fi \parsearg\quotationlabel @@ -5193,6 +6043,34 @@ \newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount % \def\starttabbox{\setbox0=\hbox\bgroup} + +% Allow an option to not replace quotes with a regular directed right +% quote/apostrophe (char 0x27), but instead use the undirected quote +% from cmtt (char 0x0d). The undirected quote is ugly, so don't make it +% the default, but it works for pasting with more pdf viewers (at least +% evince), the lilypond developers report. xpdf does work with the +% regular 0x27. +% +\def\codequoteright{% + \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax + \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax + '% + \else \char'15 \fi + \else \char'15 \fi +} +% +% and a similar option for the left quote char vs. a grave accent. +% Modern fonts display ASCII 0x60 as a grave accent, so some people like +% the code environments to do likewise. +% +\def\codequoteleft{% + \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax + \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax + `% + \else \char'22 \fi + \else \char'22 \fi +} +% \begingroup \catcode`\^^I=\active \gdef\tabexpand{% @@ -5205,15 +6083,25 @@ \wd0=\dimen0 \box0 \starttabbox }% } + \catcode`\'=\active + \gdef\rquoteexpand{\catcode\rquoteChar=\active \def'{\codequoteright}}% + % + \catcode`\`=\active + \gdef\lquoteexpand{\catcode\lquoteChar=\active \def`{\codequoteleft}}% + % + \gdef\quoteexpand{\rquoteexpand \lquoteexpand}% \endgroup + +% start the verbatim environment. \def\setupverbatim{% + \let\nonarrowing = t% \nonfillstart - \advance\leftskip by -\defbodyindent % Easiest (and conventionally used) font for verbatim \tt \def\par{\leavevmode\egroup\box0\endgraf}% \catcode`\`=\active \tabexpand + \quoteexpand % Respect line breaks, % print special symbols as themselves, and % make each space count @@ -5298,27 +6186,35 @@ \endgroup } + \message{defuns,} % @defun etc. \newskip\defbodyindent \defbodyindent=.4in \newskip\defargsindent \defargsindent=50pt \newskip\deflastargmargin \deflastargmargin=18pt +\newcount\defunpenalty % Start the processing of @deffn: \def\startdefun{% \ifnum\lastpenalty<10000 \medbreak + \defunpenalty=10003 % Will keep this @deffn together with the + % following @def command, see below. \else % If there are two @def commands in a row, we'll have a \nobreak, % which is there to keep the function description together with its % header. But if there's nothing but headers, we need to allow a % break somewhere. Check specifically for penalty 10002, inserted - % by \defargscommonending, instead of 10000, since the sectioning + % by \printdefunline, instead of 10000, since the sectioning % commands also insert a nobreak penalty, and we don't want to allow % a break between a section heading and a defun. - % - \ifnum\lastpenalty=10002 \penalty2000 \fi + % + % As a minor refinement, we avoid "club" headers by signalling + % with penalty of 10003 after the very first @deffn in the + % sequence (see above), and penalty of 10002 after any following + % @def command. + \ifnum\lastpenalty=10002 \penalty2000 \else \defunpenalty=10002 \fi % % Similarly, after a section heading, do not allow a break. % But do insert the glue. @@ -5336,7 +6232,7 @@ % % As above, allow line break if we have multiple x headers in a row. % It's not a great place, though. - \ifnum\lastpenalty=10002 \penalty3000 \fi + \ifnum\lastpenalty=10002 \penalty3000 \else \defunpenalty=10002 \fi % % And now, it's time to reuse the body of the original defun: \expandafter\gobbledefun#1% @@ -5354,7 +6250,7 @@ \advance\rightskip by 0pt plus 1fil \endgraf \nobreak\vskip -\parskip - \penalty 10002 % signal to \startdefun and \dodefunx + \penalty\defunpenalty % signal to \startdefun and \dodefunx % Some of the @defun-type tags do not enable magic parentheses, % rendering the following check redundant. But we don't optimize. \checkparencounts @@ -5623,12 +6519,14 @@ \ifnum\parencount=0 \else \badparencount \fi \ifnum\brackcount=0 \else \badbrackcount \fi } +% these should not use \errmessage; the glibc manual, at least, actually +% has such constructs (when documenting function pointers). \def\badparencount{% - \errmessage{Unbalanced parentheses in @def}% + \message{Warning: unbalanced parentheses in @def...}% \global\parencount=0 } \def\badbrackcount{% - \errmessage{Unbalanced square braces in @def}% + \message{Warning: unbalanced square brackets in @def...}% \global\brackcount=0 } @@ -5663,7 +6561,6 @@ \spaceisspace % % Append \endinput to make sure that TeX does not see the ending newline. - % % I've verified that it is necessary both for e-TeX and for ordinary TeX % --kasal, 29nov03 \scantokens{#1\endinput}% @@ -5678,8 +6575,19 @@ \newcount\paramno % Count of parameters \newtoks\macname % Macro name \newif\ifrecursive % Is it recursive? -\def\macrolist{} % List of all defined macros in the form - % \do\macro1\do\macro2... + +% List of all defined macros in the form +% \definedummyword\macro1\definedummyword\macro2... +% Currently is also contains all @aliases; the list can be split +% if there is a need. +\def\macrolist{} + +% Add the macro to \macrolist +\def\addtomacrolist#1{\expandafter \addtomacrolistxxx \csname#1\endcsname} +\def\addtomacrolistxxx#1{% + \toks0 = \expandafter{\macrolist\definedummyword#1}% + \xdef\macrolist{\the\toks0}% +} % Utility routines. % This does \let #1 = #2, with \csnames; that is, @@ -5713,6 +6621,10 @@ % all characters are catcode 10, 11 or 12, except \ which is active % (as in normal texinfo). It is necessary to change the definition of \. +% Non-ASCII encodings make 8-bit characters active, so un-activate +% them to avoid their expansion. Must do this non-globally, to +% confine the change to the current group. + % It's necessary to have hard CRs when the macro is executed. This is % done by making ^^M (\endlinechar) catcode 12 when reading the macro % body, and then making it the \newlinechar in \scanmacro. @@ -5727,6 +6639,7 @@ \catcode`\_=\other \catcode`\|=\other \catcode`\~=\other + \ifx\declaredencoding\ascii \else \setnonasciicharscatcodenonglobal\other \fi } \def\scanargctxt{% @@ -5777,10 +6690,7 @@ \else \errmessage{Macro name \the\macname\space already defined}\fi \global\cslet{macsave.\the\macname}{\the\macname}% \global\expandafter\let\csname ismacro.\the\macname\endcsname=1% - % Add the macroname to \macrolist - \toks0 = \expandafter{\macrolist\do}% - \xdef\macrolist{\the\toks0 - \expandafter\noexpand\csname\the\macname\endcsname}% + \addtomacrolist{\the\macname}% \fi \begingroup \macrobodyctxt \ifrecursive \expandafter\parsermacbody @@ -5794,7 +6704,7 @@ % Remove the macro name from \macrolist: \begingroup \expandafter\let\csname#1\endcsname \relax - \let\do\unmacrodo + \let\definedummyword\unmacrodo \xdef\macrolist{\macrolist}% \endgroup \else @@ -5806,10 +6716,10 @@ % macro definitions that have been changed to \relax. % \def\unmacrodo#1{% - \ifx#1\relax + \ifx #1\relax % remove this \else - \noexpand\do \noexpand #1% + \noexpand\definedummyword \noexpand#1% \fi } @@ -5922,30 +6832,11 @@ % {. If so it reads up to the closing }, if not, it reads the whole % line. Whatever was read is then fed to the next control sequence % as an argument (by \parsebrace or \parsearg) -\def\braceorline#1{\let\next=#1\futurelet\nchar\braceorlinexxx} +\def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx} \def\braceorlinexxx{% \ifx\nchar\bgroup\else \expandafter\parsearg - \fi \next} - -% We want to disable all macros during \shipout so that they are not -% expanded by \write. -\def\turnoffmacros{\begingroup \def\do##1{\let\noexpand##1=\relax}% - \edef\next{\macrolist}\expandafter\endgroup\next} - -% For \indexnofonts, we need to get rid of all macros, leaving only the -% arguments (if present). Of course this is not nearly correct, but it -% is the best we can do for now. makeinfo does not expand macros in the -% argument to @deffn, which ends up writing an index entry, and texindex -% isn't prepared for an index sort entry that starts with \. -% -% Since macro invocations are followed by braces, we can just redefine them -% to take a single TeX argument. The case of a macro invocation that -% goes to end-of-line is not handled. -% -\def\emptyusermacros{\begingroup - \def\do##1{\let\noexpand##1=\noexpand\asis}% - \edef\next{\macrolist}\expandafter\endgroup\next} + \fi \macnamexxx} % @alias. @@ -5956,6 +6847,7 @@ \def\aliasyyy #1=#2\relax{% {% \expandafter\let\obeyedspace=\empty + \addtomacrolist{#1}% \xdef\next{\global\let\makecsname{#1}=\makecsname{#2}}% }% \next @@ -5965,7 +6857,6 @@ \message{cross references,} \newwrite\auxfile - \newif\ifhavexrefs % True if xref values are known. \newif\ifwarnedxrefs % True if we warned once that they aren't known. @@ -6010,7 +6901,7 @@ % \setref{NAME}{SNT} defines a cross-reference point NAME (a node or an % anchor), which consists of three parts: -% 1) NAME-title - the current sectioning name taken from \thissection, +% 1) NAME-title - the current sectioning name taken from \lastsection, % or the anchor name. % 2) NAME-snt - section number and type, passed as the SNT arg, or % empty for anchors. @@ -6025,15 +6916,14 @@ \iflinks {% \atdummies % preserve commands, but don't expand them - \turnoffactive \edef\writexrdef##1##2{% \write\auxfile{@xrdef{#1-% #1 of \setref, expanded by the \edef ##1}{##2}}% these are parameters of \writexrdef }% - \toks0 = \expandafter{\thissection}% + \toks0 = \expandafter{\lastsection}% \immediate \writexrdef{title}{\the\toks0 }% \immediate \writexrdef{snt}{\csname #2\endcsname}% \Ynumbered etc. - \writexrdef{pg}{\folio}% will be written later, during \shipout + \safewhatsit{\writexrdef{pg}{\folio}}% will be written later, during \shipout }% \fi } @@ -6079,7 +6969,8 @@ \ifpdf \leavevmode \getfilename{#4}% - {\turnoffactive + {\indexnofonts + \turnoffactive % See comments at \activebackslashdouble. {\activebackslashdouble \xdef\pdfxrefdest{#1}% \backslashparens\pdfxrefdest}% @@ -6092,7 +6983,7 @@ goto name{\pdfmkpgn{\pdfxrefdest}}% \fi }% - \linkcolor + \setcolor{\linkcolor}% \fi % % Float references are printed completely differently: "Figure 1.2" @@ -6110,7 +7001,7 @@ % If the user specified the print name (third arg) to the ref, % print it instead of our usual "Figure 1.2". \ifdim\wd0 = 0pt - \refx{#1-snt}% + \refx{#1-snt}{}% \else \printedrefname \fi @@ -6130,7 +7021,7 @@ % is a loss. Therefore, we give the text of the node name again, so it % is as if TeX is seeing it for the first time. \ifdim \wd1 > 0pt - \putwordsection{} ``\printedrefname'' \putwordin{} \cite{\printedmanual}% + \putwordSection{} ``\printedrefname'' \putwordin{} \cite{\printedmanual}% \else % _ (for example) has to be the character _ for the purposes of the % control sequence corresponding to the node, but it has to expand @@ -6226,10 +7117,18 @@ % collisions). But if this is a float type, we have more work to do. % \def\xrdef#1#2{% - \expandafter\gdef\csname XR#1\endcsname{#2}% remember this xref value. + {% The node name might contain 8-bit characters, which in our current + % implementation are changed to commands like @'e. Don't let these + % mess up the control sequence name. + \indexnofonts + \turnoffactive + \xdef\safexrefname{#1}% + }% + % + \expandafter\gdef\csname XR\safexrefname\endcsname{#2}% remember this xref % % Was that xref control sequence that we just defined for a float? - \expandafter\iffloat\csname XR#1\endcsname + \expandafter\iffloat\csname XR\safexrefname\endcsname % it was a float, and we have the (safe) float type in \iffloattype. \expandafter\let\expandafter\floatlist \csname floatlist\iffloattype\endcsname @@ -6244,7 +7143,8 @@ % % Remember this xref in the control sequence \floatlistFLOATTYPE, % for later use in \listoffloats. - \expandafter\xdef\csname floatlist\iffloattype\endcsname{\the\toks0{#1}}% + \expandafter\xdef\csname floatlist\iffloattype\endcsname{\the\toks0 + {\safexrefname}}% \fi } @@ -6348,6 +7248,7 @@ \input\jobname.#1 \endgroup} + \message{insertions,} % including footnotes. @@ -6540,7 +7441,7 @@ % above and below. \nobreak\vskip\parskip \nobreak - \line\bgroup\hss + \line\bgroup \fi % % Output the image. @@ -6553,7 +7454,7 @@ \epsfbox{#1.eps}% \fi % - \ifimagevmode \hss \egroup \bigbreak \fi % space after the image + \ifimagevmode \egroup \bigbreak \fi % space after the image \endgroup} @@ -6620,13 +7521,13 @@ \global\advance\floatno by 1 % {% - % This magic value for \thissection is output by \setref as the + % This magic value for \lastsection is output by \setref as the % XREFLABEL-title value. \xrefX uses it to distinguish float % labels (which have a completely different output format) from % node and anchor labels. And \xrdef uses it to construct the % lists of floats. % - \edef\thissection{\floatmagic=\safefloattype}% + \edef\lastsection{\floatmagic=\safefloattype}% \setref{\floatlabel}{Yfloat}% }% \fi @@ -6693,7 +7594,8 @@ % \floatlabel-lof. Besides \floatident, we include the short % caption if specified, else the full caption if specified, else nothing. {% - \atdummies \turnoffactive + \atdummies + % % since we read the caption text in the macro world, where ^^M % is turned into a normal character, we have to scan it back, so % we don't write the literal three characters "^^M" into the aux file. @@ -6714,8 +7616,9 @@ % % place the captured inserts % - % BEWARE: when the floats start float, we have to issue warning whenever an - % insert appears inside a float which could possibly float. --kasal, 26may04 + % BEWARE: when the floats start floating, we have to issue warning + % whenever an insert appears inside a float which could possibly + % float. --kasal, 26may04 % \checkinserts } @@ -6759,7 +7662,7 @@ % #1 is the control sequence we are passed; we expand into a conditional % which is true if #1 represents a float ref. That is, the magic -% \thissection value which we \setref above. +% \lastsection value which we \setref above. % \def\iffloat#1{\expandafter\doiffloat#1==\finish} % @@ -6820,39 +7723,871 @@ \writeentry }} + \message{localization,} -% and i18n. % @documentlanguage is usually given very early, just after % @setfilename. If done too late, it may not override everything -% properly. Single argument is the language abbreviation. -% It would be nice if we could set up a hyphenation file here. +% properly. Single argument is the language (de) or locale (de_DE) +% abbreviation. It would be nice if we could set up a hyphenation file. % -\parseargdef\documentlanguage{% +{ + \catcode`\_ = \active + \globaldefs=1 +\parseargdef\documentlanguage{\begingroup + \let_=\normalunderscore % normal _ character for filenames \tex % read txi-??.tex file in plain TeX. - % Read the file if it exists. + % Read the file by the name they passed if it exists. \openin 1 txi-#1.tex \ifeof 1 - \errhelp = \nolanghelp - \errmessage{Cannot read language file txi-#1.tex}% + \documentlanguagetrywithoutunderscore{#1_\finish}% \else \input txi-#1.tex \fi \closein 1 \endgroup +\endgroup} +} +% +% If they passed de_DE, and txi-de_DE.tex doesn't exist, +% try txi-de.tex. +% +\def\documentlanguagetrywithoutunderscore#1_#2\finish{% + \openin 1 txi-#1.tex + \ifeof 1 + \errhelp = \nolanghelp + \errmessage{Cannot read language file txi-#1.tex}% + \else + \input txi-#1.tex + \fi + \closein 1 } +% \newhelp\nolanghelp{The given language definition file cannot be found or is empty. Maybe you need to install it? In the current directory should work if nowhere else does.} +% Set the catcode of characters 128 through 255 to the specified number. +% +\def\setnonasciicharscatcode#1{% + \count255=128 + \loop\ifnum\count255<256 + \global\catcode\count255=#1\relax + \advance\count255 by 1 + \repeat +} + +\def\setnonasciicharscatcodenonglobal#1{% + \count255=128 + \loop\ifnum\count255<256 + \catcode\count255=#1\relax + \advance\count255 by 1 + \repeat +} + +% @documentencoding sets the definition of non-ASCII characters +% according to the specified encoding. +% +\parseargdef\documentencoding{% + % Encoding being declared for the document. + \def\declaredencoding{\csname #1.enc\endcsname}% + % + % Supported encodings: names converted to tokens in order to be able + % to compare them with \ifx. + \def\ascii{\csname US-ASCII.enc\endcsname}% + \def\latnine{\csname ISO-8859-15.enc\endcsname}% + \def\latone{\csname ISO-8859-1.enc\endcsname}% + \def\lattwo{\csname ISO-8859-2.enc\endcsname}% + \def\utfeight{\csname UTF-8.enc\endcsname}% + % + \ifx \declaredencoding \ascii + \asciichardefs + % + \else \ifx \declaredencoding \lattwo + \setnonasciicharscatcode\active + \lattwochardefs + % + \else \ifx \declaredencoding \latone + \setnonasciicharscatcode\active + \latonechardefs + % + \else \ifx \declaredencoding \latnine + \setnonasciicharscatcode\active + \latninechardefs + % + \else \ifx \declaredencoding \utfeight + \setnonasciicharscatcode\active + \utfeightchardefs + % + \else + \message{Unknown document encoding #1, ignoring.}% + % + \fi % utfeight + \fi % latnine + \fi % latone + \fi % lattwo + \fi % ascii +} + +% A message to be logged when using a character that isn't available +% the default font encoding (OT1). +% +\def\missingcharmsg#1{\message{Character missing in OT1 encoding: #1.}} + +% Take account of \c (plain) vs. \, (Texinfo) difference. +\def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi} + +% First, make active non-ASCII characters in order for them to be +% correctly categorized when TeX reads the replacement text of +% macros containing the character definitions. +\setnonasciicharscatcode\active +% +% Latin1 (ISO-8859-1) character definitions. +\def\latonechardefs{% + \gdef^^a0{~} + \gdef^^a1{\exclamdown} + \gdef^^a2{\missingcharmsg{CENT SIGN}} + \gdef^^a3{{\pounds}} + \gdef^^a4{\missingcharmsg{CURRENCY SIGN}} + \gdef^^a5{\missingcharmsg{YEN SIGN}} + \gdef^^a6{\missingcharmsg{BROKEN BAR}} + \gdef^^a7{\S} + \gdef^^a8{\"{}} + \gdef^^a9{\copyright} + \gdef^^aa{\ordf} + \gdef^^ab{\missingcharmsg{LEFT-POINTING DOUBLE ANGLE QUOTATION MARK}} + \gdef^^ac{$\lnot$} + \gdef^^ad{\-} + \gdef^^ae{\registeredsymbol} + \gdef^^af{\={}} + % + \gdef^^b0{\textdegree} + \gdef^^b1{$\pm$} + \gdef^^b2{$^2$} + \gdef^^b3{$^3$} + \gdef^^b4{\'{}} + \gdef^^b5{$\mu$} + \gdef^^b6{\P} + % + \gdef^^b7{$^.$} + \gdef^^b8{\cedilla\ } + \gdef^^b9{$^1$} + \gdef^^ba{\ordm} + % + \gdef^^bb{\missingcharmsg{RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK}} + \gdef^^bc{$1\over4$} + \gdef^^bd{$1\over2$} + \gdef^^be{$3\over4$} + \gdef^^bf{\questiondown} + % + \gdef^^c0{\`A} + \gdef^^c1{\'A} + \gdef^^c2{\^A} + \gdef^^c3{\~A} + \gdef^^c4{\"A} + \gdef^^c5{\ringaccent A} + \gdef^^c6{\AE} + \gdef^^c7{\cedilla C} + \gdef^^c8{\`E} + \gdef^^c9{\'E} + \gdef^^ca{\^E} + \gdef^^cb{\"E} + \gdef^^cc{\`I} + \gdef^^cd{\'I} + \gdef^^ce{\^I} + \gdef^^cf{\"I} + % + \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER ETH}} + \gdef^^d1{\~N} + \gdef^^d2{\`O} + \gdef^^d3{\'O} + \gdef^^d4{\^O} + \gdef^^d5{\~O} + \gdef^^d6{\"O} + \gdef^^d7{$\times$} + \gdef^^d8{\O} + \gdef^^d9{\`U} + \gdef^^da{\'U} + \gdef^^db{\^U} + \gdef^^dc{\"U} + \gdef^^dd{\'Y} + \gdef^^de{\missingcharmsg{LATIN CAPITAL LETTER THORN}} + \gdef^^df{\ss} + % + \gdef^^e0{\`a} + \gdef^^e1{\'a} + \gdef^^e2{\^a} + \gdef^^e3{\~a} + \gdef^^e4{\"a} + \gdef^^e5{\ringaccent a} + \gdef^^e6{\ae} + \gdef^^e7{\cedilla c} + \gdef^^e8{\`e} + \gdef^^e9{\'e} + \gdef^^ea{\^e} + \gdef^^eb{\"e} + \gdef^^ec{\`{\dotless i}} + \gdef^^ed{\'{\dotless i}} + \gdef^^ee{\^{\dotless i}} + \gdef^^ef{\"{\dotless i}} + % + \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER ETH}} + \gdef^^f1{\~n} + \gdef^^f2{\`o} + \gdef^^f3{\'o} + \gdef^^f4{\^o} + \gdef^^f5{\~o} + \gdef^^f6{\"o} + \gdef^^f7{$\div$} + \gdef^^f8{\o} + \gdef^^f9{\`u} + \gdef^^fa{\'u} + \gdef^^fb{\^u} + \gdef^^fc{\"u} + \gdef^^fd{\'y} + \gdef^^fe{\missingcharmsg{LATIN SMALL LETTER THORN}} + \gdef^^ff{\"y} +} + +% Latin9 (ISO-8859-15) encoding character definitions. +\def\latninechardefs{% + % Encoding is almost identical to Latin1. + \latonechardefs + % + \gdef^^a4{\euro} + \gdef^^a6{\v S} + \gdef^^a8{\v s} + \gdef^^b4{\v Z} + \gdef^^b8{\v z} + \gdef^^bc{\OE} + \gdef^^bd{\oe} + \gdef^^be{\"Y} +} + +% Latin2 (ISO-8859-2) character definitions. +\def\lattwochardefs{% + \gdef^^a0{~} + \gdef^^a1{\missingcharmsg{LATIN CAPITAL LETTER A WITH OGONEK}} + \gdef^^a2{\u{}} + \gdef^^a3{\L} + \gdef^^a4{\missingcharmsg{CURRENCY SIGN}} + \gdef^^a5{\v L} + \gdef^^a6{\'S} + \gdef^^a7{\S} + \gdef^^a8{\"{}} + \gdef^^a9{\v S} + \gdef^^aa{\cedilla S} + \gdef^^ab{\v T} + \gdef^^ac{\'Z} + \gdef^^ad{\-} + \gdef^^ae{\v Z} + \gdef^^af{\dotaccent Z} + % + \gdef^^b0{\textdegree} + \gdef^^b1{\missingcharmsg{LATIN SMALL LETTER A WITH OGONEK}} + \gdef^^b2{\missingcharmsg{OGONEK}} + \gdef^^b3{\l} + \gdef^^b4{\'{}} + \gdef^^b5{\v l} + \gdef^^b6{\'s} + \gdef^^b7{\v{}} + \gdef^^b8{\cedilla\ } + \gdef^^b9{\v s} + \gdef^^ba{\cedilla s} + \gdef^^bb{\v t} + \gdef^^bc{\'z} + \gdef^^bd{\H{}} + \gdef^^be{\v z} + \gdef^^bf{\dotaccent z} + % + \gdef^^c0{\'R} + \gdef^^c1{\'A} + \gdef^^c2{\^A} + \gdef^^c3{\u A} + \gdef^^c4{\"A} + \gdef^^c5{\'L} + \gdef^^c6{\'C} + \gdef^^c7{\cedilla C} + \gdef^^c8{\v C} + \gdef^^c9{\'E} + \gdef^^ca{\missingcharmsg{LATIN CAPITAL LETTER E WITH OGONEK}} + \gdef^^cb{\"E} + \gdef^^cc{\v E} + \gdef^^cd{\'I} + \gdef^^ce{\^I} + \gdef^^cf{\v D} + % + \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER D WITH STROKE}} + \gdef^^d1{\'N} + \gdef^^d2{\v N} + \gdef^^d3{\'O} + \gdef^^d4{\^O} + \gdef^^d5{\H O} + \gdef^^d6{\"O} + \gdef^^d7{$\times$} + \gdef^^d8{\v R} + \gdef^^d9{\ringaccent U} + \gdef^^da{\'U} + \gdef^^db{\H U} + \gdef^^dc{\"U} + \gdef^^dd{\'Y} + \gdef^^de{\cedilla T} + \gdef^^df{\ss} + % + \gdef^^e0{\'r} + \gdef^^e1{\'a} + \gdef^^e2{\^a} + \gdef^^e3{\u a} + \gdef^^e4{\"a} + \gdef^^e5{\'l} + \gdef^^e6{\'c} + \gdef^^e7{\cedilla c} + \gdef^^e8{\v c} + \gdef^^e9{\'e} + \gdef^^ea{\missingcharmsg{LATIN SMALL LETTER E WITH OGONEK}} + \gdef^^eb{\"e} + \gdef^^ec{\v e} + \gdef^^ed{\'\i} + \gdef^^ee{\^\i} + \gdef^^ef{\v d} + % + \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER D WITH STROKE}} + \gdef^^f1{\'n} + \gdef^^f2{\v n} + \gdef^^f3{\'o} + \gdef^^f4{\^o} + \gdef^^f5{\H o} + \gdef^^f6{\"o} + \gdef^^f7{$\div$} + \gdef^^f8{\v r} + \gdef^^f9{\ringaccent u} + \gdef^^fa{\'u} + \gdef^^fb{\H u} + \gdef^^fc{\"u} + \gdef^^fd{\'y} + \gdef^^fe{\cedilla t} + \gdef^^ff{\dotaccent{}} +} + +% UTF-8 character definitions. +% +% This code to support UTF-8 is based on LaTeX's utf8.def, with some +% changes for Texinfo conventions. It is included here under the GPL by +% permission from Frank Mittelbach and the LaTeX team. +% +\newcount\countUTFx +\newcount\countUTFy +\newcount\countUTFz + +\gdef\UTFviiiTwoOctets#1#2{\expandafter + \UTFviiiDefined\csname u8:#1\string #2\endcsname} +% +\gdef\UTFviiiThreeOctets#1#2#3{\expandafter + \UTFviiiDefined\csname u8:#1\string #2\string #3\endcsname} +% +\gdef\UTFviiiFourOctets#1#2#3#4{\expandafter + \UTFviiiDefined\csname u8:#1\string #2\string #3\string #4\endcsname} + +\gdef\UTFviiiDefined#1{% + \ifx #1\relax + \message{\linenumber Unicode char \string #1 not defined for Texinfo}% + \else + \expandafter #1% + \fi +} + +\begingroup + \catcode`\~13 + \catcode`\"12 + + \def\UTFviiiLoop{% + \global\catcode\countUTFx\active + \uccode`\~\countUTFx + \uppercase\expandafter{\UTFviiiTmp}% + \advance\countUTFx by 1 + \ifnum\countUTFx < \countUTFy + \expandafter\UTFviiiLoop + \fi} -% @documentencoding should change something in TeX eventually, most -% likely, but for now just recognize it. -\let\documentencoding = \comment + \countUTFx = "C2 + \countUTFy = "E0 + \def\UTFviiiTmp{% + \xdef~{\noexpand\UTFviiiTwoOctets\string~}} + \UTFviiiLoop + + \countUTFx = "E0 + \countUTFy = "F0 + \def\UTFviiiTmp{% + \xdef~{\noexpand\UTFviiiThreeOctets\string~}} + \UTFviiiLoop + + \countUTFx = "F0 + \countUTFy = "F4 + \def\UTFviiiTmp{% + \xdef~{\noexpand\UTFviiiFourOctets\string~}} + \UTFviiiLoop +\endgroup +\begingroup + \catcode`\"=12 + \catcode`\<=12 + \catcode`\.=12 + \catcode`\,=12 + \catcode`\;=12 + \catcode`\!=12 + \catcode`\~=13 + + \gdef\DeclareUnicodeCharacter#1#2{% + \countUTFz = "#1\relax + \wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}% + \begingroup + \parseXMLCharref + \def\UTFviiiTwoOctets##1##2{% + \csname u8:##1\string ##2\endcsname}% + \def\UTFviiiThreeOctets##1##2##3{% + \csname u8:##1\string ##2\string ##3\endcsname}% + \def\UTFviiiFourOctets##1##2##3##4{% + \csname u8:##1\string ##2\string ##3\string ##4\endcsname}% + \expandafter\expandafter\expandafter\expandafter + \expandafter\expandafter\expandafter + \gdef\UTFviiiTmp{#2}% + \endgroup} -% Page size parameters. + \gdef\parseXMLCharref{% + \ifnum\countUTFz < "A0\relax + \errhelp = \EMsimple + \errmessage{Cannot define Unicode char value < 00A0}% + \else\ifnum\countUTFz < "800\relax + \parseUTFviiiA,% + \parseUTFviiiB C\UTFviiiTwoOctets.,% + \else\ifnum\countUTFz < "10000\relax + \parseUTFviiiA;% + \parseUTFviiiA,% + \parseUTFviiiB E\UTFviiiThreeOctets.{,;}% + \else + \parseUTFviiiA;% + \parseUTFviiiA,% + \parseUTFviiiA!% + \parseUTFviiiB F\UTFviiiFourOctets.{!,;}% + \fi\fi\fi + } + + \gdef\parseUTFviiiA#1{% + \countUTFx = \countUTFz + \divide\countUTFz by 64 + \countUTFy = \countUTFz + \multiply\countUTFz by 64 + \advance\countUTFx by -\countUTFz + \advance\countUTFx by 128 + \uccode `#1\countUTFx + \countUTFz = \countUTFy} + + \gdef\parseUTFviiiB#1#2#3#4{% + \advance\countUTFz by "#10\relax + \uccode `#3\countUTFz + \uppercase{\gdef\UTFviiiTmp{#2#3#4}}} +\endgroup + +\def\utfeightchardefs{% + \DeclareUnicodeCharacter{00A0}{\tie} + \DeclareUnicodeCharacter{00A1}{\exclamdown} + \DeclareUnicodeCharacter{00A3}{\pounds} + \DeclareUnicodeCharacter{00A8}{\"{ }} + \DeclareUnicodeCharacter{00A9}{\copyright} + \DeclareUnicodeCharacter{00AA}{\ordf} + \DeclareUnicodeCharacter{00AB}{\guillemetleft} + \DeclareUnicodeCharacter{00AD}{\-} + \DeclareUnicodeCharacter{00AE}{\registeredsymbol} + \DeclareUnicodeCharacter{00AF}{\={ }} + + \DeclareUnicodeCharacter{00B0}{\ringaccent{ }} + \DeclareUnicodeCharacter{00B4}{\'{ }} + \DeclareUnicodeCharacter{00B8}{\cedilla{ }} + \DeclareUnicodeCharacter{00BA}{\ordm} + \DeclareUnicodeCharacter{00BB}{\guillemetright} + \DeclareUnicodeCharacter{00BF}{\questiondown} + + \DeclareUnicodeCharacter{00C0}{\`A} + \DeclareUnicodeCharacter{00C1}{\'A} + \DeclareUnicodeCharacter{00C2}{\^A} + \DeclareUnicodeCharacter{00C3}{\~A} + \DeclareUnicodeCharacter{00C4}{\"A} + \DeclareUnicodeCharacter{00C5}{\AA} + \DeclareUnicodeCharacter{00C6}{\AE} + \DeclareUnicodeCharacter{00C7}{\cedilla{C}} + \DeclareUnicodeCharacter{00C8}{\`E} + \DeclareUnicodeCharacter{00C9}{\'E} + \DeclareUnicodeCharacter{00CA}{\^E} + \DeclareUnicodeCharacter{00CB}{\"E} + \DeclareUnicodeCharacter{00CC}{\`I} + \DeclareUnicodeCharacter{00CD}{\'I} + \DeclareUnicodeCharacter{00CE}{\^I} + \DeclareUnicodeCharacter{00CF}{\"I} + + \DeclareUnicodeCharacter{00D1}{\~N} + \DeclareUnicodeCharacter{00D2}{\`O} + \DeclareUnicodeCharacter{00D3}{\'O} + \DeclareUnicodeCharacter{00D4}{\^O} + \DeclareUnicodeCharacter{00D5}{\~O} + \DeclareUnicodeCharacter{00D6}{\"O} + \DeclareUnicodeCharacter{00D8}{\O} + \DeclareUnicodeCharacter{00D9}{\`U} + \DeclareUnicodeCharacter{00DA}{\'U} + \DeclareUnicodeCharacter{00DB}{\^U} + \DeclareUnicodeCharacter{00DC}{\"U} + \DeclareUnicodeCharacter{00DD}{\'Y} + \DeclareUnicodeCharacter{00DF}{\ss} + + \DeclareUnicodeCharacter{00E0}{\`a} + \DeclareUnicodeCharacter{00E1}{\'a} + \DeclareUnicodeCharacter{00E2}{\^a} + \DeclareUnicodeCharacter{00E3}{\~a} + \DeclareUnicodeCharacter{00E4}{\"a} + \DeclareUnicodeCharacter{00E5}{\aa} + \DeclareUnicodeCharacter{00E6}{\ae} + \DeclareUnicodeCharacter{00E7}{\cedilla{c}} + \DeclareUnicodeCharacter{00E8}{\`e} + \DeclareUnicodeCharacter{00E9}{\'e} + \DeclareUnicodeCharacter{00EA}{\^e} + \DeclareUnicodeCharacter{00EB}{\"e} + \DeclareUnicodeCharacter{00EC}{\`{\dotless{i}}} + \DeclareUnicodeCharacter{00ED}{\'{\dotless{i}}} + \DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}} + \DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}} + + \DeclareUnicodeCharacter{00F1}{\~n} + \DeclareUnicodeCharacter{00F2}{\`o} + \DeclareUnicodeCharacter{00F3}{\'o} + \DeclareUnicodeCharacter{00F4}{\^o} + \DeclareUnicodeCharacter{00F5}{\~o} + \DeclareUnicodeCharacter{00F6}{\"o} + \DeclareUnicodeCharacter{00F8}{\o} + \DeclareUnicodeCharacter{00F9}{\`u} + \DeclareUnicodeCharacter{00FA}{\'u} + \DeclareUnicodeCharacter{00FB}{\^u} + \DeclareUnicodeCharacter{00FC}{\"u} + \DeclareUnicodeCharacter{00FD}{\'y} + \DeclareUnicodeCharacter{00FF}{\"y} + + \DeclareUnicodeCharacter{0100}{\=A} + \DeclareUnicodeCharacter{0101}{\=a} + \DeclareUnicodeCharacter{0102}{\u{A}} + \DeclareUnicodeCharacter{0103}{\u{a}} + \DeclareUnicodeCharacter{0106}{\'C} + \DeclareUnicodeCharacter{0107}{\'c} + \DeclareUnicodeCharacter{0108}{\^C} + \DeclareUnicodeCharacter{0109}{\^c} + \DeclareUnicodeCharacter{010A}{\dotaccent{C}} + \DeclareUnicodeCharacter{010B}{\dotaccent{c}} + \DeclareUnicodeCharacter{010C}{\v{C}} + \DeclareUnicodeCharacter{010D}{\v{c}} + \DeclareUnicodeCharacter{010E}{\v{D}} + + \DeclareUnicodeCharacter{0112}{\=E} + \DeclareUnicodeCharacter{0113}{\=e} + \DeclareUnicodeCharacter{0114}{\u{E}} + \DeclareUnicodeCharacter{0115}{\u{e}} + \DeclareUnicodeCharacter{0116}{\dotaccent{E}} + \DeclareUnicodeCharacter{0117}{\dotaccent{e}} + \DeclareUnicodeCharacter{011A}{\v{E}} + \DeclareUnicodeCharacter{011B}{\v{e}} + \DeclareUnicodeCharacter{011C}{\^G} + \DeclareUnicodeCharacter{011D}{\^g} + \DeclareUnicodeCharacter{011E}{\u{G}} + \DeclareUnicodeCharacter{011F}{\u{g}} + + \DeclareUnicodeCharacter{0120}{\dotaccent{G}} + \DeclareUnicodeCharacter{0121}{\dotaccent{g}} + \DeclareUnicodeCharacter{0124}{\^H} + \DeclareUnicodeCharacter{0125}{\^h} + \DeclareUnicodeCharacter{0128}{\~I} + \DeclareUnicodeCharacter{0129}{\~{\dotless{i}}} + \DeclareUnicodeCharacter{012A}{\=I} + \DeclareUnicodeCharacter{012B}{\={\dotless{i}}} + \DeclareUnicodeCharacter{012C}{\u{I}} + \DeclareUnicodeCharacter{012D}{\u{\dotless{i}}} + + \DeclareUnicodeCharacter{0130}{\dotaccent{I}} + \DeclareUnicodeCharacter{0131}{\dotless{i}} + \DeclareUnicodeCharacter{0132}{IJ} + \DeclareUnicodeCharacter{0133}{ij} + \DeclareUnicodeCharacter{0134}{\^J} + \DeclareUnicodeCharacter{0135}{\^{\dotless{j}}} + \DeclareUnicodeCharacter{0139}{\'L} + \DeclareUnicodeCharacter{013A}{\'l} + + \DeclareUnicodeCharacter{0141}{\L} + \DeclareUnicodeCharacter{0142}{\l} + \DeclareUnicodeCharacter{0143}{\'N} + \DeclareUnicodeCharacter{0144}{\'n} + \DeclareUnicodeCharacter{0147}{\v{N}} + \DeclareUnicodeCharacter{0148}{\v{n}} + \DeclareUnicodeCharacter{014C}{\=O} + \DeclareUnicodeCharacter{014D}{\=o} + \DeclareUnicodeCharacter{014E}{\u{O}} + \DeclareUnicodeCharacter{014F}{\u{o}} + + \DeclareUnicodeCharacter{0150}{\H{O}} + \DeclareUnicodeCharacter{0151}{\H{o}} + \DeclareUnicodeCharacter{0152}{\OE} + \DeclareUnicodeCharacter{0153}{\oe} + \DeclareUnicodeCharacter{0154}{\'R} + \DeclareUnicodeCharacter{0155}{\'r} + \DeclareUnicodeCharacter{0158}{\v{R}} + \DeclareUnicodeCharacter{0159}{\v{r}} + \DeclareUnicodeCharacter{015A}{\'S} + \DeclareUnicodeCharacter{015B}{\'s} + \DeclareUnicodeCharacter{015C}{\^S} + \DeclareUnicodeCharacter{015D}{\^s} + \DeclareUnicodeCharacter{015E}{\cedilla{S}} + \DeclareUnicodeCharacter{015F}{\cedilla{s}} + + \DeclareUnicodeCharacter{0160}{\v{S}} + \DeclareUnicodeCharacter{0161}{\v{s}} + \DeclareUnicodeCharacter{0162}{\cedilla{t}} + \DeclareUnicodeCharacter{0163}{\cedilla{T}} + \DeclareUnicodeCharacter{0164}{\v{T}} + + \DeclareUnicodeCharacter{0168}{\~U} + \DeclareUnicodeCharacter{0169}{\~u} + \DeclareUnicodeCharacter{016A}{\=U} + \DeclareUnicodeCharacter{016B}{\=u} + \DeclareUnicodeCharacter{016C}{\u{U}} + \DeclareUnicodeCharacter{016D}{\u{u}} + \DeclareUnicodeCharacter{016E}{\ringaccent{U}} + \DeclareUnicodeCharacter{016F}{\ringaccent{u}} + + \DeclareUnicodeCharacter{0170}{\H{U}} + \DeclareUnicodeCharacter{0171}{\H{u}} + \DeclareUnicodeCharacter{0174}{\^W} + \DeclareUnicodeCharacter{0175}{\^w} + \DeclareUnicodeCharacter{0176}{\^Y} + \DeclareUnicodeCharacter{0177}{\^y} + \DeclareUnicodeCharacter{0178}{\"Y} + \DeclareUnicodeCharacter{0179}{\'Z} + \DeclareUnicodeCharacter{017A}{\'z} + \DeclareUnicodeCharacter{017B}{\dotaccent{Z}} + \DeclareUnicodeCharacter{017C}{\dotaccent{z}} + \DeclareUnicodeCharacter{017D}{\v{Z}} + \DeclareUnicodeCharacter{017E}{\v{z}} + + \DeclareUnicodeCharacter{01C4}{D\v{Z}} + \DeclareUnicodeCharacter{01C5}{D\v{z}} + \DeclareUnicodeCharacter{01C6}{d\v{z}} + \DeclareUnicodeCharacter{01C7}{LJ} + \DeclareUnicodeCharacter{01C8}{Lj} + \DeclareUnicodeCharacter{01C9}{lj} + \DeclareUnicodeCharacter{01CA}{NJ} + \DeclareUnicodeCharacter{01CB}{Nj} + \DeclareUnicodeCharacter{01CC}{nj} + \DeclareUnicodeCharacter{01CD}{\v{A}} + \DeclareUnicodeCharacter{01CE}{\v{a}} + \DeclareUnicodeCharacter{01CF}{\v{I}} + + \DeclareUnicodeCharacter{01D0}{\v{\dotless{i}}} + \DeclareUnicodeCharacter{01D1}{\v{O}} + \DeclareUnicodeCharacter{01D2}{\v{o}} + \DeclareUnicodeCharacter{01D3}{\v{U}} + \DeclareUnicodeCharacter{01D4}{\v{u}} + + \DeclareUnicodeCharacter{01E2}{\={\AE}} + \DeclareUnicodeCharacter{01E3}{\={\ae}} + \DeclareUnicodeCharacter{01E6}{\v{G}} + \DeclareUnicodeCharacter{01E7}{\v{g}} + \DeclareUnicodeCharacter{01E8}{\v{K}} + \DeclareUnicodeCharacter{01E9}{\v{k}} + + \DeclareUnicodeCharacter{01F0}{\v{\dotless{j}}} + \DeclareUnicodeCharacter{01F1}{DZ} + \DeclareUnicodeCharacter{01F2}{Dz} + \DeclareUnicodeCharacter{01F3}{dz} + \DeclareUnicodeCharacter{01F4}{\'G} + \DeclareUnicodeCharacter{01F5}{\'g} + \DeclareUnicodeCharacter{01F8}{\`N} + \DeclareUnicodeCharacter{01F9}{\`n} + \DeclareUnicodeCharacter{01FC}{\'{\AE}} + \DeclareUnicodeCharacter{01FD}{\'{\ae}} + \DeclareUnicodeCharacter{01FE}{\'{\O}} + \DeclareUnicodeCharacter{01FF}{\'{\o}} + + \DeclareUnicodeCharacter{021E}{\v{H}} + \DeclareUnicodeCharacter{021F}{\v{h}} + + \DeclareUnicodeCharacter{0226}{\dotaccent{A}} + \DeclareUnicodeCharacter{0227}{\dotaccent{a}} + \DeclareUnicodeCharacter{0228}{\cedilla{E}} + \DeclareUnicodeCharacter{0229}{\cedilla{e}} + \DeclareUnicodeCharacter{022E}{\dotaccent{O}} + \DeclareUnicodeCharacter{022F}{\dotaccent{o}} + + \DeclareUnicodeCharacter{0232}{\=Y} + \DeclareUnicodeCharacter{0233}{\=y} + \DeclareUnicodeCharacter{0237}{\dotless{j}} + + \DeclareUnicodeCharacter{1E02}{\dotaccent{B}} + \DeclareUnicodeCharacter{1E03}{\dotaccent{b}} + \DeclareUnicodeCharacter{1E04}{\udotaccent{B}} + \DeclareUnicodeCharacter{1E05}{\udotaccent{b}} + \DeclareUnicodeCharacter{1E06}{\ubaraccent{B}} + \DeclareUnicodeCharacter{1E07}{\ubaraccent{b}} + \DeclareUnicodeCharacter{1E0A}{\dotaccent{D}} + \DeclareUnicodeCharacter{1E0B}{\dotaccent{d}} + \DeclareUnicodeCharacter{1E0C}{\udotaccent{D}} + \DeclareUnicodeCharacter{1E0D}{\udotaccent{d}} + \DeclareUnicodeCharacter{1E0E}{\ubaraccent{D}} + \DeclareUnicodeCharacter{1E0F}{\ubaraccent{d}} + + \DeclareUnicodeCharacter{1E1E}{\dotaccent{F}} + \DeclareUnicodeCharacter{1E1F}{\dotaccent{f}} + + \DeclareUnicodeCharacter{1E20}{\=G} + \DeclareUnicodeCharacter{1E21}{\=g} + \DeclareUnicodeCharacter{1E22}{\dotaccent{H}} + \DeclareUnicodeCharacter{1E23}{\dotaccent{h}} + \DeclareUnicodeCharacter{1E24}{\udotaccent{H}} + \DeclareUnicodeCharacter{1E25}{\udotaccent{h}} + \DeclareUnicodeCharacter{1E26}{\"H} + \DeclareUnicodeCharacter{1E27}{\"h} + + \DeclareUnicodeCharacter{1E30}{\'K} + \DeclareUnicodeCharacter{1E31}{\'k} + \DeclareUnicodeCharacter{1E32}{\udotaccent{K}} + \DeclareUnicodeCharacter{1E33}{\udotaccent{k}} + \DeclareUnicodeCharacter{1E34}{\ubaraccent{K}} + \DeclareUnicodeCharacter{1E35}{\ubaraccent{k}} + \DeclareUnicodeCharacter{1E36}{\udotaccent{L}} + \DeclareUnicodeCharacter{1E37}{\udotaccent{l}} + \DeclareUnicodeCharacter{1E3A}{\ubaraccent{L}} + \DeclareUnicodeCharacter{1E3B}{\ubaraccent{l}} + \DeclareUnicodeCharacter{1E3E}{\'M} + \DeclareUnicodeCharacter{1E3F}{\'m} + + \DeclareUnicodeCharacter{1E40}{\dotaccent{M}} + \DeclareUnicodeCharacter{1E41}{\dotaccent{m}} + \DeclareUnicodeCharacter{1E42}{\udotaccent{M}} + \DeclareUnicodeCharacter{1E43}{\udotaccent{m}} + \DeclareUnicodeCharacter{1E44}{\dotaccent{N}} + \DeclareUnicodeCharacter{1E45}{\dotaccent{n}} + \DeclareUnicodeCharacter{1E46}{\udotaccent{N}} + \DeclareUnicodeCharacter{1E47}{\udotaccent{n}} + \DeclareUnicodeCharacter{1E48}{\ubaraccent{N}} + \DeclareUnicodeCharacter{1E49}{\ubaraccent{n}} + + \DeclareUnicodeCharacter{1E54}{\'P} + \DeclareUnicodeCharacter{1E55}{\'p} + \DeclareUnicodeCharacter{1E56}{\dotaccent{P}} + \DeclareUnicodeCharacter{1E57}{\dotaccent{p}} + \DeclareUnicodeCharacter{1E58}{\dotaccent{R}} + \DeclareUnicodeCharacter{1E59}{\dotaccent{r}} + \DeclareUnicodeCharacter{1E5A}{\udotaccent{R}} + \DeclareUnicodeCharacter{1E5B}{\udotaccent{r}} + \DeclareUnicodeCharacter{1E5E}{\ubaraccent{R}} + \DeclareUnicodeCharacter{1E5F}{\ubaraccent{r}} + + \DeclareUnicodeCharacter{1E60}{\dotaccent{S}} + \DeclareUnicodeCharacter{1E61}{\dotaccent{s}} + \DeclareUnicodeCharacter{1E62}{\udotaccent{S}} + \DeclareUnicodeCharacter{1E63}{\udotaccent{s}} + \DeclareUnicodeCharacter{1E6A}{\dotaccent{T}} + \DeclareUnicodeCharacter{1E6B}{\dotaccent{t}} + \DeclareUnicodeCharacter{1E6C}{\udotaccent{T}} + \DeclareUnicodeCharacter{1E6D}{\udotaccent{t}} + \DeclareUnicodeCharacter{1E6E}{\ubaraccent{T}} + \DeclareUnicodeCharacter{1E6F}{\ubaraccent{t}} + + \DeclareUnicodeCharacter{1E7C}{\~V} + \DeclareUnicodeCharacter{1E7D}{\~v} + \DeclareUnicodeCharacter{1E7E}{\udotaccent{V}} + \DeclareUnicodeCharacter{1E7F}{\udotaccent{v}} + + \DeclareUnicodeCharacter{1E80}{\`W} + \DeclareUnicodeCharacter{1E81}{\`w} + \DeclareUnicodeCharacter{1E82}{\'W} + \DeclareUnicodeCharacter{1E83}{\'w} + \DeclareUnicodeCharacter{1E84}{\"W} + \DeclareUnicodeCharacter{1E85}{\"w} + \DeclareUnicodeCharacter{1E86}{\dotaccent{W}} + \DeclareUnicodeCharacter{1E87}{\dotaccent{w}} + \DeclareUnicodeCharacter{1E88}{\udotaccent{W}} + \DeclareUnicodeCharacter{1E89}{\udotaccent{w}} + \DeclareUnicodeCharacter{1E8A}{\dotaccent{X}} + \DeclareUnicodeCharacter{1E8B}{\dotaccent{x}} + \DeclareUnicodeCharacter{1E8C}{\"X} + \DeclareUnicodeCharacter{1E8D}{\"x} + \DeclareUnicodeCharacter{1E8E}{\dotaccent{Y}} + \DeclareUnicodeCharacter{1E8F}{\dotaccent{y}} + + \DeclareUnicodeCharacter{1E90}{\^Z} + \DeclareUnicodeCharacter{1E91}{\^z} + \DeclareUnicodeCharacter{1E92}{\udotaccent{Z}} + \DeclareUnicodeCharacter{1E93}{\udotaccent{z}} + \DeclareUnicodeCharacter{1E94}{\ubaraccent{Z}} + \DeclareUnicodeCharacter{1E95}{\ubaraccent{z}} + \DeclareUnicodeCharacter{1E96}{\ubaraccent{h}} + \DeclareUnicodeCharacter{1E97}{\"t} + \DeclareUnicodeCharacter{1E98}{\ringaccent{w}} + \DeclareUnicodeCharacter{1E99}{\ringaccent{y}} + + \DeclareUnicodeCharacter{1EA0}{\udotaccent{A}} + \DeclareUnicodeCharacter{1EA1}{\udotaccent{a}} + + \DeclareUnicodeCharacter{1EB8}{\udotaccent{E}} + \DeclareUnicodeCharacter{1EB9}{\udotaccent{e}} + \DeclareUnicodeCharacter{1EBC}{\~E} + \DeclareUnicodeCharacter{1EBD}{\~e} + + \DeclareUnicodeCharacter{1ECA}{\udotaccent{I}} + \DeclareUnicodeCharacter{1ECB}{\udotaccent{i}} + \DeclareUnicodeCharacter{1ECC}{\udotaccent{O}} + \DeclareUnicodeCharacter{1ECD}{\udotaccent{o}} + + \DeclareUnicodeCharacter{1EE4}{\udotaccent{U}} + \DeclareUnicodeCharacter{1EE5}{\udotaccent{u}} + + \DeclareUnicodeCharacter{1EF2}{\`Y} + \DeclareUnicodeCharacter{1EF3}{\`y} + \DeclareUnicodeCharacter{1EF4}{\udotaccent{Y}} + + \DeclareUnicodeCharacter{1EF8}{\~Y} + \DeclareUnicodeCharacter{1EF9}{\~y} + + \DeclareUnicodeCharacter{2013}{--} + \DeclareUnicodeCharacter{2014}{---} + \DeclareUnicodeCharacter{2018}{\quoteleft} + \DeclareUnicodeCharacter{2019}{\quoteright} + \DeclareUnicodeCharacter{201A}{\quotesinglbase} + \DeclareUnicodeCharacter{201C}{\quotedblleft} + \DeclareUnicodeCharacter{201D}{\quotedblright} + \DeclareUnicodeCharacter{201E}{\quotedblbase} + \DeclareUnicodeCharacter{2022}{\bullet} + \DeclareUnicodeCharacter{2026}{\dots} + \DeclareUnicodeCharacter{2039}{\guilsinglleft} + \DeclareUnicodeCharacter{203A}{\guilsinglright} + \DeclareUnicodeCharacter{20AC}{\euro} + + \DeclareUnicodeCharacter{2192}{\expansion} + \DeclareUnicodeCharacter{21D2}{\result} + + \DeclareUnicodeCharacter{2212}{\minus} + \DeclareUnicodeCharacter{2217}{\point} + \DeclareUnicodeCharacter{2261}{\equiv} +}% end of \utfeightchardefs + + +% US-ASCII character definitions. +\def\asciichardefs{% nothing need be done + \relax +} + +% Make non-ASCII characters printable again for compatibility with +% existing Texinfo documents that may use them, even without declaring a +% document encoding. % +\setnonasciicharscatcode \other + + +\message{formatting,} + \newdimen\defaultparindent \defaultparindent = 15pt \chapheadingskip = 15pt plus 4pt minus 2pt @@ -6865,7 +8600,7 @@ % Don't be so finicky about underfull hboxes, either. \hbadness = 2000 -% Following George Bush, just get rid of widows and orphans. +% Following George Bush, get rid of widows and orphans. \widowpenalty=10000 \clubpenalty=10000 @@ -6912,6 +8647,10 @@ \ifpdf \pdfpageheight #7\relax \pdfpagewidth #8\relax + % if we don't reset these, they will remain at "1 true in" of + % whatever layout pdftex was dumped with. + \pdfhorigin = 1 true in + \pdfvorigin = 1 true in \fi % \setleading{\textleading} @@ -6926,7 +8665,7 @@ \textleading = 13.2pt % % If page is nothing but text, make it come out even. - \internalpagesizes{46\baselineskip}{6in}% + \internalpagesizes{607.2pt}{6in}% that's 46 lines {\voffset}{.25in}% {\bindingoffset}{36pt}% {11in}{8.5in}% @@ -6938,7 +8677,7 @@ \textleading = 12pt % \internalpagesizes{7.5in}{5in}% - {\voffset}{.25in}% + {-.2in}{0in}% {\bindingoffset}{16pt}% {9.25in}{7in}% % @@ -6982,7 +8721,7 @@ % \global\normaloffset = -6mm % \global\bindingoffset = 10mm % @end tex - \internalpagesizes{51\baselineskip}{160mm} + \internalpagesizes{673.2pt}{160mm}% that's 51 lines {\voffset}{\hoffset}% {\bindingoffset}{44pt}% {297mm}{210mm}% @@ -7047,7 +8786,7 @@ \parskip = 3pt plus 2pt minus 1pt \setleading{\textleading}% % - \dimen0 = #1 + \dimen0 = #1\relax \advance\dimen0 by \voffset % \dimen2 = \hsize @@ -7142,6 +8881,13 @@ % \otherifyactive is called near the end of this file. \def\otherifyactive{\catcode`+=\other \catcode`\_=\other} +% Used sometimes to turn off (effectively) the active characters even after +% parsing them. +\def\turnoffactive{% + \normalturnoffactive + \otherbackslash +} + \catcode`\@=0 % \backslashcurfont outputs one backslash character in current font, @@ -7149,28 +8895,29 @@ \global\chardef\backslashcurfont=`\\ \global\let\rawbackslashxx=\backslashcurfont % let existing .??s files work -% \rawbackslash defines an active \ to do \backslashcurfont. -% \otherbackslash defines an active \ to be a literal `\' character with -% catcode other. -{\catcode`\\=\active - @gdef@rawbackslash{@let\=@backslashcurfont} - @gdef@otherbackslash{@let\=@realbackslash} -} - % \realbackslash is an actual character `\' with catcode other, and % \doublebackslash is two of them (for the pdf outlines). {\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}} -% \normalbackslash outputs one backslash in fixed width font. -\def\normalbackslash{{\tt\backslashcurfont}} - +% In texinfo, backslash is an active character; it prints the backslash +% in fixed width font. \catcode`\\=\active +@def@normalbackslash{{@tt@backslashcurfont}} +% On startup, @fixbackslash assigns: +% @let \ = @normalbackslash -% Used sometimes to turn off (effectively) the active characters -% even after parsing them. -@def@turnoffactive{% +% \rawbackslash defines an active \ to do \backslashcurfont. +% \otherbackslash defines an active \ to be a literal `\' character with +% catcode other. +@gdef@rawbackslash{@let\=@backslashcurfont} +@gdef@otherbackslash{@let\=@realbackslash} + +% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of +% the literal character `\'. +% +@def@normalturnoffactive{% + @let\=@normalbackslash @let"=@normaldoublequote - @let\=@realbackslash @let~=@normaltilde @let^=@normalcaret @let_=@normalunderscore @@ -7182,12 +8929,6 @@ @unsepspaces } -% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of -% the literal character `\'. (Thus, \ is not expandable when this is in -% effect.) -% -@def@normalturnoffactive{@turnoffactive @let\=@normalbackslash} - % Make _ and + \other characters, temporarily. % This is canceled by @fixbackslash. @otherifyactive @@ -7200,7 +8941,7 @@ @global@let\ = @eatinput % On the other hand, perhaps the file did not have a `\input texinfo'. Then -% the first `\{ in the file would cause an error. This macro tries to fix +% the first `\' in the file would cause an error. This macro tries to fix % that, assuming it is called before the first `\' could plausibly occur. % Also turn back on active characters that might appear in the input % file name, in case not using a pre-dumped format. diff -Nru gcc/doc/install.texi2html gcc/doc/install.texi2html --- gcc/doc/install.texi2html 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/install.texi2html 2012-12-31 17:06:05.000000000 +0100 @@ -23,6 +23,17 @@ mkdir -p $DESTDIR fi +# Generate gcc-vers.texi. +( + echo "@set version-GCC $(cat $SOURCEDIR/../BASE-VER)" + if [ "$(cat $SOURCEDIR/../DEV-PHASE)" = "experimental" ]; then + echo "@set DEVELOPMENT" + else + echo "@clear DEVELOPMENT" + fi + echo "@set srcdir $SOURCEDIR/.." +) > $SOURCEDIR/include/gcc-vers.texi + for x in index.html specific.html prerequisites.html download.html configure.html \ build.html test.html finalinstall.html binaries.html old.html \ gfdl.html @@ -31,3 +42,5 @@ echo "define = $define" $MAKEINFO -I $SOURCEDIR -I $SOURCEDIR/include $SOURCEDIR/install.texi --html --no-split -D$define -o$DESTDIR/$x done + +rm $SOURCEDIR/include/gcc-vers.texi diff -Nru gcc/doc/invoke.texi gcc/doc/invoke.texi --- gcc/doc/invoke.texi 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/invoke.texi 2012-12-31 17:06:05.000000000 +0100 @@ -331,11 +331,10 @@ @gccoptlist{-d@var{letters} -dumpspecs -dumpmachine -dumpversion @gol -fdump-noaddr -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-ipa-all -fdump-ipa-cgraph -fdump-ipa-inline @gol -fdump-tree-all @gol -fdump-tree-original@r{[}-@var{n}@r{]} @gol -fdump-tree-optimized@r{[}-@var{n}@r{]} @gol --fdump-tree-inlined@r{[}-@var{n}@r{]} @gol -fdump-tree-cfg -fdump-tree-vcg -fdump-tree-alias @gol -fdump-tree-ch @gol -fdump-tree-ssa@r{[}-@var{n}@r{]} -fdump-tree-pre@r{[}-@var{n}@r{]} @gol @@ -411,7 +410,7 @@ -fschedule-insns -fschedule-insns2 @gol -fno-sched-interblock -fno-sched-spec -fsched-spec-load @gol -fsched-spec-load-dangerous @gol --fsched-stalled-insns=@var{n} -fsched-stalled-insns-dep=@var{n} @gol +-fsched-stalled-insns[=@var{n}] -fsched-stalled-insns-dep[=@var{n}] @gol -fsched2-use-superblocks @gol -fsched2-use-traces -fsee -freschedule-modulo-scheduled-loops @gol -fsection-anchors -fsignaling-nans -fsingle-precision-constant @gol @@ -908,8 +907,8 @@ -fshort-double -fshort-wchar @gol -fverbose-asm -fpack-struct[=@var{n}] -fstack-check @gol -fstack-limit-register=@var{reg} -fstack-limit-symbol=@var{sym} @gol --fargument-alias -fargument-noalias @gol --fargument-noalias-global -fargument-noalias-anything +-fno-stack-limit -fargument-alias -fargument-noalias @gol +-fargument-noalias-global -fargument-noalias-anything @gol -fleading-underscore -ftls-model=@var{model} @gol @c APPLE LOCAL begin prune man page 5547358 @c -ftrapv @@ -1293,8 +1292,8 @@ @cindex ISO support @item -ansi @opindex ansi -In C mode, support all ISO C90 programs. In C++ mode, -remove GNU extensions that conflict with ISO C++. +In C mode, this is equivalent to @samp{-std=c89}. In C++ mode, it is +equivalent to @samp{-std=c++98}. This turns off certain features of GCC that are incompatible with ISO C90 (when compiling C code), or of standard C++ (when compiling C++ code), @@ -1323,22 +1322,43 @@ ISO standard doesn't call for; this is to avoid interfering with any programs that might use these names for other things. -Functions which would normally be built in but do not have semantics +Functions that would normally be built in but do not have semantics defined by ISO C (such as @code{alloca} and @code{ffs}) are not built-in -functions with @option{-ansi} is used. @xref{Other Builtins,,Other +functions when @option{-ansi} is used. @xref{Other Builtins,,Other built-in functions provided by GCC}, for details of the functions affected. @item -std= @opindex std -Determine the language standard. This option is currently only -supported when compiling C or C++. A value for this option must be -provided; possible values are +Determine the language standard. @xref{Standards,,Language Standards +Supported by GCC}, for details of these standard versions. This option +is currently only supported when compiling C or C++. + +The compiler can accept several base standards, such as @samp{c89} or +@samp{c++98}, and GNU dialects of those standards, such as +@samp{gnu89} or @samp{gnu++98}. By specifing a base standard, the +compiler will accept all programs following that standard and those +using GNU extensions that do not contradict it. For example, +@samp{-std=c89} turns off certain features of GCC that are +incompatible with ISO C90, such as the @code{asm} and @code{typeof} +keywords, but not other GNU extensions that do not have a meaning in +ISO C90, such as omitting the middle term of a @code{?:} +expression. On the other hand, by specifing a GNU dialect of a +standard, all features the compiler support are enabled, even when +those features change the meaning of the base standard and some +strict-conforming programs may be rejected. The particular standard +is used by @option{-pedantic} to identify which features are GNU +extensions given that version of the standard. For example +@samp{-std=gnu89 -pedantic} would warn about C++ style @samp{//} +comments, while @samp{-std=gnu99 -pedantic} would not. + +A value for this option must be provided; possible values are @table @samp @item c89 @itemx iso9899:1990 -ISO C90 (same as @option{-ansi}). +Support all ISO C90 programs (certain GNU extensions that conflict +with ISO C90 are disabled). Same as @option{-ansi} for C code. @item iso9899:199409 ISO C90 as modified in amendment 1. @@ -1352,34 +1372,23 @@ names @samp{c9x} and @samp{iso9899:199x} are deprecated. @item gnu89 -Default, ISO C90 plus GNU extensions (including some C99 features). +GNU dialect of ISO C90 (including some C99 features). This +is the default for C code. @item gnu99 @itemx gnu9x -ISO C99 plus GNU extensions. When ISO C99 is fully implemented in GCC, +GNU dialect of ISO C99. When ISO C99 is fully implemented in GCC, this will become the default. The name @samp{gnu9x} is deprecated. @item c++98 -The 1998 ISO C++ standard plus amendments. +The 1998 ISO C++ standard plus amendments. Same as @option{-ansi} for +C++ code. @item gnu++98 -The same as @option{-std=c++98} plus GNU extensions. This is the -default for C++ code. +GNU dialect of @option{-std=c++98}. This is the default for +C++ code. @end table -Even when this option is not specified, you can still use some of the -features of newer standards in so far as they do not conflict with -previous C standards. For example, you may use @code{__restrict__} even -when @option{-std=c99} is not specified. - -The @option{-std} options specifying some version of ISO C have the same -effects as @option{-ansi}, except that features that were not in ISO C90 -but are in the specified version (for example, @samp{//} comments and -the @code{inline} keyword in ISO C99) are not disabled. - -@xref{Standards,,Language Standards Supported by GCC}, for details of -these standard versions. - @item -fgnu89-inline @opindex fgnu89-inline The option @option{-fgnu89-inline} tells GCC to use the traditional @@ -4651,12 +4660,15 @@ @table @samp @item all -Enables all inter-procedural analysis dumps; currently the only produced -dump is the @samp{cgraph} dump. +Enables all inter-procedural analysis dumps. @item cgraph Dumps information about call-graph optimization, unused function removal, and inlining decisions. + +@item inline +Dump after function inlining. + @end table @item -fdump-tree-@var{switch} @@ -4709,9 +4721,6 @@ @item optimized Dump after all tree based optimization, to @file{@var{file}.optimized}. -@item inlined -Dump after function inlining, to @file{@var{file}.inlined}. - @item gimple @opindex fdump-tree-gimple Dump each function before and after the gimplification pass to a file. The @@ -5414,6 +5423,7 @@ @c APPLE LOCAL end ARM conditionally disable local RA @item -fmerge-constants +@opindex fmerge-constants Attempt to merge identical constants (string constants and floating point constants) across compilation units. @@ -5425,6 +5435,7 @@ Enabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}, @option{-Oz} (APPLE ONLY). @item -fmerge-all-constants +@opindex fmerge-all-constants Attempt to merge identical constants and identical variables. This option implies @option{-fmerge-constants}. In addition to @@ -5474,13 +5485,6 @@ The default is @option{-fzero-initialized-in-bss}. -@item -fbounds-check -@opindex fbounds-check -For front-ends that support it, generate additional code to check that -indices used to access arrays are within the declared range. This is -currently only supported by the Java and Fortran front-ends, where -this option defaults to true and false respectively. - @item -fmudflap -fmudflapth -fmudflapir @opindex fmudflap @opindex fmudflapth @@ -5622,7 +5626,7 @@ Enabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}, @option{-Oz} (APPLE ONLY). @item -fif-conversion2 -@opindex if-conversion2 +@opindex fif-conversion2 Use conditional execution (where available) to transform conditional jumps into branch-less equivalents. @@ -5724,17 +5728,27 @@ sense when scheduling before register allocation, i.e.@: with @option{-fschedule-insns} or at @option{-O2} or higher. -@item -fsched-stalled-insns=@var{n} +@item -fsched-stalled-insns +@itemx -fsched-stalled-insns=@var{n} @opindex fsched-stalled-insns Define how many insns (if any) can be moved prematurely from the queue of stalled insns into the ready list, during the second scheduling pass. +@option{-fno-fsched-stalled-insns} and @option{-fsched-stalled-insns=0} +are equivalent and mean that no insns will be moved prematurely. +If @var{n} is unspecified then there is no limit on how many queued +insns can be moved prematurely. -@item -fsched-stalled-insns-dep=@var{n} +@item -fsched-stalled-insns-dep +@itemx -fsched-stalled-insns-dep=@var{n} @opindex fsched-stalled-insns-dep Define how many insn groups (cycles) will be examined for a dependency on a stalled insn that is candidate for premature removal from the queue -of stalled insns. Has an effect only during the second scheduling pass, +of stalled insns. This has an effect only during the second scheduling pass, and only if @option{-fsched-stalled-insns} is used and its value is not zero. +@option{-fno-sched-stalled-insns-dep} is equivalent to +@option{-fsched-stalled-insns-dep=0}. +@option{-fsched-stalled-insns-dep} without a value is equivalent to +@option{-fsched-stalled-insns-dep=1}. @item -fsched2-use-superblocks @opindex fsched2-use-superblocks @@ -5766,7 +5780,7 @@ ones to optimal placement using LCM. @item -freschedule-modulo-scheduled-loops -@opindex fscheduling-in-modulo-scheduled-loops +@opindex freschedule-modulo-scheduled-loops The modulo scheduling comes before the traditional scheduling, if a loop was modulo scheduled we may want to prevent the later scheduling passes from changing its schedule, we use this option to control that. @@ -5785,6 +5799,7 @@ Enabled at levels @option{-O2}, @option{-O3}, @option{-Os}, @option{-Oz} (APPLE ONLY). @item -ftree-pre +@opindex ftree-pre Perform Partial Redundancy Elimination (PRE) on trees. This flag is enabled by default at @option{-O2} and @option{-O3}. @@ -5796,6 +5811,7 @@ This flag is enabled by default at @option{-O} and higher. @item -ftree-copy-prop +@opindex ftree-copy-prop Perform copy propagation on trees. This pass eliminates unnecessary copy operations. This flag is enabled by default at @option{-O} and higher. @@ -5807,32 +5823,39 @@ default at @option{-O2} and higher. @item -ftree-salias +@opindex ftree-salias Perform structural alias analysis on trees. This flag is enabled by default at @option{-O} and higher. @item -fipa-pta +@opindex fipa-pta Perform interprocedural pointer analysis. @item -ftree-sink +@opindex ftree-sink Perform forward store motion on trees. This flag is enabled by default at @option{-O} and higher. @item -ftree-ccp +@opindex ftree-ccp Perform sparse conditional constant propagation (CCP) on trees. This pass only operates on local scalar variables and is enabled by default at @option{-O} and higher. @item -ftree-store-ccp +@opindex ftree-store-ccp Perform sparse conditional constant propagation (CCP) on trees. This pass operates on both local scalar variables and memory stores and loads (global variables, structures, arrays, etc). This flag is enabled by default at @option{-O2} and higher. @item -ftree-dce +@opindex ftree-dce Perform dead code elimination (DCE) on trees. This flag is enabled by default at @option{-O} and higher. @item -ftree-dominator-opts +@opindex ftree-dominator-opts Perform a variety of simple scalar cleanups (constant/copy propagation, redundancy elimination, range propagation and expression simplification) based on a dominator tree traversal. This also @@ -5867,27 +5890,32 @@ store motion. @item -ftree-loop-ivcanon +@opindex ftree-loop-ivcanon Create a canonical counter for number of iterations in the loop for that determining number of iterations requires complicated analysis. Later optimizations then may determine the number easily. Useful especially in connection with unrolling. @item -fivopts +@opindex fivopts Perform induction variable optimizations (strength reduction, induction variable merging and induction variable elimination) on trees. @item -ftree-sra +@opindex 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 @option{-O} and higher. @item -ftree-copyrename +@opindex 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 @option{-O} and higher. @item -ftree-ter +@opindex 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 @@ -5895,11 +5923,13 @@ enabled by default at @option{-O} and higher. @item -ftree-lrs +@opindex 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 @option{-O} and higher. @item -ftree-vectorize +@opindex ftree-vectorize Perform loop vectorization on trees. @c APPLE LOCAL begin optimization @@ -5918,6 +5948,7 @@ except at level @option{-Os} where it is disabled. @item -ftree-vrp +@opindex ftree-vrp Perform Value Range Propagation on trees. This is similar to the constant propagation pass, but instead of values, ranges of values are propagated. This allows the optimizers to remove unnecessary range @@ -6102,13 +6133,22 @@ attempt to determine whether an operation on signed numbers will overflow must be written carefully to not actually involve overflow. +This option also allows the compiler to assume strict pointer +semantics: given a pointer to an object, if adding an offset to that +pointer does not produce a pointer to the same object, the addition is +undefined. This permits the compiler to conclude that @code{p + u > +p} is always true for a pointer @code{p} and unsigned integer +@code{u}. This assumption is only valid because pointer wraparound is +undefined, as the expression is false if @code{p + u} overflows using +twos complement arithmetic. + See also the @option{-fwrapv} option. Using @option{-fwrapv} means -that signed overflow is fully defined: it wraps. When +that integer signed overflow is fully defined: it wraps. When @option{-fwrapv} is used, there is no difference between -@option{-fstrict-overflow} and @option{-fno-strict-overflow}. With -@option{-fwrapv} certain types of overflow are permitted. For -example, if the compiler gets an overflow when doing arithmetic on -constants, the overflowed value can still be used with +@option{-fstrict-overflow} and @option{-fno-strict-overflow} for +integers. With @option{-fwrapv} certain types of overflow are +permitted. For example, if the compiler gets an overflow when doing +arithmetic on constants, the overflowed value can still be used with @option{-fwrapv}, but not otherwise. The @option{-fstrict-overflow} option is enabled at levels @@ -6446,9 +6486,7 @@ implicitly converting it to double precision constant. @item -fcx-limited-range -@itemx -fno-cx-limited-range @opindex fcx-limited-range -@opindex fno-cx-limited-range When enabled, this option states that a range reduction step is not needed when performing complex division. The default is @option{-fno-cx-limited-range}, but is enabled by @option{-ffast-math}. @@ -6601,6 +6639,7 @@ branch target registers in within any basic block. @item -fstack-protector +@opindex fstack-protector Emit extra code to check for buffer overflows, such as stack smashing attacks. This is done by adding a guard variable to functions with vulnerable objects. This includes functions that call alloca, and @@ -6609,6 +6648,7 @@ If a guard check fails, an error message is printed and the program exits. @item -fstack-protector-all +@opindex fstack-protector-all Like @option{-fstack-protector} except that all functions are protected. @item -fsection-anchors @@ -14609,6 +14649,7 @@ Not all targets provide complete support for this switch. @item -ftls-model=@var{model} +@opindex ftls-model=@var{model} Alter the thread-local storage model to be used (@pxref{Thread-Local}). The @var{model} argument should be one of @code{global-dynamic}, @code{local-dynamic}, @code{initial-exec} or @code{local-exec}. diff -Nru gcc/doc/options.texi gcc/doc/options.texi --- gcc/doc/options.texi 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/options.texi 2012-12-31 17:06:05.000000000 +0100 @@ -5,7 +5,7 @@ @node Options @chapter Option specification files @cindex option specification files -@cindex @samp{opts.sh} +@cindex @samp{optc-gen.awk} Most GCC command-line options are described by special option definition files, the names of which conventionally end in diff -Nru gcc/doc/rtl.texi gcc/doc/rtl.texi --- gcc/doc/rtl.texi 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/rtl.texi 2012-12-31 17:06:05.000000000 +0100 @@ -648,8 +648,8 @@ Stored in the @code{jump} field and printed as @samp{/j}. @findex MEM_SCALAR_P -@cindex @code{mem} and @samp{/f} -@cindex @code{frame_related}, in @code{mem} +@cindex @code{mem} and @samp{/i} +@cindex @code{return_val}, in @code{mem} @item MEM_SCALAR_P (@var{x}) In @code{mem} expressions, nonzero for reference to a scalar known not to be a member of a structure, union, or array. Zero for such @@ -657,7 +657,7 @@ to scalar types. If both this flag and @code{MEM_IN_STRUCT_P} are clear, then we don't know whether this @code{mem} is in a structure or not. Both flags should never be simultaneously set. -Stored in the @code{frame_related} field and printed as @samp{/f}. +Stored in the @code{return_val} field and printed as @samp{/i}. @findex MEM_VOLATILE_P @cindex @code{mem} and @samp{/v} @@ -676,13 +676,20 @@ In @code{mem}, nonzero for memory references that will not trap. Stored in the @code{call} field and printed as @samp{/c}. +@findex MEM_POINTER +@cindex @code{mem} and @samp{/f} +@cindex @code{frame_related}, in @code{mem} +@item MEM_POINTER (@var{x}) +Nonzero in a @code{mem} if the memory reference holds a pointer. +Stored in the @code{frame_related} field and printed as @samp{/f}. + @findex REG_FUNCTION_VALUE_P @cindex @code{reg} and @samp{/i} -@cindex @code{integrated}, in @code{reg} +@cindex @code{return_val}, in @code{reg} @item REG_FUNCTION_VALUE_P (@var{x}) Nonzero in a @code{reg} if it is the place in which this function's value is going to be returned. (This happens only in a hard -register.) Stored in the @code{integrated} field and printed as +register.) Stored in the @code{return_val} field and printed as @samp{/i}. @findex REG_POINTER @@ -739,19 +746,6 @@ This flag is required for exception handling support on targets with RTL prologues. -@cindex @code{insn} and @samp{/i} -@cindex @code{call_insn} and @samp{/i} -@cindex @code{jump_insn} and @samp{/i} -@cindex @code{barrier} and @samp{/i} -@cindex @code{code_label} and @samp{/i} -@cindex @code{insn_list} and @samp{/i} -@cindex @code{const} and @samp{/i} -@cindex @code{note} and @samp{/i} -@cindex @code{integrated}, in @code{insn}, @code{call_insn}, @code{jump_insn}, @code{barrier}, @code{code_label}, @code{insn_list}, @code{const}, and @code{note} -@code{code_label}, @code{insn_list}, @code{const}, or @code{note} if it -resulted from an in-line function call. -Stored in the @code{integrated} field and printed as @samp{/i}. - @findex MEM_READONLY_P @cindex @code{mem} and @samp{/u} @cindex @code{unchanging}, in @code{mem} @@ -850,10 +844,10 @@ @findex SYMBOL_REF_WEAK @cindex @code{symbol_ref} and @samp{/i} -@cindex @code{integrated}, in @code{symbol_ref} +@cindex @code{return_val}, in @code{symbol_ref} @item SYMBOL_REF_WEAK (@var{x}) In a @code{symbol_ref}, indicates that @var{x} has been declared weak. -Stored in the @code{integrated} field and printed as @samp{/i}. +Stored in the @code{return_val} field and printed as @samp{/i}. @findex SYMBOL_REF_FLAG @cindex @code{symbol_ref} and @samp{/v} @@ -887,11 +881,11 @@ In @code{reg} expressions, 1 means that the register holds a pointer. +In @code{mem} expressions, 1 means that the memory reference holds a pointer. + In @code{symbol_ref} expressions, 1 means that the reference addresses this function's string constant pool. -In @code{mem} expressions, 1 means that the reference is to a scalar. - In an RTL dump, this flag is represented as @samp{/f}. @findex in_struct @@ -930,18 +924,18 @@ In an RTL dump, this flag is represented as @samp{/s}. -@findex integrated +@findex return_val @cindex @samp{/i} in RTL dump -@item integrated -In an @code{insn}, @code{insn_list}, or @code{const}, 1 means the RTL was -produced by procedure integration. - +@item return_val In @code{reg} expressions, 1 means the register contains the value to be returned by the current function. On machines that pass parameters in registers, the same register number may be used for parameters as well, but this flag is not set on such uses. +In @code{mem} expressions, 1 means the memory reference is to a scalar +known not to be a member of a structure, union, or array. + In @code{symbol_ref} expressions, 1 means the referenced symbol is weak. In an RTL dump, this flag is represented as @samp{/i}. diff -Nru gcc/doc/sourcebuild.texi gcc/doc/sourcebuild.texi --- gcc/doc/sourcebuild.texi 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/sourcebuild.texi 2012-12-31 17:06:05.000000000 +0100 @@ -336,6 +336,7 @@ @item gcc-common.texi Common definitions for manuals. @item gpl.texi +@itemx gpl_v3.texi The GNU General Public License. @item texinfo.tex A copy of @file{texinfo.tex} known to work with the GCC manuals. diff -Nru gcc/doc/tm.texi gcc/doc/tm.texi --- gcc/doc/tm.texi 2010-10-14 22:24:15.000000000 +0200 +++ gcc/doc/tm.texi 2012-12-31 17:06:05.000000000 +0100 @@ -7664,6 +7664,14 @@ line. Otherwise, it must set @var{ptr} to @code{NULL}. @end defmac +@defmac SHLIB_SUFFIX +Define this macro to a C string constant containing the default shared +library extension of the target (e.g., @samp{".so"}). @command{collect2} +strips version information after this suffix when generating global +constructor and destructor names. This define is only needed on targets +that use @command{collect2} to process constructors and destructors. +@end defmac + @node Instruction Output @subsection Output of Assembler Instructions diff -Nru gcc/dojump.c gcc/dojump.c --- gcc/dojump.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dojump.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,13 @@ /* Convert tree expression to rtl instructions, for GNU compiler. Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/dominance.c gcc/dominance.c --- gcc/dominance.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dominance.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,12 @@ /* Calculate (post)dominators in slightly super-linear time. - Copyright (C) 2000, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Michael Matz (matz@ifh.de). 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* This file implements the well known algorithm from Lengauer and Tarjan to compute the dominators in a control flow graph. A basic block D is said diff -Nru gcc/domwalk.c gcc/domwalk.c --- gcc/domwalk.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/domwalk.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,12 @@ /* Generic dominator tree walker - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Diego Novillo 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/domwalk.h gcc/domwalk.h --- gcc/domwalk.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/domwalk.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,12 @@ /* Generic dominator tree walker - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Diego Novillo 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ typedef void *void_p; DEF_VEC_P(void_p); diff -Nru gcc/double-int.c gcc/double-int.c --- gcc/double-int.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/double-int.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,11 +1,11 @@ /* Operations with long integers. - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 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 +Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/double-int.h gcc/double-int.h --- gcc/double-int.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/double-int.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,11 +1,11 @@ /* Operations with long integers. - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 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 +Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef DOUBLE_INT_H #define DOUBLE_INT_H diff -Nru gcc/dwarf.h gcc/dwarf.h --- gcc/dwarf.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/dwarf.h 2012-12-31 17:06:05.000000000 +0100 @@ -3,13 +3,13 @@ Written by Ron Guilmette (rfg@netcom.com) -Copyright (C) 1992, 2004 Free Software Foundation, Inc. +Copyright (C) 1992, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file is derived from the DWARF specification (a public document) Revision 1.0.1 (April 8, 1992) developed by the UNIX International diff -Nru gcc/dwarf2.h gcc/dwarf2.h --- gcc/dwarf2.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dwarf2.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,7 +1,7 @@ /* Declarations and definitions of codes relating to the DWARF2 and DWARF3 symbolic debugging information formats. Copyright (C) 1992, 1993, 1995, 1996, 1997, 1999, 2000, 2001, 2002, - 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Written by Gary Funck (gary@intrepid.com) The Ada Joint Program Office (AJPO), Florida State University and Silicon Graphics Inc. @@ -14,7 +14,7 @@ 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 + Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -23,9 +23,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* This file is derived from the DWARF specification (a public document) Revision 2.0.0 (July 27, 1993) developed by the UNIX International diff -Nru gcc/dwarf2asm.c gcc/dwarf2asm.c --- gcc/dwarf2asm.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dwarf2asm.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,11 +1,11 @@ /* Dwarf2 assembler output helper routines. - Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/dwarf2asm.h gcc/dwarf2asm.h --- gcc/dwarf2asm.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dwarf2asm.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,11 +1,11 @@ /* Dwarf2 assembler output helper routines. - Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ extern void dw2_assemble_integer (int, rtx); diff -Nru gcc/dwarf2out.c gcc/dwarf2out.c --- gcc/dwarf2out.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dwarf2out.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,6 +1,6 @@ /* Output Dwarf2 format symbol table information from GCC. Copyright (C) 1992, 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, - 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Gary Funck (gary@intrepid.com). Derived from DWARF 1 implementation of Ron Guilmette (rfg@monkeys.com). Extensively modified by Jason Merrill (jason@cygnus.com). @@ -9,7 +9,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* TODO: Emit .debug_line header even when there are no functions, since the file numbers are used by .debug_info. Alternately, leave @@ -9008,7 +9007,8 @@ don't output a DW_TAG_typedef, since there isn't one in the user's program; just attach a DW_AT_name to the type. */ if (name - && (TREE_CODE (name) != TYPE_DECL || TREE_TYPE (name) == qualified_type)) + && (TREE_CODE (name) != TYPE_DECL + || (TREE_TYPE (name) == qualified_type && DECL_NAME (name)))) { if (TREE_CODE (name) == TYPE_DECL) /* Could just call add_name_and_src_coords_attributes here, @@ -10598,9 +10598,12 @@ return *tp; else if (!flag_unit_at_a_time) return NULL_TREE; + /* ??? The C++ FE emits debug information for using decls, so + putting gcc_unreachable here falls over. See PR31899. For now + be conservative. */ else if (!cgraph_global_info_ready && (TREE_CODE (*tp) == VAR_DECL || TREE_CODE (*tp) == FUNCTION_DECL)) - gcc_unreachable (); + return *tp; else if (DECL_P (*tp) && TREE_CODE (*tp) == VAR_DECL) { struct cgraph_varpool_node *node = cgraph_varpool_node (*tp); @@ -10658,6 +10661,43 @@ else if (initializer_constant_valid_p (init, type) && ! walk_tree (&init, reference_to_unused, NULL, NULL)) { + /* Convert vector CONSTRUCTOR initializers to VECTOR_CST if + possible. */ + if (TREE_CODE (type) == VECTOR_TYPE) + switch (TREE_CODE (init)) + { + case VECTOR_CST: + break; + case CONSTRUCTOR: + if (TREE_CONSTANT (init)) + { + VEC(constructor_elt,gc) *elts = CONSTRUCTOR_ELTS (init); + bool constant_p = true; + tree value; + unsigned HOST_WIDE_INT ix; + + /* Even when ctor is constant, it might contain non-*_CST + elements (e.g. { 1.0/0.0 - 1.0/0.0, 0.0 }) and those don't + belong into VECTOR_CST nodes. */ + FOR_EACH_CONSTRUCTOR_VALUE (elts, ix, value) + if (!CONSTANT_CLASS_P (value)) + { + constant_p = false; + break; + } + + if (constant_p) + { + init = build_vector_from_ctor (type, elts); + break; + } + } + /* FALLTHRU */ + + default: + return NULL; + } + rtl = expand_expr (init, NULL_RTX, VOIDmode, EXPAND_INITIALIZER); /* If expand_expr returns a MEM, it wasn't immediate. */ @@ -14487,7 +14527,8 @@ was generated within the original definition of an inline function) we have to generate a special (abbreviated) DW_TAG_structure_type, DW_TAG_union_type, or DW_TAG_enumeration_type DIE here. */ - if (TYPE_DECL_IS_STUB (decl) && decl_ultimate_origin (decl) != NULL_TREE) + if (TYPE_DECL_IS_STUB (decl) && decl_ultimate_origin (decl) != NULL_TREE + && is_tagged_type (TREE_TYPE (decl))) { gen_tagged_type_instantiation_die (TREE_TYPE (decl), context_die); break; diff -Nru gcc/dwarf2out.h gcc/dwarf2out.h --- gcc/dwarf2out.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/dwarf2out.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,12 @@ /* dwarf2out.h - Various declarations for functions found in dwarf2out.c - Copyright (C) 1998, 1999, 2000, 2003 + Copyright (C) 1998, 1999, 2000, 2003, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ extern void dwarf2out_decl (tree); extern void dwarf2out_frame_debug (rtx, bool); diff -Nru gcc/emit-rtl.c gcc/emit-rtl.c --- gcc/emit-rtl.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/emit-rtl.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Emit RTL for the GCC expander. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Middle-to-low level generation of rtx code and insns. diff -Nru gcc/emit-rtl.h gcc/emit-rtl.h --- gcc/emit-rtl.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/emit-rtl.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,11 +1,11 @@ /* Exported functions from emit-rtl.c - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_EMIT_RTL_H #define GCC_EMIT_RTL_H diff -Nru gcc/errors.c gcc/errors.c --- gcc/errors.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/errors.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,12 @@ /* Basic error reporting routines. - Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005 + Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* warning, error, and fatal. These definitions are suitable for use in the generator programs; the compiler has a more elaborate suite diff -Nru gcc/errors.h gcc/errors.h --- gcc/errors.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/errors.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,12 @@ /* Basic error reporting routines. - Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005 + Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* warning, error, and fatal. These definitions are suitable for use in the generator programs; eventually we would like to use them in diff -Nru gcc/et-forest.c gcc/et-forest.c --- gcc/et-forest.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/et-forest.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,12 +1,12 @@ /* ET-trees data structure implementation. Contributed by Pavel Nejedly - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. This file is part of the libiberty library. Libiberty is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either -version 2 of the License, or (at your option) any later version. +version 3 of the License, or (at your option) any later version. Libiberty is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -14,9 +14,8 @@ Library General Public License for more details. You should have received a copy of the GNU Library General Public -License along with libiberty; see the file COPYING.LIB. If -not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. +License along with libiberty; see the file COPYING3. If not see +. The ET-forest structure is described in: D. D. Sleator and R. E. Tarjan. A data structure for dynamic trees. diff -Nru gcc/et-forest.h gcc/et-forest.h --- gcc/et-forest.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/et-forest.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,19 +1,19 @@ /* Et-forest data structure implementation. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3 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; see the file COPYING3. If not see + . */ /* This package implements ET forest data structure. Each tree in the structure maintains a tree structure and offers logarithmic time diff -Nru gcc/except.c gcc/except.c --- gcc/except.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/except.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,14 @@ /* Implements exception handling. Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + Free Software Foundation, Inc. Contributed by Mike Stump . 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* An exception is an event that can be signaled from within a diff -Nru gcc/except.h gcc/except.h --- gcc/except.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/except.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Exception Handling interface routines. - Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, + 2007 Free Software Foundation, Inc. Contributed by Mike Stump . 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ struct function; diff -Nru gcc/explow.c gcc/explow.c --- gcc/explow.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/explow.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Subroutines for manipulating rtx's in semantically interesting ways. Copyright (C) 1987, 1991, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/expmed.c gcc/expmed.c --- gcc/expmed.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/expmed.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,14 +1,14 @@ /* Medium-level subroutines: convert bit-field store and extract and shifts, multiplies and divides to rtl instructions. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" @@ -1422,18 +1421,15 @@ || (offset * BITS_PER_UNIT % bitsize == 0 && MEM_ALIGN (op0) % bitsize == 0))))) { - if (mode1 != GET_MODE (op0)) + if (MEM_P (op0)) + op0 = adjust_address (op0, mode1, offset); + else if (mode1 != GET_MODE (op0)) { - if (MEM_P (op0)) - op0 = adjust_address (op0, mode1, offset); - else - { - rtx sub = simplify_gen_subreg (mode1, op0, GET_MODE (op0), - byte_offset); - if (sub == NULL) - goto no_subreg_mode_swap; - op0 = sub; - } + rtx sub = simplify_gen_subreg (mode1, op0, GET_MODE (op0), + byte_offset); + if (sub == NULL) + goto no_subreg_mode_swap; + op0 = sub; } if (mode1 != mode) return convert_to_mode (tmode, op0, unsignedp); diff -Nru gcc/expr.c gcc/expr.c --- gcc/expr.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/expr.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Convert tree expression to rtl instructions, for GNU compiler. Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, - Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -1748,8 +1747,25 @@ else if (CONSTANT_P (src) && GET_MODE (dst) != BLKmode && XVECLEN (dst, 0) > 1) tmps[i] = simplify_gen_subreg (mode, src, GET_MODE(dst), bytepos); - else if (CONSTANT_P (src) - || (REG_P (src) && GET_MODE (src) == mode)) + else if (CONSTANT_P (src)) + { + HOST_WIDE_INT len = (HOST_WIDE_INT) bytelen; + + if (len == ssize) + tmps[i] = src; + else + { + rtx first, second; + + gcc_assert (2 * len == ssize); + split_double (src, &first, &second); + if (i) + tmps[i] = second; + else + tmps[i] = first; + } + } + else if (REG_P (src) && GET_MODE (src) == mode) tmps[i] = src; else tmps[i] = extract_bit_field (src, bytelen * BITS_PER_UNIT, @@ -2072,6 +2088,7 @@ rtx src = NULL, dst = NULL; unsigned HOST_WIDE_INT bitsize = MIN (TYPE_ALIGN (type), BITS_PER_WORD); unsigned HOST_WIDE_INT bitpos, xbitpos, padding_correction = 0; + enum machine_mode copy_mode; if (tgtblk == 0) { @@ -2105,11 +2122,23 @@ padding_correction = (BITS_PER_WORD - ((bytes % UNITS_PER_WORD) * BITS_PER_UNIT)); - /* Copy the structure BITSIZE bites at a time. + /* Copy the structure BITSIZE bits at a time. If the target lives in + memory, take care of not reading/writing past its end by selecting + a copy mode suited to BITSIZE. This should always be possible given + how it is computed. We could probably emit more efficient code for machines which do not use strict alignment, but it doesn't seem worth the effort at the current time. */ + + copy_mode = word_mode; + if (MEM_P (tgtblk)) + { + enum machine_mode mem_mode = mode_for_size (bitsize, MODE_INT, 1); + if (mem_mode != BLKmode) + copy_mode = mem_mode; + } + for (bitpos = 0, xbitpos = padding_correction; bitpos < bytes * BITS_PER_UNIT; bitpos += bitsize, xbitpos += bitsize) @@ -2129,11 +2158,11 @@ /* Use xbitpos for the source extraction (right justified) and xbitpos for the destination store (left justified). */ - store_bit_field (dst, bitsize, bitpos % BITS_PER_WORD, word_mode, + store_bit_field (dst, bitsize, bitpos % BITS_PER_WORD, copy_mode, extract_bit_field (src, bitsize, xbitpos % BITS_PER_WORD, 1, /* APPLE LOCAL begin 6020402 */ - NULL_RTX, word_mode, word_mode), + NULL_RTX, copy_mode, copy_mode), NULL_TREE); /* APPLE LOCAL end 6020402 */ } @@ -4792,14 +4821,7 @@ case UNION_TYPE: case QUAL_UNION_TYPE: - { - /* Ho hum. How in the world do we guess here? Clearly it isn't - right to count the fields. Guess based on the number of words. */ - HOST_WIDE_INT n = int_size_in_bytes (type); - if (n < 0) - return -1; - return n / UNITS_PER_WORD; - } + return -1; case COMPLEX_TYPE: return 2; @@ -5700,7 +5722,6 @@ enum machine_mode mode = VOIDmode; tree offset = size_zero_node; tree bit_offset = bitsize_zero_node; - tree tem; /* First get the mode, signedness, and size. We do this from just the outermost expression. */ @@ -5736,6 +5757,8 @@ *pbitsize = tree_low_cst (size_tree, 1); } + *pmode = mode; + /* Compute cumulative bit-offset for nested component-refs and array-refs, and find the ultimate containing object. */ while (1) @@ -5827,18 +5850,25 @@ done: /* If OFFSET is constant, see if we can return the whole thing as a - constant bit position. Otherwise, split it up. */ - if (host_integerp (offset, 0) - && 0 != (tem = size_binop (MULT_EXPR, - fold_convert (bitsizetype, offset), - bitsize_unit_node)) - && 0 != (tem = size_binop (PLUS_EXPR, tem, bit_offset)) - && host_integerp (tem, 0)) - *pbitpos = tree_low_cst (tem, 0), *poffset = 0; - else - *pbitpos = tree_low_cst (bit_offset, 0), *poffset = offset; + constant bit position. Make sure to handle overflow during + this conversion. */ + if (host_integerp (offset, 0)) + { + double_int tem = double_int_mul (tree_to_double_int (offset), + uhwi_to_double_int (BITS_PER_UNIT)); + tem = double_int_add (tem, tree_to_double_int (bit_offset)); + if (double_int_fits_in_shwi_p (tem)) + { + *pbitpos = double_int_to_shwi (tem); + *poffset = NULL_TREE; + return exp; + } + } + + /* Otherwise, split it up. */ + *pbitpos = tree_low_cst (bit_offset, 0); + *poffset = offset; - *pmode = mode; return exp; } diff -Nru gcc/expr.h gcc/expr.h --- gcc/expr.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/expr.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Definitions for code generation pass of GNU compiler. Copyright (C) 1987, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_EXPR_H #define GCC_EXPR_H diff -Nru gcc/final.c gcc/final.c --- gcc/final.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/final.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Convert RTL to assembler code and output it, for GNU compiler. Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, - 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This is the final pass of the compiler. It looks at the rtl code for a function and outputs assembler code. @@ -3375,6 +3374,7 @@ case ZERO_EXTEND: case SIGN_EXTEND: case SUBREG: + case TRUNCATE: output_addr_const (file, XEXP (x, 0)); break; diff -Nru gcc/fix-header.c gcc/fix-header.c --- gcc/fix-header.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/fix-header.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,20 +1,20 @@ /* fix-header.c - Make C header file suitable for C++. - Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc. + Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, + 2002, 2003, 2004, 2006, 2007 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ /* This program massages a system include file (such as stdio.h), into a form that is compatible with GNU C and GNU C++. diff -Nru gcc/fixproto gcc/fixproto --- gcc/fixproto 2010-10-14 22:27:55.000000000 +0200 +++ gcc/fixproto 2012-12-31 17:06:05.000000000 +0100 @@ -4,13 +4,13 @@ # fixproto TARGET-DIR SOURCE-DIR-ALL SOURCE-DIR-STD # # COPYRIGHT -# Copyright (C) 1993, 1994, 1997, 1998, 2002, 2003 +# Copyright (C) 1993, 1994, 1997, 1998, 2002, 2003, 2007 # 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) +# the Free Software Foundation; either version 3, or (at your option) # any later version. # # GCC is distributed in the hope that it will be useful, @@ -19,9 +19,8 @@ # 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, 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. +# along with GCC; see the file COPYING3. If not see +# . # # DESCRIPTION # Adjunct script for GCC to populate a directory with ANSI, diff -Nru gcc/flags.h gcc/flags.h --- gcc/flags.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/flags.h 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Compilation switch flag definitions for GCC. Copyright (C) 1987, 1988, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, - 2003, 2004, 2005, 2006, 2007 + 2003, 2004, 2005, 2006, 2007, 2008 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_FLAGS_H #define GCC_FLAGS_H @@ -103,16 +102,6 @@ extern bool warn_larger_than; extern HOST_WIDE_INT larger_than_size; -/* Nonzero means warn about constructs which might not be strict - aliasing safe. */ - -extern int warn_strict_aliasing; - -/* Nonzero means warn about optimizations which rely on undefined - signed overflow. */ - -extern int warn_strict_overflow; - /* Temporarily suppress certain warnings. This is set while reading code from a system header file. */ @@ -360,6 +349,9 @@ #define TYPE_OVERFLOW_TRAPS(TYPE) \ (!TYPE_UNSIGNED (TYPE) && flag_trapv) +/* True if pointer types have undefined overflow. */ +#define POINTER_TYPE_OVERFLOW_UNDEFINED (flag_strict_overflow) + /* Names for the different levels of -Wstrict-overflow=N. The numeric values here correspond to N. */ diff -Nru gcc/flow.c gcc/flow.c --- gcc/flow.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/flow.c 2012-12-31 17:06:05.000000000 +0100 @@ -1,13 +1,13 @@ /* Data flow analysis for GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, - Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains the data flow analysis pass of the compiler. It computes data flow information which tells combine_instructions diff -Nru gcc/fold-const.c gcc/fold-const.c --- gcc/fold-const.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/fold-const.c 2012-12-31 17:32:44.000000000 +0100 @@ -1,13 +1,13 @@ /* Fold a constant sub-tree into a single node for C-compiler Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /*@@ This file should be rewritten to use an arbitrary precision @@ representation for "struct tree_int_cst" and "struct tree_real_cst". @@ -981,7 +980,6 @@ static void fold_overflow_warning (const char* gmsgid, enum warn_strict_overflow_code wc) { - gcc_assert (!flag_wrapv && !flag_trapv); if (fold_deferring_overflow_warnings > 0) { if (fold_deferred_overflow_warning == NULL @@ -5664,14 +5662,9 @@ } break; } - /* APPLE LOCAL begin radar 5612779, mainline candidate */ - /* Do not move a negative constant from an ABS_EXPR. */ - else if (!TYPE_UNSIGNED (ctype) - && !TYPE_UNSIGNED (type) - && TREE_CODE (c) == INTEGER_CST - && TREE_INT_CST_HIGH (c) < 0) + /* If the constant is negative, we cannot simplify this. */ + if (tree_int_cst_sgn (c) == -1) break; - /* APPLE LOCAL end radar 5612779, mainline candidate */ /* FALLTHROUGH */ case NEGATE_EXPR: if ((t1 = extract_muldiv (op0, c, code, wide_type, strict_overflow_p)) @@ -6654,12 +6647,18 @@ if (TYPE_PRECISION (TREE_TYPE (arg0)) <= TYPE_PRECISION (shorter_type)) return NULL_TREE; - arg1_unw = get_unwidened (arg1, shorter_type); + arg1_unw = get_unwidened (arg1, NULL_TREE); /* If possible, express the comparison in the shorter mode. */ if ((code == EQ_EXPR || code == NE_EXPR || TYPE_UNSIGNED (TREE_TYPE (arg0)) == TYPE_UNSIGNED (shorter_type)) && (TREE_TYPE (arg1_unw) == shorter_type + || (TYPE_PRECISION (shorter_type) + > TYPE_PRECISION (TREE_TYPE (arg1_unw))) + || ((TYPE_PRECISION (shorter_type) + == TYPE_PRECISION (TREE_TYPE (arg1_unw))) + && (TYPE_UNSIGNED (shorter_type) + == TYPE_UNSIGNED (TREE_TYPE (arg1_unw)))) || (TREE_CODE (arg1_unw) == INTEGER_CST && (TREE_CODE (shorter_type) == INTEGER_TYPE || TREE_CODE (shorter_type) == BOOLEAN_TYPE) @@ -7961,6 +7960,46 @@ return NULL_TREE; } +/* Return whether BASE + OFFSET may wrap around the address space. + This is used to avoid issuing overflow warnings for expressions + like &p->x which can not wrap. */ + +static bool +pointer_may_wrap_p (tree base, tree offset) +{ + unsigned HOST_WIDE_INT offset_low; + HOST_WIDE_INT size, offset_high; + + if (!POINTER_TYPE_P (TREE_TYPE (base)) + && TREE_CODE (TREE_TYPE (base)) != ARRAY_TYPE) + return true; + + if (offset == NULL_TREE) + { + offset_low = 0; + offset_high = 0; + } + else if (TREE_CODE (offset) != INTEGER_CST || TREE_OVERFLOW (offset)) + return true; + else + { + offset_low = TREE_INT_CST_LOW (offset); + offset_high = TREE_INT_CST_HIGH (offset); + + if (offset_high != 0) + return true; + } + + if (POINTER_TYPE_P (TREE_TYPE (base))) + size = int_size_in_bytes (TREE_TYPE (TREE_TYPE (base))); + else + size = int_size_in_bytes (TREE_TYPE (base)); + if (size <= 0) + return true; + + return offset_low > (unsigned HOST_WIDE_INT) size; +} + /* Subroutine of fold_binary. This routine performs all of the transformations that are common to the equality/inequality operators (EQ_EXPR and NE_EXPR) and the ordering operators @@ -8029,7 +8068,10 @@ not here. */ if (POINTER_TYPE_P (TREE_TYPE (arg0)) && !flag_wrapv - && !TYPE_OVERFLOW_TRAPS (TREE_TYPE (arg0))) + && !TYPE_OVERFLOW_TRAPS (TREE_TYPE (arg0)) + && (code == EQ_EXPR + || code == NE_EXPR + || POINTER_TYPE_OVERFLOW_UNDEFINED)) { tree base0, offset0, base1, offset1; @@ -8054,6 +8096,16 @@ else offset1 = fold_convert (signed_size_type_node, offset1); + if (code != EQ_EXPR + && code != NE_EXPR + && !operand_equal_p (offset0, offset1, 0) + && (pointer_may_wrap_p (base0, offset0) + || pointer_may_wrap_p (base1, offset1))) + fold_overflow_warning (("assuming pointer wraparound does not " + "occur when comparing P +- C1 with " + "P +- C2"), + WARN_STRICT_OVERFLOW_COMPARISON); + return fold_build2 (code, type, offset0, offset1); } } @@ -8868,7 +8920,7 @@ /* With undefined overflow we can only associate constants with one variable. */ - if ((POINTER_TYPE_P (type) + if (((POINTER_TYPE_P (type) && POINTER_TYPE_OVERFLOW_UNDEFINED) || (INTEGRAL_TYPE_P (type) && !(TYPE_UNSIGNED (type) || flag_wrapv))) && var0 && var1) @@ -9384,6 +9436,7 @@ /* ~X | X is -1. */ if (TREE_CODE (arg0) == BIT_NOT_EXPR + && INTEGRAL_TYPE_P (TREE_TYPE (arg1)) && operand_equal_p (TREE_OPERAND (arg0, 0), arg1, 0)) { t1 = build_int_cst (type, -1); @@ -9393,6 +9446,7 @@ /* X | ~X is -1. */ if (TREE_CODE (arg1) == BIT_NOT_EXPR + && INTEGRAL_TYPE_P (TREE_TYPE (arg0)) && operand_equal_p (arg0, TREE_OPERAND (arg1, 0), 0)) { t1 = build_int_cst (type, -1); @@ -9500,6 +9554,7 @@ /* ~X ^ X is -1. */ if (TREE_CODE (arg0) == BIT_NOT_EXPR + && INTEGRAL_TYPE_P (TREE_TYPE (arg1)) && operand_equal_p (TREE_OPERAND (arg0, 0), arg1, 0)) { t1 = build_int_cst (type, -1); @@ -9509,6 +9564,7 @@ /* X ^ ~X is -1. */ if (TREE_CODE (arg1) == BIT_NOT_EXPR + && INTEGRAL_TYPE_P (TREE_TYPE (arg0)) && operand_equal_p (arg0, TREE_OPERAND (arg1, 0), 0)) { t1 = build_int_cst (type, -1); @@ -10029,7 +10085,7 @@ strict_overflow_p = false; if (TREE_CODE (arg1) == LSHIFT_EXPR && (TYPE_UNSIGNED (type) - || tree_expr_nonnegative_warnv_p (arg0, &strict_overflow_p))) + || tree_expr_nonnegative_warnv_p (op0, &strict_overflow_p))) { tree sval = TREE_OPERAND (arg1, 0); if (integer_pow2p (sval) && tree_int_cst_sgn (sval) > 0) @@ -10146,7 +10202,7 @@ strict_overflow_p = false; if ((code == TRUNC_MOD_EXPR || code == FLOOR_MOD_EXPR) && (TYPE_UNSIGNED (type) - || tree_expr_nonnegative_warnv_p (arg0, &strict_overflow_p))) + || tree_expr_nonnegative_warnv_p (op0, &strict_overflow_p))) { tree c = arg1; /* Also optimize A % (C << N) where C is a power of 2, @@ -10648,24 +10704,24 @@ tree arg01 = TREE_OPERAND (arg0, 1); if (TREE_CODE (arg00) == LSHIFT_EXPR && integer_onep (TREE_OPERAND (arg00, 0))) - return - fold_build2 (code, type, - build2 (BIT_AND_EXPR, TREE_TYPE (arg0), - build2 (RSHIFT_EXPR, TREE_TYPE (arg00), - arg01, TREE_OPERAND (arg00, 1)), - fold_convert (TREE_TYPE (arg0), - integer_one_node)), - arg1); - else if (TREE_CODE (TREE_OPERAND (arg0, 1)) == LSHIFT_EXPR - && integer_onep (TREE_OPERAND (TREE_OPERAND (arg0, 1), 0))) - return - fold_build2 (code, type, - build2 (BIT_AND_EXPR, TREE_TYPE (arg0), - build2 (RSHIFT_EXPR, TREE_TYPE (arg01), - arg00, TREE_OPERAND (arg01, 1)), - fold_convert (TREE_TYPE (arg0), - integer_one_node)), - arg1); + { + tree tem = fold_build2 (RSHIFT_EXPR, TREE_TYPE (arg00), + arg01, TREE_OPERAND (arg00, 1)); + tem = fold_build2 (BIT_AND_EXPR, TREE_TYPE (arg0), tem, + build_int_cst (TREE_TYPE (arg0), 1)); + return fold_build2 (code, type, + fold_convert (TREE_TYPE (arg1), tem), arg1); + } + else if (TREE_CODE (arg01) == LSHIFT_EXPR + && integer_onep (TREE_OPERAND (arg01, 0))) + { + tree tem = fold_build2 (RSHIFT_EXPR, TREE_TYPE (arg01), + arg00, TREE_OPERAND (arg01, 1)); + tem = fold_build2 (BIT_AND_EXPR, TREE_TYPE (arg0), tem, + build_int_cst (TREE_TYPE (arg0), 1)); + return fold_build2 (code, type, + fold_convert (TREE_TYPE (arg1), tem), arg1); + } } /* If this is an NE or EQ comparison of zero against the result of a diff -Nru gcc/fp-test.c gcc/fp-test.c --- gcc/fp-test.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/fp-test.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* fp-test.c - Check that all floating-point operations are available. - Copyright (C) 1995, 2000, 2003 Free Software Foundation, Inc. + Copyright (C) 1995, 2000, 2003, 2007 Free Software Foundation, Inc. Contributed by Ronald F. Guilmette . 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* This is a trivial test program which may be useful to people who are porting the GCC or G++ compilers to a new system. The intent here is diff -Nru gcc/function.c gcc/function.c --- gcc/function.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/function.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Expands front end tree to back end RTL for GCC. Copyright (C) 1987, 1988, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, - 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file handles the generation of rtl code from tree structure at the level of the function as a whole. diff -Nru gcc/function.h gcc/function.h --- gcc/function.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/function.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Structure for saving state for a nested function. Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_FUNCTION_H #define GCC_FUNCTION_H diff -Nru gcc/gcc.c gcc/gcc.c --- gcc/gcc.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gcc.c 2012-12-31 17:06:06.000000000 +0100 @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. +along with GCC; see the file COPYING3. If not see +. This paragraph is here to try to keep Sun CC from dying. The number of chars here seems crucial!!!! */ diff -Nru gcc/gcc.h gcc/gcc.h --- gcc/gcc.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gcc.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Header file for modules that link with gcc.c - Copyright (C) 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2001, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_GCC_H #define GCC_GCC_H diff -Nru gcc/gccbug.in gcc/gccbug.in --- gcc/gccbug.in 2010-10-14 22:27:55.000000000 +0200 +++ gcc/gccbug.in 2012-12-31 17:06:06.000000000 +0100 @@ -1,6 +1,6 @@ #!/bin/sh # Submit a problem report to a GNATS site. -# Copyright (C) 1993, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. +# Copyright (C) 1993, 2000, 2001, 2002, 2003, 2007 Free Software Foundation, Inc. # Contributed by Brendan Kehoe (brendan@cygnus.com), based on a # version written by Heinz G. Seidl (hgs@cygnus.com). # @@ -8,7 +8,7 @@ # # GNU GNATS 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) +# the Free Software Foundation; either version 3, or (at your option) # any later version. # # GNU GNATS is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with GNU GNATS; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. +# along with GNU GNATS; see the file COPYING3. If not see +# . # The version of this send-pr. VERSION=3.113 diff -Nru gcc/gccspec.c gcc/gccspec.c --- gcc/gccspec.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/gccspec.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Specific flags and argument handling of the C front-end. - Copyright (C) 1999, 2001, 2003 Free Software Foundation, Inc. + Copyright (C) 1999, 2001, 2003, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/gcov-dump.c gcc/gcov-dump.c --- gcc/gcov-dump.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/gcov-dump.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,10 +1,10 @@ /* Dump a gcov file, for debugging use. - Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Nathan Sidwell Gcov 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) +the Free Software Foundation; either version 3, or (at your option) any later version. Gcov is distributed in the hope that it will be useful, @@ -13,9 +13,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with Gcov; see the file COPYING. If not, write to -the Free Software Foundation, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with Gcov; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/gcov-io.c gcc/gcov-io.c --- gcc/gcov-io.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gcov-io.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,5 +1,5 @@ /* File format for coverage information - Copyright (C) 1996, 1997, 1998, 2000, 2002, 2003, 2004, 2005 + Copyright (C) 1996, 1997, 1998, 2000, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Bob Manson . Completely remangled by Nathan Sidwell . @@ -8,7 +8,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Routines declared in gcov-io.h. This file should be #included by another source file, after having #included gcov-io.h. */ diff -Nru gcc/gcov-iov.c gcc/gcov-iov.c --- gcc/gcov-iov.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gcov-iov.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Generate gcov version string from version.c. See gcov-io.h for description of how the version string is generated. - Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2005, 2007 Free Software Foundation, Inc. Contributed by Nathan Sidwell 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include #include diff -Nru gcc/gcov.c gcc/gcov.c --- gcc/gcov.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gcov.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,14 +1,14 @@ /* Gcov.c: prepend line execution counts and branch probabilities to a source file. Copyright (C) 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by James E. Wilson of Cygnus Support. Mangled by Bob Manson of Cygnus Support. Mangled further by Nathan Sidwell Gcov 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) +the Free Software Foundation; either version 3, or (at your option) any later version. Gcov is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with Gcov; see the file COPYING. If not, write to -the Free Software Foundation, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with Gcov; see the file COPYING3. If not see +. */ /* ??? Print a list of the ten blocks with the highest execution counts, and list the line numbers corresponding to those blocks. Also, perhaps diff -Nru gcc/gcse.c gcc/gcse.c --- gcc/gcse.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/gcse.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Global common subexpression elimination/Partial redundancy elimination and global constant/copy propagation for GNU compiler. - Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* TODO - reordering of memory allocation and freeing to be more space efficient diff -Nru gcc/gen-protos.c gcc/gen-protos.c --- gcc/gen-protos.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gen-protos.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,20 +1,20 @@ /* gen-protos.c - massages a list of prototypes, for use by fixproto. - Copyright (C) 1993, 1994, 1995, 1996, 1998, - 1999, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1993, 1994, 1995, 1996, 1998, 1999, 2003, 2004, 2005, 2007 + 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ #include "bconfig.h" #include "system.h" diff -Nru gcc/genattr.c gcc/genattr.c --- gcc/genattr.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genattr.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,5 +1,5 @@ /* Generate attribute information (insn-attr.h) from machine description. - Copyright (C) 1991, 1994, 1996, 1998, 1999, 2000, 2003, 2004 + Copyright (C) 1991, 1994, 1996, 1998, 1999, 2000, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu) @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/genattrtab.c gcc/genattrtab.c --- gcc/genattrtab.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genattrtab.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Generate code from machine description to compute values of attributes. Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu) 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This program handles insn attributes and the DEFINE_DELAY and DEFINE_INSN_RESERVATION definitions. diff -Nru gcc/genautomata.c gcc/genautomata.c --- gcc/genautomata.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genautomata.c 2012-12-31 17:06:06.000000000 +0100 @@ -8,7 +8,7 @@ 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 +Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* References: diff -Nru gcc/gencheck.c gcc/gencheck.c --- gcc/gencheck.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gencheck.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generate check macros for tree codes. - Copyright (C) 1998, 1999, 2000, 2002, 2003, 2004 + Copyright (C) 1998, 1999, 2000, 2002, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" #include "system.h" diff -Nru gcc/genchecksum.c gcc/genchecksum.c --- gcc/genchecksum.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/genchecksum.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generate checksums of executables for PCH validation - Copyright (C) 2005 + Copyright (C) 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" #include "system.h" diff -Nru gcc/gencodes.c gcc/gencodes.c --- gcc/gencodes.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/gencodes.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,14 +1,14 @@ /* Generate from machine description: - some macros CODE_FOR_... giving the insn_code_number value for each of the defined standard insn names. - Copyright (C) 1987, 1991, 1995, 1998, - 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 1987, 1991, 1995, 1998, 1999, 2000, 2001, 2003, + 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/genconditions.c gcc/genconditions.c --- gcc/genconditions.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genconditions.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,12 @@ /* Process machine description and calculate constant conditions. - Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 + 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* In a machine description, all of the insn patterns - define_insn, define_expand, define_split, define_peephole, define_peephole2 - diff -Nru gcc/genconfig.c gcc/genconfig.c --- gcc/genconfig.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genconfig.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Generate from machine description: - some #define configuration flags. - Copyright (C) 1987, 1991, 1997, 1998, 1999, 2000, 2003, 2004 + Copyright (C) 1987, 1991, 1997, 1998, 1999, 2000, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/genconstants.c gcc/genconstants.c --- gcc/genconstants.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/genconstants.c 2012-12-31 17:06:06.000000000 +0100 @@ -2,14 +2,14 @@ a series of #define statements, one for each constant named in a (define_constants ...) pattern. - Copyright (C) 1987, 1991, 1995, 1998, 1999, 2000, 2001, 2003, 2004 - Free Software Foundation, Inc. + Copyright (C) 1987, 1991, 1995, 1998, 1999, 2000, 2001, 2003, 2004, + 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This program does not use gensupport.c because it does not need to look at insn patterns, only (define_constants), and we want to diff -Nru gcc/genemit.c gcc/genemit.c --- gcc/genemit.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genemit.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generate code from machine description to emit insns as rtl. Copyright (C) 1987, 1988, 1991, 1994, 1995, 1997, 1998, 1999, 2000, 2001, - 2003, 2004, 2005 Free Software Foundation, Inc. + 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/genextract.c gcc/genextract.c --- gcc/genextract.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genextract.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Generate code from machine description to extract operands from insn as rtl. Copyright (C) 1987, 1991, 1992, 1993, 1997, 1998, 1999, 2000, 2003, - 2004, 2005 + 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/genflags.c gcc/genflags.c --- gcc/genflags.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/genflags.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,14 +1,14 @@ /* Generate from machine description: - some flags HAVE_... saying which simple standard instructions are available for this machine. - Copyright (C) 1987, 1991, 1995, 1998, - 1999, 2000, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 1987, 1991, 1995, 1998, 1999, 2000, 2003, 2004, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/gengenrtl.c gcc/gengenrtl.c --- gcc/gengenrtl.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gengenrtl.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generate code to allocate RTL structures. - Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004 + Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/gengtype-lex.l gcc/gengtype-lex.l --- gcc/gengtype-lex.l 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gengtype-lex.l 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* -*- indented-text -*- */ /* Process source files and output type information. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ %{ #include "bconfig.h" diff -Nru gcc/gengtype-yacc.y gcc/gengtype-yacc.y --- gcc/gengtype-yacc.y 2010-10-14 22:27:55.000000000 +0200 +++ gcc/gengtype-yacc.y 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* -*- indented-text -*- */ /* Process source files and output type information. - Copyright (C) 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ %{ #include "bconfig.h" diff -Nru gcc/gengtype.c gcc/gengtype.c --- gcc/gengtype.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gengtype.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,22 +1,21 @@ /* Process source files and output type information. Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. -This file is part of GCC. + 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ + 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 3, 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 COPYING3. If not see + . */ #include "bconfig.h" #include "system.h" @@ -1019,13 +1018,13 @@ create_file (const char *name, const char *oname) { static const char *const hdr[] = { - " Copyright (C) 2004 Free Software Foundation, Inc.\n", + " Copyright (C) 2004, 2007 Free Software Foundation, Inc.\n", "\n", "This file is part of GCC.\n", "\n", "GCC is free software; you can redistribute it and/or modify it under\n", "the terms of the GNU General Public License as published by the Free\n", - "Software Foundation; either version 2, or (at your option) any later\n", + "Software Foundation; either version 3, or (at your option) any later\n", "version.\n", "\n", "GCC is distributed in the hope that it will be useful, but WITHOUT ANY\n", @@ -1034,9 +1033,8 @@ "for more details.\n", "\n", "You should have received a copy of the GNU General Public License\n", - "along with GCC; see the file COPYING. If not, write to the Free\n", - "Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA\n", - "02110-1301, USA. */\n", + "along with GCC; see the file COPYING3. If not see\n", + ". */\n", "\n", "/* This file is machine generated. Do not edit. */\n" }; diff -Nru gcc/gengtype.h gcc/gengtype.h --- gcc/gengtype.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gengtype.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Process source files and output type information. - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* A file position, mostly for error messages. The FILE element may be compared using pointer equality. */ diff -Nru gcc/genmddeps.c gcc/genmddeps.c --- gcc/genmddeps.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genmddeps.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,19 +1,19 @@ /* genmddeps.c - creates a makefile dependency fragment for the md file. - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2007 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + 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 3, 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; see the file COPYING3. If not see + . */ #include "bconfig.h" #include "system.h" diff -Nru gcc/genmodes.c gcc/genmodes.c --- gcc/genmodes.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/genmodes.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generate the machine mode enumeration and associated tables. - Copyright (C) 2003, 2004 + Copyright (C) 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" #include "system.h" diff -Nru gcc/genmultilib gcc/genmultilib --- gcc/genmultilib 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genmultilib 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,13 @@ #!/bin/sh # Generates multilib.h. -# Copyright (C) 1994, 1995, 1996, 1997, 1999, 2002 Free Software Foundation, Inc. +# Copyright (C) 1994, 1995, 1996, 1997, 1999, 2002, 2007 +# 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 +#Software Foundation; either version 3, or (at your option) any later #version. #GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +16,8 @@ #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, 51 Franklin Street, Fifth Floor, Boston, MA -#02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # This shell script produces a header file which the gcc driver # program uses to pick which library to use based on the machine diff -Nru gcc/genopinit.c gcc/genopinit.c --- gcc/genopinit.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genopinit.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generate code to initialize optabs from machine description. Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/genoutput.c gcc/genoutput.c --- gcc/genoutput.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genoutput.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generate code from to output assembler insns as recognized from rtl. Copyright (C) 1987, 1988, 1992, 1994, 1995, 1997, 1998, 1999, 2000, 2002, - 2003, 2004, 2005 Free Software Foundation, Inc. + 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This program reads the machine description for the compiler target machine diff -Nru gcc/genpeep.c gcc/genpeep.c --- gcc/genpeep.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genpeep.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generate code from machine description to perform peephole optimizations. - Copyright (C) 1987, 1989, 1992, 1997, 1998, - 1999, 2000, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 1987, 1989, 1992, 1997, 1998, 1999, 2000, 2003, 2004, + 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" diff -Nru gcc/genpreds.c gcc/genpreds.c --- gcc/genpreds.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/genpreds.c 2012-12-31 17:06:06.000000000 +0100 @@ -2,13 +2,14 @@ - prototype declarations for operand predicates (tm-preds.h) - function definitions of operand predicates, if defined new-style (insn-preds.c) - Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 + 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "bconfig.h" #include "system.h" diff -Nru gcc/genrecog.c gcc/genrecog.c --- gcc/genrecog.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/genrecog.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,13 @@ /* Generate code from machine description to recognize rtl as insns. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* This program is used to produce insn-recog.c, which contains a diff -Nru gcc/gensupport.c gcc/gensupport.c --- gcc/gensupport.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gensupport.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Support routines for the various generation passes. - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "bconfig.h" #include "system.h" diff -Nru gcc/gensupport.h gcc/gensupport.h --- gcc/gensupport.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gensupport.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Declarations for rtx-reader support for gen* routines. - Copyright (C) 2000, 2002, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2000, 2002, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_GENSUPPORT_H #define GCC_GENSUPPORT_H diff -Nru gcc/ggc-common.c gcc/ggc-common.c --- gcc/ggc-common.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ggc-common.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Simple garbage collection for the GNU compiler. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Generic garbage collection (GC) functions and data, not specific to any particular GC implementation. */ diff -Nru gcc/ggc-none.c gcc/ggc-none.c --- gcc/ggc-none.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ggc-none.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Null garbage collection for the GNU compiler. - Copyright (C) 1998, 1999, 2000, 2003, 2004, 2005 + Copyright (C) 1998, 1999, 2000, 2003, 2004, 2005, 2007 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ /* 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. diff -Nru gcc/ggc-page.c gcc/ggc-page.c --- gcc/ggc-page.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ggc-page.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* "Bag-of-pages" garbage collector for the GNU compiler. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/ggc-zone.c gcc/ggc-zone.c --- gcc/ggc-zone.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ggc-zone.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,5 +1,5 @@ /* "Bag-of-pages" zone garbage collector for the GNU compiler. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Richard Henderson (rth@redhat.com) and Daniel Berlin @@ -10,7 +10,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -19,9 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/ggc.h gcc/ggc.h --- gcc/ggc.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ggc.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Garbage collection for the GNU compiler. - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_GGC_H #define GCC_GGC_H diff -Nru gcc/gimple-low.c gcc/gimple-low.c --- gcc/gimple-low.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gimple-low.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Tree lowering pass. Lowers GIMPLE into unstructured form. - Copyright (C) 2003, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/gimplify.c gcc/gimplify.c --- gcc/gimplify.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/gimplify.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,6 +1,7 @@ /* Tree lowering pass. This pass converts the GENERIC functions-as-trees tree representation into the GIMPLE form. - Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Major work done by Sebastian Pop , Diego Novillo and Jason Merrill . @@ -8,7 +9,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -1602,9 +1602,7 @@ /* All checks succeeded. Build a new node to merge the cast. */ *expr_p = build4 (ARRAY_REF, dctype, obj_expr, TYPE_MIN_VALUE (TYPE_DOMAIN (datype)), - TYPE_MIN_VALUE (TYPE_DOMAIN (datype)), - size_binop (EXACT_DIV_EXPR, TYPE_SIZE_UNIT (dctype), - size_int (TYPE_ALIGN_UNIT (dctype)))); + NULL_TREE, NULL_TREE); *expr_p = build1 (ADDR_EXPR, ctype, *expr_p); } @@ -3537,8 +3535,16 @@ gcc_assert (TREE_CODE (*expr_p) == MODIFY_EXPR || TREE_CODE (*expr_p) == INIT_EXPR); - /* For zero sized types only gimplify the left hand side and right hand side - as statements and throw away the assignment. */ + /* See if any simplifications can be done based on what the RHS is. */ + ret = gimplify_modify_expr_rhs (expr_p, from_p, to_p, pre_p, post_p, + want_value); + if (ret != GS_UNHANDLED) + return ret; + + /* For zero sized types only gimplify the left hand side and right hand + side as statements and throw away the assignment. Do this after + gimplify_modify_expr_rhs so we handle TARGET_EXPRs of addressable + types properly. */ if (zero_sized_type (TREE_TYPE (*from_p))) { gimplify_stmt (from_p); @@ -3549,12 +3555,6 @@ return GS_ALL_DONE; } - /* See if any simplifications can be done based on what the RHS is. */ - ret = gimplify_modify_expr_rhs (expr_p, from_p, to_p, pre_p, post_p, - want_value); - if (ret != GS_UNHANDLED) - return ret; - /* If the value being copied is of variable width, compute the length of the copy into a WITH_SIZE_EXPR. Note that we need to do this before gimplifying any of the operands so that we can resolve any diff -Nru gcc/global.c gcc/global.c --- gcc/global.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/global.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Allocate registers for pseudo-registers that span basic blocks. Copyright (C) 1987, 1988, 1991, 1994, 1996, 1997, 1998, - 1999, 2000, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/graph.c gcc/graph.c --- gcc/graph.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/graph.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,5 +1,5 @@ /* Output routines for graphical representation. - Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004 + Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Ulrich Drepper , 1998. @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include #include "system.h" diff -Nru gcc/graph.h gcc/graph.h --- gcc/graph.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/graph.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Header file for graph routines. - Copyright (C) 1999, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 1999, 2003, 2004, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_GRAPH_H #define GCC_GRAPH_H diff -Nru gcc/gthr-rtems.h gcc/gthr-rtems.h --- gcc/gthr-rtems.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/gthr-rtems.h 2012-12-31 17:06:06.000000000 +0100 @@ -38,7 +38,6 @@ #define __GTHREADS 1 #define __GTHREAD_ONCE_INIT 0 -#define __GTHREAD_MUTEX_INIT 0 #define __GTHREAD_MUTEX_INIT_FUNCTION rtems_gxx_mutex_init #define __GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION rtems_gxx_recursive_mutex_init diff -Nru gcc/haifa-sched.c gcc/haifa-sched.c --- gcc/haifa-sched.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/haifa-sched.c 2012-12-31 17:06:06.000000000 +0100 @@ -8,7 +8,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Instruction scheduling pass. This file, along with sched-deps.c, contains the generic parts. The actual entry point is found for diff -Nru gcc/hard-reg-set.h gcc/hard-reg-set.h --- gcc/hard-reg-set.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/hard-reg-set.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Sets (bit vectors) of hard registers, and operations on them. - Copyright (C) 1987, 1992, 1994, 2000, 2003, 2004, 2005 + Copyright (C) 1987, 1992, 1994, 2000, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_HARD_REG_SET_H #define GCC_HARD_REG_SET_H diff -Nru gcc/hooks.c gcc/hooks.c --- gcc/hooks.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/hooks.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,23 +1,23 @@ /* General-purpose hooks. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - In other words, you are welcome to use, share and improve this program. - You are forbidden to forbid anyone else to use, share and improve - what you give them. Help stamp out software-hoarding! */ + 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 3, 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; see the file COPYING3. If not see + . + + In other words, you are welcome to use, share and improve this program. + You are forbidden to forbid anyone else to use, share and improve + what you give them. Help stamp out software-hoarding! */ /* This file contains generic hooks that can be used as defaults for target or language-dependent hook initializers. */ diff -Nru gcc/hooks.h gcc/hooks.h --- gcc/hooks.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/hooks.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,23 +1,23 @@ /* General-purpose hooks. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - In other words, you are welcome to use, share and improve this program. - You are forbidden to forbid anyone else to use, share and improve - what you give them. Help stamp out software-hoarding! */ + 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 3, 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; see the file COPYING3. If not see + . + + In other words, you are welcome to use, share and improve this program. + You are forbidden to forbid anyone else to use, share and improve + what you give them. Help stamp out software-hoarding! */ #ifndef GCC_HOOKS_H #define GCC_HOOKS_H diff -Nru gcc/host-default.c gcc/host-default.c --- gcc/host-default.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/host-default.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Default host-specific hook definitions. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/hosthooks-def.h gcc/hosthooks-def.h --- gcc/hosthooks-def.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/hosthooks-def.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Default macros to initialize the lang_hooks data structure. - Copyright 2003, 2004 Free Software Foundation, Inc. + Copyright 2003, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_HOST_HOOKS_DEF_H #define GCC_HOST_HOOKS_DEF_H diff -Nru gcc/hosthooks.h gcc/hosthooks.h --- gcc/hosthooks.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/hosthooks.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* The host_hooks data structure. - Copyright 2003, 2004 Free Software Foundation, Inc. + Copyright 2003, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_HOST_HOOKS_H #define GCC_HOST_HOOKS_H diff -Nru gcc/ifcvt.c gcc/ifcvt.c --- gcc/ifcvt.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ifcvt.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* If-conversion support. - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" @@ -2271,6 +2270,46 @@ return false; } +/* Return whether we can use store speculation for MEM. TOP_BB is the + basic block above the conditional block where we are considering + doing the speculative store. We look for whether MEM is set + unconditionally later in the function. */ + +static bool +noce_can_store_speculate_p (basic_block top_bb, rtx mem) +{ + basic_block dominator; + + for (dominator = get_immediate_dominator (CDI_POST_DOMINATORS, top_bb); + dominator != NULL; + dominator = get_immediate_dominator (CDI_POST_DOMINATORS, dominator)) + { + rtx insn; + + FOR_BB_INSNS (dominator, insn) + { + /* If we see something that might be a memory barrier, we + have to stop looking. Even if the MEM is set later in + the function, we still don't want to set it + unconditionally before the barrier. */ + if (INSN_P (insn) + && (volatile_insn_p (PATTERN (insn)) + || (CALL_P (insn) + && (!CONST_OR_PURE_CALL_P (insn) + || pure_call_p (insn))))) + return false; + + if (memory_modified_in_insn_p (mem, insn)) + return true; + if (modified_in_p (XEXP (mem, 0), insn)) + return false; + + } + } + + return false; +} + /* Given a simple IF-THEN or IF-THEN-ELSE block, attempt to convert it without using conditional execution. Return TRUE if we were successful at converting the block. */ @@ -2429,17 +2468,31 @@ goto success; } - /* Disallow the "if (...) x = a;" form (with an implicit "else x = x;") - for optimizations if writing to x may trap or fault, i.e. it's a memory - other than a static var or a stack slot, is misaligned on strict - aligned machines or is read-only. - If x is a read-only memory, then the program is valid only if we - avoid the store into it. If there are stores on both the THEN and - ELSE arms, then we can go ahead with the conversion; either the - program is broken, or the condition is always false such that the - other memory is selected. */ - if (!set_b && MEM_P (orig_x) && noce_mem_write_may_trap_or_fault_p (orig_x)) - return FALSE; + if (!set_b && MEM_P (orig_x)) + { + /* Disallow the "if (...) x = a;" form (implicit "else x = x;") + for optimizations if writing to x may trap or fault, + i.e. it's a memory other than a static var or a stack slot, + is misaligned on strict aligned machines or is read-only. If + x is a read-only memory, then the program is valid only if we + avoid the store into it. If there are stores on both the + THEN and ELSE arms, then we can go ahead with the conversion; + either the program is broken, or the condition is always + false such that the other memory is selected. */ + if (noce_mem_write_may_trap_or_fault_p (orig_x)) + return FALSE; + + /* Avoid store speculation: given "if (...) x = a" where x is a + MEM, we only want to do the store if x is always set + somewhere in the function. This avoids cases like + if (pthread_mutex_trylock(mutex)) + ++global_variable; + where we only want global_variable to be changed if the mutex + is held. FIXME: This should ideally be expressed directly in + RTL somehow. */ + if (!noce_can_store_speculate_p (test_bb, orig_x)) + return FALSE; + } if (noce_try_move (&if_info)) goto success; @@ -2958,7 +3011,8 @@ && find_cond_trap (test_bb, then_edge, else_edge)) goto success; - if (dom_computed[CDI_POST_DOMINATORS] >= DOM_NO_FAST_QUERY + if (life_data_ok + && dom_computed[CDI_POST_DOMINATORS] >= DOM_NO_FAST_QUERY && (! HAVE_conditional_execution || reload_completed)) { if (find_if_case_1 (test_bb, then_edge, else_edge)) @@ -4012,9 +4066,8 @@ free_dominance_info (CDI_DOMINATORS); } - /* Compute postdominators if we think we'll use them. */ - if (HAVE_conditional_execution || life_data_ok) - calculate_dominance_info (CDI_POST_DOMINATORS); + /* Compute postdominators. */ + calculate_dominance_info (CDI_POST_DOMINATORS); if (life_data_ok) clear_bb_flags (); diff -Nru gcc/input.h gcc/input.h --- gcc/input.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/input.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,13 @@ /* Declarations for variables relating to reading the source file. Used by parsers, lexical analyzers, and error message routines. - Copyright (C) 1993, 1997, 1998, 2000, 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 1993, 1997, 1998, 2000, 2003, 2004, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_INPUT_H #define GCC_INPUT_H diff -Nru gcc/insn-addr.h gcc/insn-addr.h --- gcc/insn-addr.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/insn-addr.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Macros to support INSN_ADDRESSES - Copyright (C) 2000 Free Software Foundation, Inc. + Copyright (C) 2000, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_INSN_ADDR_H #define GCC_INSN_ADDR_H diff -Nru gcc/insn-notes.def gcc/insn-notes.def --- gcc/insn-notes.def 2010-10-14 22:27:54.000000000 +0200 +++ gcc/insn-notes.def 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Insn note definitions. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file defines all the codes that may appear in the NOTE_LINE_NUMBER field of a NOTE insn for kinds of notes that are diff -Nru gcc/integrate.c gcc/integrate.c --- gcc/integrate.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/integrate.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Procedure integration for GCC. Copyright (C) 1988, 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/integrate.h gcc/integrate.h --- gcc/integrate.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/integrate.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Function integration definitions for GCC - Copyright (C) 1990, 1995, 1998, 1999, 2000, 2001, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1990, 1995, 1998, 1999, 2000, 2001, 2003, 2004, 2005, + 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "varray.h" diff -Nru gcc/intl.c gcc/intl.c --- gcc/intl.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/intl.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Message translation utilities. - Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/intl.h gcc/intl.h --- gcc/intl.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/intl.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,9 +1,9 @@ /* intl.h - internationalization - Copyright 1998, 2001, 2003, 2004 Free Software Foundation, Inc. + Copyright 1998, 2001, 2003, 2004, 2007 Free Software Foundation, Inc. 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) + the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -12,9 +12,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #ifndef GCC_INTL_H #define GCC_INTL_H diff -Nru gcc/ipa-cp.c gcc/ipa-cp.c --- gcc/ipa-cp.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ipa-cp.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Interprocedural constant propagation - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 Free Software Foundation, Inc. Contributed by Razya Ladelsky 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Interprocedural constant propagation. The aim of interprocedural constant propagation (IPCP) is to find which diff -Nru gcc/ipa-inline.c gcc/ipa-inline.c --- gcc/ipa-inline.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ipa-inline.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Inlining decision heuristics. - Copyright (C) 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Jan Hubicka 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Inlining decision heuristics diff -Nru gcc/ipa-prop.c gcc/ipa-prop.c --- gcc/ipa-prop.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ipa-prop.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Interprocedural analyses. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/ipa-prop.h gcc/ipa-prop.h --- gcc/ipa-prop.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ipa-prop.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Interprocedural analyses. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef IPA_PROP_H #define IPA_PROP_H diff -Nru gcc/ipa-pure-const.c gcc/ipa-pure-const.c --- gcc/ipa-pure-const.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ipa-pure-const.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Callgraph based analysis of static variables. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Kenneth Zadeck 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file mark functions as being either const (TREE_READONLY) or pure (DECL_IS_PURE). @@ -639,6 +638,7 @@ for (i = 0; i < order_pos; i++ ) { enum pure_const_state_e pure_const_state = IPA_CONST; + int count = 0; node = order[i]; /* Find the worst state for any node in the cycle. */ @@ -655,11 +655,40 @@ if (!w_l->state_set_in_source) { struct cgraph_edge *e; + count++; + + /* FIXME!!! Because of pr33826, we cannot have either + immediate or transitive recursive functions marked as + pure or const because dce can delete a function that + is in reality an infinite loop. A better solution + than just outlawing them is to add another bit the + functions to distinguish recursive from non recursive + pure and const function. This would allow the + recursive ones to be cse'd but not dce'd. In this + same vein, we could allow functions with loops to + also be cse'd but not dce'd. + + Unfortunately we are late in stage 3, and the fix + described above is is not appropriate. */ + if (count > 1) + { + pure_const_state = IPA_NEITHER; + break; + } + for (e = w->callees; e; e = e->next_callee) { struct cgraph_node *y = e->callee; /* Only look at the master nodes and skip external nodes. */ y = cgraph_master_clone (y); + + /* Check for immediate recursive functions. See the + FIXME above. */ + if (w == y) + { + pure_const_state = IPA_NEITHER; + break; + } if (y) { funct_state y_l = get_function_state (y); diff -Nru gcc/ipa-reference.c gcc/ipa-reference.c --- gcc/ipa-reference.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ipa-reference.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Callgraph based analysis of static variables. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Kenneth Zadeck 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,10 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. -*/ +along with GCC; see the file COPYING3. If not see +. */ /* This file gathers information about how variables whose scope is confined to the compilation unit are used. diff -Nru gcc/ipa-reference.h gcc/ipa-reference.h --- gcc/ipa-reference.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ipa-reference.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* IPA handling of references. - Copyright (C) 2004-2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Kenneth Zadeck 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_IPA_REFERENCE_H #define GCC_IPA_REFERENCE_H diff -Nru gcc/ipa-type-escape.c gcc/ipa-type-escape.c --- gcc/ipa-type-escape.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ipa-type-escape.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Type based alias analysis. - Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Kenneth Zadeck 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This pass determines which types in the program contain only instances that are completely encapsulated by the compilation unit. diff -Nru gcc/ipa-type-escape.h gcc/ipa-type-escape.h --- gcc/ipa-type-escape.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ipa-type-escape.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Type based alias analysis. - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2007 Free Software Foundation, Inc. Contributed by Kenneth Zadeck 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_IPA_TYPE_ESCAPE_H #define GCC_IPA_TYPE_ESCAPE_H diff -Nru gcc/ipa-utils.c gcc/ipa-utils.c --- gcc/ipa-utils.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ipa-utils.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Utilities for ipa analysis. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 Free Software Foundation, Inc. Contributed by Kenneth Zadeck 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,10 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. -*/ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -78,7 +76,7 @@ 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 + ipa_utils_reduced_inorder. ENV is a stack env and would be unnecessary if C had nested functions. V is the node to start searching from. */ diff -Nru gcc/ipa-utils.h gcc/ipa-utils.h --- gcc/ipa-utils.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/ipa-utils.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Utilities for ipa analysis. - Copyright (C) 2004-2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Kenneth Zadeck 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_IPA_UTILS_H #define GCC_IPA_UTILS_H diff -Nru gcc/ipa.c gcc/ipa.c --- gcc/ipa.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/ipa.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Basic IPA optimizations and utilities. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/jump.c gcc/jump.c --- gcc/jump.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/jump.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Optimize jump instructions, for GNU compiler. Copyright (C) 1987, 1988, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997 - 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This is the pathetic reminder of old fame of the jump-optimization pass of the compiler. Now it contains basically a set of utility functions to diff -Nru gcc/lambda-code.c gcc/lambda-code.c --- gcc/lambda-code.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/lambda-code.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Loop transformation code generation - Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Daniel Berlin 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 + Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with GCC; see the file COPYING3. If not see + . */ #include "config.h" #include "system.h" diff -Nru gcc/lambda-mat.c gcc/lambda-mat.c --- gcc/lambda-mat.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/lambda-mat.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Integer matrix math routines - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Daniel Berlin . 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,9 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ + #include "config.h" #include "system.h" #include "coretypes.h" diff -Nru gcc/lambda-trans.c gcc/lambda-trans.c --- gcc/lambda-trans.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/lambda-trans.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Lambda matrix transformations. - Copyright (C) 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc. Contributed by Daniel Berlin . 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/lambda.h gcc/lambda.h --- gcc/lambda.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/lambda.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Lambda matrix and vector interface. - Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Daniel Berlin 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef LAMBDA_H #define LAMBDA_H diff -Nru gcc/langhooks-def.h gcc/langhooks-def.h --- gcc/langhooks-def.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/langhooks-def.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,13 @@ /* Default macros to initialize the lang_hooks data structure. - Copyright 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Contributed by Alexandre Oliva 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_LANG_HOOKS_DEF_H #define GCC_LANG_HOOKS_DEF_H diff -Nru gcc/langhooks.c gcc/langhooks.c --- gcc/langhooks.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/langhooks.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,13 @@ /* Default language-specific hooks. - Copyright 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Contributed by Alexandre Oliva 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/langhooks.h gcc/langhooks.h --- gcc/langhooks.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/langhooks.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,12 @@ /* The lang_hooks data structure. - Copyright 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_LANG_HOOKS_H #define GCC_LANG_HOOKS_H diff -Nru gcc/lcm.c gcc/lcm.c --- gcc/lcm.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/lcm.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Generic partial redundancy elimination with lazy code motion support. - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* These routines are meant to be used by various optimization passes which can be modeled as lazy code motion problems. diff -Nru gcc/libada-mk.in gcc/libada-mk.in --- gcc/libada-mk.in 2010-10-14 22:27:55.000000000 +0200 +++ gcc/libada-mk.in 2012-12-31 17:06:06.000000000 +0100 @@ -1,10 +1,10 @@ -# Copyright 2004 Free Software Foundation, Inc. +# Copyright 2004, 2007 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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -13,9 +13,8 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston MA 02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # GCC's Makefile fragment for libada. # libada needs some information from the GCC configure file at the moment, diff -Nru gcc/libfuncs.h gcc/libfuncs.h --- gcc/libfuncs.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/libfuncs.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Definitions for code generation pass of GNU compiler. - Copyright (C) 2001, 2004 Free Software Foundation, Inc. + Copyright (C) 2001, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_LIBFUNCS_H #define GCC_LIBFUNCS_H diff -Nru gcc/lists.c gcc/lists.c --- gcc/lists.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/lists.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* List management for the GCC expander. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 1999, 2003, 2004, 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/local-alloc.c gcc/local-alloc.c --- gcc/local-alloc.c 2013-01-03 11:23:37.000000000 +0100 +++ gcc/local-alloc.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* Allocate registers within a basic block, for GNU compiler. Copyright (C) 1987, 1988, 1991, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, - Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Allocation of hard register numbers to pseudo registers is done in two passes. In this pass we consider only regs that are born and diff -Nru gcc/longlong.h gcc/longlong.h --- gcc/longlong.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/longlong.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* longlong.h -- definitions for mixed size 32/64 bit arithmetic. Copyright (C) 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2004, - 2005 Free Software Foundation, Inc. + 2005, 2007 Free Software Foundation, Inc. This definition file 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. + version 3, or (at your option) any later version. This definition file is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied @@ -13,9 +13,8 @@ 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., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with this program; see the file COPYING3. If not see + . */ /* You have to define the following before including this file: diff -Nru gcc/loop-doloop.c gcc/loop-doloop.c --- gcc/loop-doloop.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/loop-doloop.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Perform doloop optimizations - Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Based on code by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz) 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/loop-init.c gcc/loop-init.c --- gcc/loop-init.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/loop-init.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Loop optimizer initialization routines and RTL loop optimization passes. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/loop-invariant.c gcc/loop-invariant.c --- gcc/loop-invariant.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/loop-invariant.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* RTL-level loop invariant motion. - Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2006, 2007 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 +Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This implements the loop invariant motion pass. It is very simple (no calls, libcalls, etc.). This should be sufficient to cleanup things diff -Nru gcc/loop-iv.c gcc/loop-iv.c --- gcc/loop-iv.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/loop-iv.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Rtl-level induction variable analysis. - Copyright (C) 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2007 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 +Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This is a simple analysis of induction variables of the loop. The major use is for determining the number of iterations of a loop for loop unrolling, diff -Nru gcc/loop-unroll.c gcc/loop-unroll.c --- gcc/loop-unroll.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/loop-unroll.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Loop unrolling and peeling. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/loop-unswitch.c gcc/loop-unswitch.c --- gcc/loop-unswitch.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/loop-unswitch.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Loop unswitching for GNU compiler. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/machmode.def gcc/machmode.def --- gcc/machmode.def 2010-10-14 22:27:54.000000000 +0200 +++ gcc/machmode.def 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,13 @@ /* This file contains the definitions and documentation for the machine modes used in the GNU compiler. - Copyright (C) 1987, 1992, 1994, 1997, 1998, 2000, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1987, 1992, 1994, 1997, 1998, 2000, 2003, 2004, 2005, + 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This file defines all the MACHINE MODES used by GCC. diff -Nru gcc/machmode.h gcc/machmode.h --- gcc/machmode.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/machmode.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Machine mode definitions for GCC; included by rtl.h and tree.h. - Copyright (C) 1991, 1993, 1994, 1996, 1998, 1999, 2000, 2001, 2003 - Free Software Foundation, Inc. + Copyright (C) 1991, 1993, 1994, 1996, 1998, 1999, 2000, 2001, 2003, + 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef HAVE_MACHINE_MODES #define HAVE_MACHINE_MODES diff -Nru gcc/main.c gcc/main.c --- gcc/main.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/main.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,10 +1,11 @@ /* main.c: defines main() for cc1, cc1plus, etc. + Copyright (C) 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -13,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/mips-tdump.c gcc/mips-tdump.c --- gcc/mips-tdump.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/mips-tdump.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,6 +1,6 @@ /* Read and manage MIPS symbol tables from object modules. Copyright (C) 1991, 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2003, 2004, - 2006 Free Software Foundation, Inc. + 2006, 2007 Free Software Foundation, Inc. Contributed by hartzell@boulder.colorado.edu, Rewritten by meissner@osf.org. @@ -8,7 +8,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/mips-tfile.c gcc/mips-tfile.c --- gcc/mips-tfile.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/mips-tfile.c 2012-12-31 17:06:06.000000000 +0100 @@ -3,14 +3,14 @@ in the form of comments (the mips assembler does not support assembly access to debug information). Copyright (C) 1991, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Michael Meissner (meissner@cygnus.com). 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -19,9 +19,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Here is a brief description of the MIPS ECOFF symbol table. The diff -Nru gcc/mkconfig.sh gcc/mkconfig.sh --- gcc/mkconfig.sh 2010-10-14 22:27:54.000000000 +0200 +++ gcc/mkconfig.sh 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ #! /bin/sh -# Copyright (C) 2001, 2002, 2006 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2006, 2007 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) +# the Free Software Foundation; either version 3, or (at your option) # any later version. # GCC is distributed in the hope that it will be useful, @@ -14,9 +14,8 @@ # 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, 51 Franklin Street, Fifth Floor, -# Boston MA 02110-1301, USA. +# along with GCC; see the file COPYING3. If not see +# . # Generate gcc's various configuration headers: diff -Nru gcc/mkmap-flat.awk gcc/mkmap-flat.awk --- gcc/mkmap-flat.awk 2010-10-14 22:27:55.000000000 +0200 +++ gcc/mkmap-flat.awk 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,12 @@ # Generate a flat list of symbols to export. +# Copyright (C) 2007 Free Software Foundation, Inc. # Contributed by Richard Henderson # # 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 +# Software Foundation; either version 3, or (at your option) any later # version. # # GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +15,8 @@ # 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, 51 Franklin Street, Fifth Floor, Boston MA -# 02110-1301, USA. +# along with GCC; see the file COPYING3. If not see +# . BEGIN { state = "nm"; diff -Nru gcc/mkmap-symver.awk gcc/mkmap-symver.awk --- gcc/mkmap-symver.awk 2010-10-14 22:27:54.000000000 +0200 +++ gcc/mkmap-symver.awk 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,12 @@ # Generate an ELF symbol version map a-la Solaris and GNU ld. +# Copyright (C) 2007 Free Software Foundation, Inc. # Contributed by Richard Henderson # # 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 +# Software Foundation; either version 3, or (at your option) any later # version. # # GCC is distributed in the hope that it will be useful, but WITHOUT @@ -14,9 +15,8 @@ # 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, 51 Franklin Street, Fifth Floor, Boston MA -# 02110-1301, USA. +# along with GCC; see the file COPYING3. If not see +# . BEGIN { state = "nm"; diff -Nru gcc/mode-classes.def gcc/mode-classes.def --- gcc/mode-classes.def 2010-10-14 22:27:54.000000000 +0200 +++ gcc/mode-classes.def 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Machine mode class definitions for GCC. - Copyright (C) 2003 + Copyright (C) 2003, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #define MODE_CLASSES \ DEF_MODE_CLASS (MODE_RANDOM), /* other */ \ diff -Nru gcc/mode-switching.c gcc/mode-switching.c --- gcc/mode-switching.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/mode-switching.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* CPU mode switching - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/modulo-sched.c gcc/modulo-sched.c --- gcc/modulo-sched.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/modulo-sched.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,12 @@ /* Swing Modulo Scheduling implementation. - Copyright (C) 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc. Contributed by Ayal Zaks and Mustafa Hagog 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/objc/ChangeLog gcc/objc/ChangeLog --- gcc/objc/ChangeLog 2010-10-14 22:24:24.000000000 +0200 +++ gcc/objc/ChangeLog 2013-01-01 14:01:05.000000000 +0100 @@ -1,3 +1,23 @@ +2008-05-19 Release Manager + + * GCC 4.2.4 released. + +2008-02-01 Release Manager + + * GCC 4.2.3 released. + +2007-10-07 Release Manager + + * GCC 4.2.2 released. + +2007-08-29 Nick Clifton + + * Make-lang.in: Change copyright header to refer to version 3 of + the GNU General Public License and to point readers at the + COPYING3 file and the FSF's license web page. + * lang-specs.h, objc-act.c, objc-tree.def, objc-act.h, + config-lang.in, objc-lang.c: Likewise. + 2007-07-19 Release Manager * GCC 4.2.1 released. diff -Nru gcc/objc/Make-lang.in gcc/objc/Make-lang.in --- gcc/objc/Make-lang.in 2010-10-14 22:24:24.000000000 +0200 +++ gcc/objc/Make-lang.in 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,12 @@ # Top level -*- makefile -*- fragment for GNU Objective-C -# Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005 +# Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2007 # 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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -14,10 +14,10 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston, MA 02110-1301, USA. +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . + # This file provides the language dependent support in the main Makefile. # Each language makefile fragment must provide the following targets: diff -Nru gcc/objc/config-lang.in gcc/objc/config-lang.in --- gcc/objc/config-lang.in 2010-10-14 22:24:24.000000000 +0200 +++ gcc/objc/config-lang.in 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,12 @@ # Top level configure fragment for GNU Objective-C -# Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005 +# Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2007 # 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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -14,10 +14,9 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston, MA 02110-1301, USA. +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . # Configure looks for the existence of this file to auto-config each language. # We define several parameters used by configure: diff -Nru gcc/objc/lang-specs.h gcc/objc/lang-specs.h --- gcc/objc/lang-specs.h 2010-10-14 22:24:24.000000000 +0200 +++ gcc/objc/lang-specs.h 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for specs for Objective-C. - Copyright (C) 1998, 1999, 2002, 2002, 2003, 2005 + Copyright (C) 1998, 1999, 2002, 2002, 2003, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,9 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ + /* This is the contribution to the `default_compilers' array in gcc.c for objc. */ diff -Nru gcc/objc/objc-act.c gcc/objc/objc-act.c --- gcc/objc/objc-act.c 2010-10-14 22:24:24.000000000 +0200 +++ gcc/objc/objc-act.c 2013-01-01 14:00:42.000000000 +0100 @@ -1,13 +1,13 @@ /* Implement classes and message passing for Objective C. Copyright (C) 1992, 1993, 1994, 1995, 1997, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Contributed by Steve Naroff. 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -16,9 +16,9 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ + /* Purpose: This module implements the Objective-C 4.0 language. diff -Nru gcc/objc/objc-act.h gcc/objc/objc-act.h --- gcc/objc/objc-act.h 2010-10-14 22:24:24.000000000 +0200 +++ gcc/objc/objc-act.h 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,12 @@ /* Declarations for objc-act.c. - Copyright (C) 1990, 2000, 2001, 2002, 2003, 2004, 2005 + Copyright (C) 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,9 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ + #ifndef GCC_OBJC_ACT_H #define GCC_OBJC_ACT_H diff -Nru gcc/objc/objc-lang.c gcc/objc/objc-lang.c --- gcc/objc/objc-lang.c 2010-10-14 22:24:24.000000000 +0200 +++ gcc/objc/objc-lang.c 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,13 @@ /* Language-dependent hooks for Objective-C. - Copyright 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright 2001, 2002, 2003, 2004, 2005, 2007 + Free Software Foundation, Inc. Contributed by Ziemowit Laski 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +16,9 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ + #include "config.h" #include "system.h" diff -Nru gcc/objc/objc-tree.def gcc/objc/objc-tree.def --- gcc/objc/objc-tree.def 2010-10-14 22:24:24.000000000 +0200 +++ gcc/objc/objc-tree.def 2013-01-01 14:00:42.000000000 +0100 @@ -1,14 +1,14 @@ /* 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, 2004 + Copyright (C) 1990, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -17,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Objective-C types. */ diff -Nru gcc/objcp/ChangeLog gcc/objcp/ChangeLog --- gcc/objcp/ChangeLog 2010-10-14 22:27:26.000000000 +0200 +++ gcc/objcp/ChangeLog 2013-01-01 14:01:05.000000000 +0100 @@ -1,3 +1,23 @@ +2008-05-19 Release Manager + + * GCC 4.2.4 released. + +2008-02-01 Release Manager + + * GCC 4.2.3 released. + +2007-10-07 Release Manager + + * GCC 4.2.2 released. + +2007-08-29 Nick Clifton + + * Make-lang.in: Change copyright header to refer to version 3 of + the GNU General Public License and to point readers at the + COPYING3 file and the FSF's license web page. + * lang-specs.h, objcp-decl.c, objcp-decl.h, config-lang.in, + objcp-lang.c: Likewise. + 2007-07-19 Release Manager * GCC 4.2.1 released. diff -Nru gcc/objcp/Make-lang.in gcc/objcp/Make-lang.in --- gcc/objcp/Make-lang.in 2010-10-14 22:27:26.000000000 +0200 +++ gcc/objcp/Make-lang.in 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,12 @@ # Top level -*- makefile -*- fragment for GNU Objective-C++ -# Copyright (C) 2005 Free Software Foundation, Inc. +# Copyright (C) 2005, 2007 Free Software Foundation, Inc. # Contributed by Ziemowit Laski #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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -15,9 +15,9 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston, MA 02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. + # This file provides the language dependent support in the main Makefile. # Each language makefile fragment must provide the following targets: diff -Nru gcc/objcp/config-lang.in gcc/objcp/config-lang.in --- gcc/objcp/config-lang.in 2010-10-14 22:27:26.000000000 +0200 +++ gcc/objcp/config-lang.in 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,12 @@ # Top level configure fragment for GNU Objective-C++. -# Copyright (C) 2005 Free Software Foundation, Inc. +# Copyright (C) 2005, 2007 Free Software Foundation, Inc. # Contributed by Ziemowit Laski #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) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ #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, 51 Franklin Street, Fifth Floor, -#Boston, MA 02110-1301, USA. +#along with GCC; see the file COPYING3. If not see +#. # Configure looks for the existence of this file to auto-config each language. # We define several parameters used by configure: diff -Nru gcc/objcp/lang-specs.h gcc/objcp/lang-specs.h --- gcc/objcp/lang-specs.h 2010-10-14 22:27:26.000000000 +0200 +++ gcc/objcp/lang-specs.h 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for specs for Objective-C++. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 Free Software Foundation, Inc. Contributed by Ziemowit Laski 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,9 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ + /* This is the contribution to the `default_compilers' array in gcc.c for obj-c++. It is based on -- and should be kept in sync with -- the g++ diff -Nru gcc/objcp/objcp-decl.c gcc/objcp/objcp-decl.c --- gcc/objcp/objcp-decl.c 2010-10-14 22:27:26.000000000 +0200 +++ gcc/objcp/objcp-decl.c 2013-01-01 14:00:42.000000000 +0100 @@ -1,13 +1,13 @@ /* Process the ObjC-specific declarations and variables for the Objective-C++ compiler. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 Free Software Foundation, Inc. Contributed by Ziemowit Laski 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/objcp/objcp-decl.h gcc/objcp/objcp-decl.h --- gcc/objcp/objcp-decl.h 2010-10-14 22:27:26.000000000 +0200 +++ gcc/objcp/objcp-decl.h 2013-01-01 14:00:42.000000000 +0100 @@ -1,13 +1,13 @@ /* Process the ObjC-specific declarations and variables for the Objective-C++ compiler. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 Free Software Foundation, Inc. Contributed by Ziemowit Laski 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,9 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ + #ifndef GCC_OBJCP_DECL_H #define GCC_OBJCP_DECL_H diff -Nru gcc/objcp/objcp-lang.c gcc/objcp/objcp-lang.c --- gcc/objcp/objcp-lang.c 2010-10-14 22:27:26.000000000 +0200 +++ gcc/objcp/objcp-lang.c 2013-01-01 14:00:42.000000000 +0100 @@ -1,12 +1,12 @@ /* Language-dependent hooks for Objective-C++. - Copyright 2005 Free Software Foundation, Inc. + Copyright 2005, 2007 Free Software Foundation, Inc. Contributed by Ziemowit Laski 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,9 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ + #include "config.h" #include "system.h" diff -Nru gcc/omp-builtins.def gcc/omp-builtins.def --- gcc/omp-builtins.def 2010-10-14 22:27:55.000000000 +0200 +++ gcc/omp-builtins.def 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* This file contains the definitions and documentation for the OpenMP builtins used in the GNU compiler. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* Before including this file, you should define a macro: diff -Nru gcc/omp-low.c gcc/omp-low.c --- gcc/omp-low.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/omp-low.c 2012-12-31 17:06:06.000000000 +0100 @@ -3,13 +3,13 @@ marshalling to implement data sharing and copying clauses. Contributed by Diego Novillo - Copyright (C) 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2005, 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -18,9 +18,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/opt-functions.awk gcc/opt-functions.awk --- gcc/opt-functions.awk 2010-10-14 22:27:55.000000000 +0200 +++ gcc/opt-functions.awk 2012-12-31 17:06:06.000000000 +0100 @@ -1,10 +1,10 @@ -# Copyright (C) 2003,2004 Free Software Foundation, Inc. +# Copyright (C) 2003,2004, 2007 Free Software Foundation, Inc. # Contributed by Kelley Cook, June 2004. # Original code from Neil Booth, May 2003. # # 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 +# Free Software Foundation; either version 3, or (at your option) any # later version. # # This program is distributed in the hope that it will be useful, @@ -13,8 +13,8 @@ # 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program; see the file COPYING3. If not see +# . # Some common subroutines for use by opt[ch]-gen.awk. diff -Nru gcc/opt-gather.awk gcc/opt-gather.awk --- gcc/opt-gather.awk 2010-10-14 22:27:55.000000000 +0200 +++ gcc/opt-gather.awk 2012-12-31 17:06:06.000000000 +0100 @@ -1,10 +1,10 @@ -# Copyright (C) 2003,2004 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc. # Contributed by Kelley Cook, June 2004. # Original code from Neil Booth, May 2003. # # 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 +# Free Software Foundation; either version 3, or (at your option) any # later version. # # This program is distributed in the hope that it will be useful, @@ -13,8 +13,8 @@ # 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program; see the file COPYING3. If not see +# . # This Awk script takes a list of *.opt files and combines them into # a three-field sorted list suitable for input into opt[ch]-gen.awk. diff -Nru gcc/optabs.c gcc/optabs.c --- gcc/optabs.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/optabs.c 2012-12-31 17:06:06.000000000 +0100 @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" diff -Nru gcc/optabs.h gcc/optabs.h --- gcc/optabs.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/optabs.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* Definitions for code generation pass of GNU compiler. - Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 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) +the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, @@ -15,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_OPTABS_H #define GCC_OPTABS_H diff -Nru gcc/optc-gen.awk gcc/optc-gen.awk --- gcc/optc-gen.awk 2010-10-14 22:27:54.000000000 +0200 +++ gcc/optc-gen.awk 2012-12-31 17:06:06.000000000 +0100 @@ -1,10 +1,10 @@ -# Copyright (C) 2003,2004 Free Software Foundation, Inc. +# Copyright (C) 2003,2004, 2007 Free Software Foundation, Inc. # Contributed by Kelley Cook, June 2004. # Original code from Neil Booth, May 2003. # # 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 +# Free Software Foundation; either version 3, or (at your option) any # later version. # # This program is distributed in the hope that it will be useful, @@ -13,8 +13,8 @@ # 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program; see the file COPYING3. If not see +# . # This Awk script reads in the option records generated from # opt-gather.awk, combines the flags of duplicat options and generates a @@ -295,8 +295,11 @@ idx = -1; } } - printf(" { %c-%s%c,\n %s,\n %s, %u, %d,\n", - quote, opts[i], quote, hlp, back_chain[i], len, idx) + # Split the printf after %u to work around an ia64-hp-hpux11.23 + # awk bug. + printf(" { %c-%s%c,\n %s,\n %s, %u,", + quote, opts[i], quote, hlp, back_chain[i], len) + printf(" %d,\n", idx) condition = opt_args("Condition", flags[i]) cl_flags = switch_flags(flags[i]) if (condition != "") diff -Nru gcc/opth-gen.awk gcc/opth-gen.awk --- gcc/opth-gen.awk 2010-10-14 22:27:55.000000000 +0200 +++ gcc/opth-gen.awk 2012-12-31 17:06:06.000000000 +0100 @@ -1,10 +1,10 @@ -# Copyright (C) 2003,2004,2005,2006 Free Software Foundation, Inc. +# Copyright (C) 2003,2004,2005,2006,2007 Free Software Foundation, Inc. # Contributed by Kelley Cook, June 2004. # Original code from Neil Booth, May 2003. # # 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 +# Free Software Foundation; either version 3, or (at your option) any # later version. # # This program is distributed in the hope that it will be useful, @@ -13,8 +13,8 @@ # 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program; see the file COPYING3. If not see +# . # This Awk script reads in the option records generated from # opt-gather.awk, combines the flags of duplicate options and generates a diff -Nru gcc/opts-common.c gcc/opts-common.c --- gcc/opts-common.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/opts-common.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,11 @@ /* Command line option handling. - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006, 2007 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +14,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -39,7 +38,7 @@ before having tested "-g". This doesn't match, and as "-gen-decls" is less than "-gstabs", it will become the lower bound of the binary search range, and "-g" will never be seen. To resolve this - issue, opts.sh makes "-gen-decls" point, via the back_chain member, + issue, 'optc-gen.awk' makes "-gen-decls" point, via the back_chain member, to "-g" so that failed searches that end between "-gen-decls" and the lexicographically subsequent switch know to go back and see if "-g" causes a match (which it does in this example). diff -Nru gcc/opts.c gcc/opts.c --- gcc/opts.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/opts.c 2012-12-31 17:06:06.000000000 +0100 @@ -7,7 +7,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" @@ -59,14 +58,6 @@ bool warn_larger_than; HOST_WIDE_INT larger_than_size; -/* Nonzero means warn about constructs which might not be - strict-aliasing safe. */ -int warn_strict_aliasing; - -/* Nonzero means warn about optimizations which rely on undefined - signed overflow. */ -int warn_strict_overflow; - /* Hack for cooperation between set_Wunused and set_Wextra. */ static bool maybe_warn_unused_parameter; diff -Nru gcc/opts.h gcc/opts.h --- gcc/opts.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/opts.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,11 +1,12 @@ /* Command line option handling. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -14,9 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_OPTS_H #define GCC_OPTS_H diff -Nru gcc/output.h gcc/output.h --- gcc/output.h 2010-10-14 22:27:55.000000000 +0200 +++ gcc/output.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,13 +1,14 @@ /* Declarations for insn-output.c. These functions are defined in recog.c, final.c, and varasm.c. Copyright (C) 1987, 1991, 1994, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -16,9 +17,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ #ifndef GCC_OUTPUT_H #define GCC_OUTPUT_H diff -Nru gcc/params.c gcc/params.c --- gcc/params.c 2010-10-14 22:27:54.000000000 +0200 +++ gcc/params.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* params.c - Run-time parameters. - Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Mark Mitchell . 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,11 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ +along with GCC; see the file COPYING3. If not see +. */ #include "config.h" #include "system.h" diff -Nru gcc/params.def gcc/params.def --- gcc/params.def 2010-10-14 22:27:55.000000000 +0200 +++ gcc/params.def 2012-12-31 17:06:06.000000000 +0100 @@ -6,7 +6,7 @@ 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,11 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ +along with GCC; see the file COPYING3. If not see +. */ /* This file contains definitions for language-independent parameters. The DEFPARAM macro takes 6 arguments: diff -Nru gcc/params.h gcc/params.h --- gcc/params.h 2010-10-14 22:27:54.000000000 +0200 +++ gcc/params.h 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,12 @@ /* params.h - Run-time parameters. - Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. Written by Mark Mitchell . 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,11 +15,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ +along with GCC; see the file COPYING3. If not see +. */ /* This module provides a means for setting integral parameters dynamically. Instead of encoding magic numbers in various places, diff -Nru gcc/passes.c gcc/passes.c --- gcc/passes.c 2010-10-14 22:27:55.000000000 +0200 +++ gcc/passes.c 2012-12-31 17:06:06.000000000 +0100 @@ -1,12 +1,13 @@ /* Top level of GCC compilers (cc1, cc1plus, etc.) Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 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 +Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY @@ -15,9 +16,8 @@ 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, 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ +along with GCC; see the file COPYING3. If not see +. */ /* This is the top level of cc1/c++. It parses command args, opens files, invokes the various passes diff -Nru gcc/po/ChangeLog gcc/po/ChangeLog --- gcc/po/ChangeLog 2010-10-14 22:27:42.000000000 +0200 +++ gcc/po/ChangeLog 2012-12-31 17:06:06.000000000 +0100 @@ -1,3 +1,57 @@ +2008-05-19 Release Manager + + * GCC 4.2.4 released. + +2008-05-19 Joseph S. Myers + + * gcc.pot: Regenerate. + +2008-03-14 Joseph S. Myers + + * ca.po, rw.po: Remove. + +2008-02-01 Release Manager + + * GCC 4.2.3 released. + +2008-02-01 Joseph S. Myers + + * gcc.pot: Regenerate. + +2007-10-21 Joseph S. Myers + + * de.po, es.po, zh_CN.po: Update. + +2007-10-10 Joseph S. Myers + + * be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, + ru.po, sr.po, sv.po, tr.po, zh_CN.po, zh_TW.po: Update. + +2007-10-07 Release Manager + + * GCC 4.2.2 released. + +2007-10-07 Mark Mitchell + + * gcc.pot: Regenerate. + +2007-09-05 Philipp Thomas + + * de.po, sr.po, sv.po: Update. + +2007-08-21 Joseph S. Myers + + * be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, + ru.po, sr.po, sv.po, tr.po, zh_CN.po, zh_TW.po: Update. + +2007-08-01 Philipp Thomas + + * sv.po: Update to latest version. + +2007-07-31 Philipp Thomas + + * de.po: Update to latest version. + 2007-07-19 Release Manager * GCC 4.2.1 released. diff -Nru gcc/po/be.po gcc/po/be.po --- gcc/po/be.po 2010-10-14 22:27:42.000000000 +0200 +++ gcc/po/be.po 2012-12-31 17:06:06.000000000 +0100 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: gcc 3.1\n" "Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n" -"POT-Creation-Date: 2007-05-13 19:50-0700\n" +"POT-Creation-Date: 2007-10-07 14:11-0700\n" "PO-Revision-Date: 2002-05-17 15:54+0200\n" "Last-Translator: Ales Nyakhaychyk \n" "Language-Team: Belarusian \n" @@ -14,262 +14,262 @@ "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -#: c-decl.c:3783 +#: c-decl.c:3782 msgid "" msgstr "" -#: c-format.c:347 c-format.c:371 +#: c-format.c:346 c-format.c:370 #, fuzzy msgid "' ' flag" msgstr "'0' флаг" -#: c-format.c:347 c-format.c:371 +#: c-format.c:346 c-format.c:370 msgid "the ' ' printf flag" msgstr "" -#: c-format.c:348 c-format.c:372 c-format.c:406 c-format.c:418 c-format.c:475 +#: c-format.c:347 c-format.c:371 c-format.c:405 c-format.c:417 c-format.c:474 #, fuzzy msgid "'+' flag" msgstr "'0' флаг" -#: c-format.c:348 c-format.c:372 c-format.c:406 c-format.c:418 +#: c-format.c:347 c-format.c:371 c-format.c:405 c-format.c:417 msgid "the '+' printf flag" msgstr "" -#: c-format.c:349 c-format.c:373 c-format.c:419 c-format.c:451 +#: c-format.c:348 c-format.c:372 c-format.c:418 c-format.c:450 #, fuzzy msgid "'#' flag" msgstr "'0' флаг" -#: c-format.c:349 c-format.c:373 c-format.c:419 +#: c-format.c:348 c-format.c:372 c-format.c:418 msgid "the '#' printf flag" msgstr "" -#: c-format.c:350 c-format.c:374 c-format.c:449 +#: c-format.c:349 c-format.c:373 c-format.c:448 #, fuzzy msgid "'0' flag" msgstr "'0' флаг" -#: c-format.c:350 c-format.c:374 +#: c-format.c:349 c-format.c:373 msgid "the '0' printf flag" msgstr "" -#: c-format.c:351 c-format.c:375 c-format.c:448 c-format.c:478 +#: c-format.c:350 c-format.c:374 c-format.c:447 c-format.c:477 #, fuzzy msgid "'-' flag" msgstr "'0' флаг" -#: c-format.c:351 c-format.c:375 +#: c-format.c:350 c-format.c:374 msgid "the '-' printf flag" msgstr "" -#: c-format.c:352 c-format.c:432 +#: c-format.c:351 c-format.c:431 #, fuzzy msgid "''' flag" msgstr "'0' флаг" -#: c-format.c:352 +#: c-format.c:351 msgid "the ''' printf flag" msgstr "" -#: c-format.c:353 c-format.c:433 +#: c-format.c:352 c-format.c:432 #, fuzzy msgid "'I' flag" msgstr "'0' флаг" -#: c-format.c:353 +#: c-format.c:352 msgid "the 'I' printf flag" msgstr "" -#: c-format.c:354 c-format.c:376 c-format.c:430 c-format.c:452 c-format.c:479 -#: c-format.c:1606 config/sol2-c.c:46 +#: c-format.c:353 c-format.c:375 c-format.c:429 c-format.c:451 c-format.c:478 +#: c-format.c:1605 config/sol2-c.c:45 msgid "field width" msgstr "" -#: c-format.c:354 c-format.c:376 config/sol2-c.c:46 +#: c-format.c:353 c-format.c:375 config/sol2-c.c:45 msgid "field width in printf format" msgstr "" -#: c-format.c:355 c-format.c:377 c-format.c:408 c-format.c:421 +#: c-format.c:354 c-format.c:376 c-format.c:407 c-format.c:420 msgid "precision" msgstr "" -#: c-format.c:355 c-format.c:377 c-format.c:408 c-format.c:421 +#: c-format.c:354 c-format.c:376 c-format.c:407 c-format.c:420 msgid "precision in printf format" msgstr "" -#: c-format.c:356 c-format.c:378 c-format.c:409 c-format.c:422 c-format.c:431 -#: c-format.c:482 config/sol2-c.c:47 +#: c-format.c:355 c-format.c:377 c-format.c:408 c-format.c:421 c-format.c:430 +#: c-format.c:481 config/sol2-c.c:46 msgid "length modifier" msgstr "" -#: c-format.c:356 c-format.c:378 c-format.c:409 c-format.c:422 -#: config/sol2-c.c:47 +#: c-format.c:355 c-format.c:377 c-format.c:408 c-format.c:421 +#: config/sol2-c.c:46 msgid "length modifier in printf format" msgstr "" -#: c-format.c:407 c-format.c:420 +#: c-format.c:406 c-format.c:419 #, fuzzy msgid "'q' flag" msgstr "'0' флаг" -#: c-format.c:407 c-format.c:420 +#: c-format.c:406 c-format.c:419 msgid "the 'q' diagnostic flag" msgstr "" -#: c-format.c:428 +#: c-format.c:427 msgid "assignment suppression" msgstr "" -#: c-format.c:428 +#: c-format.c:427 msgid "the assignment suppression scanf feature" msgstr "" -#: c-format.c:429 +#: c-format.c:428 #, fuzzy msgid "'a' flag" msgstr "'0' флаг" -#: c-format.c:429 +#: c-format.c:428 msgid "the 'a' scanf flag" msgstr "" -#: c-format.c:430 +#: c-format.c:429 msgid "field width in scanf format" msgstr "" -#: c-format.c:431 +#: c-format.c:430 msgid "length modifier in scanf format" msgstr "" -#: c-format.c:432 +#: c-format.c:431 msgid "the ''' scanf flag" msgstr "" -#: c-format.c:433 +#: c-format.c:432 msgid "the 'I' scanf flag" msgstr "" -#: c-format.c:447 +#: c-format.c:446 #, fuzzy msgid "'_' flag" msgstr "'0' флаг" -#: c-format.c:447 +#: c-format.c:446 msgid "the '_' strftime flag" msgstr "" -#: c-format.c:448 +#: c-format.c:447 msgid "the '-' strftime flag" msgstr "" -#: c-format.c:449 +#: c-format.c:448 msgid "the '0' strftime flag" msgstr "" -#: c-format.c:450 c-format.c:474 +#: c-format.c:449 c-format.c:473 #, fuzzy msgid "'^' flag" msgstr "'0' флаг" -#: c-format.c:450 +#: c-format.c:449 msgid "the '^' strftime flag" msgstr "" -#: c-format.c:451 +#: c-format.c:450 msgid "the '#' strftime flag" msgstr "" -#: c-format.c:452 +#: c-format.c:451 msgid "field width in strftime format" msgstr "" -#: c-format.c:453 +#: c-format.c:452 #, fuzzy msgid "'E' modifier" msgstr "'O' мадыфікатар" -#: c-format.c:453 +#: c-format.c:452 msgid "the 'E' strftime modifier" msgstr "" -#: c-format.c:454 +#: c-format.c:453 #, fuzzy msgid "'O' modifier" msgstr "'O' мадыфікатар" -#: c-format.c:454 +#: c-format.c:453 msgid "the 'O' strftime modifier" msgstr "" -#: c-format.c:455 +#: c-format.c:454 #, fuzzy msgid "the 'O' modifier" msgstr "'O' мадыфікатар" -#: c-format.c:473 +#: c-format.c:472 msgid "fill character" msgstr "" -#: c-format.c:473 +#: c-format.c:472 msgid "fill character in strfmon format" msgstr "" -#: c-format.c:474 +#: c-format.c:473 msgid "the '^' strfmon flag" msgstr "" -#: c-format.c:475 +#: c-format.c:474 msgid "the '+' strfmon flag" msgstr "" -#: c-format.c:476 +#: c-format.c:475 #, fuzzy msgid "'(' flag" msgstr "'0' флаг" -#: c-format.c:476 +#: c-format.c:475 msgid "the '(' strfmon flag" msgstr "" -#: c-format.c:477 +#: c-format.c:476 #, fuzzy msgid "'!' flag" msgstr "'0' флаг" -#: c-format.c:477 +#: c-format.c:476 msgid "the '!' strfmon flag" msgstr "" -#: c-format.c:478 +#: c-format.c:477 msgid "the '-' strfmon flag" msgstr "" -#: c-format.c:479 +#: c-format.c:478 msgid "field width in strfmon format" msgstr "" -#: c-format.c:480 +#: c-format.c:479 msgid "left precision" msgstr "" -#: c-format.c:480 +#: c-format.c:479 msgid "left precision in strfmon format" msgstr "" -#: c-format.c:481 +#: c-format.c:480 msgid "right precision" msgstr "" -#: c-format.c:481 +#: c-format.c:480 msgid "right precision in strfmon format" msgstr "" -#: c-format.c:482 +#: c-format.c:481 msgid "length modifier in strfmon format" msgstr "" -#: c-format.c:1708 +#: c-format.c:1707 msgid "field precision" msgstr "" @@ -303,53 +303,53 @@ msgid "End of search list.\n" msgstr "" -#: c-opts.c:1378 +#: c-opts.c:1377 msgid "" msgstr "" -#: c-opts.c:1396 +#: c-opts.c:1395 msgid "" msgstr "" -#: c-typeck.c:2328 c-typeck.c:4764 c-typeck.c:4766 c-typeck.c:4774 -#: c-typeck.c:4804 c-typeck.c:6180 +#: c-typeck.c:2327 c-typeck.c:4763 c-typeck.c:4765 c-typeck.c:4773 +#: c-typeck.c:4803 c-typeck.c:6179 msgid "initializer element is not constant" msgstr "" -#: c-typeck.c:4567 +#: c-typeck.c:4566 msgid "array initialized from parenthesized string constant" msgstr "" -#: c-typeck.c:4628 cp/typeck2.c:686 +#: c-typeck.c:4627 cp/typeck2.c:685 #, gcc-internal-format msgid "char-array initialized from wide string" msgstr "" -#: c-typeck.c:4633 +#: c-typeck.c:4632 msgid "wchar_t-array initialized from non-wide string" msgstr "" -#: c-typeck.c:4651 cp/typeck2.c:706 +#: c-typeck.c:4650 cp/typeck2.c:705 #, gcc-internal-format msgid "initializer-string for array of chars is too long" msgstr "" -#: c-typeck.c:4657 +#: c-typeck.c:4656 msgid "array of inappropriate type initialized from string constant" msgstr "" #. ??? This should not be an error when inlining calls to #. unprototyped functions. -#: c-typeck.c:4721 c-typeck.c:4216 cp/typeck.c:1532 +#: c-typeck.c:4720 c-typeck.c:4215 cp/typeck.c:1529 #, gcc-internal-format msgid "invalid use of non-lvalue array" msgstr "" -#: c-typeck.c:4747 +#: c-typeck.c:4746 msgid "array initialized from non-constant array expression" msgstr "" -#: c-typeck.c:4811 c-typeck.c:6184 +#: c-typeck.c:4810 c-typeck.c:6183 #, gcc-internal-format msgid "initializer element is not computable at load time" msgstr "" @@ -358,295 +358,295 @@ #. of VLAs themselves count as VLAs, it does not make #. sense to permit them to be initialized given that #. ordinary VLAs may not be initialized. -#: c-typeck.c:4822 c-decl.c:3217 c-decl.c:3232 +#: c-typeck.c:4821 c-decl.c:3216 c-decl.c:3231 #, gcc-internal-format msgid "variable-sized object may not be initialized" msgstr "" -#: c-typeck.c:4826 +#: c-typeck.c:4825 msgid "invalid initializer" msgstr "нерэчаісны ініцыялізатар" -#: c-typeck.c:5300 +#: c-typeck.c:5299 msgid "extra brace group at end of initializer" msgstr "" -#: c-typeck.c:5320 +#: c-typeck.c:5319 msgid "missing braces around initializer" msgstr "" -#: c-typeck.c:5381 +#: c-typeck.c:5380 msgid "braces around scalar initializer" msgstr "" -#: c-typeck.c:5438 +#: c-typeck.c:5437 msgid "initialization of flexible array member in a nested context" msgstr "" -#: c-typeck.c:5440 +#: c-typeck.c:5439 msgid "initialization of a flexible array member" msgstr "" -#: c-typeck.c:5467 +#: c-typeck.c:5466 msgid "missing initializer" msgstr "прапушчан ініцыялізатар" -#: c-typeck.c:5489 +#: c-typeck.c:5488 msgid "empty scalar initializer" msgstr "" -#: c-typeck.c:5494 +#: c-typeck.c:5493 msgid "extra elements in scalar initializer" msgstr "" -#: c-typeck.c:5591 c-typeck.c:5651 +#: c-typeck.c:5590 c-typeck.c:5650 msgid "array index in non-array initializer" msgstr "" -#: c-typeck.c:5596 c-typeck.c:5704 +#: c-typeck.c:5595 c-typeck.c:5703 msgid "field name not in record or union initializer" msgstr "" -#: c-typeck.c:5642 +#: c-typeck.c:5641 #, fuzzy msgid "array index in initializer not of integer type" msgstr "\"%s\" мае незавершаны тып" -#: c-typeck.c:5647 c-typeck.c:5649 +#: c-typeck.c:5646 c-typeck.c:5648 msgid "nonconstant array index in initializer" msgstr "" -#: c-typeck.c:5653 c-typeck.c:5656 +#: c-typeck.c:5652 c-typeck.c:5655 msgid "array index in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:5667 +#: c-typeck.c:5666 msgid "empty index range in initializer" msgstr "" -#: c-typeck.c:5676 +#: c-typeck.c:5675 msgid "array index range in initializer exceeds array bounds" msgstr "" -#: c-typeck.c:5751 c-typeck.c:5774 c-typeck.c:6248 +#: c-typeck.c:5750 c-typeck.c:5773 c-typeck.c:6247 msgid "initialized field with side-effects overwritten" msgstr "" -#: c-typeck.c:5753 c-typeck.c:5776 c-typeck.c:6250 +#: c-typeck.c:5752 c-typeck.c:5775 c-typeck.c:6249 msgid "initialized field overwritten" msgstr "" -#: c-typeck.c:6458 +#: c-typeck.c:6457 msgid "excess elements in char array initializer" msgstr "" -#: c-typeck.c:6465 c-typeck.c:6511 +#: c-typeck.c:6464 c-typeck.c:6510 msgid "excess elements in struct initializer" msgstr "" -#: c-typeck.c:6526 +#: c-typeck.c:6525 msgid "non-static initialization of a flexible array member" msgstr "" -#: c-typeck.c:6594 +#: c-typeck.c:6593 msgid "excess elements in union initializer" msgstr "" -#: c-typeck.c:6681 +#: c-typeck.c:6680 msgid "excess elements in array initializer" msgstr "" -#: c-typeck.c:6711 +#: c-typeck.c:6710 msgid "excess elements in vector initializer" msgstr "" -#: c-typeck.c:6735 +#: c-typeck.c:6734 msgid "excess elements in scalar initializer" msgstr "" -#: cfgrtl.c:1970 +#: cfgrtl.c:1969 msgid "flow control insn inside a basic block" msgstr "" -#: cfgrtl.c:2048 +#: cfgrtl.c:2047 msgid "wrong insn in the fallthru edge" msgstr "" -#: cfgrtl.c:2090 +#: cfgrtl.c:2089 msgid "insn outside basic block" msgstr "" -#: cfgrtl.c:2097 +#: cfgrtl.c:2096 msgid "return not followed by barrier" msgstr "" -#: cgraph.c:391 ipa-inline.c:313 +#: cgraph.c:390 ipa-inline.c:312 msgid "function body not available" msgstr "" -#: cgraph.c:393 cgraphunit.c:633 +#: cgraph.c:392 cgraphunit.c:632 msgid "redefined extern inline functions are not considered for inlining" msgstr "" -#: cgraph.c:396 cgraphunit.c:638 +#: cgraph.c:395 cgraphunit.c:637 #, fuzzy msgid "function not considered for inlining" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cgraph.c:398 cgraphunit.c:636 ipa-inline.c:306 +#: cgraph.c:397 cgraphunit.c:635 ipa-inline.c:305 msgid "function not inlinable" msgstr "" -#: collect2.c:373 gcc.c:6833 +#: collect2.c:372 gcc.c:6832 #, fuzzy, c-format msgid "internal gcc abort in %s, at %s:%d" msgstr "спынена ў %s, ля %s:%d" -#: collect2.c:872 +#: collect2.c:871 #, c-format msgid "no arguments" msgstr "няма аргументаў" -#: collect2.c:1246 collect2.c:1394 collect2.c:1429 +#: collect2.c:1245 collect2.c:1393 collect2.c:1428 #, c-format msgid "fopen %s" msgstr "" -#: collect2.c:1249 collect2.c:1399 collect2.c:1432 +#: collect2.c:1248 collect2.c:1398 collect2.c:1431 #, c-format msgid "fclose %s" msgstr "" -#: collect2.c:1258 +#: collect2.c:1257 #, c-format msgid "collect2 version %s" msgstr "" -#: collect2.c:1348 +#: collect2.c:1347 #, c-format msgid "%d constructor(s) found\n" msgstr "%d канструктар(аў) знойдзен(а)\n" -#: collect2.c:1349 +#: collect2.c:1348 #, c-format msgid "%d destructor(s) found\n" msgstr "%d дэструктар(аў) знойдзен(а)\n" -#: collect2.c:1350 +#: collect2.c:1349 #, c-format msgid "%d frame table(s) found\n" msgstr "" -#: collect2.c:1487 +#: collect2.c:1486 #, c-format msgid "can't get program status" msgstr "" -#: collect2.c:1537 +#: collect2.c:1536 #, c-format msgid "[cannot find %s]" msgstr "[нельга знайсці %s]" -#: collect2.c:1552 +#: collect2.c:1551 #, fuzzy, c-format msgid "cannot find '%s'" msgstr "нельга знайсці \"%s\"" -#: collect2.c:1556 collect2.c:2045 collect2.c:2200 gcc.c:2928 +#: collect2.c:1555 collect2.c:2044 collect2.c:2199 gcc.c:2927 #, c-format msgid "pex_init failed" msgstr "" -#: collect2.c:1591 +#: collect2.c:1590 #, c-format msgid "[Leaving %s]\n" msgstr "" -#: collect2.c:1811 +#: collect2.c:1810 #, c-format msgid "" "\n" "write_c_file - output name is %s, prefix is %s\n" msgstr "" -#: collect2.c:2019 +#: collect2.c:2018 #, fuzzy, c-format msgid "cannot find 'nm'" msgstr "нельга знайсці \"nm\"" -#: collect2.c:2066 +#: collect2.c:2065 #, fuzzy, c-format msgid "can't open nm output" msgstr "немагчыма адчыніць файл уводу `%s'" -#: collect2.c:2110 +#: collect2.c:2109 #, c-format msgid "init function found in object %s" msgstr "" -#: collect2.c:2118 +#: collect2.c:2117 #, c-format msgid "fini function found in object %s" msgstr "" -#: collect2.c:2221 +#: collect2.c:2220 #, fuzzy, c-format msgid "can't open ldd output" msgstr "немагчыма адчыніць файл уводу `%s'" -#: collect2.c:2224 +#: collect2.c:2223 #, c-format msgid "" "\n" "ldd output with constructors/destructors.\n" msgstr "" -#: collect2.c:2239 +#: collect2.c:2238 #, c-format msgid "dynamic dependency %s not found" msgstr "" -#: collect2.c:2251 +#: collect2.c:2250 #, c-format msgid "unable to open dynamic dependency '%s'" msgstr "" -#: collect2.c:2407 +#: collect2.c:2406 #, c-format msgid "%s: not a COFF file" msgstr "" -#: collect2.c:2527 +#: collect2.c:2526 #, c-format msgid "%s: cannot open as COFF file" msgstr "" -#: collect2.c:2585 +#: collect2.c:2584 #, fuzzy, c-format msgid "library lib%s not found" msgstr "Бібліятэка lib%s не знойдзена" -#: cppspec.c:106 +#: cppspec.c:105 #, c-format msgid "\"%s\" is not a valid option to the preprocessor" msgstr "" -#: cppspec.c:128 +#: cppspec.c:127 #, c-format msgid "too many input files" msgstr "вельмі шмат уваходзячых файлаў" -#: diagnostic.c:189 +#: diagnostic.c:188 #, c-format msgid "%s:%d: confused by earlier errors, bailing out\n" msgstr "" -#: diagnostic.c:254 +#: diagnostic.c:253 #, fuzzy, c-format msgid "compilation terminated due to -Wfatal-errors.\n" msgstr "кампіляцыя завершана.\n" -#: diagnostic.c:263 +#: diagnostic.c:262 #, c-format msgid "" "Please submit a full bug report,\n" @@ -654,55 +654,55 @@ "See %s for instructions.\n" msgstr "" -#: diagnostic.c:272 +#: diagnostic.c:271 #, c-format msgid "compilation terminated.\n" msgstr "кампіляцыя завершана.\n" -#: diagnostic.c:623 +#: diagnostic.c:622 #, c-format msgid "Internal compiler error: Error reporting routines re-entered.\n" msgstr "" -#: final.c:1104 +#: final.c:1103 msgid "negative insn length" msgstr "" -#: final.c:2449 +#: final.c:2448 msgid "could not split insn" msgstr "" -#: final.c:2798 +#: final.c:2797 #, fuzzy msgid "invalid 'asm': " msgstr "нерэчаісная маска" -#: final.c:2981 +#: final.c:2980 #, c-format msgid "nested assembly dialect alternatives" msgstr "" -#: final.c:2998 final.c:3010 +#: final.c:2997 final.c:3009 #, c-format msgid "unterminated assembly dialect alternative" msgstr "" -#: final.c:3057 +#: final.c:3056 #, c-format msgid "operand number missing after %%-letter" msgstr "" -#: final.c:3060 final.c:3101 +#: final.c:3059 final.c:3100 #, c-format msgid "operand number out of range" msgstr "" -#: final.c:3120 +#: final.c:3119 #, c-format msgid "invalid %%-code" msgstr "нерэчаісны %%-код" -#: final.c:3150 +#: final.c:3149 #, c-format msgid "'%%l' operand isn't a label" msgstr "" @@ -713,118 +713,118 @@ #. handle them. #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:3251 vmsdbgout.c:487 config/i386/i386.c:7222 -#: config/pdp11/pdp11.c:1700 +#: final.c:3250 vmsdbgout.c:487 config/i386/i386.c:7221 +#: config/pdp11/pdp11.c:1699 #, c-format msgid "floating constant misused" msgstr "" -#: final.c:3307 vmsdbgout.c:544 config/i386/i386.c:7298 -#: config/pdp11/pdp11.c:1747 +#: final.c:3306 vmsdbgout.c:544 config/i386/i386.c:7297 +#: config/pdp11/pdp11.c:1746 #, c-format msgid "invalid expression as operand" msgstr "" -#: flow.c:1735 +#: flow.c:1734 msgid "Attempt to delete prologue/epilogue insn:" msgstr "" -#: gcc.c:1665 +#: gcc.c:1664 #, c-format msgid "Using built-in specs.\n" msgstr "" -#: gcc.c:1848 +#: gcc.c:1847 #, c-format msgid "" "Setting spec %s to '%s'\n" "\n" msgstr "" -#: gcc.c:1963 +#: gcc.c:1962 #, c-format msgid "Reading specs from %s\n" msgstr "" -#: gcc.c:2059 gcc.c:2078 +#: gcc.c:2058 gcc.c:2077 #, c-format msgid "specs %%include syntax malformed after %ld characters" msgstr "" -#: gcc.c:2086 +#: gcc.c:2085 #, fuzzy, c-format msgid "could not find specs file %s\n" msgstr "не магу знайсці крыніцу %s\n" -#: gcc.c:2103 gcc.c:2111 gcc.c:2120 gcc.c:2129 +#: gcc.c:2102 gcc.c:2110 gcc.c:2119 gcc.c:2128 #, c-format msgid "specs %%rename syntax malformed after %ld characters" msgstr "" -#: gcc.c:2138 +#: gcc.c:2137 #, c-format msgid "specs %s spec was not found to be renamed" msgstr "" -#: gcc.c:2145 +#: gcc.c:2144 #, c-format msgid "%s: attempt to rename spec '%s' to already defined spec '%s'" msgstr "" -#: gcc.c:2150 +#: gcc.c:2149 #, c-format msgid "rename spec %s to %s\n" msgstr "" -#: gcc.c:2152 +#: gcc.c:2151 #, c-format msgid "" "spec is '%s'\n" "\n" msgstr "" -#: gcc.c:2165 +#: gcc.c:2164 #, c-format msgid "specs unknown %% command after %ld characters" msgstr "" -#: gcc.c:2176 gcc.c:2189 +#: gcc.c:2175 gcc.c:2188 #, c-format msgid "specs file malformed after %ld characters" msgstr "" -#: gcc.c:2242 +#: gcc.c:2241 #, c-format msgid "spec file has no spec for linking" msgstr "" -#: gcc.c:2759 +#: gcc.c:2758 #, c-format msgid "system path '%s' is not absolute" msgstr "" -#: gcc.c:2822 +#: gcc.c:2821 #, c-format msgid "-pipe not supported" msgstr "-pipe не падтрымліваецца" -#: gcc.c:2884 +#: gcc.c:2883 #, c-format msgid "" "\n" "Go ahead? (y or n) " msgstr "" -#: gcc.c:2967 +#: gcc.c:2966 msgid "failed to get exit status" msgstr "" -#: gcc.c:2973 +#: gcc.c:2972 #, fuzzy msgid "failed to get process times" msgstr "не знойдзен клас \"%s\"" -#: gcc.c:2999 +#: gcc.c:2998 #, c-format msgid "" "Internal error: %s (program %s)\n" @@ -832,171 +832,171 @@ "See %s for instructions." msgstr "" -#: gcc.c:3025 +#: gcc.c:3024 #, c-format msgid "# %s %.2f %.2f\n" msgstr "# %s %.2f %.2f\n" -#: gcc.c:3161 +#: gcc.c:3160 #, c-format msgid "Usage: %s [options] file...\n" msgstr "Выкарыстанне: %s [выбары] файл...\n" -#: gcc.c:3162 +#: gcc.c:3161 msgid "Options:\n" msgstr "Выбары:\n" -#: gcc.c:3164 +#: gcc.c:3163 msgid " -pass-exit-codes Exit with highest error code from a phase\n" msgstr "" -#: gcc.c:3165 +#: gcc.c:3164 msgid " --help Display this information\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: gcc.c:3166 +#: gcc.c:3165 msgid " --target-help Display target specific command line options\n" msgstr "" -#: gcc.c:3168 +#: gcc.c:3167 msgid " (Use '-v --help' to display command line options of sub-processes)\n" msgstr "" -#: gcc.c:3169 +#: gcc.c:3168 msgid " -dumpspecs Display all of the built in spec strings\n" msgstr "" -#: gcc.c:3170 +#: gcc.c:3169 msgid " -dumpversion Display the version of the compiler\n" msgstr " -dumpversion Адлюстраваць версію кампілятара\n" -#: gcc.c:3171 +#: gcc.c:3170 msgid " -dumpmachine Display the compiler's target processor\n" msgstr "" -#: gcc.c:3172 +#: gcc.c:3171 msgid " -print-search-dirs Display the directories in the compiler's search path\n" msgstr "" -#: gcc.c:3173 +#: gcc.c:3172 msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n" msgstr "" -#: gcc.c:3174 +#: gcc.c:3173 msgid " -print-file-name= Display the full path to library \n" msgstr "" -#: gcc.c:3175 +#: gcc.c:3174 msgid " -print-prog-name= Display the full path to compiler component \n" msgstr "" -#: gcc.c:3176 +#: gcc.c:3175 msgid " -print-multi-directory Display the root directory for versions of libgcc\n" msgstr "" -#: gcc.c:3177 +#: gcc.c:3176 msgid "" " -print-multi-lib Display the mapping between command line options and\n" " multiple library search directories\n" msgstr "" -#: gcc.c:3180 +#: gcc.c:3179 msgid " -print-multi-os-directory Display the relative path to OS libraries\n" msgstr "" -#: gcc.c:3181 +#: gcc.c:3180 msgid " -Wa, Pass comma-separated on to the assembler\n" msgstr "" -#: gcc.c:3182 +#: gcc.c:3181 msgid " -Wp, Pass comma-separated on to the preprocessor\n" msgstr "" -#: gcc.c:3183 +#: gcc.c:3182 msgid " -Wl, Pass comma-separated on to the linker\n" msgstr "" -#: gcc.c:3184 +#: gcc.c:3183 msgid " -Xassembler Pass on to the assembler\n" msgstr "" -#: gcc.c:3185 +#: gcc.c:3184 msgid " -Xpreprocessor Pass on to the preprocessor\n" msgstr "" -#: gcc.c:3186 +#: gcc.c:3185 msgid " -Xlinker Pass on to the linker\n" msgstr "" -#: gcc.c:3187 +#: gcc.c:3186 #, fuzzy msgid " -combine Pass multiple source files to compiler at once\n" msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: gcc.c:3188 +#: gcc.c:3187 msgid " -save-temps Do not delete intermediate files\n" msgstr "" -#: gcc.c:3189 +#: gcc.c:3188 msgid " -pipe Use pipes rather than intermediate files\n" msgstr "" -#: gcc.c:3190 +#: gcc.c:3189 msgid " -time Time the execution of each subprocess\n" msgstr "" -#: gcc.c:3191 +#: gcc.c:3190 #, fuzzy msgid " -specs= Override built-in specs with the contents of \n" msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: gcc.c:3192 +#: gcc.c:3191 msgid " -std= Assume that the input sources are for \n" msgstr "" -#: gcc.c:3193 +#: gcc.c:3192 msgid "" " --sysroot= Use as the root directory for headers\n" " and libraries\n" msgstr "" -#: gcc.c:3196 +#: gcc.c:3195 msgid " -B Add to the compiler's search paths\n" msgstr "" -#: gcc.c:3197 +#: gcc.c:3196 msgid " -b Run gcc for target , if installed\n" msgstr "" -#: gcc.c:3198 +#: gcc.c:3197 msgid " -V Run gcc version number , if installed\n" msgstr "" -#: gcc.c:3199 +#: gcc.c:3198 msgid " -v Display the programs invoked by the compiler\n" msgstr "" -#: gcc.c:3200 +#: gcc.c:3199 msgid " -### Like -v but options quoted and commands not executed\n" msgstr "" -#: gcc.c:3201 +#: gcc.c:3200 msgid " -E Preprocess only; do not compile, assemble or link\n" msgstr "" -#: gcc.c:3202 +#: gcc.c:3201 msgid " -S Compile only; do not assemble or link\n" msgstr "" -#: gcc.c:3203 +#: gcc.c:3202 msgid " -c Compile and assemble, but do not link\n" msgstr "" -#: gcc.c:3204 +#: gcc.c:3203 msgid " -o Place the output into \n" msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: gcc.c:3205 +#: gcc.c:3204 msgid "" " -x Specify the language of the following input files\n" " Permissible languages include: c c++ assembler none\n" @@ -1004,7 +1004,7 @@ " guessing the language based on the file's extension\n" msgstr "" -#: gcc.c:3212 +#: gcc.c:3211 #, c-format msgid "" "\n" @@ -1013,28 +1013,28 @@ " other options on to these processes the -W options must be used.\n" msgstr "" -#: gcc.c:3335 +#: gcc.c:3334 #, c-format msgid "'-%c' option must have argument" msgstr "" -#: gcc.c:3357 +#: gcc.c:3356 #, c-format msgid "couldn't run '%s': %s" msgstr "" #. translate_options () has turned --version into -fversion. -#: gcc.c:3550 +#: gcc.c:3549 #, c-format msgid "%s (GCC) %s\n" msgstr "" -#: gcc.c:3552 gcov.c:419 fortran/gfortranspec.c:349 java/gjavah.c:2406 -#: java/jcf-dump.c:936 java/jv-scan.c:129 +#: gcc.c:3551 gcov.c:418 fortran/gfortranspec.c:349 java/gjavah.c:2405 +#: java/jcf-dump.c:935 java/jv-scan.c:128 msgid "(C)" msgstr "" -#: gcc.c:3553 java/gjavah.c:2407 java/jcf-dump.c:937 java/jv-scan.c:130 +#: gcc.c:3552 java/gjavah.c:2406 java/jcf-dump.c:936 java/jv-scan.c:129 #, c-format msgid "" "This is free software; see the source for copying conditions. There is NO\n" @@ -1042,143 +1042,143 @@ "\n" msgstr "" -#: gcc.c:3654 +#: gcc.c:3653 #, fuzzy, c-format msgid "argument to '-Xlinker' is missing" msgstr "аргумент для \"-x\" прапушчан" -#: gcc.c:3662 +#: gcc.c:3661 #, fuzzy, c-format msgid "argument to '-Xpreprocessor' is missing" msgstr "аргумент для \"-%s\" прапушчан" -#: gcc.c:3669 +#: gcc.c:3668 #, fuzzy, c-format msgid "argument to '-Xassembler' is missing" msgstr "аргумент для \"-x\" прапушчан" -#: gcc.c:3676 +#: gcc.c:3675 #, fuzzy, c-format msgid "argument to '-l' is missing" msgstr "аргумент для \"-x\" прапушчан" -#: gcc.c:3697 +#: gcc.c:3696 #, fuzzy, c-format msgid "argument to '-specs' is missing" msgstr "аргумент для \"-%s\" прапушчан" -#: gcc.c:3711 +#: gcc.c:3710 #, fuzzy, c-format msgid "argument to '-specs=' is missing" msgstr "аргумент для \"-%s\" прапушчан" -#: gcc.c:3752 +#: gcc.c:3751 #, c-format msgid "'-%c' must come at the start of the command line" msgstr "" -#: gcc.c:3761 +#: gcc.c:3760 #, fuzzy, c-format msgid "argument to '-B' is missing" msgstr "аргумент для \"-x\" прапушчан" -#: gcc.c:4147 +#: gcc.c:4146 #, fuzzy, c-format msgid "argument to '-x' is missing" msgstr "аргумент для \"-x\" прапушчан" -#: gcc.c:4175 +#: gcc.c:4174 #, fuzzy, c-format msgid "argument to '-%s' is missing" msgstr "аргумент для \"-%s\" прапушчан" -#: gcc.c:4513 +#: gcc.c:4512 #, c-format msgid "switch '%s' does not start with '-'" msgstr "" -#: gcc.c:4690 +#: gcc.c:4689 #, c-format msgid "spec '%s' invalid" msgstr "" -#: gcc.c:4756 +#: gcc.c:4755 #, c-format msgid "%s\n" msgstr "%s\n" -#: gcc.c:4829 +#: gcc.c:4828 #, fuzzy, c-format msgid "spec '%s' has invalid '%%0%c'" msgstr "бітавае поле \"%s\" мае нерэчаісны тып" -#: gcc.c:5040 +#: gcc.c:5039 #, fuzzy, c-format msgid "spec '%s' has invalid '%%W%c" msgstr "бітавае поле \"%s\" мае нерэчаісны тып" -#: gcc.c:5071 +#: gcc.c:5070 #, fuzzy, c-format msgid "spec '%s' has invalid '%%x%c'" msgstr "бітавае поле \"%s\" мае нерэчаісны тып" -#: gcc.c:5293 +#: gcc.c:5292 #, c-format msgid "Processing spec %c%s%c, which is '%s'\n" msgstr "" -#: gcc.c:5426 +#: gcc.c:5425 #, fuzzy, c-format msgid "unknown spec function '%s'" msgstr "невядомы рэжым машыны \"%s\"" -#: gcc.c:5445 +#: gcc.c:5444 #, fuzzy, c-format msgid "error in args to spec function '%s'" msgstr "вельмі шмат аргумэнтаў у функцыі `%s'" -#: gcc.c:5493 +#: gcc.c:5492 #, c-format msgid "malformed spec function name" msgstr "" #. ) -#: gcc.c:5496 +#: gcc.c:5495 #, fuzzy, c-format msgid "no arguments for spec function" msgstr "не хапае аргументаў у функцыі" -#: gcc.c:5515 +#: gcc.c:5514 #, c-format msgid "malformed spec function arguments" msgstr "" -#: gcc.c:5754 +#: gcc.c:5753 #, c-format msgid "braced spec '%s' is invalid at '%c'" msgstr "" -#: gcc.c:5842 +#: gcc.c:5841 #, c-format msgid "braced spec body '%s' is invalid" msgstr "" -#: gcc.c:6372 +#: gcc.c:6371 #, c-format msgid "install: %s%s\n" msgstr "" -#: gcc.c:6373 +#: gcc.c:6372 #, c-format msgid "programs: %s\n" msgstr "праграмы: %s\n" -#: gcc.c:6375 +#: gcc.c:6374 #, c-format msgid "libraries: %s\n" msgstr "бібліятэкі: %s\n" -#: gcc.c:6433 +#: gcc.c:6432 #, c-format msgid "" "\n" @@ -1187,160 +1187,160 @@ "\n" "Інструкцыі для паведамленняў аб памылках глядзіце тут:\n" -#: gcc.c:6449 +#: gcc.c:6448 #, fuzzy, c-format msgid "Target: %s\n" msgstr "бібліятэкі: %s\n" -#: gcc.c:6450 +#: gcc.c:6449 #, c-format msgid "Configured with: %s\n" msgstr "" -#: gcc.c:6464 +#: gcc.c:6463 #, c-format msgid "Thread model: %s\n" msgstr "" -#: gcc.c:6475 +#: gcc.c:6474 #, c-format msgid "gcc version %s\n" msgstr "версія gcc %s\n" -#: gcc.c:6477 +#: gcc.c:6476 #, c-format msgid "gcc driver version %s executing gcc version %s\n" msgstr "" -#: gcc.c:6485 +#: gcc.c:6484 #, fuzzy, c-format msgid "no input files" msgstr "няма ўваходзячых файлаў" -#: gcc.c:6534 +#: gcc.c:6533 #, c-format msgid "cannot specify -o with -c or -S with multiple files" msgstr "" -#: gcc.c:6568 +#: gcc.c:6567 #, fuzzy, c-format msgid "spec '%s' is invalid" msgstr "параметр \"%s\" ініцыялізаваны" -#: gcc.c:7048 +#: gcc.c:7047 #, fuzzy, c-format msgid "multilib spec '%s' is invalid" msgstr "параметр \"%s\" ініцыялізаваны" -#: gcc.c:7239 +#: gcc.c:7238 #, c-format msgid "multilib exclusions '%s' is invalid" msgstr "" -#: gcc.c:7297 gcc.c:7438 +#: gcc.c:7296 gcc.c:7437 #, fuzzy, c-format msgid "multilib select '%s' is invalid" msgstr "параметр \"%s\" ініцыялізаваны" -#: gcc.c:7476 +#: gcc.c:7475 #, c-format msgid "multilib exclusion '%s' is invalid" msgstr "" -#: gcc.c:7735 gcc.c:7740 +#: gcc.c:7734 gcc.c:7739 #, fuzzy, c-format msgid "invalid version number `%s'" msgstr "нявернае выкарыстанне \"restict\"" -#: gcc.c:7783 +#: gcc.c:7782 #, fuzzy, c-format msgid "too few arguments to %%:version-compare" msgstr "не хапае аргументаў у функцыі" -#: gcc.c:7789 +#: gcc.c:7788 #, fuzzy, c-format msgid "too many arguments to %%:version-compare" msgstr "вельмі шмат аргументаў у функцыі" -#: gcc.c:7830 +#: gcc.c:7829 #, c-format msgid "unknown operator '%s' in %%:version-compare" msgstr "" -#: gcov.c:392 +#: gcov.c:391 #, c-format msgid "" "Usage: gcov [OPTION]... SOURCEFILE\n" "\n" msgstr "" -#: gcov.c:393 +#: gcov.c:392 #, c-format msgid "" "Print code coverage information.\n" "\n" msgstr "" -#: gcov.c:394 +#: gcov.c:393 #, fuzzy, c-format msgid " -h, --help Print this help, then exit\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: gcov.c:395 +#: gcov.c:394 #, fuzzy, c-format msgid " -v, --version Print version number, then exit\n" msgstr " -dumpversion Адлюстраваць версію кампілятара\n" -#: gcov.c:396 +#: gcov.c:395 #, c-format msgid " -a, --all-blocks Show information for every basic block\n" msgstr "" -#: gcov.c:397 +#: gcov.c:396 #, c-format msgid " -b, --branch-probabilities Include branch probabilities in output\n" msgstr "" -#: gcov.c:398 +#: gcov.c:397 #, c-format msgid "" " -c, --branch-counts Given counts of branches taken\n" " rather than percentages\n" msgstr "" -#: gcov.c:400 +#: gcov.c:399 #, fuzzy, c-format msgid " -n, --no-output Do not create an output file\n" msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: gcov.c:401 +#: gcov.c:400 #, c-format msgid "" " -l, --long-file-names Use long output file names for included\n" " source files\n" msgstr "" -#: gcov.c:403 +#: gcov.c:402 #, c-format msgid " -f, --function-summaries Output summaries for each function\n" msgstr "" -#: gcov.c:404 +#: gcov.c:403 #, c-format msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n" msgstr "" -#: gcov.c:405 +#: gcov.c:404 #, c-format msgid " -p, --preserve-paths Preserve all pathname components\n" msgstr "" -#: gcov.c:406 +#: gcov.c:405 #, c-format msgid " -u, --unconditional-branches Show unconditional branch counts too\n" msgstr "" -#: gcov.c:407 +#: gcov.c:406 #, fuzzy, c-format msgid "" "\n" @@ -1350,12 +1350,12 @@ "\n" "Інструкцыі для паведамленняў аб памылках глядзіце тут:\n" -#: gcov.c:417 +#: gcov.c:416 #, c-format msgid "gcov (GCC) %s\n" msgstr "" -#: gcov.c:421 +#: gcov.c:420 #, c-format msgid "" "This is free software; see the source for copying conditions.\n" @@ -1364,203 +1364,203 @@ "\n" msgstr "" -#: gcov.c:511 +#: gcov.c:510 #, fuzzy, c-format msgid "%s:no functions found\n" msgstr "не знойдзена\n" -#: gcov.c:532 gcov.c:560 fortran/dump-parse-tree.c:63 +#: gcov.c:531 gcov.c:559 fortran/dump-parse-tree.c:63 #, fuzzy, c-format msgid "\n" msgstr ":\n" -#: gcov.c:547 +#: gcov.c:546 #, fuzzy, c-format msgid "%s:creating '%s'\n" msgstr "%s: кампілюецца \"%s\"\n" -#: gcov.c:551 +#: gcov.c:550 #, fuzzy, c-format msgid "%s:error writing output file '%s'\n" msgstr "" "\n" "%s: памылка чытаньня файла ўводу `%s': %s\n" -#: gcov.c:556 +#: gcov.c:555 #, fuzzy, c-format msgid "%s:could not open output file '%s'\n" msgstr "немагчыма адчыніць файл уводу `%s'" -#: gcov.c:708 +#: gcov.c:707 #, fuzzy, c-format msgid "%s:cannot open graph file\n" msgstr "немагчыма адчыніць файл уводу `%s'" -#: gcov.c:714 +#: gcov.c:713 #, c-format msgid "%s:not a gcov graph file\n" msgstr "" -#: gcov.c:727 +#: gcov.c:726 #, c-format msgid "%s:version '%.4s', prefer '%.4s'\n" msgstr "" -#: gcov.c:779 +#: gcov.c:778 #, c-format msgid "%s:already seen blocks for '%s'\n" msgstr "" -#: gcov.c:897 gcov.c:1055 +#: gcov.c:896 gcov.c:1054 #, c-format msgid "%s:corrupted\n" msgstr "" -#: gcov.c:971 +#: gcov.c:970 #, c-format msgid "%s:cannot open data file, assuming not executed\n" msgstr "" -#: gcov.c:978 +#: gcov.c:977 #, fuzzy, c-format msgid "%s:not a gcov data file\n" msgstr "Немагчыма адчыніць файл з дадзенымі %s.\n" -#: gcov.c:991 +#: gcov.c:990 #, c-format msgid "%s:version '%.4s', prefer version '%.4s'\n" msgstr "" -#: gcov.c:997 +#: gcov.c:996 #, c-format msgid "%s:stamp mismatch with graph file\n" msgstr "" -#: gcov.c:1023 +#: gcov.c:1022 #, fuzzy, c-format msgid "%s:unknown function '%u'\n" msgstr "у функцыі \"%s\":" -#: gcov.c:1036 +#: gcov.c:1035 #, c-format msgid "%s:profile mismatch for '%s'\n" msgstr "" -#: gcov.c:1055 +#: gcov.c:1054 #, c-format msgid "%s:overflowed\n" msgstr "" -#: gcov.c:1079 +#: gcov.c:1078 #, c-format msgid "%s:'%s' lacks entry and/or exit blocks\n" msgstr "" -#: gcov.c:1084 +#: gcov.c:1083 #, c-format msgid "%s:'%s' has arcs to entry block\n" msgstr "" -#: gcov.c:1092 +#: gcov.c:1091 #, c-format msgid "%s:'%s' has arcs from exit block\n" msgstr "" -#: gcov.c:1300 +#: gcov.c:1299 #, c-format msgid "%s:graph is unsolvable for '%s'\n" msgstr "" -#: gcov.c:1380 +#: gcov.c:1379 #, fuzzy, c-format msgid "%s '%s'\n" msgstr "%s: %s: " -#: gcov.c:1383 +#: gcov.c:1382 #, c-format msgid "Lines executed:%s of %d\n" msgstr "" -#: gcov.c:1387 +#: gcov.c:1386 #, c-format msgid "No executable lines\n" msgstr "" -#: gcov.c:1393 +#: gcov.c:1392 #, c-format msgid "Branches executed:%s of %d\n" msgstr "" -#: gcov.c:1397 +#: gcov.c:1396 #, c-format msgid "Taken at least once:%s of %d\n" msgstr "" -#: gcov.c:1403 +#: gcov.c:1402 #, c-format msgid "No branches\n" msgstr "" -#: gcov.c:1405 +#: gcov.c:1404 #, c-format msgid "Calls executed:%s of %d\n" msgstr "" -#: gcov.c:1409 +#: gcov.c:1408 #, c-format msgid "No calls\n" msgstr "" -#: gcov.c:1550 +#: gcov.c:1549 #, fuzzy, c-format msgid "%s:no lines for '%s'\n" msgstr "%s перад \"%s\"" -#: gcov.c:1745 +#: gcov.c:1744 #, c-format msgid "call %2d returned %s\n" msgstr "" -#: gcov.c:1750 +#: gcov.c:1749 #, c-format msgid "call %2d never executed\n" msgstr "" -#: gcov.c:1755 +#: gcov.c:1754 #, c-format msgid "branch %2d taken %s%s\n" msgstr "" -#: gcov.c:1759 +#: gcov.c:1758 #, c-format msgid "branch %2d never executed\n" msgstr "" -#: gcov.c:1764 +#: gcov.c:1763 #, fuzzy, c-format msgid "unconditional %2d taken %s\n" msgstr "невядомая назва рэгістра: %s\n" -#: gcov.c:1767 +#: gcov.c:1766 #, c-format msgid "unconditional %2d never executed\n" msgstr "" -#: gcov.c:1800 +#: gcov.c:1799 #, fuzzy, c-format msgid "%s:cannot open source file\n" msgstr "не магу знайсці крыніцу %s" -#: gcov.c:1810 +#: gcov.c:1809 #, c-format msgid "%s:source file is newer than graph file '%s'\n" msgstr "" -#: gcse.c:681 +#: gcse.c:680 msgid "GCSE disabled" msgstr "" -#: gcse.c:6531 +#: gcse.c:6530 msgid "jump bypassing disabled" msgstr "" @@ -1597,36 +1597,36 @@ msgstr "" #. Opening quotation mark. -#: intl.c:58 +#: intl.c:57 msgid "`" msgstr "" #. Closing quotation mark. -#: intl.c:61 +#: intl.c:60 msgid "'" msgstr "" -#: ipa-inline.c:288 +#: ipa-inline.c:287 msgid "--param large-function-growth limit reached" msgstr "" -#: ipa-inline.c:322 +#: ipa-inline.c:321 msgid "--param max-inline-insns-single limit reached" msgstr "" -#: ipa-inline.c:331 +#: ipa-inline.c:330 msgid "--param max-inline-insns-auto limit reached" msgstr "" -#: ipa-inline.c:357 ipa-inline.c:803 +#: ipa-inline.c:356 ipa-inline.c:802 msgid "recursive inlining" msgstr "" -#: ipa-inline.c:816 +#: ipa-inline.c:815 msgid "call is unlikely" msgstr "" -#: ipa-inline.c:887 +#: ipa-inline.c:886 msgid "--param inline-unit-growth limit reached" msgstr "" @@ -1644,77 +1644,77 @@ msgid "In function %qs:" msgstr "у функцыі \"%s\":" -#: loop-iv.c:2700 tree-ssa-loop-niter.c:1154 +#: loop-iv.c:2699 tree-ssa-loop-niter.c:1153 msgid "assuming that the loop is not infinite" msgstr "" -#: loop-iv.c:2701 tree-ssa-loop-niter.c:1155 +#: loop-iv.c:2700 tree-ssa-loop-niter.c:1154 msgid "cannot optimize possibly infinite loops" msgstr "" -#: loop-iv.c:2709 tree-ssa-loop-niter.c:1159 +#: loop-iv.c:2708 tree-ssa-loop-niter.c:1158 msgid "assuming that the loop counter does not overflow" msgstr "" -#: loop-iv.c:2710 tree-ssa-loop-niter.c:1160 +#: loop-iv.c:2709 tree-ssa-loop-niter.c:1159 msgid "cannot optimize loop, the loop counter may overflow" msgstr "" #. What to print when a switch has no documentation. -#: opts.c:100 +#: opts.c:99 msgid "This switch lacks documentation" msgstr "" -#: opts.c:1188 +#: opts.c:1187 #, c-format msgid "" "\n" "Target specific options:\n" msgstr "" -#: opts.c:1209 +#: opts.c:1208 msgid "The following options are language-independent:\n" msgstr "" -#: opts.c:1216 +#: opts.c:1215 #, c-format msgid "" "The %s front end recognizes the following options:\n" "\n" msgstr "" -#: opts.c:1229 +#: opts.c:1228 msgid "The --param option recognizes the following as parameters:\n" msgstr "" -#: protoize.c:583 +#: protoize.c:582 #, fuzzy, c-format msgid "%s: error writing file '%s': %s\n" msgstr "" "\n" "%s: памылка чытаньня файла ўводу `%s': %s\n" -#: protoize.c:627 +#: protoize.c:626 #, c-format msgid "%s: usage '%s [ -VqfnkN ] [ -i ] [ filename ... ]'\n" msgstr "" -#: protoize.c:630 +#: protoize.c:629 #, c-format msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B ] [ filename ... ]'\n" msgstr "" -#: protoize.c:731 +#: protoize.c:730 #, fuzzy, c-format msgid "%s: warning: no read access for file '%s'\n" msgstr "%s: увага: файл \"%s\" ужо запісан у \"%s\"\n" -#: protoize.c:739 +#: protoize.c:738 #, fuzzy, c-format msgid "%s: warning: no write access for file '%s'\n" msgstr "%s: %d: увага: няма знешняга (extern) абвяшчэння для \"%s\"\n" -#: protoize.c:747 +#: protoize.c:746 #, fuzzy, c-format msgid "%s: warning: no write access for dir containing '%s'\n" msgstr "%s: %d: увага: няма знешняга (extern) абвяшчэння для \"%s\"\n" @@ -1722,239 +1722,239 @@ #. Catch cases like /.. where we try to backup to a #. point above the absolute root of the logical file #. system. -#: protoize.c:1134 +#: protoize.c:1133 #, c-format msgid "%s: invalid file name: %s\n" msgstr "" -#: protoize.c:1282 +#: protoize.c:1281 #, c-format msgid "%s: %s: can't get status: %s\n" msgstr "" -#: protoize.c:1303 +#: protoize.c:1302 #, c-format msgid "" "\n" "%s: fatal error: aux info file corrupted at line %d\n" msgstr "" -#: protoize.c:1632 +#: protoize.c:1631 #, fuzzy, c-format msgid "%s:%d: declaration of function '%s' takes different forms\n" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: protoize.c:1887 +#: protoize.c:1886 #, fuzzy, c-format msgid "%s: compiling '%s'\n" msgstr "%s: кампілюецца \"%s\"\n" -#: protoize.c:1910 +#: protoize.c:1909 #, c-format msgid "%s: wait: %s\n" msgstr "" -#: protoize.c:1915 +#: protoize.c:1914 #, c-format msgid "%s: subprocess got fatal signal %d\n" msgstr "" -#: protoize.c:1923 +#: protoize.c:1922 #, c-format msgid "%s: %s exited with status %d\n" msgstr "" -#: protoize.c:1972 +#: protoize.c:1971 #, c-format msgid "%s: warning: missing SYSCALLS file '%s'\n" msgstr "" -#: protoize.c:1981 protoize.c:2010 +#: protoize.c:1980 protoize.c:2009 #, fuzzy, c-format msgid "%s: can't read aux info file '%s': %s\n" msgstr "%s: немагчыма зьмяніць рэжым файла `%s': %s\n" -#: protoize.c:2026 protoize.c:2054 +#: protoize.c:2025 protoize.c:2053 #, fuzzy, c-format msgid "%s: can't get status of aux info file '%s': %s\n" msgstr "%s: немагчыма зьмяніць рэжым файла `%s': %s\n" -#: protoize.c:2082 +#: protoize.c:2081 #, fuzzy, c-format msgid "%s: can't open aux info file '%s' for reading: %s\n" msgstr "%s: немагчыма адчыніць файл `%s' для чытаньня: %s\n" -#: protoize.c:2100 +#: protoize.c:2099 #, fuzzy, c-format msgid "%s: error reading aux info file '%s': %s\n" msgstr "" "\n" "%s: памылка чытаньня файла ўводу `%s': %s\n" -#: protoize.c:2113 +#: protoize.c:2112 #, fuzzy, c-format msgid "%s: error closing aux info file '%s': %s\n" msgstr "" "\n" "%s: памылка чытаньня файла ўводу `%s': %s\n" -#: protoize.c:2129 +#: protoize.c:2128 #, fuzzy, c-format msgid "%s: can't delete aux info file '%s': %s\n" msgstr "%s: немагчыма знішчыць файл \"%s\": %s\n" -#: protoize.c:2211 protoize.c:4181 +#: protoize.c:2210 protoize.c:4180 #, fuzzy, c-format msgid "%s: can't delete file '%s': %s\n" msgstr "%s: немагчыма знішчыць файл \"%s\": %s\n" -#: protoize.c:2289 +#: protoize.c:2288 #, fuzzy, c-format msgid "%s: warning: can't rename file '%s' to '%s': %s\n" msgstr "%s: немагчыма знішчыць файл \"%s\": %s\n" -#: protoize.c:2411 +#: protoize.c:2410 #, c-format msgid "%s: conflicting extern definitions of '%s'\n" msgstr "" -#: protoize.c:2415 +#: protoize.c:2414 #, c-format msgid "%s: declarations of '%s' will not be converted\n" msgstr "" -#: protoize.c:2417 +#: protoize.c:2416 #, c-format msgid "%s: conflict list for '%s' follows:\n" msgstr "" -#: protoize.c:2450 +#: protoize.c:2449 #, c-format msgid "%s: warning: using formals list from %s(%d) for function '%s'\n" msgstr "" -#: protoize.c:2490 +#: protoize.c:2489 #, c-format msgid "%s: %d: '%s' used but missing from SYSCALLS\n" msgstr "" -#: protoize.c:2496 +#: protoize.c:2495 #, fuzzy, c-format msgid "%s: %d: warning: no extern definition for '%s'\n" msgstr "%s: %d: увага: няма знешняга (extern) абвяшчэння для \"%s\"\n" -#: protoize.c:2526 +#: protoize.c:2525 #, fuzzy, c-format msgid "%s: warning: no static definition for '%s' in file '%s'\n" msgstr "%s: %d: увага: няма знешняга (extern) абвяшчэння для \"%s\"\n" -#: protoize.c:2532 +#: protoize.c:2531 #, c-format msgid "%s: multiple static defs of '%s' in file '%s'\n" msgstr "" -#: protoize.c:2702 protoize.c:2705 +#: protoize.c:2701 protoize.c:2704 #, c-format msgid "%s: %d: warning: source too confusing\n" msgstr "" -#: protoize.c:2900 +#: protoize.c:2899 #, c-format msgid "%s: %d: warning: varargs function declaration not converted\n" msgstr "" -#: protoize.c:2915 +#: protoize.c:2914 #, fuzzy, c-format msgid "%s: declaration of function '%s' not converted\n" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: protoize.c:3038 +#: protoize.c:3037 #, fuzzy, c-format msgid "%s: warning: too many parameter lists in declaration of '%s'\n" msgstr "%s: %d: увага: няма знешняга (extern) абвяшчэння для \"%s\"\n" -#: protoize.c:3059 +#: protoize.c:3058 #, fuzzy, c-format msgid "" "\n" "%s: warning: too few parameter lists in declaration of '%s'\n" msgstr "%s: %d: увага: няма знешняга (extern) абвяшчэння для \"%s\"\n" -#: protoize.c:3155 +#: protoize.c:3154 #, fuzzy, c-format msgid "%s: %d: warning: found '%s' but expected '%s'\n" msgstr "%s: %d: увага: няма знешняга (extern) абвяшчэння для \"%s\"\n" -#: protoize.c:3330 +#: protoize.c:3329 #, fuzzy, c-format msgid "%s: local declaration for function '%s' not inserted\n" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: protoize.c:3357 +#: protoize.c:3356 #, c-format msgid "" "\n" "%s: %d: warning: can't add declaration of '%s' into macro call\n" msgstr "" -#: protoize.c:3429 +#: protoize.c:3428 #, c-format msgid "%s: global declarations for file '%s' not inserted\n" msgstr "" -#: protoize.c:3519 protoize.c:3549 +#: protoize.c:3518 protoize.c:3548 #, c-format msgid "%s: definition of function '%s' not converted\n" msgstr "" -#: protoize.c:3538 +#: protoize.c:3537 #, c-format msgid "%s: %d: warning: definition of %s not converted\n" msgstr "" -#: protoize.c:3864 +#: protoize.c:3863 #, 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:3880 +#: protoize.c:3879 #, c-format msgid "%s: %d: warning: '%s' excluded by preprocessing\n" msgstr "" -#: protoize.c:3883 +#: protoize.c:3882 #, c-format msgid "%s: function definition not converted\n" msgstr "" -#: protoize.c:3941 +#: protoize.c:3940 #, c-format msgid "%s: '%s' not converted\n" msgstr "" -#: protoize.c:3949 +#: protoize.c:3948 #, fuzzy, c-format msgid "%s: would convert file '%s'\n" msgstr "%s: немагчыма знішчыць файл \"%s\": %s\n" -#: protoize.c:3952 +#: protoize.c:3951 #, fuzzy, c-format msgid "%s: converting file '%s'\n" msgstr "%s: немагчыма знішчыць файл \"%s\": %s\n" -#: protoize.c:3962 +#: protoize.c:3961 #, fuzzy, c-format msgid "%s: can't get status for file '%s': %s\n" msgstr "%s: немагчыма зьмяніць рэжым файла `%s': %s\n" -#: protoize.c:4004 +#: protoize.c:4003 #, fuzzy, c-format msgid "%s: can't open file '%s' for reading: %s\n" msgstr "%s: немагчыма адчыніць файл `%s' для чытаньня: %s\n" -#: protoize.c:4019 +#: protoize.c:4018 #, fuzzy, c-format msgid "" "\n" @@ -1963,125 +1963,125 @@ "\n" "%s: памылка чытаньня файла ўводу `%s': %s\n" -#: protoize.c:4053 +#: protoize.c:4052 #, fuzzy, c-format msgid "%s: can't create/open clean file '%s': %s\n" msgstr "%s: немагчыма зьмяніць рэжым файла `%s': %s\n" -#: protoize.c:4158 +#: protoize.c:4157 #, fuzzy, c-format msgid "%s: warning: file '%s' already saved in '%s'\n" msgstr "%s: увага: файл \"%s\" ужо запісан у \"%s\"\n" -#: protoize.c:4166 +#: protoize.c:4165 #, fuzzy, c-format msgid "%s: can't link file '%s' to '%s': %s\n" msgstr "%s: немагчыма знішчыць файл \"%s\": %s\n" -#: protoize.c:4196 +#: protoize.c:4195 #, fuzzy, c-format msgid "%s: can't create/open output file '%s': %s\n" msgstr "%s: немагчыма зьмяніць рэжым файла `%s': %s\n" -#: protoize.c:4229 +#: protoize.c:4228 #, fuzzy, c-format msgid "%s: can't change mode of file '%s': %s\n" msgstr "%s: немагчыма зьмяніць рэжым файла `%s': %s\n" -#: protoize.c:4405 +#: protoize.c:4404 #, c-format msgid "%s: cannot get working directory: %s\n" msgstr "" -#: protoize.c:4503 +#: protoize.c:4502 #, c-format msgid "%s: input file names must have .c suffixes: %s\n" msgstr "%s: файл уводу павінен мець суфікс .c: %s\n" -#: reload.c:3742 +#: reload.c:3741 msgid "unable to generate reloads for:" msgstr "" -#: reload1.c:1938 +#: reload1.c:1937 msgid "this is the insn:" msgstr "" #. It's the compiler's fault. -#: reload1.c:5179 +#: reload1.c:5178 #, fuzzy msgid "could not find a spill register" msgstr "Не выкарыстоўваць рэгістра sb" #. It's the compiler's fault. -#: reload1.c:6835 +#: reload1.c:6841 msgid "VOIDmode on an output" msgstr "" -#: reload1.c:7828 +#: reload1.c:7834 msgid "Failure trying to reload:" msgstr "" -#: rtl-error.c:128 +#: rtl-error.c:127 #, fuzzy msgid "unrecognizable insn:" msgstr "нераспазнаны выбар \"-%s\"" -#: rtl-error.c:130 +#: rtl-error.c:129 msgid "insn does not satisfy its constraints:" msgstr "" -#: timevar.c:412 +#: timevar.c:411 msgid "" "\n" "Execution times (seconds)\n" msgstr "" #. Print total time. -#: timevar.c:470 +#: timevar.c:469 msgid " TOTAL :" msgstr "" -#: timevar.c:499 +#: timevar.c:498 #, c-format msgid "time in %s: %ld.%06ld (%ld%%)\n" msgstr "" -#: tlink.c:384 +#: tlink.c:383 #, c-format msgid "collect: reading %s\n" msgstr "" -#: tlink.c:478 +#: tlink.c:477 #, c-format msgid "removing .rpo file" msgstr "" -#: tlink.c:480 +#: tlink.c:479 #, c-format msgid "renaming .rpo file" msgstr "" -#: tlink.c:534 +#: tlink.c:533 #, c-format msgid "collect: recompiling %s\n" msgstr "" -#: tlink.c:738 +#: tlink.c:737 #, c-format msgid "collect: tweaking %s in %s\n" msgstr "" -#: tlink.c:788 +#: tlink.c:787 #, c-format msgid "collect: relinking\n" msgstr "" -#: toplev.c:601 +#: toplev.c:600 #, fuzzy, c-format msgid "unrecoverable error" msgstr "унутраная памылка" -#: toplev.c:1160 +#: toplev.c:1159 #, fuzzy, c-format msgid "" "%s%s%s version %s (%s)\n" @@ -2091,38 +2091,38 @@ "%s\tзкампілявана GNU C версія %s.\n" "%s%s%s версія %s (%s) зкампілявана CC.\n" -#: toplev.c:1162 +#: toplev.c:1161 #, c-format msgid "%s%s%s version %s (%s) compiled by CC.\n" msgstr "" -#: toplev.c:1166 +#: toplev.c:1165 #, c-format msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n" msgstr "" -#: toplev.c:1228 +#: toplev.c:1227 msgid "options passed: " msgstr "" -#: toplev.c:1257 +#: toplev.c:1256 msgid "options enabled: " msgstr "выбары ўключаны:" -#: toplev.c:1376 +#: toplev.c:1375 #, c-format msgid "created and used with differing settings of '%s'" msgstr "" -#: toplev.c:1378 +#: toplev.c:1377 msgid "out of memory" msgstr "" -#: toplev.c:1393 +#: toplev.c:1392 msgid "created and used with different settings of -fpic" msgstr "" -#: toplev.c:1395 +#: toplev.c:1394 msgid "created and used with different settings of -fpie" msgstr "" @@ -2165,446 +2165,446 @@ msgid "debug: " msgstr "" -#: params.def:48 +#: params.def:45 msgid "The maximum number of fields in a structure variable without direct structure accesses that GCC will attempt to track separately" msgstr "" -#: params.def:55 +#: params.def:52 msgid "The maximum number of elements in an array for wich we track its elements separately" msgstr "" -#: params.def:64 +#: params.def:61 msgid "The maximum structure size (in bytes) for which GCC will use by-element copies" msgstr "" -#: params.def:73 +#: params.def:70 msgid "The maximum number of structure fields for which GCC will use by-element copies" msgstr "" -#: params.def:85 +#: params.def:82 msgid "The threshold ratio between instantiated fields and the total structure size" msgstr "" -#: params.def:102 +#: params.def:99 msgid "The maximum number of instructions in a single function eligible for inlining" msgstr "" -#: params.def:114 +#: params.def:111 msgid "The maximum number of instructions when automatically inlining" msgstr "" -#: params.def:119 +#: params.def:116 msgid "The maximum number of instructions inline function can grow to via recursive inlining" msgstr "" -#: params.def:124 +#: params.def:121 msgid "The maximum number of instructions non-inline function can grow to via recursive inlining" msgstr "" -#: params.def:129 +#: params.def:126 msgid "The maximum depth of recursive inlining for inline functions" msgstr "" -#: params.def:134 +#: params.def:131 msgid "The maximum depth of recursive inlining for non-inline functions" msgstr "" -#: params.def:139 +#: params.def:136 msgid "Inline recursively only when the probability of call being executed exceeds the parameter" msgstr "" -#: params.def:146 +#: params.def:143 msgid "If -fvariable-expansion-in-unroller is used, the maximum number of times that an individual variable will be expanded during loop unrolling" msgstr "" -#: params.def:157 +#: params.def:154 msgid "The maximum number of instructions to consider to fill a delay slot" msgstr "" -#: params.def:168 +#: params.def:165 msgid "The maximum number of instructions to consider to find accurate live register information" msgstr "" -#: params.def:178 +#: params.def:175 msgid "The maximum length of scheduling's pending operations list" msgstr "" -#: params.def:183 +#: params.def:180 msgid "The size of function body to be considered large" msgstr "" -#: params.def:187 +#: params.def:184 msgid "Maximal growth due to inlining of large function (in percent)" msgstr "" -#: params.def:191 +#: params.def:188 msgid "The size of translation unit to be considered large" msgstr "" -#: params.def:195 +#: params.def:192 msgid "how much can given compilation unit grow because of the inlining (in percent)" msgstr "" -#: params.def:199 +#: params.def:196 msgid "expense of call operation relative to ordinary arithmetic operations" msgstr "" -#: params.def:206 +#: params.def:203 msgid "The maximum amount of memory to be allocated by GCSE" msgstr "" -#: params.def:211 +#: params.def:208 msgid "The maximum number of passes to make when doing GCSE" msgstr "" -#: params.def:221 +#: params.def:218 msgid "The threshold ratio for performing partial redundancy elimination after reload" msgstr "" -#: params.def:228 +#: params.def:225 msgid "The threshold ratio of critical edges execution count that permit performing redundancy elimination after reload" msgstr "" -#: params.def:239 +#: params.def:236 msgid "The maximum number of instructions to consider to unroll in a loop" msgstr "" -#: params.def:245 +#: params.def:242 msgid "The maximum number of instructions to consider to unroll in a loop on average" msgstr "" -#: params.def:250 +#: params.def:247 msgid "The maximum number of unrollings of a single loop" msgstr "" -#: params.def:255 +#: params.def:252 msgid "The maximum number of insns of a peeled loop" msgstr "" -#: params.def:260 +#: params.def:257 msgid "The maximum number of peelings of a single loop" msgstr "" -#: params.def:265 +#: params.def:262 msgid "The maximum number of insns of a completely peeled loop" msgstr "" -#: params.def:270 +#: params.def:267 msgid "The maximum number of peelings of a single loop that is peeled completely" msgstr "" -#: params.def:275 +#: params.def:272 msgid "The maximum number of insns of a peeled loop that rolls only once" msgstr "" -#: params.def:281 +#: params.def:278 msgid "The maximum number of insns of an unswitched loop" msgstr "" -#: params.def:286 +#: params.def:283 msgid "The maximum number of unswitchings in a single loop" msgstr "" -#: params.def:293 +#: params.def:290 msgid "Bound on the number of iterations the brute force # of iterations analysis algorithm evaluates" msgstr "" -#: params.def:299 +#: params.def:296 msgid "Bound on the cost of an expression to compute the number of iterations" msgstr "" -#: params.def:304 +#: params.def:301 msgid "Maximum number of loops to perform swing modulo scheduling on (mainly for debugging)" msgstr "" -#: params.def:310 +#: params.def:307 msgid "A factor for tuning the upper bound that swing modulo scheduler uses for scheduling a loop" msgstr "" -#: params.def:314 +#: params.def:311 msgid "The number of cycles the swing modulo scheduler considers when checking conflicts using DFA" msgstr "" -#: params.def:318 +#: params.def:315 msgid "A threshold on the average loop count considered by the swing modulo scheduler" msgstr "" -#: params.def:323 +#: params.def:320 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:327 +#: params.def:324 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:343 +#: params.def:340 msgid "The maximum number of loop iterations we predict statically" msgstr "" -#: params.def:347 +#: params.def:344 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:351 +#: params.def:348 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:355 +#: params.def:352 msgid "Maximal code growth caused by tail duplication (in percent)" msgstr "" -#: params.def:359 +#: params.def:356 msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)" msgstr "" -#: params.def:363 +#: params.def:360 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:367 +#: params.def:364 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:373 +#: params.def:370 msgid "The maximum number of incoming edges to consider for crossjumping" msgstr "" -#: params.def:379 +#: params.def:376 msgid "The minimum number of matching instructions to consider for crossjumping" msgstr "" -#: params.def:385 +#: params.def:382 msgid "The maximum expansion factor when copying basic blocks" msgstr "" -#: params.def:391 +#: params.def:388 msgid "The maximum number of insns to duplicate when unfactoring computed gotos" msgstr "" -#: params.def:397 +#: params.def:394 msgid "The maximum length of path considered in cse" msgstr "" -#: params.def:401 +#: params.def:398 msgid "The maximum instructions CSE process before flushing" msgstr "" -#: params.def:408 +#: params.def:405 msgid "The minimum cost of an expensive expression in the loop invariant motion" msgstr "" -#: params.def:417 +#: params.def:414 msgid "Bound on number of candidates below that all candidates are considered in iv optimizations" msgstr "" -#: params.def:425 +#: params.def:422 msgid "Bound on number of iv uses in loop optimized in iv optimizations" msgstr "" -#: params.def:433 +#: params.def:430 msgid "If number of candidates in the set is smaller, we always try to remove unused ivs during its optimization" msgstr "" -#: params.def:438 +#: params.def:435 msgid "Bound on size of expressions used in the scalar evolutions analyzer" msgstr "" -#: params.def:443 +#: params.def:440 msgid "Bound on number of runtime checks inserted by the vectorizer's loop versioning" msgstr "" -#: params.def:450 +#: params.def:447 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:455 +#: params.def:452 msgid "The maximum memory locations recorded by cselib" msgstr "" -#: params.def:459 +#: params.def:456 msgid "The maximum memory locations recorded by flow" msgstr "" -#: params.def:472 +#: params.def:469 msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap" msgstr "" -#: params.def:477 +#: params.def:474 msgid "Minimum heap size before we start collecting garbage, in kilobytes" msgstr "" -#: params.def:485 +#: params.def:482 msgid "The maximum number of instructions to search backward when looking for equivalent reload" msgstr "" -#: params.def:490 +#: params.def:487 msgid "The maximum number of virtual operands allowed to represent aliases before triggering alias grouping" msgstr "" -#: params.def:495 +#: params.def:492 msgid "The maximum number of blocks in a region to be considered for interblock scheduling" msgstr "" -#: params.def:500 +#: params.def:497 msgid "The maximum number of insns in a region to be considered for interblock scheduling" msgstr "" -#: params.def:505 +#: params.def:502 msgid "The minimum probability of reaching a source block for interblock speculative scheduling" msgstr "" -#: params.def:510 +#: params.def:507 msgid "The maximum number of iterations through CFG to extend regions" msgstr "" -#: params.def:515 +#: params.def:512 msgid "The maximum conflict delay for an insn to be considered for speculative motion" msgstr "" -#: params.def:520 +#: params.def:517 msgid "The minimal probability of speculation success (in percents), so that speculative insn will be scheduled." msgstr "" -#: params.def:525 +#: params.def:522 msgid "The maximum number of RTL nodes that can be recorded as combiner's last value" msgstr "" -#: params.def:533 +#: params.def:530 msgid "The upper bound for sharing integer constants" msgstr "" -#: params.def:552 +#: params.def:549 msgid "Minimum number of virtual mappings to consider switching to full virtual renames" msgstr "" -#: params.def:557 +#: params.def:554 msgid "Ratio between virtual mappings and virtual symbols to do full virtual renames" msgstr "" -#: params.def:562 +#: params.def:559 msgid "The lower bound for a buffer to be considered for stack smashing protection" msgstr "" -#: params.def:580 +#: params.def:577 msgid "Maximum number of statements allowed in a block that needs to be duplicated when threading jumps" msgstr "" -#: params.def:589 +#: params.def:586 msgid "Maximum number of fields in a structure before pointer analysis treats the structure as a single variable" msgstr "" -#: params.def:594 +#: params.def:591 msgid "The maximum number of instructions ready to be issued to be considered by the scheduler during the first scheduling pass" msgstr "" -#: config/alpha/alpha.c:5121 +#: config/alpha/alpha.c:5120 #, c-format msgid "invalid %%H value" msgstr "нерэчаіснае значэньне %%H" -#: config/alpha/alpha.c:5142 config/bfin/bfin.c:1237 +#: config/alpha/alpha.c:5141 config/bfin/bfin.c:1236 #, fuzzy, c-format msgid "invalid %%J value" msgstr "дрэннае %%Q значэнне" -#: config/alpha/alpha.c:5172 config/ia64/ia64.c:4656 +#: config/alpha/alpha.c:5171 config/ia64/ia64.c:4655 #, c-format msgid "invalid %%r value" msgstr "нерэчаіснае значэньне %%r" -#: config/alpha/alpha.c:5182 config/rs6000/rs6000.c:10600 -#: config/xtensa/xtensa.c:1707 +#: config/alpha/alpha.c:5181 config/rs6000/rs6000.c:10634 +#: config/xtensa/xtensa.c:1711 #, c-format msgid "invalid %%R value" msgstr "нерэчаіснае значэньне %%R" -#: config/alpha/alpha.c:5188 config/rs6000/rs6000.c:10519 -#: config/xtensa/xtensa.c:1674 +#: config/alpha/alpha.c:5187 config/rs6000/rs6000.c:10553 +#: config/xtensa/xtensa.c:1678 #, c-format msgid "invalid %%N value" msgstr "нерэчаіснае значэньне %%N" -#: config/alpha/alpha.c:5196 config/rs6000/rs6000.c:10547 +#: config/alpha/alpha.c:5195 config/rs6000/rs6000.c:10581 #, c-format msgid "invalid %%P value" msgstr "нерэчаіснае значэньне %%P" -#: config/alpha/alpha.c:5204 +#: config/alpha/alpha.c:5203 #, c-format msgid "invalid %%h value" msgstr "нерэчаіснае значэньне %%h" -#: config/alpha/alpha.c:5212 config/xtensa/xtensa.c:1700 +#: config/alpha/alpha.c:5211 config/xtensa/xtensa.c:1704 #, c-format msgid "invalid %%L value" msgstr "нерэчаіснае значэньне %%L" -#: config/alpha/alpha.c:5251 config/rs6000/rs6000.c:10501 +#: config/alpha/alpha.c:5250 config/rs6000/rs6000.c:10535 #, c-format msgid "invalid %%m value" msgstr "нерэчаіснае значэньне %%m" -#: config/alpha/alpha.c:5259 config/rs6000/rs6000.c:10509 +#: config/alpha/alpha.c:5258 config/rs6000/rs6000.c:10543 #, c-format msgid "invalid %%M value" msgstr "нерэчаіснае значэньне %%M" -#: config/alpha/alpha.c:5303 +#: config/alpha/alpha.c:5302 #, c-format msgid "invalid %%U value" msgstr "нерэчаіснае значэньне %%U" -#: config/alpha/alpha.c:5315 config/alpha/alpha.c:5329 -#: config/rs6000/rs6000.c:10608 +#: config/alpha/alpha.c:5314 config/alpha/alpha.c:5328 +#: config/rs6000/rs6000.c:10642 #, c-format msgid "invalid %%s value" msgstr "нерэчаіснае значэньне %%v" -#: config/alpha/alpha.c:5352 +#: config/alpha/alpha.c:5351 #, c-format msgid "invalid %%C value" msgstr "нерэчаіснае значэньне %%C" -#: config/alpha/alpha.c:5389 config/rs6000/rs6000.c:10339 -#: config/rs6000/rs6000.c:10358 +#: config/alpha/alpha.c:5388 config/rs6000/rs6000.c:10373 +#: config/rs6000/rs6000.c:10392 #, c-format msgid "invalid %%E value" msgstr "нерэчаіснае значэньне %%E" -#: config/alpha/alpha.c:5414 config/alpha/alpha.c:5462 +#: config/alpha/alpha.c:5413 config/alpha/alpha.c:5461 #, c-format msgid "unknown relocation unspec" msgstr "" -#: config/alpha/alpha.c:5423 config/crx/crx.c:1082 -#: config/rs6000/rs6000.c:10923 +#: config/alpha/alpha.c:5422 config/crx/crx.c:1081 +#: config/rs6000/rs6000.c:10957 #, c-format msgid "invalid %%xn code" msgstr "нерэчаіснае значэньне %%xn" -#: config/arc/arc.c:1726 config/m32r/m32r.c:1805 +#: config/arc/arc.c:1725 config/m32r/m32r.c:1804 #, fuzzy, c-format msgid "invalid operand to %%R code" msgstr "нерэчаісны %%-код" -#: config/arc/arc.c:1758 config/m32r/m32r.c:1828 +#: config/arc/arc.c:1757 config/m32r/m32r.c:1827 #, fuzzy, c-format msgid "invalid operand to %%H/%%L code" msgstr "нерэчаісны %%-код" -#: config/arc/arc.c:1780 config/m32r/m32r.c:1899 +#: config/arc/arc.c:1779 config/m32r/m32r.c:1898 #, fuzzy, c-format msgid "invalid operand to %%U code" msgstr "нерэчаісны %%-код" -#: config/arc/arc.c:1791 +#: config/arc/arc.c:1790 #, fuzzy, c-format msgid "invalid operand to %%V code" msgstr "нерэчаісны %%-код" #. Unknown flag. #. Undocumented flag. -#: config/arc/arc.c:1798 config/m32r/m32r.c:1926 config/sparc/sparc.c:6907 +#: config/arc/arc.c:1797 config/m32r/m32r.c:1925 config/sparc/sparc.c:6906 #, c-format msgid "invalid operand output code" msgstr "" @@ -2687,325 +2687,325 @@ msgid "internal compiler error. Incorrect shift:" msgstr "" -#: config/bfin/bfin.c:1199 +#: config/bfin/bfin.c:1198 #, c-format msgid "invalid %%j value" msgstr "" -#: config/bfin/bfin.c:1367 +#: config/bfin/bfin.c:1366 #, fuzzy, c-format msgid "invalid const_double operand" msgstr "нерэчаісны %%c аперанд" -#: config/c4x/c4x.c:1584 +#: config/c4x/c4x.c:1583 msgid "using CONST_DOUBLE for address" msgstr "" -#: config/c4x/c4x.c:1722 +#: config/c4x/c4x.c:1721 msgid "c4x_address_cost: Invalid addressing mode" msgstr "" -#: config/c4x/c4x.c:1857 +#: config/c4x/c4x.c:1856 #, c-format msgid "c4x_print_operand: %%L inconsistency" msgstr "" -#: config/c4x/c4x.c:1863 +#: config/c4x/c4x.c:1862 #, c-format msgid "c4x_print_operand: %%N inconsistency" msgstr "" -#: config/c4x/c4x.c:1904 +#: config/c4x/c4x.c:1903 #, c-format msgid "c4x_print_operand: %%O inconsistency" msgstr "" -#: config/c4x/c4x.c:1999 +#: config/c4x/c4x.c:1998 msgid "c4x_print_operand: Bad operand case" msgstr "" -#: config/c4x/c4x.c:2040 +#: config/c4x/c4x.c:2039 msgid "c4x_print_operand_address: Bad post_modify" msgstr "" -#: config/c4x/c4x.c:2062 +#: config/c4x/c4x.c:2061 msgid "c4x_print_operand_address: Bad pre_modify" msgstr "" -#: config/c4x/c4x.c:2110 config/c4x/c4x.c:2122 config/c4x/c4x.c:2137 +#: config/c4x/c4x.c:2109 config/c4x/c4x.c:2121 config/c4x/c4x.c:2136 msgid "c4x_print_operand_address: Bad operand case" msgstr "" -#: config/c4x/c4x.c:2388 +#: config/c4x/c4x.c:2387 msgid "c4x_rptb_insert: Cannot find start label" msgstr "" -#: config/c4x/c4x.c:2990 +#: config/c4x/c4x.c:2989 msgid "invalid indirect memory address" msgstr "" -#: config/c4x/c4x.c:3079 +#: config/c4x/c4x.c:3078 msgid "invalid indirect (S) memory address" msgstr "" -#: config/c4x/c4x.c:3414 +#: config/c4x/c4x.c:3413 msgid "c4x_valid_operands: Internal error" msgstr "" -#: config/c4x/c4x.c:3853 +#: config/c4x/c4x.c:3852 msgid "c4x_operand_subword: invalid mode" msgstr "" -#: config/c4x/c4x.c:3856 +#: config/c4x/c4x.c:3855 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:3882 +#: config/c4x/c4x.c:3881 msgid "c4x_operand_subword: invalid autoincrement" msgstr "" -#: config/c4x/c4x.c:3888 +#: config/c4x/c4x.c:3887 msgid "c4x_operand_subword: invalid address" msgstr "" -#: config/c4x/c4x.c:3899 +#: config/c4x/c4x.c:3898 msgid "c4x_operand_subword: address not offsettable" msgstr "" -#: config/c4x/c4x.c:4101 +#: config/c4x/c4x.c:4100 msgid "c4x_rptb_rpts_p: Repeat block top label moved" msgstr "" #. Use `%s' to print the string in case there are any escape #. characters in the message. -#: config/cris/cris.c:492 fortran/dump-parse-tree.c:79 +#: config/cris/cris.c:491 fortran/dump-parse-tree.c:79 #: fortran/dump-parse-tree.c:421 fortran/dump-parse-tree.c:754 -#: fortran/dump-parse-tree.c:801 c-typeck.c:4520 c-typeck.c:4535 -#: c-typeck.c:4550 final.c:2803 final.c:2805 gcc.c:4742 loop-iv.c:2702 -#: loop-iv.c:2711 rtl-error.c:113 toplev.c:605 tree-ssa-loop-niter.c:1165 -#: cp/parser.c:2087 cp/typeck.c:4468 java/expr.c:413 +#: fortran/dump-parse-tree.c:801 c-typeck.c:4519 c-typeck.c:4534 +#: c-typeck.c:4549 final.c:2802 final.c:2804 gcc.c:4741 loop-iv.c:2701 +#: loop-iv.c:2710 rtl-error.c:112 toplev.c:604 tree-ssa-loop-niter.c:1164 +#: cp/parser.c:2086 cp/typeck.c:4465 java/expr.c:412 #: /scratch/mitchell/gcc-releases/gcc-4.2.0-20070316/gcc-4.2.0-20070316/gcc/java/parse.y:5005 #, gcc-internal-format msgid "%s" msgstr "" -#: config/cris/cris.c:544 +#: config/cris/cris.c:543 msgid "unexpected index-type in cris_print_index" msgstr "" -#: config/cris/cris.c:558 +#: config/cris/cris.c:557 msgid "unexpected base-type in cris_print_base" msgstr "" -#: config/cris/cris.c:674 +#: config/cris/cris.c:673 msgid "invalid operand for 'b' modifier" msgstr "" -#: config/cris/cris.c:691 +#: config/cris/cris.c:690 #, fuzzy msgid "invalid operand for 'o' modifier" msgstr "нерэчаісны %%-код" -#: config/cris/cris.c:710 +#: config/cris/cris.c:709 #, fuzzy msgid "invalid operand for 'O' modifier" msgstr "нерэчаісны %%-код" -#: config/cris/cris.c:743 +#: config/cris/cris.c:742 msgid "invalid operand for 'p' modifier" msgstr "" -#: config/cris/cris.c:782 +#: config/cris/cris.c:781 msgid "invalid operand for 'z' modifier" msgstr "" -#: config/cris/cris.c:836 config/cris/cris.c:866 +#: config/cris/cris.c:835 config/cris/cris.c:865 msgid "invalid operand for 'H' modifier" msgstr "" -#: config/cris/cris.c:842 +#: config/cris/cris.c:841 msgid "bad register" msgstr "" -#: config/cris/cris.c:887 +#: config/cris/cris.c:886 msgid "invalid operand for 'e' modifier" msgstr "" -#: config/cris/cris.c:904 +#: config/cris/cris.c:903 msgid "invalid operand for 'm' modifier" msgstr "" -#: config/cris/cris.c:929 +#: config/cris/cris.c:928 msgid "invalid operand for 'A' modifier" msgstr "" -#: config/cris/cris.c:952 +#: config/cris/cris.c:951 msgid "invalid operand for 'D' modifier" msgstr "" -#: config/cris/cris.c:966 +#: config/cris/cris.c:965 msgid "invalid operand for 'T' modifier" msgstr "" -#: config/cris/cris.c:975 +#: config/cris/cris.c:974 msgid "invalid operand modifier letter" msgstr "" -#: config/cris/cris.c:1032 +#: config/cris/cris.c:1031 msgid "unexpected multiplicative operand" msgstr "" -#: config/cris/cris.c:1052 +#: config/cris/cris.c:1051 msgid "unexpected operand" msgstr "" -#: config/cris/cris.c:1085 config/cris/cris.c:1095 +#: config/cris/cris.c:1084 config/cris/cris.c:1094 msgid "unrecognized address" msgstr "нераспазнаны адрас" -#: config/cris/cris.c:2021 +#: config/cris/cris.c:2020 #, fuzzy msgid "unrecognized supposed constant" msgstr "нераспазнаны выбар \"-%s\"" -#: config/cris/cris.c:2396 config/cris/cris.c:2460 +#: config/cris/cris.c:2395 config/cris/cris.c:2459 msgid "unexpected side-effects in address" msgstr "" #. Can't possibly get a GOT-needing-fixup for a function-call, #. right? -#: config/cris/cris.c:3254 +#: config/cris/cris.c:3253 msgid "Unidentifiable call op" msgstr "" -#: config/cris/cris.c:3305 +#: config/cris/cris.c:3304 #, c-format msgid "PIC register isn't set up" msgstr "" -#: config/fr30/fr30.c:464 +#: config/fr30/fr30.c:463 #, c-format msgid "fr30_print_operand_address: unhandled address" msgstr "" -#: config/fr30/fr30.c:488 +#: config/fr30/fr30.c:487 #, c-format msgid "fr30_print_operand: unrecognized %%p code" msgstr "" -#: config/fr30/fr30.c:508 +#: config/fr30/fr30.c:507 #, c-format msgid "fr30_print_operand: unrecognized %%b code" msgstr "" -#: config/fr30/fr30.c:529 +#: config/fr30/fr30.c:528 #, c-format msgid "fr30_print_operand: unrecognized %%B code" msgstr "" -#: config/fr30/fr30.c:537 +#: config/fr30/fr30.c:536 #, c-format msgid "fr30_print_operand: invalid operand to %%A code" msgstr "" -#: config/fr30/fr30.c:554 +#: config/fr30/fr30.c:553 #, c-format msgid "fr30_print_operand: invalid %%x code" msgstr "" -#: config/fr30/fr30.c:561 +#: config/fr30/fr30.c:560 #, c-format msgid "fr30_print_operand: invalid %%F code" msgstr "" -#: config/fr30/fr30.c:578 +#: config/fr30/fr30.c:577 #, c-format msgid "fr30_print_operand: unknown code" msgstr "" -#: config/fr30/fr30.c:606 config/fr30/fr30.c:615 config/fr30/fr30.c:626 -#: config/fr30/fr30.c:639 +#: config/fr30/fr30.c:605 config/fr30/fr30.c:614 config/fr30/fr30.c:625 +#: config/fr30/fr30.c:638 #, c-format msgid "fr30_print_operand: unhandled MEM" msgstr "" -#: config/frv/frv.c:2541 +#: config/frv/frv.c:2540 msgid "bad insn to frv_print_operand_address:" msgstr "" -#: config/frv/frv.c:2552 +#: config/frv/frv.c:2551 msgid "bad register to frv_print_operand_memory_reference_reg:" msgstr "" -#: config/frv/frv.c:2591 config/frv/frv.c:2601 config/frv/frv.c:2610 -#: config/frv/frv.c:2631 config/frv/frv.c:2636 +#: config/frv/frv.c:2590 config/frv/frv.c:2600 config/frv/frv.c:2609 +#: config/frv/frv.c:2630 config/frv/frv.c:2635 msgid "bad insn to frv_print_operand_memory_reference:" msgstr "" -#: config/frv/frv.c:2722 +#: config/frv/frv.c:2721 #, c-format msgid "bad condition code" msgstr "" -#: config/frv/frv.c:2797 +#: config/frv/frv.c:2796 msgid "bad insn in frv_print_operand, bad const_double" msgstr "" -#: config/frv/frv.c:2858 +#: config/frv/frv.c:2857 msgid "bad insn to frv_print_operand, 'e' modifier:" msgstr "" -#: config/frv/frv.c:2866 +#: config/frv/frv.c:2865 msgid "bad insn to frv_print_operand, 'F' modifier:" msgstr "" -#: config/frv/frv.c:2882 +#: config/frv/frv.c:2881 msgid "bad insn to frv_print_operand, 'f' modifier:" msgstr "" -#: config/frv/frv.c:2896 +#: config/frv/frv.c:2895 msgid "bad insn to frv_print_operand, 'g' modifier:" msgstr "" -#: config/frv/frv.c:2944 +#: config/frv/frv.c:2943 msgid "bad insn to frv_print_operand, 'L' modifier:" msgstr "" -#: config/frv/frv.c:2957 +#: config/frv/frv.c:2956 msgid "bad insn to frv_print_operand, 'M/N' modifier:" msgstr "" -#: config/frv/frv.c:2978 +#: config/frv/frv.c:2977 msgid "bad insn to frv_print_operand, 'O' modifier:" msgstr "" -#: config/frv/frv.c:2996 +#: config/frv/frv.c:2995 msgid "bad insn to frv_print_operand, P modifier:" msgstr "" -#: config/frv/frv.c:3016 +#: config/frv/frv.c:3015 msgid "bad insn in frv_print_operand, z case" msgstr "" -#: config/frv/frv.c:3047 +#: config/frv/frv.c:3046 msgid "bad insn in frv_print_operand, 0 case" msgstr "" -#: config/frv/frv.c:3052 +#: config/frv/frv.c:3051 msgid "frv_print_operand: unknown code" msgstr "" -#: config/frv/frv.c:4421 +#: config/frv/frv.c:4420 msgid "bad output_move_single operand" msgstr "" -#: config/frv/frv.c:4548 +#: config/frv/frv.c:4547 msgid "bad output_move_double operand" msgstr "" -#: config/frv/frv.c:4690 +#: config/frv/frv.c:4689 msgid "bad output_condmove_single operand" msgstr "" @@ -3018,606 +3018,606 @@ #. #else #. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)"); #. #endif -#: config/frv/frv.h:329 +#: config/frv/frv.h:328 #, c-format msgid " (frv)" msgstr "" -#: config/i386/i386.c:7292 +#: config/i386/i386.c:7291 #, c-format msgid "invalid UNSPEC as operand" msgstr "" -#: config/i386/i386.c:7887 +#: config/i386/i386.c:7886 #, c-format msgid "operand is neither a constant nor a condition code, invalid operand code 'c'" msgstr "" -#: config/i386/i386.c:7940 +#: config/i386/i386.c:7939 #, fuzzy, c-format msgid "invalid operand code '%c'" msgstr "Нерэчаісны выбар \"%s\"" -#: config/i386/i386.c:7983 +#: config/i386/i386.c:7982 #, fuzzy, c-format msgid "invalid constraints for operand" msgstr "нерэчаісны %%c аперанд" -#: config/i386/i386.c:13641 +#: config/i386/i386.c:13643 #, fuzzy msgid "unknown insn mode" msgstr "невядомы рэжым машыны \"%s\"" #. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later. #. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong. -#: config/i386/xm-djgpp.h:62 +#: config/i386/xm-djgpp.h:61 #, c-format msgid "environment variable DJGPP not defined" msgstr "" -#: config/i386/xm-djgpp.h:64 +#: config/i386/xm-djgpp.h:63 #, c-format msgid "environment variable DJGPP points to missing file '%s'" msgstr "" -#: config/i386/xm-djgpp.h:67 +#: config/i386/xm-djgpp.h:66 #, c-format msgid "environment variable DJGPP points to corrupt file '%s'" msgstr "" -#: config/ia64/ia64.c:4708 +#: config/ia64/ia64.c:4707 #, c-format msgid "ia64_print_operand: unknown code" msgstr "" -#: config/ia64/ia64.c:9799 +#: config/ia64/ia64.c:9798 #, fuzzy msgid "invalid conversion from %<__fpreg%>" msgstr "нерэчаісны рэжым для gen_tst_reg" -#: config/ia64/ia64.c:9802 +#: config/ia64/ia64.c:9801 #, fuzzy msgid "invalid conversion to %<__fpreg%>" msgstr "нерэчаісны %%-код" -#: config/ia64/ia64.c:9815 config/ia64/ia64.c:9826 +#: config/ia64/ia64.c:9814 config/ia64/ia64.c:9825 #, fuzzy msgid "invalid operation on %<__fpreg%>" msgstr "нерэчаісны %%-код" -#: config/iq2000/iq2000.c:3129 +#: config/iq2000/iq2000.c:3128 #, fuzzy, c-format msgid "invalid %%P operand" msgstr "нерэчаісны %%-код" -#: config/iq2000/iq2000.c:3137 config/rs6000/rs6000.c:10537 +#: config/iq2000/iq2000.c:3136 config/rs6000/rs6000.c:10571 #, c-format msgid "invalid %%p value" msgstr "" -#: config/iq2000/iq2000.c:3193 config/mips/mips.c:5643 +#: config/iq2000/iq2000.c:3192 config/mips/mips.c:5665 #, c-format msgid "invalid use of %%d, %%x, or %%X" msgstr "" -#: config/m32r/m32r.c:1775 +#: config/m32r/m32r.c:1774 #, fuzzy, c-format msgid "invalid operand to %%s code" msgstr "нерэчаісны %%-код" -#: config/m32r/m32r.c:1782 +#: config/m32r/m32r.c:1781 #, fuzzy, c-format msgid "invalid operand to %%p code" msgstr "нерэчаісны %%-код" -#: config/m32r/m32r.c:1837 +#: config/m32r/m32r.c:1836 msgid "bad insn for 'A'" msgstr "" -#: config/m32r/m32r.c:1884 +#: config/m32r/m32r.c:1883 #, fuzzy, c-format msgid "invalid operand to %%T/%%B code" msgstr "нерэчаісны %%-код" -#: config/m32r/m32r.c:1907 +#: config/m32r/m32r.c:1906 #, fuzzy, c-format msgid "invalid operand to %%N code" msgstr "нерэчаісны %%-код" -#: config/m32r/m32r.c:1940 +#: config/m32r/m32r.c:1939 msgid "pre-increment address is not a register" msgstr "" -#: config/m32r/m32r.c:1947 +#: config/m32r/m32r.c:1946 msgid "pre-decrement address is not a register" msgstr "" -#: config/m32r/m32r.c:1954 +#: config/m32r/m32r.c:1953 msgid "post-increment address is not a register" msgstr "" -#: config/m32r/m32r.c:2030 config/m32r/m32r.c:2044 -#: config/rs6000/rs6000.c:17905 +#: config/m32r/m32r.c:2029 config/m32r/m32r.c:2043 +#: config/rs6000/rs6000.c:17940 msgid "bad address" msgstr "дрэнны адрас" -#: config/m32r/m32r.c:2049 +#: config/m32r/m32r.c:2048 #, fuzzy msgid "lo_sum not of register" msgstr "Не выкарыстоўваць рэгістра sb" #. !!!! SCz wrong here. -#: config/m68hc11/m68hc11.c:3189 config/m68hc11/m68hc11.c:3567 +#: config/m68hc11/m68hc11.c:3188 config/m68hc11/m68hc11.c:3566 msgid "move insn not handled" msgstr "" -#: config/m68hc11/m68hc11.c:3413 config/m68hc11/m68hc11.c:3497 -#: config/m68hc11/m68hc11.c:3770 +#: config/m68hc11/m68hc11.c:3412 config/m68hc11/m68hc11.c:3496 +#: config/m68hc11/m68hc11.c:3769 msgid "invalid register in the move instruction" msgstr "" -#: config/m68hc11/m68hc11.c:3447 +#: config/m68hc11/m68hc11.c:3446 msgid "invalid operand in the instruction" msgstr "" -#: config/m68hc11/m68hc11.c:3744 +#: config/m68hc11/m68hc11.c:3743 #, fuzzy msgid "invalid register in the instruction" msgstr "нявернае выкарыстанне \"restict\"" -#: config/m68hc11/m68hc11.c:3777 +#: config/m68hc11/m68hc11.c:3776 msgid "operand 1 must be a hard register" msgstr "" -#: config/m68hc11/m68hc11.c:3791 +#: config/m68hc11/m68hc11.c:3790 #, fuzzy msgid "invalid rotate insn" msgstr "Нерэчаісны выбар %s" -#: config/m68hc11/m68hc11.c:4215 +#: config/m68hc11/m68hc11.c:4214 msgid "registers IX, IY and Z used in the same INSN" msgstr "" -#: config/m68hc11/m68hc11.c:4552 config/m68hc11/m68hc11.c:4852 +#: config/m68hc11/m68hc11.c:4551 config/m68hc11/m68hc11.c:4851 msgid "cannot do z-register replacement" msgstr "" -#: config/m68hc11/m68hc11.c:4915 +#: config/m68hc11/m68hc11.c:4914 msgid "invalid Z register replacement for insn" msgstr "" -#: config/mips/mips.c:5311 +#: config/mips/mips.c:5333 msgid "mips_debugger_offset called with non stack/frame/arg pointer" msgstr "" -#: config/mips/mips.c:5521 +#: config/mips/mips.c:5543 #, c-format msgid "PRINT_OPERAND, invalid insn for %%C" msgstr "" -#: config/mips/mips.c:5538 +#: config/mips/mips.c:5560 #, c-format msgid "PRINT_OPERAND, invalid insn for %%N" msgstr "" -#: config/mips/mips.c:5547 +#: config/mips/mips.c:5569 #, c-format msgid "PRINT_OPERAND, invalid insn for %%F" msgstr "" -#: config/mips/mips.c:5556 +#: config/mips/mips.c:5578 #, c-format msgid "PRINT_OPERAND, invalid insn for %%W" msgstr "" -#: config/mips/mips.c:5577 +#: config/mips/mips.c:5599 #, fuzzy, c-format msgid "invalid %%Y value" msgstr "дрэннае %%Q значэнне" -#: config/mips/mips.c:5594 config/mips/mips.c:5602 +#: config/mips/mips.c:5616 config/mips/mips.c:5624 #, c-format msgid "PRINT_OPERAND, invalid insn for %%q" msgstr "" -#: config/mips/mips.c:5671 +#: config/mips/mips.c:5694 msgid "PRINT_OPERAND, invalid operand for relocation" msgstr "" -#: config/mmix/mmix.c:1468 config/mmix/mmix.c:1598 +#: config/mmix/mmix.c:1467 config/mmix/mmix.c:1597 msgid "MMIX Internal: Expected a CONST_INT, not this" msgstr "" -#: config/mmix/mmix.c:1547 +#: config/mmix/mmix.c:1546 msgid "MMIX Internal: Bad value for 'm', not a CONST_INT" msgstr "" -#: config/mmix/mmix.c:1566 +#: config/mmix/mmix.c:1565 msgid "MMIX Internal: Expected a register, not this" msgstr "" -#: config/mmix/mmix.c:1576 +#: config/mmix/mmix.c:1575 msgid "MMIX Internal: Expected a constant, not this" msgstr "" #. We need the original here. -#: config/mmix/mmix.c:1660 +#: config/mmix/mmix.c:1659 msgid "MMIX Internal: Cannot decode this operand" msgstr "" -#: config/mmix/mmix.c:1717 +#: config/mmix/mmix.c:1716 msgid "MMIX Internal: This is not a recognized address" msgstr "" -#: config/mmix/mmix.c:2650 +#: config/mmix/mmix.c:2649 msgid "MMIX Internal: Trying to output invalidly reversed condition:" msgstr "" -#: config/mmix/mmix.c:2657 +#: config/mmix/mmix.c:2656 msgid "MMIX Internal: What's the CC of this?" msgstr "" -#: config/mmix/mmix.c:2661 +#: config/mmix/mmix.c:2660 msgid "MMIX Internal: What is the CC of this?" msgstr "" -#: config/mmix/mmix.c:2725 +#: config/mmix/mmix.c:2724 msgid "MMIX Internal: This is not a constant:" msgstr "" -#: config/mt/mt.c:300 +#: config/mt/mt.c:299 msgid "mt_final_prescan_insn, invalid insn #1" msgstr "" -#: config/mt/mt.c:371 +#: config/mt/mt.c:370 msgid "PRINT_OPERAND_ADDRESS, 2 regs" msgstr "" -#: config/mt/mt.c:395 +#: config/mt/mt.c:394 msgid "PRINT_OPERAND_ADDRESS, invalid insn #1" msgstr "" -#: config/rs6000/host-darwin.c:97 +#: config/rs6000/host-darwin.c:96 #, c-format msgid "Out of stack space.\n" msgstr "" -#: config/rs6000/host-darwin.c:118 +#: config/rs6000/host-darwin.c:117 #, c-format msgid "Try running '%s' in the shell to raise its limit.\n" msgstr "" -#: config/rs6000/rs6000.c:10367 +#: config/rs6000/rs6000.c:10401 #, c-format msgid "invalid %%f value" msgstr "" -#: config/rs6000/rs6000.c:10376 +#: config/rs6000/rs6000.c:10410 #, c-format msgid "invalid %%F value" msgstr "" -#: config/rs6000/rs6000.c:10385 +#: config/rs6000/rs6000.c:10419 #, c-format msgid "invalid %%G value" msgstr "" -#: config/rs6000/rs6000.c:10420 +#: config/rs6000/rs6000.c:10454 #, c-format msgid "invalid %%j code" msgstr "" -#: config/rs6000/rs6000.c:10430 +#: config/rs6000/rs6000.c:10464 #, c-format msgid "invalid %%J code" msgstr "" -#: config/rs6000/rs6000.c:10440 +#: config/rs6000/rs6000.c:10474 #, c-format msgid "invalid %%k value" msgstr "" -#: config/rs6000/rs6000.c:10460 config/xtensa/xtensa.c:1693 +#: config/rs6000/rs6000.c:10494 config/xtensa/xtensa.c:1697 #, c-format msgid "invalid %%K value" msgstr "" -#: config/rs6000/rs6000.c:10527 +#: config/rs6000/rs6000.c:10561 #, c-format msgid "invalid %%O value" msgstr "нерэчаіснае значэньне %%O" -#: config/rs6000/rs6000.c:10574 +#: config/rs6000/rs6000.c:10608 #, c-format msgid "invalid %%q value" msgstr "" -#: config/rs6000/rs6000.c:10618 +#: config/rs6000/rs6000.c:10652 #, c-format msgid "invalid %%S value" msgstr "" -#: config/rs6000/rs6000.c:10658 +#: config/rs6000/rs6000.c:10692 #, c-format msgid "invalid %%T value" msgstr "" -#: config/rs6000/rs6000.c:10668 +#: config/rs6000/rs6000.c:10702 #, c-format msgid "invalid %%u value" msgstr "" -#: config/rs6000/rs6000.c:10677 config/xtensa/xtensa.c:1663 +#: config/rs6000/rs6000.c:10711 config/xtensa/xtensa.c:1667 #, c-format msgid "invalid %%v value" msgstr "" -#: config/rs6000/rs6000.c:19522 +#: config/rs6000/rs6000.c:19557 #, fuzzy msgid "AltiVec argument passed to unprototyped function" msgstr "не хапае аргументаў у функцыі" -#: config/s390/s390.c:4534 +#: config/s390/s390.c:4533 #, fuzzy, c-format msgid "cannot decompose address" msgstr "невядомая назва рэгістра: %s" -#: config/s390/s390.c:4744 +#: config/s390/s390.c:4743 msgid "UNKNOWN in print_operand !?" msgstr "" -#: config/score/score.c:1212 +#: config/score/score.c:1194 #, fuzzy, c-format msgid "invalid operand for code: '%c'" msgstr "Нерэчаісны выбар \"%s\"" -#: config/sh/sh.c:759 +#: config/sh/sh.c:758 #, fuzzy, c-format msgid "invalid operand to %%R" msgstr "нерэчаісны %%-код" -#: config/sh/sh.c:786 +#: config/sh/sh.c:785 #, fuzzy, c-format msgid "invalid operand to %%S" msgstr "нерэчаісны %%-код" -#: config/sh/sh.c:7820 +#: config/sh/sh.c:7828 msgid "created and used with different architectures / ABIs" msgstr "" -#: config/sh/sh.c:7822 +#: config/sh/sh.c:7830 msgid "created and used with different ABIs" msgstr "" -#: config/sh/sh.c:7824 +#: config/sh/sh.c:7832 msgid "created and used with different endianness" msgstr "" -#: config/sparc/sparc.c:6715 config/sparc/sparc.c:6721 +#: config/sparc/sparc.c:6714 config/sparc/sparc.c:6720 #, c-format msgid "invalid %%Y operand" msgstr "нерэчаісны %%Y аперанд" -#: config/sparc/sparc.c:6791 +#: config/sparc/sparc.c:6790 #, c-format msgid "invalid %%A operand" msgstr "нерэчаісны %%A аперанд" -#: config/sparc/sparc.c:6801 +#: config/sparc/sparc.c:6800 #, c-format msgid "invalid %%B operand" msgstr "нерэчаісны %%B аперанд" -#: config/sparc/sparc.c:6840 +#: config/sparc/sparc.c:6839 #, c-format msgid "invalid %%c operand" msgstr "нерэчаісны %%c аперанд" -#: config/sparc/sparc.c:6841 +#: config/sparc/sparc.c:6840 #, c-format msgid "invalid %%C operand" msgstr "нерэчаісны %%C аперанд" -#: config/sparc/sparc.c:6862 +#: config/sparc/sparc.c:6861 #, c-format msgid "invalid %%d operand" msgstr "нерэчаісны %%d аперанд" -#: config/sparc/sparc.c:6863 +#: config/sparc/sparc.c:6862 #, c-format msgid "invalid %%D operand" msgstr "нерэчаісны %%D аперанд" -#: config/sparc/sparc.c:6879 +#: config/sparc/sparc.c:6878 #, c-format msgid "invalid %%f operand" msgstr "нерэчаісны %%f аперанд" -#: config/sparc/sparc.c:6893 +#: config/sparc/sparc.c:6892 #, fuzzy, c-format msgid "invalid %%s operand" -msgstr "нерэчаісны %%f аперанд" +msgstr "нерэчаісны %%-код" -#: config/sparc/sparc.c:6947 +#: config/sparc/sparc.c:6946 #, c-format msgid "long long constant not a valid immediate operand" msgstr "" -#: config/sparc/sparc.c:6950 +#: config/sparc/sparc.c:6949 #, c-format msgid "floating point constant not a valid immediate operand" msgstr "" -#: config/stormy16/stormy16.c:1778 config/stormy16/stormy16.c:1849 +#: config/stormy16/stormy16.c:1777 config/stormy16/stormy16.c:1848 #, fuzzy, c-format msgid "'B' operand is not constant" msgstr "тып параметра \"%s\" не аб'яўлены" -#: config/stormy16/stormy16.c:1805 +#: config/stormy16/stormy16.c:1804 #, c-format msgid "'B' operand has multiple bits set" msgstr "" -#: config/stormy16/stormy16.c:1831 +#: config/stormy16/stormy16.c:1830 #, fuzzy, c-format msgid "'o' operand is not constant" msgstr "тып параметра \"%s\" не аб'яўлены" -#: config/stormy16/stormy16.c:1863 +#: config/stormy16/stormy16.c:1862 #, c-format msgid "xstormy16_print_operand: unknown code" msgstr "" -#: config/v850/v850.c:372 +#: config/v850/v850.c:371 msgid "const_double_split got a bad insn:" msgstr "" -#: config/v850/v850.c:936 +#: config/v850/v850.c:935 msgid "output_move_single:" msgstr "" -#: config/xtensa/xtensa.c:750 config/xtensa/xtensa.c:782 -#: config/xtensa/xtensa.c:791 +#: config/xtensa/xtensa.c:751 config/xtensa/xtensa.c:783 +#: config/xtensa/xtensa.c:792 msgid "bad test" msgstr "" -#: config/xtensa/xtensa.c:1651 +#: config/xtensa/xtensa.c:1655 #, fuzzy, c-format msgid "invalid %%D value" msgstr "дрэннае %%Q значэнне" -#: config/xtensa/xtensa.c:1688 +#: config/xtensa/xtensa.c:1692 msgid "invalid mask" msgstr "нерэчаісная маска" -#: config/xtensa/xtensa.c:1714 +#: config/xtensa/xtensa.c:1718 #, fuzzy, c-format msgid "invalid %%x value" msgstr "нерэчаіснае значэньне %%x/X" -#: config/xtensa/xtensa.c:1721 +#: config/xtensa/xtensa.c:1725 #, fuzzy, c-format msgid "invalid %%d value" msgstr "дрэннае %%Q значэнне" -#: config/xtensa/xtensa.c:1742 config/xtensa/xtensa.c:1752 +#: config/xtensa/xtensa.c:1746 config/xtensa/xtensa.c:1756 #, fuzzy, c-format msgid "invalid %%t/%%b value" -msgstr "дрэннае %%Q значэнне" +msgstr "нерэчаіснае значэньне %%x/X" -#: config/xtensa/xtensa.c:1794 +#: config/xtensa/xtensa.c:1798 msgid "invalid address" msgstr "нерэчаісны адрас" -#: config/xtensa/xtensa.c:1819 +#: config/xtensa/xtensa.c:1823 #, fuzzy msgid "no register in address" msgstr "невядомая назва рэгістра: %s" -#: config/xtensa/xtensa.c:1827 +#: config/xtensa/xtensa.c:1831 msgid "address offset not a constant" msgstr "" -#: cp/call.c:2472 +#: cp/call.c:2477 msgid "candidates are:" msgstr "" -#: cp/call.c:6303 +#: cp/call.c:6344 msgid "candidate 1:" msgstr "" -#: cp/call.c:6304 +#: cp/call.c:6345 msgid "candidate 2:" msgstr "" -#: cp/decl2.c:668 +#: cp/decl2.c:667 msgid "candidates are: %+#D" msgstr "" -#: cp/decl2.c:670 +#: cp/decl2.c:669 msgid "candidate is: %+#D" msgstr "" -#: cp/g++spec.c:238 java/jvspec.c:424 +#: cp/g++spec.c:237 java/jvspec.c:423 #, fuzzy, c-format msgid "argument to '%s' missing\n" msgstr "аргумент для \"%s\" прапушчан" -#: fortran/arith.c:141 +#: fortran/arith.c:140 msgid "Arithmetic OK at %L" msgstr "" -#: fortran/arith.c:144 +#: fortran/arith.c:143 msgid "Arithmetic overflow at %L" msgstr "" -#: fortran/arith.c:147 +#: fortran/arith.c:146 msgid "Arithmetic underflow at %L" msgstr "" -#: fortran/arith.c:150 +#: fortran/arith.c:149 msgid "Arithmetic NaN at %L" msgstr "" -#: fortran/arith.c:153 +#: fortran/arith.c:152 msgid "Division by zero at %L" msgstr "" -#: fortran/arith.c:156 +#: fortran/arith.c:155 msgid "Array operands are incommensurate at %L" msgstr "" -#: fortran/arith.c:160 +#: fortran/arith.c:159 msgid "Integer outside symmetric range implied by Standard Fortran at %L" msgstr "" -#: fortran/arith.c:1424 +#: fortran/arith.c:1423 #, fuzzy msgid "Elemental binary operation" msgstr "прапушчан ініцыялізатар" -#: fortran/arith.c:1982 +#: fortran/arith.c:1981 #, no-c-format msgid "Arithmetic OK converting %s to %s at %L" msgstr "" -#: fortran/arith.c:1986 +#: fortran/arith.c:1985 #, no-c-format msgid "Arithmetic overflow converting %s to %s at %L" msgstr "" -#: fortran/arith.c:1990 +#: fortran/arith.c:1989 #, no-c-format msgid "Arithmetic underflow converting %s to %s at %L" msgstr "" -#: fortran/arith.c:1994 +#: fortran/arith.c:1993 #, no-c-format msgid "Arithmetic NaN converting %s to %s at %L" msgstr "" -#: fortran/arith.c:1998 +#: fortran/arith.c:1997 #, no-c-format msgid "Division by zero converting %s to %s at %L" msgstr "" -#: fortran/arith.c:2002 +#: fortran/arith.c:2001 #, no-c-format msgid "Array operands are incommensurate converting %s to %s at %L" msgstr "" -#: fortran/arith.c:2006 +#: fortran/arith.c:2005 #, no-c-format msgid "Integer outside symmetric range implied by Standard Fortran converting %s to %s at %L" msgstr "" -#: fortran/arith.c:2347 fortran/arith.c:2383 fortran/arith.c:2421 -#: fortran/arith.c:2473 +#: fortran/arith.c:2346 fortran/arith.c:2382 fortran/arith.c:2420 +#: fortran/arith.c:2472 #, fuzzy, no-c-format msgid "The Hollerith constant at %L is too long to convert to %s" msgstr "сімвальная канстанта вельмі доўгая" -#: fortran/arith.c:2520 +#: fortran/arith.c:2519 #, no-c-format msgid "Enumerator exceeds the C integer type at %C" msgstr "" @@ -4008,570 +4008,570 @@ msgid "Extension: re-initialization of '%s' at %L" msgstr "ініцыялізацыя" -#: fortran/decl.c:223 +#: fortran/decl.c:222 #, no-c-format msgid "Host associated variable '%s' may not be in the DATA statement at %C." msgstr "" -#: fortran/decl.c:230 +#: fortran/decl.c:229 #, no-c-format msgid "Extension: initialization of common block variable '%s' in DATA statement at %C" msgstr "" -#: fortran/decl.c:316 +#: fortran/decl.c:315 #, no-c-format msgid "Symbol '%s' must be a PARAMETER in DATA statement at %C" msgstr "" -#: fortran/decl.c:426 +#: fortran/decl.c:425 #, no-c-format msgid "Initialization at %C is not allowed in a PURE procedure" msgstr "" -#: fortran/decl.c:484 +#: fortran/decl.c:483 #, no-c-format msgid "DATA statement at %C is not allowed in a PURE procedure" msgstr "" -#: fortran/decl.c:513 +#: fortran/decl.c:512 #, no-c-format msgid "Bad INTENT specification at %C" msgstr "" -#: fortran/decl.c:577 +#: fortran/decl.c:576 #, no-c-format msgid "Syntax error in character length specification at %C" msgstr "" -#: fortran/decl.c:660 +#: fortran/decl.c:659 #, no-c-format msgid "Procedure '%s' at %C is already defined at %L" msgstr "" -#: fortran/decl.c:672 +#: fortran/decl.c:671 #, no-c-format msgid "Procedure '%s' at %C has an explicit interface and must not have attributes declared at %L" msgstr "" -#: fortran/decl.c:765 +#: fortran/decl.c:764 #, no-c-format msgid "CHARACTER expression at %L is being truncated (%d/%d)" msgstr "" -#: fortran/decl.c:771 +#: fortran/decl.c:770 #, no-c-format msgid "The CHARACTER elements of the array constructor at %L must have the same length (%d/%d)" msgstr "" -#: fortran/decl.c:862 +#: fortran/decl.c:861 #, no-c-format msgid "Initializer not allowed for PARAMETER '%s' at %C" msgstr "" -#: fortran/decl.c:871 +#: fortran/decl.c:870 #, no-c-format msgid "Initializer not allowed for COMMON variable '%s' at %C" msgstr "" -#: fortran/decl.c:881 +#: fortran/decl.c:880 #, fuzzy, no-c-format msgid "PARAMETER at %L is missing an initializer" msgstr "прапушчан ініцыялізатар" -#: fortran/decl.c:892 +#: fortran/decl.c:891 #, no-c-format msgid "Variable '%s' at %C with an initializer already appears in a DATA statement" msgstr "" -#: fortran/decl.c:969 +#: fortran/decl.c:968 #, no-c-format msgid "Component at %C must have the POINTER attribute" msgstr "" -#: fortran/decl.c:978 +#: fortran/decl.c:977 #, no-c-format msgid "Array component of structure at %C must have explicit or deferred shape" msgstr "" -#: fortran/decl.c:1004 +#: fortran/decl.c:1003 #, no-c-format msgid "Allocatable component at %C must be an array" msgstr "" -#: fortran/decl.c:1015 +#: fortran/decl.c:1014 #, no-c-format msgid "Pointer array component of structure at %C must have a deferred shape" msgstr "" -#: fortran/decl.c:1024 +#: fortran/decl.c:1023 #, no-c-format msgid "Allocatable component of structure at %C must have a deferred shape" msgstr "" -#: fortran/decl.c:1034 +#: fortran/decl.c:1033 #, no-c-format msgid "Array component of structure at %C must have an explicit shape" msgstr "" -#: fortran/decl.c:1060 +#: fortran/decl.c:1059 #, no-c-format msgid "NULL() initialization at %C is ambiguous" msgstr "" -#: fortran/decl.c:1180 fortran/decl.c:3449 +#: fortran/decl.c:1179 fortran/decl.c:3448 #, no-c-format msgid "Duplicate array spec for Cray pointee at %C." msgstr "" -#: fortran/decl.c:1233 +#: fortran/decl.c:1232 #, no-c-format msgid "the type of '%s' at %C has not been declared within the interface" msgstr "" -#: fortran/decl.c:1248 +#: fortran/decl.c:1247 #, no-c-format msgid "Function name '%s' not allowed at %C" msgstr "" -#: fortran/decl.c:1264 +#: fortran/decl.c:1263 #, no-c-format msgid "Extension: Old-style initialization at %C" msgstr "" -#: fortran/decl.c:1280 +#: fortran/decl.c:1279 #, no-c-format msgid "Initialization at %C isn't for a pointer variable" msgstr "" -#: fortran/decl.c:1288 +#: fortran/decl.c:1287 #, no-c-format msgid "Pointer initialization requires a NULL() at %C" msgstr "" -#: fortran/decl.c:1295 +#: fortran/decl.c:1294 #, no-c-format msgid "Initialization of pointer at %C is not allowed in a PURE procedure" msgstr "" -#: fortran/decl.c:1309 +#: fortran/decl.c:1308 #, no-c-format msgid "Pointer initialization at %C requires '=>', not '='" msgstr "" -#: fortran/decl.c:1317 fortran/decl.c:4165 +#: fortran/decl.c:1316 fortran/decl.c:4164 #, no-c-format msgid "Expected an initialization expression at %C" msgstr "" -#: fortran/decl.c:1324 +#: fortran/decl.c:1323 #, no-c-format msgid "Initialization of variable at %C is not allowed in a PURE procedure" msgstr "" -#: fortran/decl.c:1337 +#: fortran/decl.c:1336 #, no-c-format msgid "Initialization of allocatable component at %C is not allowed" msgstr "" -#: fortran/decl.c:1391 fortran/decl.c:1400 +#: fortran/decl.c:1390 fortran/decl.c:1399 #, no-c-format msgid "Old-style type declaration %s*%d not supported at %C" msgstr "" -#: fortran/decl.c:1405 +#: fortran/decl.c:1404 #, no-c-format msgid "Nonstandard type declaration %s*%d at %C" msgstr "" -#: fortran/decl.c:1439 +#: fortran/decl.c:1438 #, no-c-format msgid "Expected initialization expression at %C" msgstr "" -#: fortran/decl.c:1445 +#: fortran/decl.c:1444 #, no-c-format msgid "Expected scalar initialization expression at %C" msgstr "" -#: fortran/decl.c:1463 +#: fortran/decl.c:1462 #, fuzzy, no-c-format msgid "Kind %d not supported for type %s at %C" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: fortran/decl.c:1472 +#: fortran/decl.c:1471 #, no-c-format msgid "Missing right paren at %C" msgstr "" -#: fortran/decl.c:1561 fortran/decl.c:1604 +#: fortran/decl.c:1560 fortran/decl.c:1603 #, no-c-format msgid "Kind %d is not a CHARACTER kind at %C" msgstr "" -#: fortran/decl.c:1598 +#: fortran/decl.c:1597 #, no-c-format msgid "Syntax error in CHARACTER declaration at %C" msgstr "" -#: fortran/decl.c:1659 +#: fortran/decl.c:1658 #, no-c-format msgid "Extension: BYTE type at %C" msgstr "" -#: fortran/decl.c:1665 +#: fortran/decl.c:1664 #, no-c-format msgid "BYTE type used at %C is not available on the target machine" msgstr "" -#: fortran/decl.c:1714 +#: fortran/decl.c:1713 #, no-c-format msgid "DOUBLE COMPLEX at %C does not conform to the Fortran 95 standard" msgstr "" -#: fortran/decl.c:1737 +#: fortran/decl.c:1736 #, fuzzy, no-c-format msgid "Type name '%s' at %C is ambiguous" msgstr "памер \"%s\" - %d байт" -#: fortran/decl.c:1803 +#: fortran/decl.c:1802 #, no-c-format msgid "Missing character range in IMPLICIT at %C" msgstr "" -#: fortran/decl.c:1849 +#: fortran/decl.c:1848 #, no-c-format msgid "Letters must be in alphabetic order in IMPLICIT statement at %C" msgstr "" -#: fortran/decl.c:1903 +#: fortran/decl.c:1902 #, no-c-format msgid "Empty IMPLICIT statement at %C" msgstr "" -#: fortran/decl.c:2074 +#: fortran/decl.c:2073 #, no-c-format msgid "Missing dimension specification at %C" msgstr "" -#: fortran/decl.c:2144 +#: fortran/decl.c:2143 #, no-c-format msgid "Duplicate %s attribute at %L" msgstr "" -#: fortran/decl.c:2163 +#: fortran/decl.c:2162 #, no-c-format msgid "In the selected standard, the ALLOCATABLE attribute at %C is not allowed in a TYPE definition" msgstr "" -#: fortran/decl.c:2173 +#: fortran/decl.c:2172 #, no-c-format msgid "Attribute at %L is not allowed in a TYPE definition" msgstr "" -#: fortran/decl.c:2188 +#: fortran/decl.c:2187 #, no-c-format msgid "%s attribute at %L is not allowed outside of a MODULE" msgstr "" #. Now we have an error, which we signal, and then fix up #. because the knock-on is plain and simple confusing. -#: fortran/decl.c:2326 +#: fortran/decl.c:2325 #, no-c-format msgid "Derived type at %C has not been previously defined and so cannot appear in a derived type definition." msgstr "" -#: fortran/decl.c:2357 +#: fortran/decl.c:2356 #, no-c-format msgid "Syntax error in data declaration at %C" msgstr "" -#: fortran/decl.c:2503 +#: fortran/decl.c:2502 #, no-c-format msgid "Name '%s' at %C is the name of the procedure" msgstr "" -#: fortran/decl.c:2515 +#: fortran/decl.c:2514 #, no-c-format msgid "Unexpected junk in formal argument list at %C" msgstr "" -#: fortran/decl.c:2533 +#: fortran/decl.c:2532 #, no-c-format msgid "Duplicate symbol '%s' in formal argument list at %C" msgstr "" -#: fortran/decl.c:2576 +#: fortran/decl.c:2575 #, no-c-format msgid "Unexpected junk following RESULT variable at %C" msgstr "" -#: fortran/decl.c:2583 +#: fortran/decl.c:2582 #, no-c-format msgid "RESULT variable at %C must be different than function name" msgstr "" -#: fortran/decl.c:2639 +#: fortran/decl.c:2638 #, no-c-format msgid "Expected formal argument list in function definition at %C" msgstr "" -#: fortran/decl.c:2654 +#: fortran/decl.c:2653 #, fuzzy, no-c-format msgid "Unexpected junk after function declaration at %C" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: fortran/decl.c:2677 +#: fortran/decl.c:2676 #, no-c-format msgid "Function '%s' at %C already has a type of %s" msgstr "" -#: fortran/decl.c:2749 +#: fortran/decl.c:2748 #, no-c-format msgid "ENTRY statement at %C cannot appear within a PROGRAM" msgstr "" -#: fortran/decl.c:2752 +#: fortran/decl.c:2751 #, no-c-format msgid "ENTRY statement at %C cannot appear within a MODULE" msgstr "" -#: fortran/decl.c:2756 +#: fortran/decl.c:2755 #, no-c-format msgid "ENTRY statement at %C cannot appear within a BLOCK DATA" msgstr "" -#: fortran/decl.c:2760 +#: fortran/decl.c:2759 #, no-c-format msgid "ENTRY statement at %C cannot appear within an INTERFACE" msgstr "" -#: fortran/decl.c:2764 +#: fortran/decl.c:2763 #, no-c-format msgid "ENTRY statement at %C cannot appear within a DERIVED TYPE block" msgstr "" -#: fortran/decl.c:2769 +#: fortran/decl.c:2768 #, no-c-format msgid "ENTRY statement at %C cannot appear within an IF-THEN block" msgstr "" -#: fortran/decl.c:2773 +#: fortran/decl.c:2772 #, no-c-format msgid "ENTRY statement at %C cannot appear within a DO block" msgstr "" -#: fortran/decl.c:2777 +#: fortran/decl.c:2776 #, no-c-format msgid "ENTRY statement at %C cannot appear within a SELECT block" msgstr "" -#: fortran/decl.c:2781 +#: fortran/decl.c:2780 #, no-c-format msgid "ENTRY statement at %C cannot appear within a FORALL block" msgstr "" -#: fortran/decl.c:2785 +#: fortran/decl.c:2784 #, no-c-format msgid "ENTRY statement at %C cannot appear within a WHERE block" msgstr "" -#: fortran/decl.c:2789 +#: fortran/decl.c:2788 #, no-c-format msgid "ENTRY statement at %C cannot appear within a contained subprogram" msgstr "" -#: fortran/decl.c:2806 +#: fortran/decl.c:2805 #, no-c-format msgid "ENTRY statement at %C cannot appear in a contained procedure" msgstr "" -#: fortran/decl.c:3128 +#: fortran/decl.c:3127 #, no-c-format msgid "Unexpected END statement at %C" msgstr "" #. We would have required END [something] -#: fortran/decl.c:3137 +#: fortran/decl.c:3136 #, no-c-format msgid "%s statement expected at %L" msgstr "" -#: fortran/decl.c:3148 +#: fortran/decl.c:3147 #, no-c-format msgid "Expecting %s statement at %C" msgstr "" -#: fortran/decl.c:3162 +#: fortran/decl.c:3161 #, no-c-format msgid "Expected block name of '%s' in %s statement at %C" msgstr "" -#: fortran/decl.c:3178 +#: fortran/decl.c:3177 #, no-c-format msgid "Expected terminating name at %C" msgstr "" -#: fortran/decl.c:3187 +#: fortran/decl.c:3186 #, no-c-format msgid "Expected label '%s' for %s statement at %C" msgstr "" -#: fortran/decl.c:3242 +#: fortran/decl.c:3241 #, no-c-format msgid "Missing array specification at %L in DIMENSION statement" msgstr "" -#: fortran/decl.c:3251 +#: fortran/decl.c:3250 #, no-c-format msgid "Array specification must be deferred at %L" msgstr "" -#: fortran/decl.c:3328 +#: fortran/decl.c:3327 #, no-c-format msgid "Unexpected character in variable list at %C" msgstr "" -#: fortran/decl.c:3365 +#: fortran/decl.c:3364 #, no-c-format msgid "Expected '(' at %C" msgstr "" -#: fortran/decl.c:3379 fortran/decl.c:3420 +#: fortran/decl.c:3378 fortran/decl.c:3419 #, no-c-format msgid "Expected variable name at %C" msgstr "" -#: fortran/decl.c:3395 +#: fortran/decl.c:3394 #, no-c-format msgid "Cray pointer at %C must be an integer." msgstr "" -#: fortran/decl.c:3399 +#: fortran/decl.c:3398 #, no-c-format msgid "Cray pointer at %C has %d bytes of precision; memory addresses require %d bytes." msgstr "" -#: fortran/decl.c:3406 +#: fortran/decl.c:3405 #, no-c-format msgid "Expected \",\" at %C" msgstr "" -#: fortran/decl.c:3469 +#: fortran/decl.c:3468 #, no-c-format msgid "Expected \")\" at %C" msgstr "" -#: fortran/decl.c:3481 +#: fortran/decl.c:3480 #, no-c-format msgid "Expected \",\" or end of statement at %C" msgstr "" -#: fortran/decl.c:3546 +#: fortran/decl.c:3545 #, no-c-format msgid "Cray pointer declaration at %C requires -fcray-pointer flag." msgstr "" -#: fortran/decl.c:3644 +#: fortran/decl.c:3643 #, no-c-format msgid "Access specification of the %s operator at %C has already been specified" msgstr "" -#: fortran/decl.c:3662 +#: fortran/decl.c:3661 #, no-c-format msgid "Access specification of the .%s. operator at %C has already been specified" msgstr "" -#: fortran/decl.c:3749 +#: fortran/decl.c:3748 #, no-c-format msgid "Expected variable name at %C in PARAMETER statement" msgstr "" -#: fortran/decl.c:3756 +#: fortran/decl.c:3755 #, no-c-format msgid "Expected = sign in PARAMETER statement at %C" msgstr "" -#: fortran/decl.c:3762 +#: fortran/decl.c:3761 #, no-c-format msgid "Expected expression at %C in PARAMETER statement" msgstr "" -#: fortran/decl.c:3820 +#: fortran/decl.c:3819 #, no-c-format msgid "Unexpected characters in PARAMETER statement at %C" msgstr "" -#: fortran/decl.c:3845 +#: fortran/decl.c:3844 #, no-c-format msgid "Blanket SAVE statement at %C follows previous SAVE statement" msgstr "" -#: fortran/decl.c:3858 +#: fortran/decl.c:3857 #, no-c-format msgid "SAVE statement at %C follows blanket SAVE statement" msgstr "" -#: fortran/decl.c:3904 +#: fortran/decl.c:3903 #, no-c-format msgid "Syntax error in SAVE statement at %C" msgstr "" -#: fortran/decl.c:3925 +#: fortran/decl.c:3924 #, no-c-format msgid "MODULE PROCEDURE at %C must be in a generic module interface" msgstr "" -#: fortran/decl.c:3987 +#: fortran/decl.c:3986 #, no-c-format msgid "Derived type at %C can only be PRIVATE within a MODULE" msgstr "" -#: fortran/decl.c:4000 +#: fortran/decl.c:3999 #, no-c-format msgid "Derived type at %C can only be PUBLIC within a MODULE" msgstr "" -#: fortran/decl.c:4011 +#: fortran/decl.c:4010 #, no-c-format msgid "Expected :: in TYPE definition at %C" msgstr "" -#: fortran/decl.c:4028 +#: fortran/decl.c:4027 #, no-c-format msgid "Type name '%s' at %C cannot be the same as an intrinsic type" msgstr "" -#: fortran/decl.c:4038 +#: fortran/decl.c:4037 #, no-c-format msgid "Derived type name '%s' at %C already has a basic type of %s" msgstr "" -#: fortran/decl.c:4055 +#: fortran/decl.c:4054 #, no-c-format msgid "Derived type definition of '%s' at %C has already been defined" msgstr "" -#: fortran/decl.c:4089 +#: fortran/decl.c:4088 #, no-c-format msgid "Cray Pointee at %C cannot be assumed shape array" msgstr "" -#: fortran/decl.c:4110 +#: fortran/decl.c:4109 #, no-c-format msgid "New in Fortran 2003: ENUM and ENUMERATOR at %C" msgstr "" -#: fortran/decl.c:4182 +#: fortran/decl.c:4181 #, no-c-format msgid "ENUMERATOR %L not initialized with integer expression" msgstr "" -#: fortran/decl.c:4231 +#: fortran/decl.c:4230 #, no-c-format msgid "ENUM definition statement expected before %C" msgstr "" -#: fortran/decl.c:4264 +#: fortran/decl.c:4263 #, no-c-format msgid "Syntax error in ENUMERATOR definition at %C" msgstr "" @@ -5570,270 +5570,270 @@ msgid "CONTAINS\n" msgstr "" -#: fortran/error.c:206 +#: fortran/error.c:205 #, fuzzy, no-c-format msgid " Included at %s:%d:" msgstr "У файле уключаным з %s:%d" -#: fortran/error.c:317 +#: fortran/error.c:316 #, fuzzy, no-c-format msgid "\n" msgstr "ініцыялізацыя" -#: fortran/error.c:606 +#: fortran/error.c:605 #, no-c-format msgid "Error count reached limit of %d." msgstr "" -#: fortran/error.c:625 fortran/error.c:677 fortran/error.c:712 +#: fortran/error.c:624 fortran/error.c:676 fortran/error.c:711 #, fuzzy msgid "Warning:" msgstr "увага:" -#: fortran/error.c:679 fortran/error.c:760 fortran/error.c:786 +#: fortran/error.c:678 fortran/error.c:759 fortran/error.c:785 msgid "Error:" msgstr "" -#: fortran/error.c:810 +#: fortran/error.c:809 #, fuzzy msgid "Fatal Error:" msgstr "унутраная памылка" -#: fortran/error.c:829 +#: fortran/error.c:828 #, fuzzy, no-c-format msgid "Internal Error at (1):" msgstr "унутраная памылка" -#: fortran/expr.c:258 +#: fortran/expr.c:257 #, c-format msgid "Constant expression required at %C" msgstr "" -#: fortran/expr.c:261 +#: fortran/expr.c:260 #, c-format msgid "Integer expression required at %C" msgstr "" -#: fortran/expr.c:266 +#: fortran/expr.c:265 #, c-format msgid "Integer value too large in expression at %C" msgstr "" -#: fortran/expr.c:937 fortran/expr.c:1094 fortran/expr.c:1145 +#: fortran/expr.c:936 fortran/expr.c:1093 fortran/expr.c:1144 #, no-c-format msgid "index in dimension %d is out of bounds at %L" msgstr "" -#: fortran/expr.c:1605 +#: fortran/expr.c:1604 #, no-c-format msgid "Numeric or CHARACTER operands are required in expression at %L" msgstr "" -#: fortran/expr.c:1625 +#: fortran/expr.c:1624 #, no-c-format msgid "Exponent at %L must be INTEGER for an initialization expression" msgstr "" -#: fortran/expr.c:1638 +#: fortran/expr.c:1637 #, no-c-format msgid "Concatenation operator in expression at %L must have two CHARACTER operands" msgstr "" -#: fortran/expr.c:1645 +#: fortran/expr.c:1644 #, no-c-format msgid "Concat operator at %L must concatenate strings of the same kind" msgstr "" -#: fortran/expr.c:1655 +#: fortran/expr.c:1654 #, no-c-format msgid ".NOT. operator in expression at %L must have a LOGICAL operand" msgstr "" -#: fortran/expr.c:1671 +#: fortran/expr.c:1670 #, no-c-format msgid "LOGICAL operands are required in expression at %L" msgstr "" -#: fortran/expr.c:1682 +#: fortran/expr.c:1681 #, no-c-format msgid "Only intrinsic operators can be used in expression at %L" msgstr "" -#: fortran/expr.c:1690 +#: fortran/expr.c:1689 #, no-c-format msgid "Numeric operands are required in expression at %L" msgstr "" -#: fortran/expr.c:1754 +#: fortran/expr.c:1753 #, no-c-format msgid "assumed character length variable '%s' in constant expression at %L" msgstr "" -#: fortran/expr.c:1807 +#: fortran/expr.c:1806 #, no-c-format msgid "Function '%s' in initialization expression at %L must be an intrinsic function" msgstr "" -#: fortran/expr.c:1832 +#: fortran/expr.c:1831 #, no-c-format msgid "Parameter '%s' at %L has not been declared or is a variable, which does not reduce to a constant expression" msgstr "" -#: fortran/expr.c:1918 +#: fortran/expr.c:1917 #, no-c-format msgid "Initialization expression didn't reduce %C" msgstr "" -#: fortran/expr.c:1962 +#: fortran/expr.c:1961 #, no-c-format msgid "Specification function '%s' at %L cannot be a statement function" msgstr "" -#: fortran/expr.c:1969 +#: fortran/expr.c:1968 #, no-c-format msgid "Specification function '%s' at %L cannot be an internal function" msgstr "" -#: fortran/expr.c:1976 +#: fortran/expr.c:1975 #, no-c-format msgid "Specification function '%s' at %L must be PURE" msgstr "" -#: fortran/expr.c:1983 +#: fortran/expr.c:1982 #, no-c-format msgid "Specification function '%s' at %L cannot be RECURSIVE" msgstr "" -#: fortran/expr.c:2040 +#: fortran/expr.c:2039 #, no-c-format msgid "Dummy argument '%s' at %L cannot be OPTIONAL" msgstr "" -#: fortran/expr.c:2047 +#: fortran/expr.c:2046 #, no-c-format msgid "Dummy argument '%s' at %L cannot be INTENT(OUT)" msgstr "" -#: fortran/expr.c:2068 +#: fortran/expr.c:2067 #, no-c-format msgid "Variable '%s' cannot appear in the expression at %L" msgstr "" -#: fortran/expr.c:2116 +#: fortran/expr.c:2115 #, no-c-format msgid "Expression at %L must be of INTEGER type" msgstr "" -#: fortran/expr.c:2122 +#: fortran/expr.c:2121 #, no-c-format msgid "Expression at %L must be scalar" msgstr "" -#: fortran/expr.c:2150 +#: fortran/expr.c:2149 #, no-c-format msgid "Incompatible ranks in %s at %L" msgstr "" -#: fortran/expr.c:2164 +#: fortran/expr.c:2163 #, no-c-format msgid "different shape for %s at %L on dimension %d (%d/%d)" msgstr "" -#: fortran/expr.c:2197 +#: fortran/expr.c:2196 #, no-c-format msgid "Can't assign to INTENT(IN) variable '%s' at %L" msgstr "" -#: fortran/expr.c:2241 +#: fortran/expr.c:2240 #, no-c-format msgid "'%s' at %L is not a VALUE" msgstr "" -#: fortran/expr.c:2248 +#: fortran/expr.c:2247 #, no-c-format msgid "Incompatible ranks %d and %d in assignment at %L" msgstr "" -#: fortran/expr.c:2255 +#: fortran/expr.c:2254 #, no-c-format msgid "Variable type is UNKNOWN in assignment at %L" msgstr "" -#: fortran/expr.c:2262 +#: fortran/expr.c:2261 #, no-c-format msgid "NULL appears on right-hand side in assignment at %L" msgstr "" -#: fortran/expr.c:2272 +#: fortran/expr.c:2271 #, no-c-format msgid "Vector assignment to assumed-size Cray Pointee at %L is illegal." msgstr "" -#: fortran/expr.c:2281 +#: fortran/expr.c:2280 #, no-c-format msgid "POINTER valued function appears on right-hand side of assignment at %L" msgstr "" -#: fortran/expr.c:2286 +#: fortran/expr.c:2285 msgid "Array assignment" msgstr "" -#: fortran/expr.c:2303 +#: fortran/expr.c:2302 #, no-c-format msgid "Incompatible types in assignment at %L, %s to %s" msgstr "" -#: fortran/expr.c:2326 +#: fortran/expr.c:2325 #, no-c-format msgid "Pointer assignment target is not a POINTER at %L" msgstr "" -#: fortran/expr.c:2334 +#: fortran/expr.c:2333 #, no-c-format msgid "'%s' in the pointer assignment at %L cannot be an l-value since it is a procedure" msgstr "" -#: fortran/expr.c:2343 +#: fortran/expr.c:2342 #, no-c-format msgid "Pointer assignment to non-POINTER at %L" msgstr "" -#: fortran/expr.c:2351 +#: fortran/expr.c:2350 #, no-c-format msgid "Bad pointer object in PURE procedure at %L" msgstr "" -#: fortran/expr.c:2364 +#: fortran/expr.c:2363 #, no-c-format msgid "Different types in pointer assignment at %L" msgstr "" -#: fortran/expr.c:2371 +#: fortran/expr.c:2370 #, no-c-format msgid "Different kind type parameters in pointer assignment at %L" msgstr "" -#: fortran/expr.c:2378 +#: fortran/expr.c:2377 #, no-c-format msgid "Different ranks in pointer assignment at %L" msgstr "" -#: fortran/expr.c:2392 +#: fortran/expr.c:2391 #, no-c-format msgid "Different character lengths in pointer assignment at %L" msgstr "" -#: fortran/expr.c:2400 +#: fortran/expr.c:2399 #, no-c-format msgid "Pointer assignment target is neither TARGET nor POINTER at %L" msgstr "" -#: fortran/expr.c:2407 +#: fortran/expr.c:2406 #, no-c-format msgid "Bad target in pointer assignment in PURE procedure at %L" msgstr "" -#: fortran/expr.c:2413 +#: fortran/expr.c:2412 #, no-c-format msgid "Pointer assignment with vector subscript on rhs at %L" msgstr "" @@ -5948,12 +5948,12 @@ msgid "Second argument of defined assignment at %L must be INTENT(IN)" msgstr "" -#: fortran/interface.c:664 fortran/resolve.c:7191 +#: fortran/interface.c:664 fortran/resolve.c:7202 #, no-c-format msgid "First argument of operator interface at %L must be INTENT(IN)" msgstr "" -#: fortran/interface.c:668 fortran/resolve.c:7203 +#: fortran/interface.c:668 fortran/resolve.c:7214 #, no-c-format msgid "Second argument of operator interface at %L must be INTENT(IN)" msgstr "" @@ -6083,1473 +6083,1473 @@ msgid "Entity '%s' at %C is already present in the interface" msgstr "" -#: fortran/intrinsic.c:2853 +#: fortran/intrinsic.c:2852 #, fuzzy, no-c-format msgid "Too many arguments in call to '%s' at %L" msgstr "вельмі шмат аргументаў у функцыі \"%s\"" -#: fortran/intrinsic.c:2868 +#: fortran/intrinsic.c:2867 #, no-c-format msgid "Argument list function at %L is not allowed in this context" msgstr "" -#: fortran/intrinsic.c:2871 +#: fortran/intrinsic.c:2870 #, no-c-format msgid "Can't find keyword named '%s' in call to '%s' at %L" msgstr "" -#: fortran/intrinsic.c:2878 +#: fortran/intrinsic.c:2877 #, no-c-format msgid "Argument '%s' is appears twice in call to '%s' at %L" msgstr "" -#: fortran/intrinsic.c:2892 +#: fortran/intrinsic.c:2891 #, no-c-format msgid "Missing actual argument '%s' in call to '%s' at %L" msgstr "" -#: fortran/intrinsic.c:2907 +#: fortran/intrinsic.c:2906 #, no-c-format msgid "ALTERNATE RETURN not permitted at %L" msgstr "" -#: fortran/intrinsic.c:2957 +#: fortran/intrinsic.c:2956 #, no-c-format msgid "Type of argument '%s' in call to '%s' at %L should be %s, not %s" msgstr "" -#: fortran/intrinsic.c:3261 +#: fortran/intrinsic.c:3260 #, no-c-format msgid "Ranks of arguments to elemental intrinsic '%s' differ at %L" msgstr "" -#: fortran/intrinsic.c:3307 +#: fortran/intrinsic.c:3306 #, no-c-format msgid "Intrinsic '%s' at %L is not included in the selected standard" msgstr "" -#: fortran/intrinsic.c:3409 +#: fortran/intrinsic.c:3408 #, no-c-format msgid "Extension: Evaluation of nonstandard initialization expression at %L" msgstr "" -#: fortran/intrinsic.c:3469 +#: fortran/intrinsic.c:3468 #, no-c-format msgid "Subroutine call to intrinsic '%s' at %L is not PURE" msgstr "" -#: fortran/intrinsic.c:3544 +#: fortran/intrinsic.c:3543 #, no-c-format msgid "Extension: Conversion from %s to %s at %L" msgstr "" -#: fortran/intrinsic.c:3547 +#: fortran/intrinsic.c:3546 #, fuzzy, no-c-format msgid "Conversion from %s to %s at %L" msgstr "пераўтварэньне з `%T' у `%T'" -#: fortran/intrinsic.c:3595 +#: fortran/intrinsic.c:3594 #, no-c-format msgid "Can't convert %s to %s at %L" msgstr "" -#: fortran/io.c:180 fortran/primary.c:771 +#: fortran/io.c:179 fortran/primary.c:770 #, no-c-format msgid "Extension: backslash character at %C" msgstr "" -#: fortran/io.c:458 +#: fortran/io.c:457 msgid "Positive width required" msgstr "" -#: fortran/io.c:459 +#: fortran/io.c:458 msgid "Nonnegative width required" msgstr "" -#: fortran/io.c:460 +#: fortran/io.c:459 msgid "Unexpected element" msgstr "" -#: fortran/io.c:461 +#: fortran/io.c:460 msgid "Unexpected end of format string" msgstr "" -#: fortran/io.c:478 +#: fortran/io.c:477 msgid "Missing leading left parenthesis" msgstr "" -#: fortran/io.c:516 +#: fortran/io.c:515 msgid "Expected P edit descriptor" msgstr "" #. P requires a prior number. -#: fortran/io.c:524 +#: fortran/io.c:523 msgid "P descriptor requires leading scale factor" msgstr "" #. X requires a prior number if we're being pedantic. -#: fortran/io.c:529 +#: fortran/io.c:528 #, no-c-format msgid "Extension: X descriptor requires leading space count at %C" msgstr "" -#: fortran/io.c:549 +#: fortran/io.c:548 #, no-c-format msgid "Extension: $ descriptor at %C" msgstr "" -#: fortran/io.c:554 +#: fortran/io.c:553 #, no-c-format msgid "$ should be the last specifier in format at %C" msgstr "" -#: fortran/io.c:599 +#: fortran/io.c:598 msgid "Repeat count cannot follow P descriptor" msgstr "" -#: fortran/io.c:618 +#: fortran/io.c:617 #, no-c-format msgid "Extension: Missing positive width after L descriptor at %C" msgstr "" -#: fortran/io.c:657 fortran/io.c:659 fortran/io.c:705 fortran/io.c:707 +#: fortran/io.c:656 fortran/io.c:658 fortran/io.c:704 fortran/io.c:706 #, no-c-format msgid "Period required in format specifier at %C" msgstr "" -#: fortran/io.c:685 +#: fortran/io.c:684 msgid "Positive exponent width required" msgstr "" -#: fortran/io.c:791 fortran/io.c:844 +#: fortran/io.c:790 fortran/io.c:843 #, no-c-format msgid "Extension: Missing comma at %C" msgstr "" -#: fortran/io.c:859 fortran/io.c:862 +#: fortran/io.c:858 fortran/io.c:861 #, no-c-format msgid "%s in format string at %C" msgstr "" -#: fortran/io.c:903 +#: fortran/io.c:902 #, no-c-format msgid "Format statement in module main block at %C." msgstr "" -#: fortran/io.c:909 +#: fortran/io.c:908 #, no-c-format msgid "Missing format label at %C" msgstr "" -#: fortran/io.c:967 fortran/io.c:991 +#: fortran/io.c:966 fortran/io.c:990 #, fuzzy, no-c-format msgid "Duplicate %s specification at %C" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: fortran/io.c:998 +#: fortran/io.c:997 #, no-c-format msgid "Variable tag cannot be INTENT(IN) at %C" msgstr "" -#: fortran/io.c:1005 +#: fortran/io.c:1004 #, no-c-format msgid "Variable tag cannot be assigned in PURE procedure at %C" msgstr "" -#: fortran/io.c:1042 +#: fortran/io.c:1041 #, fuzzy, no-c-format msgid "Duplicate %s label specification at %C" msgstr "паўторнае абвяшчэньне адмеціны `%s'" -#: fortran/io.c:1068 +#: fortran/io.c:1067 #, no-c-format msgid "%s tag at %L must be of type %s" msgstr "" -#: fortran/io.c:1079 +#: fortran/io.c:1078 #, no-c-format msgid "Constant expression in FORMAT tag at %L must be of type default CHARACTER" msgstr "" -#: fortran/io.c:1092 +#: fortran/io.c:1091 #, no-c-format msgid "%s tag at %L must be of type %s or %s" msgstr "" -#: fortran/io.c:1100 +#: fortran/io.c:1099 #, no-c-format msgid "Obsolete: ASSIGNED variable in FORMAT tag at %L" msgstr "" -#: fortran/io.c:1105 +#: fortran/io.c:1104 #, no-c-format msgid "Variable '%s' at %L has not been assigned a format label" msgstr "" -#: fortran/io.c:1112 +#: fortran/io.c:1111 #, no-c-format msgid "scalar '%s' FORMAT tag at %L is not an ASSIGNED variable" msgstr "" -#: fortran/io.c:1127 +#: fortran/io.c:1126 #, no-c-format msgid "Extension: Character array in FORMAT tag at %L" msgstr "" -#: fortran/io.c:1134 +#: fortran/io.c:1133 #, no-c-format msgid "Extension: Non-character in FORMAT tag at %L" msgstr "" -#: fortran/io.c:1145 +#: fortran/io.c:1144 #, no-c-format msgid "%s tag at %L must be scalar" msgstr "" -#: fortran/io.c:1151 +#: fortran/io.c:1150 #, no-c-format msgid "Fortran 2003: IOMSG tag at %L" msgstr "" -#: fortran/io.c:1158 +#: fortran/io.c:1157 #, no-c-format msgid "Fortran 95 requires default INTEGER in IOSTAT tag at %L" msgstr "" -#: fortran/io.c:1166 +#: fortran/io.c:1165 #, no-c-format msgid "Fortran 95 requires default INTEGER in SIZE tag at %L" msgstr "" -#: fortran/io.c:1174 +#: fortran/io.c:1173 #, no-c-format msgid "Extension: CONVERT tag at %L" msgstr "" -#: fortran/io.c:1333 fortran/io.c:1341 +#: fortran/io.c:1332 fortran/io.c:1340 #, no-c-format msgid "Fortran 2003: %s specifier in %s statement at %C has value '%s'" msgstr "" -#: fortran/io.c:1359 fortran/io.c:1367 +#: fortran/io.c:1358 fortran/io.c:1366 #, no-c-format msgid "Extension: %s specifier in %s statement at %C has value '%s'" msgstr "" -#: fortran/io.c:1379 fortran/io.c:1385 +#: fortran/io.c:1378 fortran/io.c:1384 #, no-c-format msgid "%s specifier in %s statement at %C has invalid value '%s'" msgstr "" -#: fortran/io.c:1438 +#: fortran/io.c:1437 #, no-c-format msgid "OPEN statement not allowed in PURE procedure at %C" msgstr "" -#: fortran/io.c:1781 +#: fortran/io.c:1780 #, no-c-format msgid "CLOSE statement not allowed in PURE procedure at %C" msgstr "" -#: fortran/io.c:1920 fortran/match.c:1493 +#: fortran/io.c:1919 fortran/match.c:1492 #, no-c-format msgid "%s statement not allowed in PURE procedure at %C" msgstr "" -#: fortran/io.c:1980 +#: fortran/io.c:1979 #, no-c-format msgid "Fortran 2003: FLUSH statement at %C" msgstr "" -#: fortran/io.c:2040 +#: fortran/io.c:2039 #, no-c-format msgid "Duplicate UNIT specification at %C" msgstr "" -#: fortran/io.c:2096 +#: fortran/io.c:2095 #, fuzzy, no-c-format msgid "Duplicate format specification at %C" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: fortran/io.c:2113 +#: fortran/io.c:2112 #, no-c-format msgid "Symbol '%s' in namelist '%s' is INTENT(IN) at %C" msgstr "" -#: fortran/io.c:2149 +#: fortran/io.c:2148 #, fuzzy, no-c-format msgid "Duplicate NML specification at %C" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: fortran/io.c:2158 +#: fortran/io.c:2157 #, no-c-format msgid "Symbol '%s' at %C must be a NAMELIST group name" msgstr "" -#: fortran/io.c:2199 +#: fortran/io.c:2198 #, no-c-format msgid "END tag at %C not allowed in output statement" msgstr "" -#: fortran/io.c:2260 +#: fortran/io.c:2259 #, no-c-format msgid "UNIT specification at %L must be an INTEGER expression or a CHARACTER variable" msgstr "" -#: fortran/io.c:2269 +#: fortran/io.c:2268 #, no-c-format msgid "Internal unit with vector subscript at %L" msgstr "" -#: fortran/io.c:2277 +#: fortran/io.c:2276 #, no-c-format msgid "External IO UNIT cannot be an array at %L" msgstr "" -#: fortran/io.c:2287 +#: fortran/io.c:2286 #, fuzzy, no-c-format msgid "ERR tag label %d at %L not defined" msgstr "адмеціна `%s' выкарыстоўвываецца, але ня вызначана" -#: fortran/io.c:2299 +#: fortran/io.c:2298 #, fuzzy, no-c-format msgid "END tag label %d at %L not defined" msgstr "адмеціна `%s' выкарыстоўвываецца, але ня вызначана" -#: fortran/io.c:2311 +#: fortran/io.c:2310 #, fuzzy, no-c-format msgid "EOR tag label %d at %L not defined" msgstr "адмеціна `%s' выкарыстоўвываецца, але ня вызначана" -#: fortran/io.c:2321 +#: fortran/io.c:2320 #, fuzzy, no-c-format msgid "FORMAT label %d at %L not defined" msgstr "адмеціна `%s' выкарыстоўвываецца, але ня вызначана" -#: fortran/io.c:2442 +#: fortran/io.c:2441 #, no-c-format msgid "Syntax error in I/O iterator at %C" msgstr "" -#: fortran/io.c:2473 +#: fortran/io.c:2472 #, no-c-format msgid "Expected variable in READ statement at %C" msgstr "" -#: fortran/io.c:2479 +#: fortran/io.c:2478 #, no-c-format msgid "Expected expression in %s statement at %C" msgstr "" -#: fortran/io.c:2490 +#: fortran/io.c:2489 #, no-c-format msgid "Variable '%s' in input list at %C cannot be INTENT(IN)" msgstr "" -#: fortran/io.c:2499 +#: fortran/io.c:2498 #, no-c-format msgid "Cannot read to variable '%s' in PURE procedure at %C" msgstr "" -#: fortran/io.c:2516 +#: fortran/io.c:2515 #, no-c-format msgid "Cannot write to internal file unit '%s' at %C inside a PURE procedure" msgstr "" #. A general purpose syntax error. -#: fortran/io.c:2576 fortran/io.c:2977 fortran/gfortran.h:1809 +#: fortran/io.c:2575 fortran/io.c:2976 fortran/gfortran.h:1808 #, no-c-format msgid "Syntax error in %s statement at %C" msgstr "" -#: fortran/io.c:2804 +#: fortran/io.c:2803 #, no-c-format msgid "PRINT namelist at %C is an extension" msgstr "" -#: fortran/io.c:2938 +#: fortran/io.c:2937 #, no-c-format msgid "Extension: Comma before output item list at %C is an extension" msgstr "" -#: fortran/io.c:2947 +#: fortran/io.c:2946 #, no-c-format msgid "Expected comma in I/O list at %C" msgstr "" -#: fortran/io.c:3009 +#: fortran/io.c:3008 #, no-c-format msgid "PRINT statement at %C not allowed within PURE procedure" msgstr "" -#: fortran/io.c:3150 fortran/io.c:3201 +#: fortran/io.c:3149 fortran/io.c:3200 #, no-c-format msgid "INQUIRE statement not allowed in PURE procedure at %C" msgstr "" -#: fortran/io.c:3177 +#: fortran/io.c:3176 #, no-c-format msgid "IOLENGTH tag invalid in INQUIRE statement at %C" msgstr "" -#: fortran/io.c:3187 +#: fortran/io.c:3186 #, no-c-format msgid "INQUIRE statement at %L cannot contain both FILE and UNIT specifiers" msgstr "" -#: fortran/io.c:3194 +#: fortran/io.c:3193 #, no-c-format msgid "INQUIRE statement at %L requires either FILE or UNIT specifier" msgstr "" -#: fortran/match.c:181 +#: fortran/match.c:180 #, no-c-format msgid "Integer too large at %C" msgstr "" -#: fortran/match.c:242 fortran/parse.c:431 +#: fortran/match.c:241 fortran/parse.c:430 #, no-c-format msgid "Too many digits in statement label at %C" msgstr "" -#: fortran/match.c:248 +#: fortran/match.c:247 #, no-c-format msgid "Statement label at %C is zero" msgstr "" -#: fortran/match.c:281 +#: fortran/match.c:280 #, fuzzy, no-c-format msgid "Label name '%s' at %C is ambiguous" msgstr "памер \"%s\" - %d байт" -#: fortran/match.c:287 +#: fortran/match.c:286 #, fuzzy, no-c-format msgid "Duplicate construct label '%s' at %C" msgstr "паўтарэнне \"%s\"" -#: fortran/match.c:413 +#: fortran/match.c:412 #, no-c-format msgid "Name at %C is too long" msgstr "" -#: fortran/match.c:530 +#: fortran/match.c:529 #, no-c-format msgid "Loop variable at %C cannot be a sub-component" msgstr "" -#: fortran/match.c:536 +#: fortran/match.c:535 #, no-c-format msgid "Loop variable '%s' at %C cannot be INTENT(IN)" msgstr "" -#: fortran/match.c:567 +#: fortran/match.c:566 #, no-c-format msgid "Expected a step value in iterator at %C" msgstr "" -#: fortran/match.c:579 +#: fortran/match.c:578 #, no-c-format msgid "Syntax error in iterator at %C" msgstr "" -#: fortran/match.c:815 +#: fortran/match.c:814 #, no-c-format msgid "Invalid form of PROGRAM statement at %C" msgstr "" -#: fortran/match.c:935 fortran/match.c:1011 +#: fortran/match.c:934 fortran/match.c:1010 #, no-c-format msgid "Obsolescent: arithmetic IF statement at %C" msgstr "" -#: fortran/match.c:982 +#: fortran/match.c:981 #, no-c-format msgid "Syntax error in IF-expression at %C" msgstr "" -#: fortran/match.c:994 +#: fortran/match.c:993 #, no-c-format msgid "Block label not appropriate for arithmetic IF statement at %C" msgstr "" -#: fortran/match.c:1036 +#: fortran/match.c:1035 #, no-c-format msgid "Block label is not appropriate IF statement at %C" msgstr "" -#: fortran/match.c:1116 fortran/primary.c:2412 +#: fortran/match.c:1115 fortran/primary.c:2411 #, no-c-format msgid "Cannot assign to a named constant at %C" msgstr "" -#: fortran/match.c:1126 +#: fortran/match.c:1125 #, no-c-format msgid "Unclassifiable statement in IF-clause at %C" msgstr "" -#: fortran/match.c:1133 +#: fortran/match.c:1132 #, no-c-format msgid "Syntax error in IF-clause at %C" msgstr "" -#: fortran/match.c:1177 +#: fortran/match.c:1176 #, no-c-format msgid "Unexpected junk after ELSE statement at %C" msgstr "" -#: fortran/match.c:1183 fortran/match.c:1218 +#: fortran/match.c:1182 fortran/match.c:1217 #, no-c-format msgid "Label '%s' at %C doesn't match IF label '%s'" msgstr "" -#: fortran/match.c:1212 +#: fortran/match.c:1211 #, no-c-format msgid "Unexpected junk after ELSE IF statement at %C" msgstr "" -#: fortran/match.c:1375 +#: fortran/match.c:1374 #, no-c-format msgid "Name '%s' in %s statement at %C is not a loop name" msgstr "" -#: fortran/match.c:1392 +#: fortran/match.c:1391 #, no-c-format msgid "%s statement at %C is not within a loop" msgstr "" -#: fortran/match.c:1395 +#: fortran/match.c:1394 #, no-c-format msgid "%s statement at %C is not within loop '%s'" msgstr "" -#: fortran/match.c:1403 +#: fortran/match.c:1402 #, no-c-format msgid "%s statement at %C leaving OpenMP structured block" msgstr "" -#: fortran/match.c:1416 +#: fortran/match.c:1415 #, no-c-format msgid "EXIT statement at %C terminating !$OMP DO loop" msgstr "" -#: fortran/match.c:1471 +#: fortran/match.c:1470 #, no-c-format msgid "Too many digits in STOP code at %C" msgstr "" -#: fortran/match.c:1524 +#: fortran/match.c:1523 #, no-c-format msgid "Obsolete: PAUSE statement at %C" msgstr "" -#: fortran/match.c:1573 +#: fortran/match.c:1572 #, no-c-format msgid "Obsolete: ASSIGN statement at %C" msgstr "" -#: fortran/match.c:1619 +#: fortran/match.c:1618 #, no-c-format msgid "Obsolete: Assigned GOTO statement at %C" msgstr "" -#: fortran/match.c:1666 fortran/match.c:1718 +#: fortran/match.c:1665 fortran/match.c:1717 #, no-c-format msgid "Statement label list in GOTO at %C cannot be empty" msgstr "" -#: fortran/match.c:1802 +#: fortran/match.c:1801 #, no-c-format msgid "Bad allocate-object in ALLOCATE statement at %C for a PURE procedure" msgstr "" -#: fortran/match.c:1825 +#: fortran/match.c:1824 #, no-c-format msgid "STAT variable '%s' of ALLOCATE statement at %C cannot be INTENT(IN)" msgstr "" -#: fortran/match.c:1833 +#: fortran/match.c:1832 #, no-c-format msgid "Illegal STAT variable in ALLOCATE statement at %C for a PURE procedure" msgstr "" -#: fortran/match.c:1840 fortran/match.c:2006 +#: fortran/match.c:1839 fortran/match.c:2005 #, no-c-format msgid "STAT expression at %C must be a variable" msgstr "" -#: fortran/match.c:1895 +#: fortran/match.c:1894 #, no-c-format msgid "Illegal variable in NULLIFY at %C for a PURE procedure" msgstr "" -#: fortran/match.c:1973 +#: fortran/match.c:1972 #, no-c-format msgid "Illegal deallocate-expression in DEALLOCATE at %C for a PURE procedure" msgstr "" -#: fortran/match.c:1992 +#: fortran/match.c:1991 #, no-c-format msgid "STAT variable '%s' of DEALLOCATE statement at %C cannot be INTENT(IN)" msgstr "" -#: fortran/match.c:1999 +#: fortran/match.c:1998 #, no-c-format msgid "Illegal STAT variable in DEALLOCATE statement at %C for a PURE procedure" msgstr "" -#: fortran/match.c:2048 +#: fortran/match.c:2047 #, no-c-format msgid "Alternate RETURN statement at %C is only allowed within a SUBROUTINE" msgstr "" -#: fortran/match.c:2079 +#: fortran/match.c:2078 #, no-c-format msgid "Extension: RETURN statement in main program at %C" msgstr "" -#: fortran/match.c:2274 +#: fortran/match.c:2273 #, no-c-format msgid "Syntax error in common block name at %C" msgstr "" -#: fortran/match.c:2310 +#: fortran/match.c:2309 #, no-c-format msgid "Symbol '%s' at %C is already an external symbol that is not COMMON" msgstr "" -#: fortran/match.c:2357 +#: fortran/match.c:2356 #, no-c-format msgid "Symbol '%s' at %C is already in a COMMON block" msgstr "" -#: fortran/match.c:2369 +#: fortran/match.c:2368 #, no-c-format msgid "Previously initialized symbol '%s' in blank COMMON block at %C" msgstr "" -#: fortran/match.c:2372 +#: fortran/match.c:2371 #, no-c-format msgid "Previously initialized symbol '%s' in COMMON block '%s' at %C" msgstr "" -#: fortran/match.c:2384 +#: fortran/match.c:2383 #, no-c-format msgid "Derived type variable in COMMON at %C does not have the SEQUENCE attribute" msgstr "" -#: fortran/match.c:2407 +#: fortran/match.c:2406 #, no-c-format msgid "Array specification for symbol '%s' in COMMON at %C must be explicit" msgstr "" -#: fortran/match.c:2418 +#: fortran/match.c:2417 #, no-c-format msgid "Symbol '%s' in COMMON at %C cannot be a POINTER array" msgstr "" -#: fortran/match.c:2450 +#: fortran/match.c:2449 #, no-c-format msgid "Symbol '%s', in COMMON block '%s' at %C is being indirectly equivalenced to another COMMON block '%s'" msgstr "" -#: fortran/match.c:2560 +#: fortran/match.c:2559 #, no-c-format msgid "Namelist group name '%s' at %C already has a basic type of %s" msgstr "" -#: fortran/match.c:2567 +#: fortran/match.c:2566 #, no-c-format msgid "Namelist group name '%s' at %C already is USE associated and cannot be respecified." msgstr "" -#: fortran/match.c:2594 +#: fortran/match.c:2593 #, no-c-format msgid "Assumed size array '%s' in namelist '%s'at %C is not allowed." msgstr "" -#: fortran/match.c:2601 +#: fortran/match.c:2600 #, no-c-format msgid "Assumed character length '%s' in namelist '%s' at %C is not allowed" msgstr "" -#: fortran/match.c:2607 +#: fortran/match.c:2606 #, no-c-format msgid "Assumed shape array '%s' in namelist '%s' at %C is an extension." msgstr "" -#: fortran/match.c:2736 +#: fortran/match.c:2735 #, no-c-format msgid "Derived type component %C is not a permitted EQUIVALENCE member" msgstr "" -#: fortran/match.c:2745 +#: fortran/match.c:2744 #, no-c-format msgid "Array reference in EQUIVALENCE at %C cannot be an array section" msgstr "" -#: fortran/match.c:2774 +#: fortran/match.c:2773 #, no-c-format msgid "EQUIVALENCE at %C requires two or more objects" msgstr "" -#: fortran/match.c:2788 +#: fortran/match.c:2787 #, no-c-format msgid "Attempt to indirectly overlap COMMON blocks %s and %s by EQUIVALENCE at %C" msgstr "" -#: fortran/match.c:2950 +#: fortran/match.c:2949 #, fuzzy, no-c-format msgid "Statement function at %L is recursive" msgstr "метка \"%s\" вызначана, але не выкарыстоўваецца" -#: fortran/match.c:3040 +#: fortran/match.c:3039 #, no-c-format msgid "Expected initialization expression in CASE at %C" msgstr "" -#: fortran/match.c:3063 +#: fortran/match.c:3062 #, no-c-format msgid "Expected the name of the select case construct at %C" msgstr "" -#: fortran/match.c:3075 +#: fortran/match.c:3074 #, no-c-format msgid "Expected case name of '%s' at %C" msgstr "" -#: fortran/match.c:3119 +#: fortran/match.c:3118 #, no-c-format msgid "Unexpected CASE statement at %C" msgstr "" -#: fortran/match.c:3171 +#: fortran/match.c:3170 #, no-c-format msgid "Syntax error in CASE-specification at %C" msgstr "" -#: fortran/match.c:3291 +#: fortran/match.c:3290 #, no-c-format msgid "ELSEWHERE statement at %C not enclosed in WHERE block" msgstr "" -#: fortran/match.c:3322 +#: fortran/match.c:3321 #, no-c-format msgid "Label '%s' at %C doesn't match WHERE label '%s'" msgstr "" -#: fortran/match.c:3424 +#: fortran/match.c:3423 #, no-c-format msgid "Syntax error in FORALL iterator at %C" msgstr "" -#: fortran/matchexp.c:30 +#: fortran/matchexp.c:29 #, c-format msgid "Syntax error in expression at %C" msgstr "" -#: fortran/matchexp.c:74 +#: fortran/matchexp.c:73 #, no-c-format msgid "Bad character '%c' in OPERATOR name at %C" msgstr "" -#: fortran/matchexp.c:82 +#: fortran/matchexp.c:81 #, fuzzy, no-c-format msgid "The name '%s' cannot be used as a defined operator at %C" msgstr "\"%s\" звычайна функцыя" -#: fortran/matchexp.c:181 +#: fortran/matchexp.c:180 #, no-c-format msgid "Expected a right parenthesis in expression at %C" msgstr "" -#: fortran/matchexp.c:312 +#: fortran/matchexp.c:311 #, no-c-format msgid "Expected exponent in expression at %C" msgstr "" -#: fortran/matchexp.c:348 fortran/matchexp.c:452 +#: fortran/matchexp.c:347 fortran/matchexp.c:451 #, no-c-format msgid "Extension: Unary operator following arithmetic operator (use parentheses) at %C" msgstr "" -#: fortran/misc.c:42 +#: fortran/misc.c:41 #, no-c-format msgid "Out of memory-- malloc() failed" msgstr "" -#: fortran/module.c:532 +#: fortran/module.c:531 #, no-c-format msgid "Missing generic specification in USE statement at %C" msgstr "" -#: fortran/module.c:840 +#: fortran/module.c:839 #, no-c-format msgid "Reading module %s at line %d column %d: %s" msgstr "" -#: fortran/module.c:844 +#: fortran/module.c:843 #, no-c-format msgid "Writing module %s at line %d column %d: %s" msgstr "" -#: fortran/module.c:848 +#: fortran/module.c:847 #, no-c-format msgid "Module %s at line %d column %d: %s" msgstr "" -#: fortran/module.c:890 +#: fortran/module.c:889 msgid "Unexpected EOF" msgstr "" -#: fortran/module.c:922 +#: fortran/module.c:921 msgid "Unexpected end of module in string constant" msgstr "" -#: fortran/module.c:976 +#: fortran/module.c:975 msgid "Integer overflow" msgstr "" -#: fortran/module.c:1007 +#: fortran/module.c:1006 msgid "Name too long" msgstr "" -#: fortran/module.c:1114 +#: fortran/module.c:1113 msgid "Bad name" msgstr "" -#: fortran/module.c:1158 +#: fortran/module.c:1157 msgid "Expected name" msgstr "" -#: fortran/module.c:1161 +#: fortran/module.c:1160 msgid "Expected left parenthesis" msgstr "" -#: fortran/module.c:1164 +#: fortran/module.c:1163 msgid "Expected right parenthesis" msgstr "" -#: fortran/module.c:1167 +#: fortran/module.c:1166 msgid "Expected integer" msgstr "" -#: fortran/module.c:1170 +#: fortran/module.c:1169 msgid "Expected string" msgstr "" -#: fortran/module.c:1194 +#: fortran/module.c:1193 msgid "find_enum(): Enum not found" msgstr "" -#: fortran/module.c:1209 +#: fortran/module.c:1208 #, fuzzy, no-c-format msgid "Error writing modules file: %s" msgstr "памылка запісу ў %s" -#: fortran/module.c:1574 +#: fortran/module.c:1573 msgid "Expected attribute bit name" msgstr "" -#: fortran/module.c:2332 +#: fortran/module.c:2331 msgid "Expected integer string" msgstr "" -#: fortran/module.c:2336 +#: fortran/module.c:2335 msgid "Error converting integer" msgstr "" -#: fortran/module.c:2359 +#: fortran/module.c:2358 msgid "Expected real string" msgstr "" -#: fortran/module.c:2548 +#: fortran/module.c:2547 msgid "Expected expression type" msgstr "" -#: fortran/module.c:2596 +#: fortran/module.c:2595 #, fuzzy msgid "Bad operator" msgstr "невыкарыстаемы параметр \"%s\"" -#: fortran/module.c:2682 +#: fortran/module.c:2681 msgid "Bad type in constant expression" msgstr "" -#: fortran/module.c:2719 +#: fortran/module.c:2718 #, no-c-format msgid "Namelist %s cannot be renamed by USE association to %s." msgstr "" -#: fortran/module.c:3496 +#: fortran/module.c:3495 #, no-c-format msgid "Symbol '%s' referenced at %L not found in module '%s'" msgstr "" -#: fortran/module.c:3504 +#: fortran/module.c:3503 #, no-c-format msgid "User operator '%s' referenced at %L not found in module '%s'" msgstr "" -#: fortran/module.c:3510 +#: fortran/module.c:3509 #, no-c-format msgid "Intrinsic operator '%s' referenced at %L not found in module '%s'" msgstr "" -#: fortran/module.c:3871 +#: fortran/module.c:3870 #, fuzzy, no-c-format msgid "Can't open module file '%s' for writing at %C: %s" msgstr "%s: немагчыма адчыніць файл `%s' для чытаньня: %s\n" -#: fortran/module.c:3896 +#: fortran/module.c:3895 #, fuzzy, no-c-format msgid "Error writing module file '%s' for writing: %s" msgstr "%s: немагчыма адчыніць файл `%s' для чытаньня: %s\n" -#: fortran/module.c:3917 +#: fortran/module.c:3916 #, fuzzy, no-c-format msgid "Can't open module file '%s' for reading at %C: %s" msgstr "%s: немагчыма адчыніць файл `%s' для чытаньня: %s\n" -#: fortran/module.c:3932 +#: fortran/module.c:3931 msgid "Unexpected end of module" msgstr "" -#: fortran/module.c:3937 +#: fortran/module.c:3936 #, no-c-format msgid "File '%s' opened at %C is not a GFORTRAN module file" msgstr "" -#: fortran/module.c:3947 +#: fortran/module.c:3946 #, no-c-format msgid "Can't USE the same module we're building!" msgstr "" -#: fortran/openmp.c:135 fortran/openmp.c:502 +#: fortran/openmp.c:134 fortran/openmp.c:501 #, no-c-format msgid "COMMON block /%s/ not found at %C" msgstr "" -#: fortran/openmp.c:166 +#: fortran/openmp.c:165 #, no-c-format msgid "Syntax error in OpenMP variable list at %C" msgstr "" -#: fortran/openmp.c:292 +#: fortran/openmp.c:291 #, no-c-format msgid "%s is not INTRINSIC procedure name at %C" msgstr "" -#: fortran/openmp.c:481 +#: fortran/openmp.c:480 #, no-c-format msgid "Threadprivate variable at %C is an element of a COMMON block" msgstr "" -#: fortran/openmp.c:521 +#: fortran/openmp.c:520 #, no-c-format msgid "Syntax error in !$OMP THREADPRIVATE list at %C" msgstr "" -#: fortran/openmp.c:686 fortran/resolve.c:4928 fortran/resolve.c:5189 +#: fortran/openmp.c:685 fortran/resolve.c:4934 fortran/resolve.c:5195 #, no-c-format msgid "IF clause at %L requires a scalar LOGICAL expression" msgstr "" -#: fortran/openmp.c:694 +#: fortran/openmp.c:693 #, no-c-format msgid "NUM_THREADS clause at %L requires a scalar INTEGER expression" msgstr "" -#: fortran/openmp.c:702 +#: fortran/openmp.c:701 #, no-c-format msgid "SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression" msgstr "" -#: fortran/openmp.c:716 fortran/openmp.c:726 fortran/openmp.c:733 -#: fortran/openmp.c:743 +#: fortran/openmp.c:715 fortran/openmp.c:725 fortran/openmp.c:732 +#: fortran/openmp.c:742 #, no-c-format msgid "Symbol '%s' present on multiple clauses at %L" msgstr "" -#: fortran/openmp.c:766 +#: fortran/openmp.c:765 #, no-c-format msgid "Non-THREADPRIVATE object '%s' in COPYIN clause at %L" msgstr "" -#: fortran/openmp.c:769 +#: fortran/openmp.c:768 #, no-c-format msgid "COPYIN clause object '%s' is ALLOCATABLE at %L" msgstr "" -#: fortran/openmp.c:777 +#: fortran/openmp.c:776 #, no-c-format msgid "Assumed size array '%s' in COPYPRIVATE clause at %L" msgstr "" -#: fortran/openmp.c:780 +#: fortran/openmp.c:779 #, no-c-format msgid "COPYPRIVATE clause object '%s' is ALLOCATABLE at %L" msgstr "" -#: fortran/openmp.c:788 +#: fortran/openmp.c:787 #, no-c-format msgid "THREADPRIVATE object '%s' in SHARED clause at %L" msgstr "" -#: fortran/openmp.c:791 +#: fortran/openmp.c:790 #, no-c-format msgid "Cray pointee '%s' in SHARED clause at %L" msgstr "" -#: fortran/openmp.c:799 +#: fortran/openmp.c:798 #, no-c-format msgid "THREADPRIVATE object '%s' in %s clause at %L" msgstr "" -#: fortran/openmp.c:802 +#: fortran/openmp.c:801 #, no-c-format msgid "Cray pointee '%s' in %s clause at %L" msgstr "" -#: fortran/openmp.c:807 +#: fortran/openmp.c:806 #, no-c-format msgid "POINTER object '%s' in %s clause at %L" msgstr "" -#: fortran/openmp.c:810 +#: fortran/openmp.c:809 #, no-c-format msgid "%s clause object '%s' is ALLOCATABLE at %L" msgstr "" -#: fortran/openmp.c:813 +#: fortran/openmp.c:812 #, no-c-format msgid "Cray pointer '%s' in %s clause at %L" msgstr "" -#: fortran/openmp.c:817 +#: fortran/openmp.c:816 #, no-c-format msgid "Assumed size array '%s' in %s clause at %L" msgstr "" -#: fortran/openmp.c:822 +#: fortran/openmp.c:821 #, no-c-format msgid "Variable '%s' in %s clause is used in NAMELIST statement at %L" msgstr "" -#: fortran/openmp.c:831 +#: fortran/openmp.c:830 #, no-c-format msgid "%c REDUCTION variable '%s' is %s at %L" msgstr "" -#: fortran/openmp.c:842 +#: fortran/openmp.c:841 #, no-c-format msgid "%s REDUCTION variable '%s' must be LOGICAL at %L" msgstr "" -#: fortran/openmp.c:853 +#: fortran/openmp.c:852 #, no-c-format msgid "%s REDUCTION variable '%s' must be INTEGER or REAL at %L" msgstr "" -#: fortran/openmp.c:862 +#: fortran/openmp.c:861 #, no-c-format msgid "%s REDUCTION variable '%s' must be INTEGER at %L" msgstr "" -#: fortran/openmp.c:971 +#: fortran/openmp.c:970 #, no-c-format msgid "!$OMP ATOMIC statement must set a scalar variable of intrinsic type at %L" msgstr "" -#: fortran/openmp.c:1011 +#: fortran/openmp.c:1010 #, no-c-format msgid "!$OMP ATOMIC assignment operator must be +, *, -, /, .AND., .OR., .EQV. or .NEQV. at %L" msgstr "" -#: fortran/openmp.c:1059 +#: fortran/openmp.c:1058 #, no-c-format msgid "!$OMP ATOMIC assignment must be var = var op expr or var = expr op var at %L" msgstr "" -#: fortran/openmp.c:1073 +#: fortran/openmp.c:1072 #, no-c-format msgid "!$OMP ATOMIC var = var op expr not mathematically equivalent to var = var op (expr) at %L" msgstr "" -#: fortran/openmp.c:1105 +#: fortran/openmp.c:1104 #, no-c-format msgid "expr in !$OMP ATOMIC assignment var = var op expr must be scalar and cannot reference var at %L" msgstr "" -#: fortran/openmp.c:1129 +#: fortran/openmp.c:1128 #, no-c-format msgid "!$OMP ATOMIC assignment intrinsic IAND, IORor IEOR must have two arguments at %L" msgstr "" -#: fortran/openmp.c:1136 +#: fortran/openmp.c:1135 #, no-c-format msgid "!$OMP ATOMIC assignment intrinsic must be MIN, MAX, IAND, IOR or IEOR at %L" msgstr "" -#: fortran/openmp.c:1152 +#: fortran/openmp.c:1151 #, no-c-format msgid "!$OMP ATOMIC intrinsic arguments except one must not reference '%s' at %L" msgstr "" -#: fortran/openmp.c:1155 +#: fortran/openmp.c:1154 #, no-c-format msgid "!$OMP ATOMIC intrinsic arguments must be scalar at %L" msgstr "" -#: fortran/openmp.c:1161 +#: fortran/openmp.c:1160 #, no-c-format msgid "First or last !$OMP ATOMIC intrinsic argument must be '%s' at %L" msgstr "" -#: fortran/openmp.c:1179 +#: fortran/openmp.c:1178 #, no-c-format msgid "!$OMP ATOMIC assignment must have an operator or intrinsic on right hand side at %L" msgstr "" -#: fortran/openmp.c:1276 +#: fortran/openmp.c:1275 #, no-c-format msgid "!$OMP DO cannot be a DO WHILE or DO without loop control at %L" msgstr "" -#: fortran/openmp.c:1282 +#: fortran/openmp.c:1281 #, no-c-format msgid "!$OMP DO iteration variable must be of type integer at %L" msgstr "" -#: fortran/openmp.c:1286 +#: fortran/openmp.c:1285 #, no-c-format msgid "!$OMP DO iteration variable must not be THREADPRIVATE at %L" msgstr "" -#: fortran/openmp.c:1294 +#: fortran/openmp.c:1293 #, no-c-format msgid "!$OMP DO iteration variable present on clause other than PRIVATE or LASTPRIVATE at %L" msgstr "" -#: fortran/options.c:253 +#: fortran/options.c:252 #, no-c-format msgid "Reading file '%s' as free form." msgstr "" -#: fortran/options.c:263 +#: fortran/options.c:262 #, no-c-format msgid "'-fd-lines-as-comments' has no effect in free form." msgstr "" -#: fortran/options.c:266 +#: fortran/options.c:265 #, no-c-format msgid "'-fd-lines-as-code' has no effect in free form." msgstr "" -#: fortran/options.c:342 +#: fortran/options.c:341 #, c-format msgid "gfortran: Only one -M option allowed\n" msgstr "" -#: fortran/options.c:348 +#: fortran/options.c:347 #, c-format msgid "gfortran: Directory required after -M\n" msgstr "" -#: fortran/options.c:390 +#: fortran/options.c:389 #, no-c-format msgid "Argument to -ffpe-trap is not valid: %s" msgstr "" -#: fortran/options.c:498 +#: fortran/options.c:497 #, no-c-format msgid "Fixed line length must be at least seven." msgstr "" -#: fortran/options.c:560 +#: fortran/options.c:559 #, no-c-format msgid "Maximum supported identifier length is %d" msgstr "" -#: fortran/options.c:652 +#: fortran/options.c:651 #, no-c-format msgid "Maximum subrecord length cannot exceed %d" msgstr "" -#: fortran/parse.c:294 +#: fortran/parse.c:293 #, no-c-format msgid "Unclassifiable statement at %C" msgstr "" -#: fortran/parse.c:318 +#: fortran/parse.c:317 #, no-c-format msgid "OpenMP directives at %C may not appear in PURE or ELEMENTAL procedures" msgstr "" -#: fortran/parse.c:395 +#: fortran/parse.c:394 #, no-c-format msgid "Unclassifiable OpenMP directive at %C" msgstr "" -#: fortran/parse.c:434 fortran/parse.c:575 +#: fortran/parse.c:433 fortran/parse.c:574 #, no-c-format msgid "Zero is not a valid statement label at %C" msgstr "" -#: fortran/parse.c:441 fortran/parse.c:567 +#: fortran/parse.c:440 fortran/parse.c:566 #, fuzzy, no-c-format msgid "Non-numeric character in statement label at %C" msgstr "пустая сімвальная канстанта" -#: fortran/parse.c:454 fortran/parse.c:489 fortran/parse.c:615 +#: fortran/parse.c:453 fortran/parse.c:488 fortran/parse.c:614 #, no-c-format msgid "Semicolon at %C needs to be preceded by statement" msgstr "" -#: fortran/parse.c:462 fortran/parse.c:627 +#: fortran/parse.c:461 fortran/parse.c:626 #, no-c-format msgid "Ignoring statement label in empty statement at %C" msgstr "" -#: fortran/parse.c:554 fortran/parse.c:594 +#: fortran/parse.c:553 fortran/parse.c:593 #, no-c-format msgid "Bad continuation line at %C" msgstr "" -#: fortran/parse.c:653 +#: fortran/parse.c:652 #, no-c-format msgid "Line truncated at %C" msgstr "" -#: fortran/parse.c:831 +#: fortran/parse.c:830 #, no-c-format msgid "FORMAT statement at %L does not have a statement label" msgstr "" -#: fortran/parse.c:903 +#: fortran/parse.c:902 msgid "arithmetic IF" msgstr "" -#: fortran/parse.c:909 +#: fortran/parse.c:908 #, fuzzy msgid "attribute declaration" msgstr "Нерэчаіснае абвяшчэнне" -#: fortran/parse.c:939 +#: fortran/parse.c:938 #, fuzzy msgid "data declaration" msgstr "пустое абвяшчэньне" -#: fortran/parse.c:948 +#: fortran/parse.c:947 #, fuzzy msgid "derived type declaration" msgstr "пустое абвяшчэньне" -#: fortran/parse.c:1027 +#: fortran/parse.c:1026 msgid "block IF" msgstr "" -#: fortran/parse.c:1036 +#: fortran/parse.c:1035 msgid "implied END DO" msgstr "" -#: fortran/parse.c:1103 +#: fortran/parse.c:1102 msgid "assignment" msgstr "" -#: fortran/parse.c:1106 +#: fortran/parse.c:1105 msgid "pointer assignment" msgstr "" -#: fortran/parse.c:1115 +#: fortran/parse.c:1114 msgid "simple IF" msgstr "" -#: fortran/parse.c:1333 +#: fortran/parse.c:1332 #, no-c-format msgid "Unexpected %s statement at %C" msgstr "" -#: fortran/parse.c:1465 +#: fortran/parse.c:1464 #, no-c-format msgid "%s statement at %C cannot follow %s statement at %L" msgstr "" -#: fortran/parse.c:1482 +#: fortran/parse.c:1481 #, no-c-format msgid "Unexpected end of file in '%s'" msgstr "" -#: fortran/parse.c:1536 +#: fortran/parse.c:1535 #, no-c-format msgid "Derived type definition at %C has no components" msgstr "" -#: fortran/parse.c:1547 +#: fortran/parse.c:1546 #, no-c-format msgid "PRIVATE statement in TYPE at %C must be inside a MODULE" msgstr "" -#: fortran/parse.c:1554 +#: fortran/parse.c:1553 #, no-c-format msgid "PRIVATE statement at %C must precede structure components" msgstr "" -#: fortran/parse.c:1562 +#: fortran/parse.c:1561 #, no-c-format msgid "Duplicate PRIVATE statement at %C" msgstr "" -#: fortran/parse.c:1574 +#: fortran/parse.c:1573 #, no-c-format msgid "SEQUENCE statement at %C must precede structure components" msgstr "" -#: fortran/parse.c:1581 +#: fortran/parse.c:1580 #, no-c-format msgid "SEQUENCE attribute at %C already specified in TYPE statement" msgstr "" -#: fortran/parse.c:1586 +#: fortran/parse.c:1585 #, no-c-format msgid "Duplicate SEQUENCE statement at %C" msgstr "" -#: fortran/parse.c:1653 +#: fortran/parse.c:1652 #, no-c-format msgid "ENUM declaration at %C has no ENUMERATORS" msgstr "" -#: fortran/parse.c:1728 +#: fortran/parse.c:1727 #, no-c-format msgid "Unexpected %s statement in INTERFACE block at %C" msgstr "" -#: fortran/parse.c:1755 +#: fortran/parse.c:1754 #, no-c-format msgid "SUBROUTINE at %C does not belong in a generic function interface" msgstr "" -#: fortran/parse.c:1760 +#: fortran/parse.c:1759 #, no-c-format msgid "FUNCTION at %C does not belong in a generic subroutine interface" msgstr "" -#: fortran/parse.c:1778 +#: fortran/parse.c:1777 #, no-c-format msgid "Unexpected %s statement at %C in INTERFACE body" msgstr "" -#: fortran/parse.c:1792 +#: fortran/parse.c:1791 #, no-c-format msgid "INTERFACE procedure '%s' at %L has the same name as the enclosing procedure" msgstr "" -#: fortran/parse.c:1857 +#: fortran/parse.c:1856 #, no-c-format msgid "%s statement must appear in a MODULE" msgstr "" -#: fortran/parse.c:1864 +#: fortran/parse.c:1863 #, no-c-format msgid "%s statement at %C follows another accessibility specification" msgstr "" -#: fortran/parse.c:1941 +#: fortran/parse.c:1940 #, no-c-format msgid "ELSEWHERE statement at %C follows previous unmasked ELSEWHERE" msgstr "" -#: fortran/parse.c:1962 +#: fortran/parse.c:1961 #, no-c-format msgid "Unexpected %s statement in WHERE block at %C" msgstr "" -#: fortran/parse.c:2022 +#: fortran/parse.c:2021 #, no-c-format msgid "Unexpected %s statement in FORALL block at %C" msgstr "" -#: fortran/parse.c:2074 +#: fortran/parse.c:2073 #, no-c-format msgid "ELSE IF statement at %C cannot follow ELSE statement at %L" msgstr "" -#: fortran/parse.c:2092 +#: fortran/parse.c:2091 #, no-c-format msgid "Duplicate ELSE statements at %L and %C" msgstr "" -#: fortran/parse.c:2154 +#: fortran/parse.c:2153 #, no-c-format msgid "Expected a CASE or END SELECT statement following SELECT CASE at %C" msgstr "" -#: fortran/parse.c:2212 +#: fortran/parse.c:2211 #, no-c-format msgid "Variable '%s' at %C cannot be redefined inside loop beginning at %L" msgstr "" -#: fortran/parse.c:2247 +#: fortran/parse.c:2246 #, no-c-format msgid "End of nonblock DO statement at %C is within another block" msgstr "" -#: fortran/parse.c:2256 +#: fortran/parse.c:2255 #, no-c-format msgid "End of nonblock DO statement at %C is interwoven with another DO loop" msgstr "" -#: fortran/parse.c:2306 +#: fortran/parse.c:2305 #, no-c-format msgid "Statement label in ENDDO at %C doesn't match DO label" msgstr "" -#: fortran/parse.c:2322 +#: fortran/parse.c:2321 #, no-c-format msgid "named block DO at %L requires matching ENDDO name" msgstr "" -#: fortran/parse.c:2578 +#: fortran/parse.c:2577 #, no-c-format msgid "Name after !$omp critical and !$omp end critical does not match at %C" msgstr "" -#: fortran/parse.c:2635 +#: fortran/parse.c:2634 #, no-c-format msgid "%s statement at %C cannot terminate a non-block DO loop" msgstr "" -#: fortran/parse.c:2799 +#: fortran/parse.c:2798 #, no-c-format msgid "Contained procedure '%s' at %C is already ambiguous" msgstr "" -#: fortran/parse.c:2850 +#: fortran/parse.c:2849 #, no-c-format msgid "Unexpected %s statement in CONTAINS section at %C" msgstr "" -#: fortran/parse.c:2935 +#: fortran/parse.c:2934 #, no-c-format msgid "CONTAINS statement at %C is already in a contained program unit" msgstr "" -#: fortran/parse.c:2984 +#: fortran/parse.c:2983 #, no-c-format msgid "Global name '%s' at %L is already being used as a %s at %L" msgstr "" -#: fortran/parse.c:3005 +#: fortran/parse.c:3004 #, no-c-format msgid "Blank BLOCK DATA at %C conflicts with prior BLOCK DATA at %L" msgstr "" -#: fortran/parse.c:3030 +#: fortran/parse.c:3029 #, no-c-format msgid "Unexpected %s statement in BLOCK DATA at %C" msgstr "" -#: fortran/parse.c:3073 +#: fortran/parse.c:3072 #, no-c-format msgid "Unexpected %s statement in MODULE at %C" msgstr "" @@ -7557,217 +7557,217 @@ #. If we see a duplicate main program, shut down. If the second #. instance is an implied main program, ie data decls or executable #. statements, we're in for lots of errors. -#: fortran/parse.c:3252 +#: fortran/parse.c:3251 #, no-c-format msgid "Two main PROGRAMs at %L and %C" msgstr "" -#: fortran/primary.c:89 +#: fortran/primary.c:88 #, fuzzy, no-c-format msgid "Missing kind-parameter at %C" msgstr "нерэчаісны тып парамэтра `%T'" -#: fortran/primary.c:212 +#: fortran/primary.c:211 #, no-c-format msgid "Integer kind %d at %C not available" msgstr "" -#: fortran/primary.c:220 +#: fortran/primary.c:219 #, no-c-format msgid "Integer too big for its kind at %C" msgstr "" -#: fortran/primary.c:250 +#: fortran/primary.c:249 #, no-c-format msgid "Extension: Hollerith constant at %C" msgstr "" -#: fortran/primary.c:262 +#: fortran/primary.c:261 #, no-c-format msgid "Invalid Hollerith constant: %L must contain at least one character" msgstr "" -#: fortran/primary.c:268 +#: fortran/primary.c:267 #, no-c-format msgid "Invalid Hollerith constant: Integer kind at %L should be default" msgstr "" -#: fortran/primary.c:356 +#: fortran/primary.c:355 #, no-c-format msgid "Extension: Hexadecimal constant at %C uses non-standard syntax." msgstr "" -#: fortran/primary.c:366 +#: fortran/primary.c:365 #, no-c-format msgid "Empty set of digits in BOZ constant at %C" msgstr "" -#: fortran/primary.c:372 +#: fortran/primary.c:371 #, fuzzy, no-c-format msgid "Illegal character in BOZ constant at %C" msgstr "пустая сімвальная канстанта" -#: fortran/primary.c:394 +#: fortran/primary.c:393 #, no-c-format msgid "Extension: BOZ constant at %C uses non-standard postfix syntax." msgstr "" -#: fortran/primary.c:420 +#: fortran/primary.c:419 #, no-c-format msgid "Integer too big for integer kind %i at %C" msgstr "" -#: fortran/primary.c:520 +#: fortran/primary.c:519 #, no-c-format msgid "Missing exponent in real number at %C" msgstr "" -#: fortran/primary.c:577 +#: fortran/primary.c:576 #, no-c-format msgid "Real number at %C has a 'd' exponent and an explicit kind" msgstr "" -#: fortran/primary.c:589 +#: fortran/primary.c:588 #, no-c-format msgid "Invalid real kind %d at %C" msgstr "" -#: fortran/primary.c:603 +#: fortran/primary.c:602 #, no-c-format msgid "Real constant overflows its kind at %C" msgstr "" -#: fortran/primary.c:608 +#: fortran/primary.c:607 #, no-c-format msgid "Real constant underflows its kind at %C" msgstr "" -#: fortran/primary.c:700 +#: fortran/primary.c:699 #, no-c-format msgid "Syntax error in SUBSTRING specification at %C" msgstr "" -#: fortran/primary.c:935 +#: fortran/primary.c:934 #, no-c-format msgid "Invalid kind %d for CHARACTER constant at %C" msgstr "" -#: fortran/primary.c:956 +#: fortran/primary.c:955 #, fuzzy, no-c-format msgid "Unterminated character constant beginning at %C" msgstr "сімвальная канстанта вельмі доўгая" -#: fortran/primary.c:1037 +#: fortran/primary.c:1036 #, no-c-format msgid "Bad kind for logical constant at %C" msgstr "" -#: fortran/primary.c:1074 +#: fortran/primary.c:1073 #, no-c-format msgid "Expected PARAMETER symbol in complex constant at %C" msgstr "" -#: fortran/primary.c:1080 +#: fortran/primary.c:1079 #, no-c-format msgid "Numeric PARAMETER required in complex constant at %C" msgstr "" -#: fortran/primary.c:1086 +#: fortran/primary.c:1085 #, no-c-format msgid "Scalar PARAMETER required in complex constant at %C" msgstr "" -#: fortran/primary.c:1090 +#: fortran/primary.c:1089 #, no-c-format msgid "Fortran 2003: PARAMETER symbol in complex constant at %C" msgstr "" -#: fortran/primary.c:1120 +#: fortran/primary.c:1119 #, no-c-format msgid "Error converting PARAMETER constant in complex constant at %C" msgstr "" -#: fortran/primary.c:1247 +#: fortran/primary.c:1246 #, no-c-format msgid "Syntax error in COMPLEX constant at %C" msgstr "" -#: fortran/primary.c:1429 +#: fortran/primary.c:1428 #, no-c-format msgid "Keyword '%s' at %C has already appeared in the current argument list" msgstr "" -#: fortran/primary.c:1493 +#: fortran/primary.c:1492 #, fuzzy, no-c-format msgid "Extension: argument list function at %C" msgstr "вельмі шмат аргумэнтаў у функцыі `%s'" -#: fortran/primary.c:1560 +#: fortran/primary.c:1559 #, no-c-format msgid "Expected alternate return label at %C" msgstr "" -#: fortran/primary.c:1579 +#: fortran/primary.c:1578 #, no-c-format msgid "Missing keyword name in actual argument list at %C" msgstr "" -#: fortran/primary.c:1624 +#: fortran/primary.c:1623 #, no-c-format msgid "Syntax error in argument list at %C" msgstr "" -#: fortran/primary.c:1711 +#: fortran/primary.c:1710 #, no-c-format msgid "Expected structure component name at %C" msgstr "" -#: fortran/primary.c:1952 +#: fortran/primary.c:1951 #, no-c-format msgid "Too many components in structure constructor at %C" msgstr "" -#: fortran/primary.c:1967 +#: fortran/primary.c:1966 #, no-c-format msgid "Too few components in structure constructor at %C" msgstr "" -#: fortran/primary.c:1985 +#: fortran/primary.c:1984 #, no-c-format msgid "Syntax error in structure constructor at %C" msgstr "" -#: fortran/primary.c:2040 +#: fortran/primary.c:2039 #, no-c-format msgid "'%s' is array valued and directly recursive at %C , so the keyword RESULT must be specified in the FUNCTION statement" msgstr "" -#: fortran/primary.c:2115 +#: fortran/primary.c:2114 #, no-c-format msgid "Unexpected use of subroutine name '%s' at %C" msgstr "" -#: fortran/primary.c:2146 +#: fortran/primary.c:2145 #, fuzzy, no-c-format msgid "Statement function '%s' requires argument list at %C" msgstr "метка \"%s\" вызначана, але не выкарыстоўваецца" -#: fortran/primary.c:2149 +#: fortran/primary.c:2148 #, no-c-format msgid "Function '%s' requires an argument list at %C" msgstr "" -#: fortran/primary.c:2315 +#: fortran/primary.c:2314 #, fuzzy, no-c-format msgid "Missing argument list in function '%s' at %C" msgstr "аргумент для \"%s\" прапушчан" -#: fortran/primary.c:2343 +#: fortran/primary.c:2342 #, no-c-format msgid "Symbol at %C is not appropriate for an expression" msgstr "" -#: fortran/primary.c:2410 +#: fortran/primary.c:2409 #, no-c-format msgid "Named constant at %C in an EQUIVALENCE" msgstr "" @@ -7777,556 +7777,556 @@ msgid "Expected VARIABLE at %C" msgstr "" -#: fortran/resolve.c:112 +#: fortran/resolve.c:111 #, no-c-format msgid "Alternate return specifier in elemental subroutine '%s' at %L is not allowed" msgstr "" -#: fortran/resolve.c:116 +#: fortran/resolve.c:115 #, no-c-format msgid "Alternate return specifier in function '%s' at %L is not allowed" msgstr "" -#: fortran/resolve.c:130 +#: fortran/resolve.c:129 #, no-c-format msgid "Dummy procedure '%s' of PURE procedure at %L must also be PURE" msgstr "" -#: fortran/resolve.c:138 +#: fortran/resolve.c:137 #, no-c-format msgid "Dummy procedure at %L not allowed in ELEMENTAL procedure" msgstr "" -#: fortran/resolve.c:151 fortran/resolve.c:964 +#: fortran/resolve.c:150 fortran/resolve.c:963 #, no-c-format msgid "Unable to find a specific INTRINSIC procedure for the reference '%s' at %L" msgstr "" -#: fortran/resolve.c:195 +#: fortran/resolve.c:194 #, no-c-format msgid "Argument '%s' of pure function '%s' at %L must be INTENT(IN)" msgstr "" -#: fortran/resolve.c:200 +#: fortran/resolve.c:199 #, no-c-format msgid "Argument '%s' of pure subroutine '%s' at %L must have its INTENT specified" msgstr "" -#: fortran/resolve.c:210 +#: fortran/resolve.c:209 #, no-c-format msgid "Argument '%s' of elemental procedure at %L must be scalar" msgstr "" -#: fortran/resolve.c:218 +#: fortran/resolve.c:217 #, no-c-format msgid "Argument '%s' of elemental procedure at %L cannot have the POINTER attribute" msgstr "" -#: fortran/resolve.c:230 +#: fortran/resolve.c:229 #, no-c-format msgid "Argument '%s' of statement function at %L must be scalar" msgstr "" -#: fortran/resolve.c:241 +#: fortran/resolve.c:240 #, no-c-format msgid "Character-valued argument '%s' of statement function at %L must have constant length" msgstr "" -#: fortran/resolve.c:302 +#: fortran/resolve.c:301 #, no-c-format msgid "Contained function '%s' at %L has no IMPLICIT type" msgstr "" -#: fortran/resolve.c:317 +#: fortran/resolve.c:316 #, no-c-format msgid "Character-valued internal function '%s' at %L must not be assumed length" msgstr "" -#: fortran/resolve.c:480 +#: fortran/resolve.c:479 #, no-c-format msgid "Procedure %s at %L has entries with mismatched array specifications" msgstr "" -#: fortran/resolve.c:507 +#: fortran/resolve.c:506 #, no-c-format msgid "FUNCTION result %s can't be an array in FUNCTION %s at %L" msgstr "" -#: fortran/resolve.c:511 +#: fortran/resolve.c:510 #, no-c-format msgid "ENTRY result %s can't be an array in FUNCTION %s at %L" msgstr "" -#: fortran/resolve.c:518 +#: fortran/resolve.c:517 #, no-c-format msgid "FUNCTION result %s can't be a POINTER in FUNCTION %s at %L" msgstr "" -#: fortran/resolve.c:522 +#: fortran/resolve.c:521 #, no-c-format msgid "ENTRY result %s can't be a POINTER in FUNCTION %s at %L" msgstr "" -#: fortran/resolve.c:560 +#: fortran/resolve.c:559 #, no-c-format msgid "FUNCTION result %s can't be of type %s in FUNCTION %s at %L" msgstr "" -#: fortran/resolve.c:565 +#: fortran/resolve.c:564 #, no-c-format msgid "ENTRY result %s can't be of type %s in FUNCTION %s at %L" msgstr "" -#: fortran/resolve.c:662 +#: fortran/resolve.c:661 #, no-c-format msgid "The rank of the element in the derived type constructor at %L does not match that of the component (%d/%d)" msgstr "" -#: fortran/resolve.c:675 +#: fortran/resolve.c:674 #, no-c-format msgid "The element in the derived type constructor at %L, for pointer component '%s', is %s but should be %s" msgstr "" -#: fortran/resolve.c:692 +#: fortran/resolve.c:691 #, no-c-format msgid "The element in the derived type constructor at %L, for pointer component '%s' should be a POINTER or a TARGET" msgstr "" -#: fortran/resolve.c:814 +#: fortran/resolve.c:813 #, no-c-format msgid "The upper bound in the last dimension must appear in the reference to the assumed size array '%s' at %L." msgstr "" -#: fortran/resolve.c:878 fortran/resolve.c:4406 fortran/resolve.c:5154 +#: fortran/resolve.c:877 fortran/resolve.c:4412 fortran/resolve.c:5160 #, no-c-format msgid "Label %d referenced at %L is never defined" msgstr "" -#: fortran/resolve.c:914 +#: fortran/resolve.c:913 #, fuzzy, no-c-format msgid "Statement function '%s' at %L is not allowed as an actual argument" msgstr "метка \"%s\" вызначана, але не выкарыстоўваецца" -#: fortran/resolve.c:921 +#: fortran/resolve.c:920 #, no-c-format msgid "Intrinsic '%s' at %L is not allowed as an actual argument" msgstr "" -#: fortran/resolve.c:928 +#: fortran/resolve.c:927 #, no-c-format msgid "Internal procedure '%s' is not allowed as an actual argument at %L" msgstr "" -#: fortran/resolve.c:934 +#: fortran/resolve.c:933 #, no-c-format msgid "ELEMENTAL non-INTRINSIC procedure '%s' is not allowed as an actual argument at %L" msgstr "" -#: fortran/resolve.c:941 +#: fortran/resolve.c:940 #, no-c-format msgid "GENERIC non-INTRINSIC procedure '%s' is not allowed as an actual argument at %L" msgstr "" -#: fortran/resolve.c:980 +#: fortran/resolve.c:979 #, fuzzy, no-c-format msgid "Symbol '%s' at %L is ambiguous" msgstr "памер \"%s\" - %d байт" -#: fortran/resolve.c:1018 +#: fortran/resolve.c:1024 #, no-c-format msgid "By-value argument at %L is not of numeric type" msgstr "" -#: fortran/resolve.c:1025 +#: fortran/resolve.c:1031 #, no-c-format msgid "By-value argument at %L cannot be an array or an array section" msgstr "" -#: fortran/resolve.c:1036 +#: fortran/resolve.c:1042 #, no-c-format msgid "By-value argument at %L is not allowed in this context" msgstr "" -#: fortran/resolve.c:1045 +#: fortran/resolve.c:1051 #, no-c-format msgid "Kind of by-value argument at %L is larger than default kind" msgstr "" -#: fortran/resolve.c:1058 +#: fortran/resolve.c:1064 #, no-c-format msgid "Passing internal procedure at %L by location not allowed" msgstr "" -#: fortran/resolve.c:1175 +#: fortran/resolve.c:1181 #, no-c-format msgid "'%s' at %L is an array and OPTIONAL; IF IT IS MISSING, it cannot be the actual argument of an ELEMENTAL procedure unless there is a non-optionalargument with the same rank (12.4.1.5)" msgstr "" -#: fortran/resolve.c:1200 +#: fortran/resolve.c:1206 msgid "elemental subroutine" msgstr "" -#: fortran/resolve.c:1333 +#: fortran/resolve.c:1339 #, no-c-format msgid "There is no specific function for the generic '%s' at %L" msgstr "" -#: fortran/resolve.c:1343 +#: fortran/resolve.c:1349 #, no-c-format msgid "Generic function '%s' at %L is not consistent with a specific intrinsic interface" msgstr "" -#: fortran/resolve.c:1381 +#: fortran/resolve.c:1387 #, no-c-format msgid "Function '%s' at %L is INTRINSIC but is not compatible with an intrinsic" msgstr "" -#: fortran/resolve.c:1427 +#: fortran/resolve.c:1433 #, no-c-format msgid "Unable to resolve the specific function '%s' at %L" msgstr "" -#: fortran/resolve.c:1483 fortran/resolve.c:7110 +#: fortran/resolve.c:1489 fortran/resolve.c:7121 #, no-c-format msgid "Function '%s' at %L has no IMPLICIT type" msgstr "" -#: fortran/resolve.c:1557 +#: fortran/resolve.c:1563 #, fuzzy, no-c-format msgid "'%s' at %L is not a function" msgstr "`%D' - гэта ня функцыя," #. Internal procedures are taken care of in resolve_contained_fntype. -#: fortran/resolve.c:1590 +#: fortran/resolve.c:1596 #, no-c-format msgid "Function '%s' is declared CHARACTER(*) and cannot be used at %L since it is not a dummy argument" msgstr "" -#: fortran/resolve.c:1643 +#: fortran/resolve.c:1649 #, no-c-format msgid "User defined non-ELEMENTAL function '%s' at %L not allowed in WORKSHARE construct" msgstr "" -#: fortran/resolve.c:1693 +#: fortran/resolve.c:1699 #, no-c-format msgid "reference to non-PURE function '%s' at %L inside a FORALL %s" msgstr "" -#: fortran/resolve.c:1700 +#: fortran/resolve.c:1706 #, no-c-format msgid "Function reference to '%s' at %L is to a non-PURE procedure within a PURE procedure" msgstr "" -#: fortran/resolve.c:1715 +#: fortran/resolve.c:1721 #, no-c-format msgid "Function '%s' at %L cannot call itself, as it is not RECURSIVE" msgstr "" -#: fortran/resolve.c:1723 +#: fortran/resolve.c:1729 #, no-c-format msgid "Call to ENTRY '%s' at %L is recursive, but function '%s' is not declared as RECURSIVE" msgstr "" -#: fortran/resolve.c:1768 +#: fortran/resolve.c:1774 #, no-c-format msgid "Subroutine call to '%s' in FORALL block at %L is not PURE" msgstr "" -#: fortran/resolve.c:1771 +#: fortran/resolve.c:1777 #, no-c-format msgid "Subroutine call to '%s' at %L is not PURE" msgstr "" -#: fortran/resolve.c:1835 +#: fortran/resolve.c:1841 #, no-c-format msgid "There is no specific subroutine for the generic '%s' at %L" msgstr "" -#: fortran/resolve.c:1844 +#: fortran/resolve.c:1850 #, no-c-format msgid "Generic subroutine '%s' at %L is not consistent with an intrinsic subroutine interface" msgstr "" -#: fortran/resolve.c:1879 +#: fortran/resolve.c:1885 #, no-c-format msgid "Subroutine '%s' at %L is INTRINSIC but is not compatible with an intrinsic" msgstr "" -#: fortran/resolve.c:1923 +#: fortran/resolve.c:1929 #, no-c-format msgid "Unable to resolve the specific subroutine '%s' at %L" msgstr "" -#: fortran/resolve.c:1980 +#: fortran/resolve.c:1986 #, no-c-format msgid "'%s' at %L has a type, which is not consistent with the CALL at %L" msgstr "" -#: fortran/resolve.c:2003 +#: fortran/resolve.c:2009 #, no-c-format msgid "SUBROUTINE '%s' at %L cannot call itself, as it is not RECURSIVE" msgstr "" -#: fortran/resolve.c:2011 +#: fortran/resolve.c:2017 #, no-c-format msgid "Call to ENTRY '%s' at %L is recursive, but subroutine '%s' is not declared as RECURSIVE" msgstr "" -#: fortran/resolve.c:2081 +#: fortran/resolve.c:2087 #, no-c-format msgid "Shapes for operands at %L and %L are not conformable" msgstr "" -#: fortran/resolve.c:2138 +#: fortran/resolve.c:2144 #, c-format msgid "Operand of unary numeric operator '%s' at %%L is %s" msgstr "" -#: fortran/resolve.c:2154 +#: fortran/resolve.c:2160 #, c-format msgid "Operands of binary numeric operator '%s' at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:2168 +#: fortran/resolve.c:2174 #, c-format msgid "Operands of string concatenation operator at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:2187 +#: fortran/resolve.c:2193 #, c-format msgid "Operands of logical operator '%s' at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:2201 +#: fortran/resolve.c:2207 #, c-format msgid "Operand of .NOT. operator at %%L is %s" msgstr "" -#: fortran/resolve.c:2211 +#: fortran/resolve.c:2217 msgid "COMPLEX quantities cannot be compared at %L" msgstr "" -#: fortran/resolve.c:2237 +#: fortran/resolve.c:2243 #, c-format msgid "Logicals at %%L must be compared with %s instead of %s" msgstr "" -#: fortran/resolve.c:2242 +#: fortran/resolve.c:2248 #, c-format msgid "Operands of comparison operator '%s' at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:2250 +#: fortran/resolve.c:2256 #, c-format msgid "Operand of user operator '%s' at %%L is %s" msgstr "" -#: fortran/resolve.c:2253 +#: fortran/resolve.c:2259 #, c-format msgid "Operands of user operator '%s' at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:2324 +#: fortran/resolve.c:2330 #, no-c-format msgid "Inconsistent ranks for operator at %L and %L" msgstr "" -#: fortran/resolve.c:2528 +#: fortran/resolve.c:2534 #, no-c-format msgid "Illegal stride of zero at %L" msgstr "" -#: fortran/resolve.c:2577 +#: fortran/resolve.c:2583 #, no-c-format msgid "Array reference at %L is out of bounds" msgstr "" -#: fortran/resolve.c:2598 +#: fortran/resolve.c:2604 #, no-c-format msgid "Rightmost upper bound of assumed size array section not specified at %L" msgstr "" -#: fortran/resolve.c:2608 +#: fortran/resolve.c:2614 #, no-c-format msgid "Rank mismatch in array reference at %L (%d/%d)" msgstr "" -#: fortran/resolve.c:2636 +#: fortran/resolve.c:2642 #, no-c-format msgid "Array index at %L must be scalar" msgstr "" -#: fortran/resolve.c:2642 +#: fortran/resolve.c:2648 #, no-c-format msgid "Array index at %L must be of INTEGER type" msgstr "" -#: fortran/resolve.c:2648 +#: fortran/resolve.c:2654 #, no-c-format msgid "Extension: REAL array index at %L" msgstr "" -#: fortran/resolve.c:2678 +#: fortran/resolve.c:2684 #, fuzzy, no-c-format msgid "Argument dim at %L must be scalar" msgstr "першым аргументам \"%s\" павінен быць \"int\"" -#: fortran/resolve.c:2684 +#: fortran/resolve.c:2690 #, no-c-format msgid "Argument dim at %L must be of INTEGER type" msgstr "" -#: fortran/resolve.c:2804 +#: fortran/resolve.c:2810 #, fuzzy, no-c-format msgid "Array index at %L is an array of rank %d" msgstr "памер масіва \"%s\" вельмі вялікі" -#: fortran/resolve.c:2842 +#: fortran/resolve.c:2848 #, no-c-format msgid "Substring start index at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.c:2849 +#: fortran/resolve.c:2855 #, no-c-format msgid "Substring start index at %L must be scalar" msgstr "" -#: fortran/resolve.c:2858 +#: fortran/resolve.c:2864 #, no-c-format msgid "Substring start index at %L is less than one" msgstr "" -#: fortran/resolve.c:2871 +#: fortran/resolve.c:2877 #, no-c-format msgid "Substring end index at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.c:2878 +#: fortran/resolve.c:2884 #, no-c-format msgid "Substring end index at %L must be scalar" msgstr "" -#: fortran/resolve.c:2888 +#: fortran/resolve.c:2894 #, no-c-format msgid "Substring end index at %L exceeds the string length" msgstr "" -#: fortran/resolve.c:2963 +#: fortran/resolve.c:2969 #, no-c-format msgid "Component to the right of a part reference with nonzero rank must not have the POINTER attribute at %L" msgstr "" -#: fortran/resolve.c:2971 +#: fortran/resolve.c:2977 #, no-c-format msgid "Component to the right of a part reference with nonzero rank must not have the ALLOCATABLE attribute at %L" msgstr "" -#: fortran/resolve.c:2991 +#: fortran/resolve.c:2997 #, no-c-format msgid "Two or more part references with nonzero rank must not be specified at %L" msgstr "" -#: fortran/resolve.c:3166 +#: fortran/resolve.c:3172 #, no-c-format msgid "Variable '%s',used in a specification expression, is referenced at %L before the ENTRY statement in which it is a parameter" msgstr "" -#: fortran/resolve.c:3171 +#: fortran/resolve.c:3177 #, no-c-format msgid "Variable '%s' is used at %L before the ENTRY statement in which it is a parameter" msgstr "" -#: fortran/resolve.c:3294 +#: fortran/resolve.c:3300 #, no-c-format msgid "%s at %L must be a scalar" msgstr "" -#: fortran/resolve.c:3302 +#: fortran/resolve.c:3308 #, no-c-format msgid "%s at %L must be INTEGER or REAL" msgstr "" -#: fortran/resolve.c:3305 +#: fortran/resolve.c:3311 #, no-c-format msgid "%s at %L must be INTEGER" msgstr "" -#: fortran/resolve.c:3321 +#: fortran/resolve.c:3327 #, no-c-format msgid "Obsolete: REAL DO loop iterator at %L" msgstr "" -#: fortran/resolve.c:3330 +#: fortran/resolve.c:3336 #, no-c-format msgid "Cannot assign to loop variable in PURE procedure at %L" msgstr "" -#: fortran/resolve.c:3354 +#: fortran/resolve.c:3360 #, no-c-format msgid "Step expression in DO loop at %L cannot be zero" msgstr "" -#: fortran/resolve.c:3389 +#: fortran/resolve.c:3395 #, no-c-format msgid "FORALL index-name at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:3394 +#: fortran/resolve.c:3400 #, no-c-format msgid "FORALL start expression at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:3401 +#: fortran/resolve.c:3407 #, no-c-format msgid "FORALL end expression at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:3409 +#: fortran/resolve.c:3415 #, no-c-format msgid "FORALL stride expression at %L must be a scalar %s" msgstr "" -#: fortran/resolve.c:3414 +#: fortran/resolve.c:3420 #, no-c-format msgid "FORALL stride expression at %L cannot be zero" msgstr "" -#: fortran/resolve.c:3512 +#: fortran/resolve.c:3518 #, no-c-format msgid "Expression in DEALLOCATE statement at %L must be ALLOCATABLE or a POINTER" msgstr "" -#: fortran/resolve.c:3518 +#: fortran/resolve.c:3524 #, no-c-format msgid "Can't deallocate INTENT(IN) variable '%s' at %L" msgstr "" -#: fortran/resolve.c:3679 +#: fortran/resolve.c:3685 #, no-c-format msgid "The STAT variable '%s' in an ALLOCATE statement must not be allocated in the same statement at %L" msgstr "" -#: fortran/resolve.c:3710 +#: fortran/resolve.c:3716 #, no-c-format msgid "Expression in ALLOCATE statement at %L must be ALLOCATABLE or a POINTER" msgstr "" -#: fortran/resolve.c:3717 +#: fortran/resolve.c:3723 #, no-c-format msgid "Can't allocate INTENT(IN) variable '%s' at %L" msgstr "" -#: fortran/resolve.c:3741 +#: fortran/resolve.c:3747 #, no-c-format msgid "Array specification required in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:3771 +#: fortran/resolve.c:3777 #, no-c-format msgid "Bad array specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:3789 +#: fortran/resolve.c:3795 #, no-c-format msgid "'%s' must not appear an the array specification at %L in the same ALLOCATE statement where it is itself allocated" msgstr "" @@ -8335,844 +8335,844 @@ #. element in the list. Either way, we must #. issue an error and get the next case from P. #. FIXME: Sort P and Q by line number. -#: fortran/resolve.c:3948 +#: fortran/resolve.c:3954 #, no-c-format msgid "CASE label at %L overlaps with CASE label at %L" msgstr "" -#: fortran/resolve.c:3999 +#: fortran/resolve.c:4005 #, no-c-format msgid "Expression in CASE statement at %L must be of type %s" msgstr "" -#: fortran/resolve.c:4010 +#: fortran/resolve.c:4016 #, no-c-format msgid "Expression in CASE statement at %L must be kind %d" msgstr "" -#: fortran/resolve.c:4022 +#: fortran/resolve.c:4028 #, no-c-format msgid "Expression in CASE statement at %L must be scalar" msgstr "" -#: fortran/resolve.c:4069 +#: fortran/resolve.c:4075 #, no-c-format msgid "Selection expression in computed GOTO statement at %L must be a scalar integer expression" msgstr "" -#: fortran/resolve.c:4087 +#: fortran/resolve.c:4093 #, no-c-format msgid "Argument of SELECT statement at %L cannot be %s" msgstr "" -#: fortran/resolve.c:4096 +#: fortran/resolve.c:4102 #, no-c-format msgid "Argument of SELECT statement at %L must be a scalar expression" msgstr "" -#: fortran/resolve.c:4161 +#: fortran/resolve.c:4167 #, no-c-format msgid "The DEFAULT CASE at %L cannot be followed by a second DEFAULT CASE at %L" msgstr "" -#: fortran/resolve.c:4188 +#: fortran/resolve.c:4194 #, no-c-format msgid "Logical range in CASE statement at %L is not allowed" msgstr "" -#: fortran/resolve.c:4200 +#: fortran/resolve.c:4206 #, no-c-format msgid "constant logical value in CASE statement is repeated at %L" msgstr "" -#: fortran/resolve.c:4214 +#: fortran/resolve.c:4220 #, no-c-format msgid "Range specification at %L can never be matched" msgstr "" -#: fortran/resolve.c:4317 +#: fortran/resolve.c:4323 #, no-c-format msgid "Logical SELECT CASE block at %L has more that two cases" msgstr "" -#: fortran/resolve.c:4356 +#: fortran/resolve.c:4362 #, no-c-format msgid "Data transfer element at %L cannot have POINTER components" msgstr "" -#: fortran/resolve.c:4363 +#: fortran/resolve.c:4369 #, no-c-format msgid "Data transfer element at %L cannot have ALLOCATABLE components" msgstr "" -#: fortran/resolve.c:4370 +#: fortran/resolve.c:4376 #, no-c-format msgid "Data transfer element at %L cannot have PRIVATE components" msgstr "" -#: fortran/resolve.c:4379 +#: fortran/resolve.c:4385 #, no-c-format msgid "Data transfer element at %L cannot be a full reference to an assumed-size array" msgstr "" -#: fortran/resolve.c:4413 +#: fortran/resolve.c:4419 #, no-c-format msgid "Statement at %L is not a valid branch target statement for the branch statement at %L" msgstr "" -#: fortran/resolve.c:4422 +#: fortran/resolve.c:4428 #, no-c-format msgid "Branch at %L causes an infinite loop" msgstr "" -#: fortran/resolve.c:4455 +#: fortran/resolve.c:4461 #, no-c-format msgid "Label at %L is not in the same block as the GOTO statement at %L" msgstr "" -#: fortran/resolve.c:4471 +#: fortran/resolve.c:4477 #, no-c-format msgid "Obsolete: GOTO at %L jumps to END of construct at %L" msgstr "" -#: fortran/resolve.c:4545 +#: fortran/resolve.c:4551 #, no-c-format msgid "WHERE mask at %L has inconsistent shape" msgstr "" -#: fortran/resolve.c:4561 +#: fortran/resolve.c:4567 #, no-c-format msgid "WHERE assignment target at %L has inconsistent shape" msgstr "" -#: fortran/resolve.c:4575 fortran/resolve.c:4774 +#: fortran/resolve.c:4581 fortran/resolve.c:4780 #, no-c-format msgid "Unsupported statement inside WHERE at %L" msgstr "" -#: fortran/resolve.c:4651 +#: fortran/resolve.c:4657 #, no-c-format msgid "expression reference type error at %L" msgstr "" -#: fortran/resolve.c:4683 +#: fortran/resolve.c:4689 #, no-c-format msgid "Unsupported statement while finding forall index in expression" msgstr "" -#: fortran/resolve.c:4730 +#: fortran/resolve.c:4736 #, no-c-format msgid "Assignment to a FORALL index variable at %L" msgstr "" -#: fortran/resolve.c:4738 +#: fortran/resolve.c:4744 #, no-c-format msgid "The FORALL with index '%s' cause more than one assignment to this object at %L" msgstr "" -#: fortran/resolve.c:4867 +#: fortran/resolve.c:4873 #, no-c-format msgid "An outer FORALL construct already has an index with this name %L" msgstr "" -#: fortran/resolve.c:4879 fortran/resolve.c:4882 fortran/resolve.c:4885 +#: fortran/resolve.c:4885 fortran/resolve.c:4888 fortran/resolve.c:4891 #, no-c-format msgid "A FORALL index must not appear in a limit or stride expression in the same FORALL at %L" msgstr "" -#: fortran/resolve.c:4938 +#: fortran/resolve.c:4944 #, no-c-format msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array" msgstr "" -#: fortran/resolve.c:5068 +#: fortran/resolve.c:5074 #, no-c-format msgid "ASSIGNED GOTO statement at %L requires an INTEGER variable" msgstr "" -#: fortran/resolve.c:5071 +#: fortran/resolve.c:5077 #, no-c-format msgid "Variable '%s' has not been assigned a target label at %L" msgstr "" -#: fortran/resolve.c:5082 +#: fortran/resolve.c:5088 #, no-c-format msgid "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier" msgstr "" -#: fortran/resolve.c:5097 +#: fortran/resolve.c:5103 #, no-c-format msgid "Subroutine '%s' called instead of assignment at %L must be PURE" msgstr "" -#: fortran/resolve.c:5124 +#: fortran/resolve.c:5130 #, no-c-format msgid "rhs of CHARACTER assignment at %L will be truncated (%d/%d)" msgstr "" -#: fortran/resolve.c:5133 +#: fortran/resolve.c:5139 #, no-c-format msgid "Cannot assign to variable '%s' in PURE procedure at %L" msgstr "" -#: fortran/resolve.c:5142 +#: fortran/resolve.c:5148 #, no-c-format msgid "Right side of assignment at %L is a derived type containing a POINTER in a PURE procedure" msgstr "" -#: fortran/resolve.c:5162 +#: fortran/resolve.c:5168 #, no-c-format msgid "ASSIGN statement at %L requires a scalar default INTEGER variable" msgstr "" -#: fortran/resolve.c:5177 +#: fortran/resolve.c:5183 #, no-c-format msgid "Arithmetic IF statement at %L requires a numeric expression" msgstr "" -#: fortran/resolve.c:5219 +#: fortran/resolve.c:5225 #, no-c-format msgid "Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression" msgstr "" -#: fortran/resolve.c:5226 +#: fortran/resolve.c:5232 #, no-c-format msgid "STAT tag in ALLOCATE statement at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.c:5238 +#: fortran/resolve.c:5244 #, no-c-format msgid "STAT tag in DEALLOCATE statement at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.c:5304 +#: fortran/resolve.c:5310 #, no-c-format msgid "FORALL mask clause at %L requires a LOGICAL expression" msgstr "" -#: fortran/resolve.c:5507 +#: fortran/resolve.c:5513 #, no-c-format msgid "Allocatable array '%s' at %L must have a deferred shape" msgstr "" -#: fortran/resolve.c:5510 +#: fortran/resolve.c:5516 #, no-c-format msgid "Scalar object '%s' at %L may not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:5517 +#: fortran/resolve.c:5523 #, no-c-format msgid "Array pointer '%s' at %L must have a deferred shape" msgstr "" -#: fortran/resolve.c:5528 +#: fortran/resolve.c:5534 #, no-c-format msgid "Array '%s' at %L cannot have a deferred shape" msgstr "" -#: fortran/resolve.c:5584 +#: fortran/resolve.c:5590 #, no-c-format msgid "The module or main program array '%s' at %L must have constant shape" msgstr "" -#: fortran/resolve.c:5598 +#: fortran/resolve.c:5604 #, no-c-format msgid "Entity with assumed character length at %L must be a dummy argument or a PARAMETER" msgstr "" -#: fortran/resolve.c:5617 +#: fortran/resolve.c:5623 #, no-c-format msgid "'%s' at %L must have constant character length in this context" msgstr "" -#: fortran/resolve.c:5655 +#: fortran/resolve.c:5661 #, no-c-format msgid "Allocatable '%s' at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:5658 +#: fortran/resolve.c:5664 #, no-c-format msgid "External '%s' at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:5661 +#: fortran/resolve.c:5667 #, no-c-format msgid "Dummy '%s' at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:5664 +#: fortran/resolve.c:5670 #, no-c-format msgid "Intrinsic '%s' at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:5667 +#: fortran/resolve.c:5673 #, no-c-format msgid "Function result '%s' at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:5670 +#: fortran/resolve.c:5676 #, no-c-format msgid "Automatic array '%s' at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:5685 +#: fortran/resolve.c:5691 #, no-c-format msgid "The type %s cannot be host associated at %L because it is blocked by an incompatible object of the same name at %L" msgstr "" -#: fortran/resolve.c:5709 +#: fortran/resolve.c:5715 #, no-c-format msgid "Object '%s' at %L must have the SAVE attribute %s" msgstr "" -#: fortran/resolve.c:5735 +#: fortran/resolve.c:5741 #, no-c-format msgid "Although not referenced, '%s' at %L has ambiguous interfaces" msgstr "" -#: fortran/resolve.c:5749 +#: fortran/resolve.c:5760 #, no-c-format msgid "Character-valued statement function '%s' at %L must have constant length" msgstr "" -#: fortran/resolve.c:5757 +#: fortran/resolve.c:5768 #, no-c-format msgid "Automatic character length function '%s' at %L must have an explicit interface" msgstr "" -#: fortran/resolve.c:5780 +#: fortran/resolve.c:5791 #, no-c-format msgid "'%s' is of a PRIVATE type and cannot be a dummy argument of '%s', which is PUBLIC at %L" msgstr "" -#: fortran/resolve.c:5795 +#: fortran/resolve.c:5806 #, no-c-format msgid "External object '%s' at %L may not have an initializer" msgstr "" -#: fortran/resolve.c:5803 +#: fortran/resolve.c:5814 #, no-c-format msgid "ELEMENTAL function '%s' at %L must have a scalar result" msgstr "" -#: fortran/resolve.c:5824 +#: fortran/resolve.c:5835 #, no-c-format msgid "CHARACTER(*) function '%s' at %L cannot be array-valued" msgstr "" -#: fortran/resolve.c:5828 +#: fortran/resolve.c:5839 #, no-c-format msgid "CHARACTER(*) function '%s' at %L cannot be pointer-valued" msgstr "" -#: fortran/resolve.c:5832 +#: fortran/resolve.c:5843 #, no-c-format msgid "CHARACTER(*) function '%s' at %L cannot be pure" msgstr "" -#: fortran/resolve.c:5836 +#: fortran/resolve.c:5847 #, no-c-format msgid "CHARACTER(*) function '%s' at %L cannot be recursive" msgstr "" -#: fortran/resolve.c:5845 +#: fortran/resolve.c:5856 #, no-c-format msgid "CHARACTER(*) function '%s' at %L is obsolescent in fortran 95" msgstr "" -#: fortran/resolve.c:5870 +#: fortran/resolve.c:5881 #, no-c-format msgid "Character length of component '%s' needs to be a constant specification expression at %L." msgstr "" -#: fortran/resolve.c:5885 +#: fortran/resolve.c:5896 #, no-c-format msgid "The component '%s' is a PRIVATE type and cannot be a component of '%s', which is PUBLIC at %L" msgstr "" -#: fortran/resolve.c:5895 +#: fortran/resolve.c:5906 #, no-c-format msgid "Component %s of SEQUENCE type declared at %L does not have the SEQUENCE attribute" msgstr "" -#: fortran/resolve.c:5905 +#: fortran/resolve.c:5916 #, no-c-format msgid "The pointer component '%s' of '%s' at %L is a type that has not been declared" msgstr "" -#: fortran/resolve.c:5923 +#: fortran/resolve.c:5934 #, no-c-format msgid "Component '%s' of '%s' at %L must have constant array bounds." msgstr "" -#: fortran/resolve.c:5964 +#: fortran/resolve.c:5975 #, no-c-format msgid "PRIVATE symbol '%s' cannot be member of PUBLIC namelist at %L" msgstr "" -#: fortran/resolve.c:5977 +#: fortran/resolve.c:5988 #, no-c-format msgid "The array '%s' must have constant shape to be a NAMELIST object at %L" msgstr "" -#: fortran/resolve.c:5990 +#: fortran/resolve.c:6001 #, no-c-format msgid "NAMELIST object '%s' at %L cannot have ALLOCATABLE components" msgstr "" -#: fortran/resolve.c:6009 +#: fortran/resolve.c:6020 #, no-c-format msgid "PROCEDURE attribute conflicts with NAMELIST attribute in '%s' at %L" msgstr "" -#: fortran/resolve.c:6026 +#: fortran/resolve.c:6037 #, no-c-format msgid "Parameter array '%s' at %L cannot be automatic or assumed shape" msgstr "" -#: fortran/resolve.c:6038 +#: fortran/resolve.c:6049 #, no-c-format msgid "Implicitly typed PARAMETER '%s' at %L doesn't match a later IMPLICIT type" msgstr "" -#: fortran/resolve.c:6049 +#: fortran/resolve.c:6060 #, no-c-format msgid "Incompatible derived type in PARAMETER at %L" msgstr "" -#: fortran/resolve.c:6151 +#: fortran/resolve.c:6162 #, no-c-format msgid "Assumed size array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.c:6154 +#: fortran/resolve.c:6165 #, no-c-format msgid "Assumed shape array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.c:6167 +#: fortran/resolve.c:6178 #, no-c-format msgid "Symbol at %L is not a DUMMY variable" msgstr "" -#: fortran/resolve.c:6182 +#: fortran/resolve.c:6193 #, no-c-format msgid "The derived type '%s' at %L is of type '%s', which has not been defined." msgstr "" -#: fortran/resolve.c:6201 +#: fortran/resolve.c:6212 #, no-c-format msgid "The INTENT(OUT) dummy argument '%s' at %L is ASSUMED SIZE and so cannot have a default initializer" msgstr "" -#: fortran/resolve.c:6239 +#: fortran/resolve.c:6250 #, no-c-format msgid "Intrinsic at %L does not exist" msgstr "" -#: fortran/resolve.c:6272 +#: fortran/resolve.c:6283 #, no-c-format msgid "Threadprivate at %L isn't SAVEd" msgstr "" -#: fortran/resolve.c:6351 +#: fortran/resolve.c:6362 #, no-c-format msgid "BLOCK DATA element '%s' at %L must be in COMMON" msgstr "" -#: fortran/resolve.c:6395 +#: fortran/resolve.c:6406 #, no-c-format msgid "Nonconstant array section at %L in DATA statement" msgstr "" -#: fortran/resolve.c:6408 +#: fortran/resolve.c:6419 #, no-c-format msgid "DATA statement at %L has more variables than values" msgstr "" -#: fortran/resolve.c:6500 +#: fortran/resolve.c:6511 #, no-c-format msgid "iterator start at %L does not simplify" msgstr "" -#: fortran/resolve.c:6508 +#: fortran/resolve.c:6519 #, no-c-format msgid "iterator end at %L does not simplify" msgstr "" -#: fortran/resolve.c:6516 +#: fortran/resolve.c:6527 #, no-c-format msgid "iterator step at %L does not simplify" msgstr "" -#: fortran/resolve.c:6639 +#: fortran/resolve.c:6650 #, no-c-format msgid "DATA statement at %L has more values than variables" msgstr "" -#: fortran/resolve.c:6715 +#: fortran/resolve.c:6726 #, fuzzy, no-c-format msgid "Label %d at %L defined but not used" msgstr "адмеціна `%s' вызначана, але ня выкарыстоўваецца" -#: fortran/resolve.c:6720 +#: fortran/resolve.c:6731 #, fuzzy, no-c-format msgid "Label %d at %L defined but cannot be used" msgstr "адмеціна `%s' вызначана, але ня выкарыстоўваецца" -#: fortran/resolve.c:6805 +#: fortran/resolve.c:6816 #, no-c-format msgid "Derived type variable '%s' at %L must have SEQUENCE attribute to be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:6813 +#: fortran/resolve.c:6824 #, no-c-format msgid "Derived type variable '%s' at %L cannot have ALLOCATABLE components to be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:6828 +#: fortran/resolve.c:6839 #, no-c-format msgid "Derived type variable '%s' at %L with pointer component(s) cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:6835 +#: fortran/resolve.c:6846 #, no-c-format msgid "Derived type variable '%s' at %L with default initializer cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:6936 +#: fortran/resolve.c:6947 #, no-c-format msgid "Syntax error in EQUIVALENCE statement at %L" msgstr "" -#: fortran/resolve.c:6953 +#: fortran/resolve.c:6964 #, no-c-format msgid "Initialized objects '%s' and '%s' cannot both be in the EQUIVALENCE statement at %L" msgstr "" -#: fortran/resolve.c:6967 +#: fortran/resolve.c:6978 #, no-c-format msgid "Common block member '%s' at %L cannot be an EQUIVALENCE object in the pure procedure '%s'" msgstr "" -#: fortran/resolve.c:6976 +#: fortran/resolve.c:6987 #, no-c-format msgid "Named constant '%s' at %L cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:7055 +#: fortran/resolve.c:7066 #, no-c-format msgid "Array '%s' at %L with non-constant bounds cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:7066 +#: fortran/resolve.c:7077 #, no-c-format msgid "Structure component '%s' at %L cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:7077 +#: fortran/resolve.c:7088 #, no-c-format msgid "Substring at %L has length zero" msgstr "" -#: fortran/resolve.c:7120 +#: fortran/resolve.c:7131 #, no-c-format msgid "PUBLIC function '%s' at %L cannot be of PRIVATE type '%s'" msgstr "" -#: fortran/resolve.c:7147 +#: fortran/resolve.c:7158 #, no-c-format msgid "ENTRY '%s' at %L has no IMPLICIT type" msgstr "" -#: fortran/resolve.c:7173 +#: fortran/resolve.c:7184 #, no-c-format msgid "User operator procedure '%s' at %L must be a FUNCTION" msgstr "" -#: fortran/resolve.c:7179 +#: fortran/resolve.c:7190 #, no-c-format msgid "User operator procedure '%s' at %L cannot be assumed character length" msgstr "" -#: fortran/resolve.c:7185 +#: fortran/resolve.c:7196 #, no-c-format msgid "User operator procedure '%s' at %L must have at least one argument" msgstr "" -#: fortran/resolve.c:7195 +#: fortran/resolve.c:7206 #, no-c-format msgid "First argument of operator interface at %L cannot be optional" msgstr "" -#: fortran/resolve.c:7207 +#: fortran/resolve.c:7218 #, no-c-format msgid "Second argument of operator interface at %L cannot be optional" msgstr "" -#: fortran/resolve.c:7211 +#: fortran/resolve.c:7222 #, no-c-format msgid "Operator interface at %L must have, at most, two arguments" msgstr "" -#: fortran/resolve.c:7244 +#: fortran/resolve.c:7255 #, no-c-format msgid "Contained procedure '%s' at %L of a PURE procedure must also be PURE" msgstr "" -#: fortran/scanner.c:676 fortran/scanner.c:797 +#: fortran/scanner.c:675 fortran/scanner.c:796 #, no-c-format msgid "Limit of %d continuations exceeded in statement at %C" msgstr "" -#: fortran/scanner.c:721 +#: fortran/scanner.c:720 #, fuzzy, no-c-format msgid "Missing '&' in continued character constant at %C" msgstr "пустая сімвальная канстанта" -#: fortran/scanner.c:930 +#: fortran/scanner.c:929 #, no-c-format msgid "Nonconforming tab character at %C" msgstr "" -#: fortran/scanner.c:1021 fortran/scanner.c:1024 +#: fortran/scanner.c:1020 fortran/scanner.c:1023 #, no-c-format msgid "'&' not allowed by itself in line %d" msgstr "" -#: fortran/scanner.c:1046 fortran/scanner.c:1049 +#: fortran/scanner.c:1045 fortran/scanner.c:1048 #, no-c-format msgid "'&' not allowed by itself with comment in line %d" msgstr "" -#: fortran/scanner.c:1065 +#: fortran/scanner.c:1064 #, no-c-format msgid "Nonconforming tab character in column 1 of line %d" msgstr "" -#: fortran/scanner.c:1262 +#: fortran/scanner.c:1261 #, fuzzy, no-c-format msgid "%s:%d: file %s left but not entered" msgstr "адмеціна `%s' выкарыстоўвываецца, але ня вызначана" -#: fortran/scanner.c:1289 +#: fortran/scanner.c:1288 #, no-c-format msgid "%s:%d: Illegal preprocessor directive" msgstr "" -#: fortran/scanner.c:1382 +#: fortran/scanner.c:1381 #, no-c-format msgid "File '%s' is being included recursively" msgstr "" -#: fortran/scanner.c:1397 +#: fortran/scanner.c:1396 #, fuzzy, no-c-format msgid "Can't open file '%s'" msgstr "немагу адчыніць файл \"%s\"" -#: fortran/scanner.c:1406 +#: fortran/scanner.c:1405 #, fuzzy, no-c-format msgid "Can't open included file '%s'" msgstr "немагчыма адчыніць файл уводу `%s'" -#: fortran/scanner.c:1508 +#: fortran/scanner.c:1507 #, fuzzy, c-format msgid "%s:%3d %s\n" msgstr "%s: %s: " -#: fortran/simplify.c:80 +#: fortran/simplify.c:79 #, no-c-format msgid "Result of %s overflows its kind at %L" msgstr "" -#: fortran/simplify.c:84 +#: fortran/simplify.c:83 #, no-c-format msgid "Result of %s underflows its kind at %L" msgstr "" -#: fortran/simplify.c:88 +#: fortran/simplify.c:87 #, no-c-format msgid "Result of %s is NaN at %L" msgstr "" -#: fortran/simplify.c:92 +#: fortran/simplify.c:91 #, no-c-format msgid "Result of %s gives range error for its kind at %L" msgstr "" -#: fortran/simplify.c:114 +#: fortran/simplify.c:113 #, no-c-format msgid "KIND parameter of %s at %L must be an initialization expression" msgstr "" -#: fortran/simplify.c:124 +#: fortran/simplify.c:123 #, fuzzy, no-c-format msgid "Invalid KIND parameter of %s at %L" msgstr "нерэчаісны парамэтр `%s'" -#: fortran/simplify.c:262 +#: fortran/simplify.c:261 #, no-c-format msgid "Argument of ACHAR function at %L outside of range [0,127]" msgstr "" -#: fortran/simplify.c:287 +#: fortran/simplify.c:286 #, no-c-format msgid "Argument of ACOS at %L must be between -1 and 1" msgstr "" -#: fortran/simplify.c:309 +#: fortran/simplify.c:308 #, no-c-format msgid "Argument of ACOSH at %L must not be less than 1" msgstr "" -#: fortran/simplify.c:536 +#: fortran/simplify.c:535 #, no-c-format msgid "Argument of ASIN at %L must be between -1 and 1" msgstr "" -#: fortran/simplify.c:592 +#: fortran/simplify.c:591 #, no-c-format msgid "Argument of ATANH at %L must be inside the range -1 to 1" msgstr "" -#: fortran/simplify.c:618 +#: fortran/simplify.c:617 #, no-c-format msgid "If first argument of ATAN2 %L is zero, then the second argument must not be zero" msgstr "" -#: fortran/simplify.c:709 +#: fortran/simplify.c:708 #, no-c-format msgid "Argument of CHAR function at %L outside of range [0,255]" msgstr "" -#: fortran/simplify.c:1248 +#: fortran/simplify.c:1247 #, no-c-format msgid "Argument of IACHAR at %L must be of length one" msgstr "" -#: fortran/simplify.c:1255 +#: fortran/simplify.c:1254 #, no-c-format msgid "Argument of IACHAR function at %L outside of range 0..127" msgstr "" -#: fortran/simplify.c:1292 +#: fortran/simplify.c:1291 #, fuzzy, no-c-format msgid "Invalid second argument of IBCLR at %L" msgstr "нявернае выкарыстанне \"restict\"" -#: fortran/simplify.c:1300 +#: fortran/simplify.c:1299 #, no-c-format msgid "Second argument of IBCLR exceeds bit size at %L" msgstr "" -#: fortran/simplify.c:1334 +#: fortran/simplify.c:1333 #, fuzzy, no-c-format msgid "Invalid second argument of IBITS at %L" msgstr "нявернае выкарыстанне \"restict\"" -#: fortran/simplify.c:1340 +#: fortran/simplify.c:1339 #, fuzzy, no-c-format msgid "Invalid third argument of IBITS at %L" msgstr "нявернае выкарыстанне \"restict\"" -#: fortran/simplify.c:1350 +#: fortran/simplify.c:1349 #, no-c-format msgid "Sum of second and third arguments of IBITS exceeds bit size at %L" msgstr "" -#: fortran/simplify.c:1398 +#: fortran/simplify.c:1397 #, fuzzy, no-c-format msgid "Invalid second argument of IBSET at %L" msgstr "нявернае выкарыстанне \"restict\"" -#: fortran/simplify.c:1406 +#: fortran/simplify.c:1405 #, no-c-format msgid "Second argument of IBSET exceeds bit size at %L" msgstr "" -#: fortran/simplify.c:1436 +#: fortran/simplify.c:1435 #, no-c-format msgid "Argument of ICHAR at %L must be of length one" msgstr "" -#: fortran/simplify.c:1648 +#: fortran/simplify.c:1647 #, no-c-format msgid "Argument of INT at %L is not a valid type" msgstr "" -#: fortran/simplify.c:1690 +#: fortran/simplify.c:1689 #, fuzzy, no-c-format msgid "Argument of %s at %L is not a valid type" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: fortran/simplify.c:1785 +#: fortran/simplify.c:1784 #, fuzzy, no-c-format msgid "Invalid second argument of ISHFT at %L" msgstr "нявернае выкарыстанне \"restict\"" -#: fortran/simplify.c:1801 +#: fortran/simplify.c:1800 #, no-c-format msgid "Magnitude of second argument of ISHFT exceeds bit size at %L" msgstr "" -#: fortran/simplify.c:1865 +#: fortran/simplify.c:1864 #, fuzzy, no-c-format msgid "Invalid second argument of ISHFTC at %L" msgstr "нявернае выкарыстанне \"restict\"" -#: fortran/simplify.c:1879 +#: fortran/simplify.c:1878 #, fuzzy, no-c-format msgid "Invalid third argument of ISHFTC at %L" msgstr "нявернае выкарыстанне \"restict\"" -#: fortran/simplify.c:1885 +#: fortran/simplify.c:1884 #, no-c-format msgid "Magnitude of third argument of ISHFTC exceeds BIT_SIZE of first argument at %L" msgstr "" -#: fortran/simplify.c:1901 +#: fortran/simplify.c:1900 #, no-c-format msgid "Magnitude of second argument of ISHFTC exceeds third argument at %L" msgstr "" -#: fortran/simplify.c:1904 +#: fortran/simplify.c:1903 #, no-c-format msgid "Magnitude of second argument of ISHFTC exceeds BIT_SIZE of first argument at %L" msgstr "" -#: fortran/simplify.c:1975 +#: fortran/simplify.c:1974 #, no-c-format msgid "Argument of KIND at %L is a DERIVED type" msgstr "" -#: fortran/simplify.c:2046 +#: fortran/simplify.c:2045 #, no-c-format msgid "DIM argument at %L is out of bounds" msgstr "" -#: fortran/simplify.c:2214 +#: fortran/simplify.c:2213 #, no-c-format msgid "Argument of LOG at %L cannot be less than or equal to zero" msgstr "" -#: fortran/simplify.c:2227 +#: fortran/simplify.c:2226 #, no-c-format msgid "Complex argument of LOG at %L cannot be zero" msgstr "" -#: fortran/simplify.c:2276 +#: fortran/simplify.c:2275 #, no-c-format msgid "Argument of LOG10 at %L cannot be less than or equal to zero" msgstr "" #. Result is processor-dependent. -#: fortran/simplify.c:2453 +#: fortran/simplify.c:2452 #, no-c-format msgid "Second argument MOD at %L is zero" msgstr "" #. Result is processor-dependent. -#: fortran/simplify.c:2464 +#: fortran/simplify.c:2463 #, fuzzy, no-c-format msgid "Second argument of MOD at %L is zero" msgstr "другім аргументам \"%s\" павінен быць \"char **\"" @@ -9180,253 +9180,253 @@ #. Result is processor-dependent. This processor just opts #. to not handle it at all. #. Result is processor-dependent. -#: fortran/simplify.c:2512 fortran/simplify.c:2524 +#: fortran/simplify.c:2511 fortran/simplify.c:2523 #, no-c-format msgid "Second argument of MODULO at %L is zero" msgstr "" -#: fortran/simplify.c:2579 +#: fortran/simplify.c:2578 #, fuzzy, no-c-format msgid "Second argument of NEAREST at %L shall not be zero" msgstr "другім аргументам \"%s\" павінен быць \"char **\"" -#: fortran/simplify.c:2903 +#: fortran/simplify.c:2902 #, fuzzy, no-c-format msgid "Invalid second argument of REPEAT at %L" msgstr "нявернае выкарыстанне \"restict\"" -#: fortran/simplify.c:2977 +#: fortran/simplify.c:2976 #, fuzzy, no-c-format msgid "Integer too large in shape specification at %L" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: fortran/simplify.c:2987 +#: fortran/simplify.c:2986 #, no-c-format msgid "Too many dimensions in shape specification for RESHAPE at %L" msgstr "" -#: fortran/simplify.c:2995 +#: fortran/simplify.c:2994 #, no-c-format msgid "Shape specification at %L cannot be negative" msgstr "" -#: fortran/simplify.c:3005 +#: fortran/simplify.c:3004 #, no-c-format msgid "Shape specification at %L cannot be the null array" msgstr "" -#: fortran/simplify.c:3029 +#: fortran/simplify.c:3028 #, no-c-format msgid "ORDER parameter of RESHAPE at %L is not the same size as SHAPE parameter" msgstr "" -#: fortran/simplify.c:3036 +#: fortran/simplify.c:3035 #, no-c-format msgid "Error in ORDER parameter of RESHAPE at %L" msgstr "" -#: fortran/simplify.c:3046 +#: fortran/simplify.c:3045 #, no-c-format msgid "ORDER parameter of RESHAPE at %L is out of range" msgstr "" -#: fortran/simplify.c:3055 +#: fortran/simplify.c:3054 #, no-c-format msgid "Invalid permutation in ORDER parameter at %L" msgstr "" -#: fortran/simplify.c:3112 +#: fortran/simplify.c:3111 #, no-c-format msgid "PAD parameter required for short SOURCE parameter at %L" msgstr "" -#: fortran/simplify.c:3282 +#: fortran/simplify.c:3281 #, no-c-format msgid "Result of SCALE overflows its kind at %L" msgstr "" -#: fortran/simplify.c:3900 +#: fortran/simplify.c:3899 #, no-c-format msgid "Argument of SQRT at %L has a negative value" msgstr "" -#: fortran/simplify.c:3962 +#: fortran/simplify.c:3961 #, no-c-format msgid "TRANSFER intrinsic not implemented for initialization at %L" msgstr "" -#: fortran/symbol.c:112 +#: fortran/symbol.c:111 #, no-c-format msgid "Duplicate IMPLICIT NONE statement at %C" msgstr "" -#: fortran/symbol.c:152 +#: fortran/symbol.c:151 #, no-c-format msgid "Letter '%c' already set in IMPLICIT statement at %C" msgstr "" -#: fortran/symbol.c:174 +#: fortran/symbol.c:173 #, no-c-format msgid "Cannot specify IMPLICIT at %C after IMPLICIT NONE" msgstr "" -#: fortran/symbol.c:185 +#: fortran/symbol.c:184 #, no-c-format msgid "Letter %c already has an IMPLICIT type at %C" msgstr "" -#: fortran/symbol.c:233 +#: fortran/symbol.c:232 #, no-c-format msgid "Symbol '%s' at %L has no IMPLICIT type" msgstr "" -#: fortran/symbol.c:314 +#: fortran/symbol.c:313 #, no-c-format msgid "%s attribute not allowed in BLOCK DATA program unit at %L" msgstr "" -#: fortran/symbol.c:522 fortran/symbol.c:1021 +#: fortran/symbol.c:521 fortran/symbol.c:1020 #, fuzzy, no-c-format msgid "%s attribute conflicts with %s attribute at %L" msgstr "\"%s\" атрыбут ігнарыруецца" -#: fortran/symbol.c:525 +#: fortran/symbol.c:524 #, no-c-format msgid "%s attribute conflicts with %s attribute in '%s' at %L" msgstr "" -#: fortran/symbol.c:533 +#: fortran/symbol.c:532 #, no-c-format msgid "In the selected standard, %s attribute conflicts with %s attribute at %L" msgstr "" -#: fortran/symbol.c:539 +#: fortran/symbol.c:538 #, no-c-format msgid "In the selected standard, %s attribute conflicts with %s attribute in '%s' at %L" msgstr "" -#: fortran/symbol.c:582 +#: fortran/symbol.c:581 #, no-c-format msgid "Cannot change attributes of USE-associated symbol at %L" msgstr "" -#: fortran/symbol.c:585 +#: fortran/symbol.c:584 #, no-c-format msgid "Cannot change attributes of USE-associated symbol %s at %L" msgstr "" -#: fortran/symbol.c:601 +#: fortran/symbol.c:600 #, no-c-format msgid "Duplicate %s attribute specified at %L" msgstr "" -#: fortran/symbol.c:740 +#: fortran/symbol.c:739 #, no-c-format msgid "Cray Pointee at %L appears in multiple pointer() statements." msgstr "" -#: fortran/symbol.c:772 +#: fortran/symbol.c:771 #, no-c-format msgid "SAVE attribute at %L cannot be specified in a PURE procedure" msgstr "" -#: fortran/symbol.c:780 +#: fortran/symbol.c:779 #, no-c-format msgid "Duplicate SAVE attribute specified at %L" msgstr "" -#: fortran/symbol.c:1051 +#: fortran/symbol.c:1050 #, no-c-format msgid "%s procedure at %L is already declared as %s procedure" msgstr "" -#: fortran/symbol.c:1086 +#: fortran/symbol.c:1085 #, no-c-format msgid "INTENT (%s) conflicts with INTENT(%s) at %L" msgstr "" -#: fortran/symbol.c:1109 +#: fortran/symbol.c:1108 #, no-c-format msgid "ACCESS specification at %L was already specified" msgstr "" -#: fortran/symbol.c:1129 +#: fortran/symbol.c:1128 #, no-c-format msgid "Symbol '%s' at %L already has an explicit interface" msgstr "" -#: fortran/symbol.c:1174 +#: fortran/symbol.c:1173 #, no-c-format msgid "Symbol '%s' at %L cannot have a type" msgstr "" -#: fortran/symbol.c:1314 +#: fortran/symbol.c:1313 #, no-c-format msgid "Component '%s' at %C already declared at %L" msgstr "" -#: fortran/symbol.c:1392 +#: fortran/symbol.c:1391 #, fuzzy, no-c-format msgid "Symbol '%s' at %C is ambiguous" msgstr "памер \"%s\" - %d байт" -#: fortran/symbol.c:1424 +#: fortran/symbol.c:1423 #, no-c-format msgid "Derived type '%s' at %C is being used before it is defined" msgstr "" -#: fortran/symbol.c:1452 +#: fortran/symbol.c:1451 #, no-c-format msgid "'%s' at %C is not a member of the '%s' structure" msgstr "" -#: fortran/symbol.c:1458 +#: fortran/symbol.c:1457 #, no-c-format msgid "Component '%s' at %C is a PRIVATE component of '%s'" msgstr "" -#: fortran/symbol.c:1611 +#: fortran/symbol.c:1610 #, no-c-format msgid "Duplicate statement label %d at %L and %L" msgstr "" -#: fortran/symbol.c:1621 +#: fortran/symbol.c:1620 #, no-c-format msgid "Label %d at %C already referenced as branch target" msgstr "" -#: fortran/symbol.c:1630 +#: fortran/symbol.c:1629 #, no-c-format msgid "Label %d at %C already referenced as a format label" msgstr "" -#: fortran/symbol.c:1672 +#: fortran/symbol.c:1671 #, no-c-format msgid "Label %d at %C previously used as a FORMAT label" msgstr "" -#: fortran/symbol.c:1680 +#: fortran/symbol.c:1679 #, no-c-format msgid "Label %d at %C previously used as branch target" msgstr "" -#: fortran/symbol.c:1934 +#: fortran/symbol.c:1933 #, no-c-format msgid "Name '%s' at %C is an ambiguous reference to '%s' from module '%s'" msgstr "" -#: fortran/symbol.c:1937 +#: fortran/symbol.c:1936 #, no-c-format msgid "Name '%s' at %C is an ambiguous reference to '%s' from current program unit" msgstr "" #. Symbol is from another namespace. -#: fortran/symbol.c:2078 +#: fortran/symbol.c:2077 #, no-c-format msgid "Symbol '%s' at %C has already been host associated" msgstr "" -#: fortran/trans-common.c:366 +#: fortran/trans-common.c:365 #, no-c-format msgid "Named COMMON block '%s' at %L shall be of the same size" msgstr "" @@ -9480,37 +9480,37 @@ msgid "COMMON '%s' at %L requires %d bytes of padding at start" msgstr "" -#: fortran/trans-decl.c:446 +#: fortran/trans-decl.c:445 #, no-c-format msgid "storage size not known" msgstr "" -#: fortran/trans-decl.c:453 +#: fortran/trans-decl.c:452 #, fuzzy, no-c-format msgid "storage size not constant" msgstr "тып параметра \"%s\" не аб'яўлены" -#: fortran/trans-decl.c:2933 +#: fortran/trans-decl.c:2932 #, fuzzy, no-c-format msgid "Unused parameter %s declared at %L" msgstr "тып параметра \"%s\" не аб'яўлены" -#: fortran/trans-decl.c:2939 +#: fortran/trans-decl.c:2938 #, fuzzy, no-c-format msgid "Unused variable %s declared at %L" msgstr "невыкарыстоўваемая пераменная \"%s\"" -#: fortran/trans-expr.c:1954 +#: fortran/trans-expr.c:1962 #, fuzzy, no-c-format msgid "Unknown argument list function at %L" msgstr "нехапае аргументаў у функцыі \"%s\"" -#: fortran/trans-intrinsic.c:767 +#: fortran/trans-intrinsic.c:766 #, no-c-format msgid "'dim' argument of %s intrinsic at %L is not a valid dimension index" msgstr "" -#: fortran/trans-intrinsic.c:3339 +#: fortran/trans-intrinsic.c:3338 msgid "Argument NCOPIES of REPEAT intrinsic is negative" msgstr "" @@ -9519,197 +9519,197 @@ msgid "INQUIRE statement at %L cannot contain both FILE and UNIT specifiers." msgstr "" -#: fortran/trans-stmt.c:157 +#: fortran/trans-stmt.c:156 msgid "Assigned label is not a target label" msgstr "" -#: fortran/trans-stmt.c:184 +#: fortran/trans-stmt.c:183 msgid "Assigned label is not in the list" msgstr "" -#: fortran/trans-stmt.c:439 +#: fortran/trans-stmt.c:438 #, no-c-format msgid "An alternate return at %L without a * dummy argument" msgstr "" -#: fortran/trans.c:49 +#: fortran/trans.c:48 msgid "Array bound mismatch" msgstr "" -#: fortran/trans.c:50 +#: fortran/trans.c:49 msgid "Array reference out of bounds" msgstr "" -#: fortran/trans.c:51 +#: fortran/trans.c:50 msgid "Incorrect function return value" msgstr "" #. FIXME: i18n bug here. Order of prints should not be #. fixed. -#: java/gjavah.c:916 +#: java/gjavah.c:915 #, fuzzy, c-format msgid "ignored method '" msgstr "у метадзе \"%s\":" -#: java/gjavah.c:918 +#: java/gjavah.c:917 #, c-format msgid "' marked virtual\n" msgstr "" -#: java/gjavah.c:2356 +#: java/gjavah.c:2355 #, c-format msgid "Try '" msgstr "" -#: java/gjavah.c:2356 +#: java/gjavah.c:2355 #, c-format msgid " --help' for more information.\n" msgstr "" -#: java/gjavah.c:2363 +#: java/gjavah.c:2362 #, c-format msgid "Usage: " msgstr "" -#: java/gjavah.c:2363 +#: java/gjavah.c:2362 #, c-format msgid "" " [OPTION]... CLASS...\n" "\n" msgstr "" -#: java/gjavah.c:2364 +#: java/gjavah.c:2363 #, c-format msgid "" "Generate C or C++ header files from .class files\n" "\n" msgstr "" -#: java/gjavah.c:2365 +#: java/gjavah.c:2364 #, fuzzy, c-format msgid " -stubs Generate an implementation stub file\n" msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: java/gjavah.c:2366 +#: java/gjavah.c:2365 #, c-format msgid " -jni Generate a JNI header or stub\n" msgstr "" -#: java/gjavah.c:2367 +#: java/gjavah.c:2366 #, fuzzy, c-format msgid " -force Always overwrite output files\n" msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: java/gjavah.c:2368 +#: java/gjavah.c:2367 #, fuzzy, c-format msgid " -old Unused compatibility option\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: java/gjavah.c:2369 +#: java/gjavah.c:2368 #, fuzzy, c-format msgid " -trace Unused compatibility option\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: java/gjavah.c:2370 +#: java/gjavah.c:2369 #, c-format msgid " -J OPTION Unused compatibility option\n" msgstr "" -#: java/gjavah.c:2372 +#: java/gjavah.c:2371 #, c-format msgid " -add TEXT Insert TEXT into class body\n" msgstr "" -#: java/gjavah.c:2373 +#: java/gjavah.c:2372 #, c-format msgid " -append TEXT Insert TEXT after class declaration\n" msgstr "" -#: java/gjavah.c:2374 +#: java/gjavah.c:2373 #, c-format msgid " -friend TEXT Insert TEXT as 'friend' declaration\n" msgstr "" -#: java/gjavah.c:2375 +#: java/gjavah.c:2374 #, c-format msgid " -prepend TEXT Insert TEXT before start of class\n" msgstr "" -#: java/gjavah.c:2377 java/jcf-dump.c:917 +#: java/gjavah.c:2376 java/jcf-dump.c:916 #, c-format msgid " --classpath PATH Set path to find .class files\n" msgstr "" -#: java/gjavah.c:2378 java/jcf-dump.c:918 +#: java/gjavah.c:2377 java/jcf-dump.c:917 #, c-format msgid " -IDIR Append directory to class path\n" msgstr "" -#: java/gjavah.c:2379 java/jcf-dump.c:919 +#: java/gjavah.c:2378 java/jcf-dump.c:918 #, c-format msgid " --bootclasspath PATH Override built-in class path\n" msgstr "" -#: java/gjavah.c:2380 java/jcf-dump.c:920 +#: java/gjavah.c:2379 java/jcf-dump.c:919 #, c-format msgid " --extdirs PATH Set extensions directory path\n" msgstr "" -#: java/gjavah.c:2381 +#: java/gjavah.c:2380 #, c-format msgid " -d DIRECTORY Set output directory name\n" msgstr "" -#: java/gjavah.c:2382 java/jcf-dump.c:921 java/jv-scan.c:115 +#: java/gjavah.c:2381 java/jcf-dump.c:920 java/jv-scan.c:114 #, fuzzy, c-format msgid " -o FILE Set output file name\n" msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: java/gjavah.c:2383 +#: java/gjavah.c:2382 #, c-format msgid " -td DIRECTORY Set temporary directory name\n" msgstr "" -#: java/gjavah.c:2385 java/jcf-dump.c:923 java/jv-scan.c:117 +#: java/gjavah.c:2384 java/jcf-dump.c:922 java/jv-scan.c:116 #, fuzzy, c-format msgid " --help Print this help, then exit\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: java/gjavah.c:2386 java/jcf-dump.c:924 java/jv-scan.c:118 +#: java/gjavah.c:2385 java/jcf-dump.c:923 java/jv-scan.c:117 #, fuzzy, c-format msgid " --version Print version number, then exit\n" msgstr " -dumpversion Адлюстраваць версію кампілятара\n" -#: java/gjavah.c:2387 java/jcf-dump.c:925 +#: java/gjavah.c:2386 java/jcf-dump.c:924 #, fuzzy, c-format msgid " -v, --verbose Print extra information while running\n" msgstr " -dumpversion Адлюстраваць версію кампілятара\n" -#: java/gjavah.c:2389 +#: java/gjavah.c:2388 #, c-format msgid "" " -M Print all dependencies to stdout;\n" " suppress ordinary output\n" msgstr "" -#: java/gjavah.c:2391 +#: java/gjavah.c:2390 #, c-format msgid "" " -MM Print non-system dependencies to stdout;\n" " suppress ordinary output\n" msgstr "" -#: java/gjavah.c:2393 +#: java/gjavah.c:2392 #, fuzzy, c-format msgid " -MD Print all dependencies to stdout\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: java/gjavah.c:2394 +#: java/gjavah.c:2393 #, fuzzy, c-format msgid " -MMD Print non-system dependencies to stdout\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: java/gjavah.c:2397 java/jcf-dump.c:927 java/jv-scan.c:120 +#: java/gjavah.c:2396 java/jcf-dump.c:926 java/jv-scan.c:119 #, fuzzy, c-format msgid "" "For bug reporting instructions, please see:\n" @@ -9718,200 +9718,200 @@ "\n" "Інструкцыі для паведамленняў аб памылках глядзіце тут:\n" -#: java/gjavah.c:2581 +#: java/gjavah.c:2580 #, fuzzy, c-format msgid "Processing %s\n" msgstr "версія gcc %s\n" -#: java/gjavah.c:2591 +#: java/gjavah.c:2590 #, c-format msgid "Found in %s\n" msgstr "" -#: java/jcf-dump.c:834 +#: java/jcf-dump.c:833 #, c-format msgid "Not a valid Java .class file.\n" msgstr "" -#: java/jcf-dump.c:840 +#: java/jcf-dump.c:839 #, c-format msgid "error while parsing constant pool\n" msgstr "" -#: java/jcf-dump.c:846 java/jcf-parse.c:756 +#: java/jcf-dump.c:845 java/jcf-parse.c:755 #, gcc-internal-format msgid "error in constant pool entry #%d\n" msgstr "" -#: java/jcf-dump.c:856 +#: java/jcf-dump.c:855 #, c-format msgid "error while parsing fields\n" msgstr "" -#: java/jcf-dump.c:862 +#: java/jcf-dump.c:861 #, fuzzy, c-format msgid "error while parsing methods\n" msgstr "памылка запісу ў %s" -#: java/jcf-dump.c:868 +#: java/jcf-dump.c:867 #, c-format msgid "error while parsing final attributes\n" msgstr "" -#: java/jcf-dump.c:905 +#: java/jcf-dump.c:904 #, c-format msgid "Try 'jcf-dump --help' for more information.\n" msgstr "" -#: java/jcf-dump.c:912 +#: java/jcf-dump.c:911 #, c-format msgid "" "Usage: jcf-dump [OPTION]... CLASS...\n" "\n" msgstr "" -#: java/jcf-dump.c:913 +#: java/jcf-dump.c:912 #, c-format msgid "" "Display contents of a class file in readable form.\n" "\n" msgstr "" -#: java/jcf-dump.c:914 +#: java/jcf-dump.c:913 #, fuzzy, c-format msgid " -c Disassemble method bodies\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: java/jcf-dump.c:915 +#: java/jcf-dump.c:914 #, fuzzy, c-format msgid " --javap Generate output in 'javap' format\n" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: java/jcf-dump.c:955 java/jcf-dump.c:1023 +#: java/jcf-dump.c:954 java/jcf-dump.c:1022 #, c-format msgid "jcf-dump: no classes specified\n" msgstr "" -#: java/jcf-dump.c:1043 +#: java/jcf-dump.c:1042 #, fuzzy, c-format msgid "Cannot open '%s' for output.\n" msgstr "немагчыма адчыніць %s для запісу" -#: java/jcf-dump.c:1089 +#: java/jcf-dump.c:1088 #, c-format msgid "bad format of .zip/.jar archive\n" msgstr "" -#: java/jcf-dump.c:1207 +#: java/jcf-dump.c:1206 #, c-format msgid "Bad byte codes.\n" msgstr "" -#: java/jv-scan.c:100 +#: java/jv-scan.c:99 #, c-format msgid "Try 'jv-scan --help' for more information.\n" msgstr "" -#: java/jv-scan.c:107 +#: java/jv-scan.c:106 #, c-format msgid "" "Usage: jv-scan [OPTION]... FILE...\n" "\n" msgstr "" -#: java/jv-scan.c:108 +#: java/jv-scan.c:107 #, c-format msgid "" "Print useful information read from Java source files.\n" "\n" msgstr "" -#: java/jv-scan.c:109 +#: java/jv-scan.c:108 #, c-format msgid " --no-assert Don't recognize the assert keyword\n" msgstr "" -#: java/jv-scan.c:110 +#: java/jv-scan.c:109 #, c-format msgid " --complexity Print cyclomatic complexity of input file\n" msgstr "" -#: java/jv-scan.c:111 +#: java/jv-scan.c:110 #, c-format msgid " --encoding NAME Specify encoding of input file\n" msgstr "" -#: java/jv-scan.c:112 +#: java/jv-scan.c:111 #, c-format msgid " --print-main Print name of class containing 'main'\n" msgstr "" -#: java/jv-scan.c:113 +#: java/jv-scan.c:112 #, c-format msgid " --list-class List all classes defined in file\n" msgstr "" -#: java/jv-scan.c:114 +#: java/jv-scan.c:113 #, c-format msgid " --list-filename Print input filename when listing class names\n" msgstr "" -#: java/jv-scan.c:257 +#: java/jv-scan.c:256 #, fuzzy, c-format msgid "%s: error: " msgstr "граматычная памылка" -#: java/jv-scan.c:269 java/jv-scan.c:280 +#: java/jv-scan.c:268 java/jv-scan.c:279 #, c-format msgid "%s: warning: " msgstr "%s: увага: " -#: java/jvgenmain.c:48 +#: java/jvgenmain.c:47 #, c-format msgid "Usage: %s [OPTIONS]... CLASSNAMEmain [OUTFILE]\n" msgstr "" -#: java/jvgenmain.c:101 +#: java/jvgenmain.c:100 #, fuzzy, c-format msgid "%s: Cannot open output file: %s\n" msgstr "немагчыма адчыніць файл уводу `%s'" -#: java/jvgenmain.c:138 +#: java/jvgenmain.c:137 #, fuzzy, c-format msgid "%s: Failed to close output file %s\n" msgstr "немагчыма зачыніць уваходзячы файл %s" -#: java/jvspec.c:427 +#: java/jvspec.c:426 #, c-format msgid "can't specify '-D' without '--main'\n" msgstr "" -#: java/jvspec.c:430 +#: java/jvspec.c:429 #, fuzzy, c-format msgid "'%s' is not a valid class name" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: java/jvspec.c:436 +#: java/jvspec.c:435 #, c-format msgid "--resource requires -o" msgstr "" -#: java/jvspec.c:450 +#: java/jvspec.c:449 #, c-format msgid "cannot specify both -C and -o" msgstr "" -#: java/jvspec.c:462 +#: java/jvspec.c:461 #, c-format msgid "cannot create temporary file" msgstr "немагчыма стварыць часовы файл" -#: java/jvspec.c:490 +#: java/jvspec.c:489 #, c-format msgid "using both @FILE with multiple files not implemented" msgstr "" -#: java/jvspec.c:555 +#: java/jvspec.c:554 #, c-format msgid "cannot specify 'main' class when not linking" msgstr "" @@ -10211,27 +10211,27 @@ msgid "parse error: cannot back up" msgstr "сінтаксічная памылка" -#: gcc.c:773 +#: gcc.c:772 msgid "GCC does not support -C or -CC without -E" msgstr "" -#: gcc.c:800 java/jvspec.c:80 ada/lang-specs.h:34 +#: gcc.c:799 java/jvspec.c:79 ada/lang-specs.h:33 msgid "-pg and -fomit-frame-pointer are incompatible" msgstr "" -#: gcc.c:975 +#: gcc.c:974 msgid "-E or -x required when input is from standard input" msgstr "" -#: config/mips/mips.h:871 config/arc/arc.h:62 +#: config/mips/mips.h:870 config/arc/arc.h:61 msgid "may not use both -EB and -EL" msgstr "" -#: config/mips/r3900.h:35 +#: config/mips/r3900.h:34 msgid "-mhard-float not supported" msgstr "-mhard-float не падтрымліваецца" -#: config/mips/r3900.h:37 +#: config/mips/r3900.h:36 msgid "-msingle-float and -msoft-float cannot both be specified" msgstr "" @@ -10267,38 +10267,38 @@ msgid "-private_bundle not allowed with -dynamiclib" msgstr "" -#: config/vax/netbsd-elf.h:42 +#: config/vax/netbsd-elf.h:41 msgid "the -shared option is not currently supported for VAX ELF" msgstr "" -#: config/vax/vax.h:50 config/vax/vax.h:51 +#: config/vax/vax.h:49 config/vax/vax.h:50 msgid "profiling not supported with -mg\n" msgstr "" -#: config/sparc/linux.h:127 config/sparc/linux.h:129 -#: config/sparc/linux64.h:152 config/sparc/linux64.h:154 -#: config/rs6000/linux64.h:344 config/rs6000/linux64.h:346 -#: config/rs6000/sysv4.h:898 config/rs6000/sysv4.h:900 -#: config/alpha/linux-elf.h:34 config/alpha/linux-elf.h:36 config/linux.h:106 -#: config/linux.h:108 +#: config/sparc/linux.h:126 config/sparc/linux.h:128 +#: config/sparc/linux64.h:151 config/sparc/linux64.h:153 +#: config/rs6000/linux64.h:343 config/rs6000/linux64.h:345 +#: config/rs6000/sysv4.h:897 config/rs6000/sysv4.h:899 +#: config/alpha/linux-elf.h:33 config/alpha/linux-elf.h:35 config/linux.h:105 +#: config/linux.h:107 msgid "-mglibc and -muclibc used together" msgstr "" -#: config/sparc/linux64.h:211 config/sparc/linux64.h:222 -#: config/sparc/netbsd-elf.h:126 config/sparc/netbsd-elf.h:145 +#: config/sparc/linux64.h:210 config/sparc/linux64.h:221 +#: config/sparc/netbsd-elf.h:125 config/sparc/netbsd-elf.h:144 #: config/sparc/sol2-bi.h:207 config/sparc/sol2-bi.h:217 msgid "may not use both -m32 and -m64" msgstr "" -#: config/vxworks.h:66 +#: config/vxworks.h:65 msgid "-Xbind-now and -Xbind-lazy are incompatible" msgstr "" -#: config/i386/mingw32.h:58 config/i386/cygwin.h:70 +#: config/i386/mingw32.h:57 config/i386/cygwin.h:69 msgid "shared and mdll are not compatible" msgstr "" -#: config/i386/nwld.h:35 +#: config/i386/nwld.h:34 #, fuzzy msgid "Static linking is not supported.\n" msgstr "-pipe не падтрымліваецца" @@ -10309,1581 +10309,1581 @@ msgid "does not support multilib" msgstr "%s не падтрымлівае %s" -#: config/i386/cygwin.h:29 +#: config/i386/cygwin.h:28 msgid "mno-cygwin and mno-win32 are not compatible" msgstr "" -#: config/arm/arm.h:141 +#: config/arm/arm.h:140 msgid "-msoft-float and -mhard_float may not be used together" msgstr "" -#: config/arm/arm.h:143 +#: config/arm/arm.h:142 msgid "-mbig-endian and -mlittle-endian may not be used together" msgstr "" -#: config/i386/sco5.h:189 +#: config/i386/sco5.h:188 #, fuzzy msgid "-pg not supported on this platform" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: config/i386/sco5.h:190 +#: config/i386/sco5.h:189 msgid "-p and -pp specified - pick one" msgstr "" -#: config/i386/sco5.h:259 +#: config/i386/sco5.h:258 msgid "-G and -static are mutually exclusive" msgstr "" -#: config/sh/sh.h:458 +#: config/sh/sh.h:457 #, fuzzy msgid "SH2a does not support little-endian" msgstr "%s не падтрымлівае %s" -#: java/lang-specs.h:34 +#: java/lang-specs.h:33 msgid "-fjni and -femit-class-files are incompatible" msgstr "" -#: java/lang-specs.h:35 +#: java/lang-specs.h:34 msgid "-fjni and -femit-class-file are incompatible" msgstr "" -#: java/lang-specs.h:36 java/lang-specs.h:37 +#: java/lang-specs.h:35 java/lang-specs.h:36 msgid "-femit-class-file should used along with -fsyntax-only" msgstr "" -#: config/rs6000/darwin.h:146 +#: config/rs6000/darwin.h:145 msgid " conflicting code gen style switches are used" msgstr "" -#: config/mcore/mcore.h:57 +#: config/mcore/mcore.h:56 msgid "the m210 does not have little endian support" msgstr "" -#: ada/lang-specs.h:35 +#: ada/lang-specs.h:34 msgid "-c or -S required for Ada" msgstr "" -#: config/lynx.h:71 +#: config/lynx.h:70 msgid "cannot use mthreads and mlegacy-threads together" msgstr "" -#: config/lynx.h:96 +#: config/lynx.h:95 msgid "cannot use mshared and static together" msgstr "" -#: config/s390/tpf.h:120 +#: config/s390/tpf.h:119 #, fuzzy msgid "static is not supported on TPF-OS" msgstr "-pipe не падтрымліваецца" -#: config/mmix/mmix.opt:25 +#: config/mmix/mmix.opt:24 msgid "For intrinsics library: pass all parameters in registers" msgstr "" -#: config/mmix/mmix.opt:29 +#: config/mmix/mmix.opt:28 msgid "Use register stack for parameters and return value" msgstr "" -#: config/mmix/mmix.opt:33 +#: config/mmix/mmix.opt:32 msgid "Use call-clobbered registers for parameters and return value" msgstr "" -#: config/mmix/mmix.opt:38 +#: config/mmix/mmix.opt:37 msgid "Use epsilon-respecting floating point compare instructions" msgstr "" -#: config/mmix/mmix.opt:42 +#: config/mmix/mmix.opt:41 msgid "Use zero-extending memory loads, not sign-extending ones" msgstr "" -#: config/mmix/mmix.opt:46 +#: config/mmix/mmix.opt:45 msgid "Generate divide results with reminder having the same sign as the divisor (not the dividend)" msgstr "" -#: config/mmix/mmix.opt:50 +#: config/mmix/mmix.opt:49 msgid "Prepend global symbols with \":\" (for use with PREFIX)" msgstr "" -#: config/mmix/mmix.opt:54 +#: config/mmix/mmix.opt:53 msgid "Do not provide a default start-address 0x100 of the program" msgstr "" -#: config/mmix/mmix.opt:58 +#: config/mmix/mmix.opt:57 msgid "Link to emit program in ELF format (rather than mmo)" msgstr "" -#: config/mmix/mmix.opt:62 +#: config/mmix/mmix.opt:61 msgid "Use P-mnemonics for branches statically predicted as taken" msgstr "" -#: config/mmix/mmix.opt:66 +#: config/mmix/mmix.opt:65 msgid "Don't use P-mnemonics for branches" msgstr "" -#: config/mmix/mmix.opt:80 +#: config/mmix/mmix.opt:79 msgid "Use addresses that allocate global registers" msgstr "" -#: config/mmix/mmix.opt:84 +#: config/mmix/mmix.opt:83 msgid "Do not use addresses that allocate global registers" msgstr "" -#: config/mmix/mmix.opt:88 +#: config/mmix/mmix.opt:87 msgid "Generate a single exit point for each function" msgstr "" -#: config/mmix/mmix.opt:92 +#: config/mmix/mmix.opt:91 #, fuzzy msgid "Do not generate a single exit point for each function" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/mmix/mmix.opt:96 +#: config/mmix/mmix.opt:95 msgid "Set start-address of the program" msgstr "" -#: config/mmix/mmix.opt:100 +#: config/mmix/mmix.opt:99 msgid "Set start-address of data" msgstr "" -#: config/alpha/alpha.opt:24 config/i386/i386.opt:186 +#: config/alpha/alpha.opt:23 config/i386/i386.opt:185 msgid "Do not use hardware fp" msgstr "Не выкарыстоўваць апаратную плаваючую кропку" -#: config/alpha/alpha.opt:28 +#: config/alpha/alpha.opt:27 msgid "Use fp registers" msgstr "" -#: config/alpha/alpha.opt:32 +#: config/alpha/alpha.opt:31 msgid "Assume GAS" msgstr "" -#: config/alpha/alpha.opt:36 +#: config/alpha/alpha.opt:35 msgid "Do not assume GAS" msgstr "" -#: config/alpha/alpha.opt:40 +#: config/alpha/alpha.opt:39 msgid "Request IEEE-conformant math library routines (OSF/1)" msgstr "" -#: config/alpha/alpha.opt:44 +#: config/alpha/alpha.opt:43 msgid "Emit IEEE-conformant code, without inexact exceptions" msgstr "" -#: config/alpha/alpha.opt:51 +#: config/alpha/alpha.opt:50 msgid "Do not emit complex integer constants to read-only memory" msgstr "" -#: config/alpha/alpha.opt:55 +#: config/alpha/alpha.opt:54 msgid "Use VAX fp" msgstr "" -#: config/alpha/alpha.opt:59 +#: config/alpha/alpha.opt:58 msgid "Do not use VAX fp" msgstr "" -#: config/alpha/alpha.opt:63 +#: config/alpha/alpha.opt:62 msgid "Emit code for the byte/word ISA extension" msgstr "" -#: config/alpha/alpha.opt:67 +#: config/alpha/alpha.opt:66 msgid "Emit code for the motion video ISA extension" msgstr "" -#: config/alpha/alpha.opt:71 +#: config/alpha/alpha.opt:70 msgid "Emit code for the fp move and sqrt ISA extension" msgstr "" -#: config/alpha/alpha.opt:75 +#: config/alpha/alpha.opt:74 msgid "Emit code for the counting ISA extension" msgstr "" -#: config/alpha/alpha.opt:79 +#: config/alpha/alpha.opt:78 msgid "Emit code using explicit relocation directives" msgstr "" -#: config/alpha/alpha.opt:83 +#: config/alpha/alpha.opt:82 msgid "Emit 16-bit relocations to the small data areas" msgstr "" -#: config/alpha/alpha.opt:87 +#: config/alpha/alpha.opt:86 msgid "Emit 32-bit relocations to the small data areas" msgstr "" -#: config/alpha/alpha.opt:91 +#: config/alpha/alpha.opt:90 msgid "Emit direct branches to local functions" msgstr "" -#: config/alpha/alpha.opt:95 +#: config/alpha/alpha.opt:94 msgid "Emit indirect branches to local functions" msgstr "" -#: config/alpha/alpha.opt:99 +#: config/alpha/alpha.opt:98 msgid "Emit rdval instead of rduniq for thread pointer" msgstr "" -#: config/alpha/alpha.opt:103 config/sparc/long-double-switch.opt:24 -#: config/s390/s390.opt:56 +#: config/alpha/alpha.opt:102 config/sparc/long-double-switch.opt:23 +#: config/s390/s390.opt:55 msgid "Use 128-bit long double" msgstr "" -#: config/alpha/alpha.opt:107 config/sparc/long-double-switch.opt:28 -#: config/s390/s390.opt:60 +#: config/alpha/alpha.opt:106 config/sparc/long-double-switch.opt:27 +#: config/s390/s390.opt:59 #, fuzzy msgid "Use 64-bit long double" msgstr "Выкарыстоўваць 64-х бітны float" -#: config/alpha/alpha.opt:111 +#: config/alpha/alpha.opt:110 msgid "Use features of and schedule given CPU" msgstr "" -#: config/alpha/alpha.opt:115 +#: config/alpha/alpha.opt:114 msgid "Schedule given CPU" msgstr "" -#: config/alpha/alpha.opt:119 +#: config/alpha/alpha.opt:118 msgid "Control the generated fp rounding mode" msgstr "" -#: config/alpha/alpha.opt:123 +#: config/alpha/alpha.opt:122 msgid "Control the IEEE trap mode" msgstr "" -#: config/alpha/alpha.opt:127 +#: config/alpha/alpha.opt:126 msgid "Control the precision given to fp exceptions" msgstr "" -#: config/alpha/alpha.opt:131 +#: config/alpha/alpha.opt:130 msgid "Tune expected memory latency" msgstr "" -#: config/alpha/alpha.opt:135 config/rs6000/sysv4.opt:33 +#: config/alpha/alpha.opt:134 config/rs6000/sysv4.opt:32 #: config/ia64/ia64.opt:93 msgid "Specify bit size of immediate TLS offsets" msgstr "" -#: config/mt/mt.opt:24 +#: config/mt/mt.opt:23 msgid "Use byte loads and stores when generating code." msgstr "" -#: config/mt/mt.opt:28 config/m32c/m32c.opt:25 +#: config/mt/mt.opt:27 config/m32c/m32c.opt:24 msgid "Use simulator runtime" msgstr "" -#: config/mt/mt.opt:32 +#: config/mt/mt.opt:31 msgid "Do not include crt0.o in the startup files" msgstr "" -#: config/mt/mt.opt:36 config/mt/mt.opt:40 config/mt/mt.opt:44 -#: config/mt/mt.opt:48 config/mt/mt.opt:52 +#: config/mt/mt.opt:35 config/mt/mt.opt:39 config/mt/mt.opt:43 +#: config/mt/mt.opt:47 config/mt/mt.opt:51 msgid "Internal debug switch" msgstr "" -#: config/mt/mt.opt:56 config/iq2000/iq2000.opt:24 +#: config/mt/mt.opt:55 config/iq2000/iq2000.opt:23 msgid "Specify CPU for code generation purposes" msgstr "" -#: config/rs6000/aix64.opt:25 +#: config/rs6000/aix64.opt:24 msgid "Compile for 64-bit pointers" msgstr "" -#: config/rs6000/aix64.opt:29 +#: config/rs6000/aix64.opt:28 msgid "Compile for 32-bit pointers" msgstr "" -#: config/rs6000/aix64.opt:33 config/rs6000/aix41.opt:25 +#: config/rs6000/aix64.opt:32 config/rs6000/aix41.opt:24 msgid "Support message passing with the Parallel Environment" msgstr "" -#: config/rs6000/sysv4.opt:25 +#: config/rs6000/sysv4.opt:24 msgid "Select ABI calling convention" msgstr "" -#: config/rs6000/sysv4.opt:29 +#: config/rs6000/sysv4.opt:28 msgid "Select method for sdata handling" msgstr "" -#: config/rs6000/sysv4.opt:37 config/rs6000/sysv4.opt:41 +#: config/rs6000/sysv4.opt:36 config/rs6000/sysv4.opt:40 msgid "Align to the base type of the bit-field" msgstr "" -#: config/rs6000/sysv4.opt:46 config/rs6000/sysv4.opt:50 +#: config/rs6000/sysv4.opt:45 config/rs6000/sysv4.opt:49 msgid "Produce code relocatable at runtime" msgstr "" -#: config/rs6000/sysv4.opt:54 config/rs6000/sysv4.opt:58 +#: config/rs6000/sysv4.opt:53 config/rs6000/sysv4.opt:57 msgid "Produce little endian code" msgstr "" -#: config/rs6000/sysv4.opt:62 config/rs6000/sysv4.opt:66 +#: config/rs6000/sysv4.opt:61 config/rs6000/sysv4.opt:65 msgid "Produce big endian code" msgstr "" -#: config/rs6000/sysv4.opt:71 config/rs6000/sysv4.opt:75 -#: config/rs6000/sysv4.opt:84 config/rs6000/sysv4.opt:101 -#: config/rs6000/sysv4.opt:129 config/rs6000/sysv4.opt:141 +#: config/rs6000/sysv4.opt:70 config/rs6000/sysv4.opt:74 +#: config/rs6000/sysv4.opt:83 config/rs6000/sysv4.opt:100 +#: config/rs6000/sysv4.opt:128 config/rs6000/sysv4.opt:140 msgid "no description yet" msgstr "" -#: config/rs6000/sysv4.opt:79 +#: config/rs6000/sysv4.opt:78 msgid "Assume all variable arg functions are prototyped" msgstr "" -#: config/rs6000/sysv4.opt:88 +#: config/rs6000/sysv4.opt:87 msgid "Use EABI" msgstr "" -#: config/rs6000/sysv4.opt:92 +#: config/rs6000/sysv4.opt:91 msgid "Allow bit-fields to cross word boundaries" msgstr "" -#: config/rs6000/sysv4.opt:96 +#: config/rs6000/sysv4.opt:95 msgid "Use alternate register names" msgstr "Выкарыстоўвываць альтэрнатыўныя назвы рэгістраў" -#: config/rs6000/sysv4.opt:105 +#: config/rs6000/sysv4.opt:104 msgid "Link with libsim.a, libc.a and sim-crt0.o" msgstr "" -#: config/rs6000/sysv4.opt:109 +#: config/rs6000/sysv4.opt:108 msgid "Link with libads.a, libc.a and crt0.o" msgstr "" -#: config/rs6000/sysv4.opt:113 +#: config/rs6000/sysv4.opt:112 msgid "Link with libyk.a, libc.a and crt0.o" msgstr "" -#: config/rs6000/sysv4.opt:117 +#: config/rs6000/sysv4.opt:116 msgid "Link with libmvme.a, libc.a and crt0.o" msgstr "" -#: config/rs6000/sysv4.opt:121 +#: config/rs6000/sysv4.opt:120 msgid "Set the PPC_EMB bit in the ELF flags header" msgstr "" -#: config/rs6000/sysv4.opt:125 +#: config/rs6000/sysv4.opt:124 msgid "Use the WindISS simulator" msgstr "" -#: config/rs6000/sysv4.opt:133 config/rs6000/darwin.opt:25 +#: config/rs6000/sysv4.opt:132 config/rs6000/darwin.opt:24 #, fuzzy msgid "Generate 64-bit code" msgstr "Стварыць код для DLL" -#: config/rs6000/sysv4.opt:137 config/rs6000/darwin.opt:29 +#: config/rs6000/sysv4.opt:136 config/rs6000/darwin.opt:28 #, fuzzy msgid "Generate 32-bit code" msgstr "Стварыць код для DLL" -#: config/rs6000/sysv4.opt:145 +#: config/rs6000/sysv4.opt:144 #, fuzzy msgid "Generate code to use a non-exec PLT and GOT" msgstr "Стварыць код для DLL" -#: config/rs6000/sysv4.opt:149 +#: config/rs6000/sysv4.opt:148 #, fuzzy msgid "Generate code for old exec BSS PLT" msgstr "Стварыць код для DLL" -#: config/rs6000/aix.opt:25 config/rs6000/rs6000.opt:136 +#: config/rs6000/aix.opt:24 config/rs6000/rs6000.opt:135 msgid "Conform more closely to IBM XLC semantics" msgstr "" -#: config/rs6000/linux64.opt:25 +#: config/rs6000/linux64.opt:24 msgid "Call mcount for profiling before a function prologue" msgstr "" -#: config/rs6000/darwin.opt:33 +#: config/rs6000/darwin.opt:32 msgid "Generate code suitable for executables (NOT shared libs)" msgstr "" -#: config/rs6000/rs6000.opt:25 +#: config/rs6000/rs6000.opt:24 msgid "Use POWER instruction set" msgstr "" -#: config/rs6000/rs6000.opt:29 +#: config/rs6000/rs6000.opt:28 msgid "Do not use POWER instruction set" msgstr "" -#: config/rs6000/rs6000.opt:33 +#: config/rs6000/rs6000.opt:32 msgid "Use POWER2 instruction set" msgstr "" -#: config/rs6000/rs6000.opt:37 +#: config/rs6000/rs6000.opt:36 msgid "Use PowerPC instruction set" msgstr "" -#: config/rs6000/rs6000.opt:41 +#: config/rs6000/rs6000.opt:40 msgid "Do not use PowerPC instruction set" msgstr "" -#: config/rs6000/rs6000.opt:45 +#: config/rs6000/rs6000.opt:44 msgid "Use PowerPC-64 instruction set" msgstr "" -#: config/rs6000/rs6000.opt:49 +#: config/rs6000/rs6000.opt:48 msgid "Use PowerPC General Purpose group optional instructions" msgstr "" -#: config/rs6000/rs6000.opt:53 +#: config/rs6000/rs6000.opt:52 msgid "Use PowerPC Graphics group optional instructions" msgstr "" -#: config/rs6000/rs6000.opt:57 +#: config/rs6000/rs6000.opt:56 msgid "Use PowerPC V2.01 single field mfcr instruction" msgstr "" -#: config/rs6000/rs6000.opt:61 +#: config/rs6000/rs6000.opt:60 msgid "Use PowerPC V2.02 popcntb instruction" msgstr "" -#: config/rs6000/rs6000.opt:65 +#: config/rs6000/rs6000.opt:64 msgid "Use PowerPC V2.02 floating point rounding instructions" msgstr "" -#: config/rs6000/rs6000.opt:69 +#: config/rs6000/rs6000.opt:68 msgid "Use AltiVec instructions" msgstr "" -#: config/rs6000/rs6000.opt:73 +#: config/rs6000/rs6000.opt:72 msgid "Use 4xx half-word multiply instructions" msgstr "" -#: config/rs6000/rs6000.opt:77 +#: config/rs6000/rs6000.opt:76 msgid "Use 4xx string-search dlmzb instruction" msgstr "" -#: config/rs6000/rs6000.opt:81 +#: config/rs6000/rs6000.opt:80 msgid "Generate load/store multiple instructions" msgstr "" -#: config/rs6000/rs6000.opt:85 +#: config/rs6000/rs6000.opt:84 msgid "Generate string instructions for block moves" msgstr "" -#: config/rs6000/rs6000.opt:89 +#: config/rs6000/rs6000.opt:88 msgid "Use new mnemonics for PowerPC architecture" msgstr "" -#: config/rs6000/rs6000.opt:93 +#: config/rs6000/rs6000.opt:92 msgid "Use old mnemonics for PowerPC architecture" msgstr "" -#: config/rs6000/rs6000.opt:97 config/pdp11/pdp11.opt:84 +#: config/rs6000/rs6000.opt:96 config/pdp11/pdp11.opt:83 msgid "Do not use hardware floating point" msgstr "" -#: config/rs6000/rs6000.opt:101 config/pdp11/pdp11.opt:72 -#: config/frv/frv.opt:121 +#: config/rs6000/rs6000.opt:100 config/pdp11/pdp11.opt:71 +#: config/frv/frv.opt:120 msgid "Use hardware floating point" msgstr "Выкарыстоўваць апаратную \"плаваючую кропку\"" -#: config/rs6000/rs6000.opt:105 +#: config/rs6000/rs6000.opt:104 msgid "Do not generate load/store with update instructions" msgstr "" -#: config/rs6000/rs6000.opt:109 +#: config/rs6000/rs6000.opt:108 msgid "Generate load/store with update instructions" msgstr "" -#: config/rs6000/rs6000.opt:113 +#: config/rs6000/rs6000.opt:112 #, fuzzy msgid "Do not generate fused multiply/add instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/rs6000/rs6000.opt:117 +#: config/rs6000/rs6000.opt:116 msgid "Generate fused multiply/add instructions" msgstr "" -#: config/rs6000/rs6000.opt:121 +#: config/rs6000/rs6000.opt:120 msgid "Schedule the start and end of the procedure" msgstr "" -#: config/rs6000/rs6000.opt:128 +#: config/rs6000/rs6000.opt:127 msgid "Return all structures in memory (AIX default)" msgstr "" -#: config/rs6000/rs6000.opt:132 +#: config/rs6000/rs6000.opt:131 msgid "Return small structures in registers (SVR4 default)" msgstr "" -#: config/rs6000/rs6000.opt:140 +#: config/rs6000/rs6000.opt:139 msgid "Generate software floating point divide for better throughput" msgstr "" -#: config/rs6000/rs6000.opt:144 +#: config/rs6000/rs6000.opt:143 msgid "Do not place floating point constants in TOC" msgstr "" -#: config/rs6000/rs6000.opt:148 +#: config/rs6000/rs6000.opt:147 msgid "Place floating point constants in TOC" msgstr "" -#: config/rs6000/rs6000.opt:152 +#: config/rs6000/rs6000.opt:151 msgid "Do not place symbol+offset constants in TOC" msgstr "" -#: config/rs6000/rs6000.opt:156 +#: config/rs6000/rs6000.opt:155 msgid "Place symbol+offset constants in TOC" msgstr "" -#: config/rs6000/rs6000.opt:167 +#: config/rs6000/rs6000.opt:166 msgid "Use only one TOC entry per procedure" msgstr "" -#: config/rs6000/rs6000.opt:171 +#: config/rs6000/rs6000.opt:170 msgid "Put everything in the regular TOC" msgstr "" -#: config/rs6000/rs6000.opt:175 +#: config/rs6000/rs6000.opt:174 msgid "Generate VRSAVE instructions when generating AltiVec code" msgstr "" -#: config/rs6000/rs6000.opt:179 +#: config/rs6000/rs6000.opt:178 msgid "Deprecated option. Use -mvrsave/-mno-vrsave instead" msgstr "" -#: config/rs6000/rs6000.opt:183 +#: config/rs6000/rs6000.opt:182 #, fuzzy msgid "Generate isel instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/rs6000/rs6000.opt:187 +#: config/rs6000/rs6000.opt:186 msgid "Deprecated option. Use -misel/-mno-isel instead" msgstr "" -#: config/rs6000/rs6000.opt:191 +#: config/rs6000/rs6000.opt:190 msgid "Generate SPE SIMD instructions on E500" msgstr "" -#: config/rs6000/rs6000.opt:195 +#: config/rs6000/rs6000.opt:194 msgid "Deprecated option. Use -mspe/-mno-spe instead" msgstr "" -#: config/rs6000/rs6000.opt:199 +#: config/rs6000/rs6000.opt:198 msgid "Enable debug output" msgstr "" -#: config/rs6000/rs6000.opt:203 +#: config/rs6000/rs6000.opt:202 msgid "Specify ABI to use" msgstr "" -#: config/rs6000/rs6000.opt:207 config/sparc/sparc.opt:92 +#: config/rs6000/rs6000.opt:206 config/sparc/sparc.opt:91 msgid "Use features of and schedule code for given CPU" msgstr "" -#: config/rs6000/rs6000.opt:211 config/i386/i386.opt:226 -#: config/sparc/sparc.opt:96 config/ia64/ia64.opt:97 config/s390/s390.opt:84 +#: config/rs6000/rs6000.opt:210 config/i386/i386.opt:225 +#: config/sparc/sparc.opt:95 config/ia64/ia64.opt:97 config/s390/s390.opt:83 msgid "Schedule code for given CPU" msgstr "" -#: config/rs6000/rs6000.opt:215 +#: config/rs6000/rs6000.opt:214 msgid "Select full, part, or no traceback table" msgstr "" -#: config/rs6000/rs6000.opt:219 +#: config/rs6000/rs6000.opt:218 msgid "Avoid all range limits on call instructions" msgstr "" -#: config/rs6000/rs6000.opt:223 +#: config/rs6000/rs6000.opt:222 msgid "Warn about deprecated 'vector long ...' AltiVec type usage" msgstr "" -#: config/rs6000/rs6000.opt:227 +#: config/rs6000/rs6000.opt:226 #, fuzzy msgid "Select GPR floating point method" msgstr "перапаўненьне плаваючай кропкі" -#: config/rs6000/rs6000.opt:231 +#: config/rs6000/rs6000.opt:230 msgid "Specify size of long double (64 or 128 bits)" msgstr "" -#: config/rs6000/rs6000.opt:235 +#: config/rs6000/rs6000.opt:234 msgid "Determine which dependences between insns are considered costly" msgstr "" -#: config/rs6000/rs6000.opt:239 +#: config/rs6000/rs6000.opt:238 msgid "Specify which post scheduling nop insertion scheme to apply" msgstr "" -#: config/rs6000/rs6000.opt:243 +#: config/rs6000/rs6000.opt:242 msgid "Specify alignment of structure fields default/natural" msgstr "" -#: config/rs6000/rs6000.opt:247 +#: config/rs6000/rs6000.opt:246 msgid "Specify scheduling priority for dispatch slot restricted insns" msgstr "" -#: config/i386/djgpp.opt:26 +#: config/i386/djgpp.opt:25 msgid "Ignored (obsolete)" msgstr "" -#: config/i386/cygming.opt:24 +#: config/i386/cygming.opt:23 msgid "Create console application" msgstr "Стварыць кансольны прыдатак" -#: config/i386/cygming.opt:28 +#: config/i386/cygming.opt:27 msgid "Use the Cygwin interface" msgstr "" -#: config/i386/cygming.opt:32 +#: config/i386/cygming.opt:31 msgid "Generate code for a DLL" msgstr "Стварыць код для DLL" -#: config/i386/cygming.opt:36 +#: config/i386/cygming.opt:35 msgid "Ignore dllimport for functions" msgstr "" -#: config/i386/cygming.opt:40 +#: config/i386/cygming.opt:39 msgid "Use Mingw-specific thread support" msgstr "" -#: config/i386/cygming.opt:44 +#: config/i386/cygming.opt:43 msgid "Set Windows defines" msgstr "" -#: config/i386/cygming.opt:48 +#: config/i386/cygming.opt:47 msgid "Create GUI application" msgstr "Стварыць GUI прыдатак" -#: config/i386/i386.opt:24 +#: config/i386/i386.opt:23 msgid "sizeof(long double) is 16" msgstr "" -#: config/i386/i386.opt:28 +#: config/i386/i386.opt:27 msgid "Generate 32bit i386 code" msgstr "" -#: config/i386/i386.opt:36 +#: config/i386/i386.opt:35 msgid "Support 3DNow! built-in functions" msgstr "" -#: config/i386/i386.opt:44 +#: config/i386/i386.opt:43 msgid "Generate 64bit x86-64 code" msgstr "" -#: config/i386/i386.opt:48 config/i386/i386.opt:118 config/s390/s390.opt:52 +#: config/i386/i386.opt:47 config/i386/i386.opt:117 config/s390/s390.opt:51 msgid "Use hardware fp" msgstr "Выкарыстоўваць апаратную плаваючую кропку" -#: config/i386/i386.opt:52 +#: config/i386/i386.opt:51 msgid "sizeof(long double) is 12" msgstr "" -#: config/i386/i386.opt:56 +#: config/i386/i386.opt:55 msgid "Reserve space for outgoing arguments in the function prologue" msgstr "" -#: config/i386/i386.opt:60 +#: config/i386/i386.opt:59 msgid "Align some doubles on dword boundary" msgstr "" -#: config/i386/i386.opt:64 +#: config/i386/i386.opt:63 msgid "Function starts are aligned to this power of 2" msgstr "" -#: config/i386/i386.opt:68 +#: config/i386/i386.opt:67 msgid "Jump targets are aligned to this power of 2" msgstr "" -#: config/i386/i386.opt:72 +#: config/i386/i386.opt:71 msgid "Loop code aligned to this power of 2" msgstr "" -#: config/i386/i386.opt:76 +#: config/i386/i386.opt:75 msgid "Align destination of the string operations" msgstr "" -#: config/i386/i386.opt:80 config/s390/s390.opt:32 +#: config/i386/i386.opt:79 config/s390/s390.opt:31 msgid "Generate code for given CPU" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/i386/i386.opt:84 +#: config/i386/i386.opt:83 msgid "Use given assembler dialect" msgstr "Выкарыстоўвываць зададзены дыялект асэмблера" -#: config/i386/i386.opt:88 +#: config/i386/i386.opt:87 msgid "Branches are this expensive (1-5, arbitrary units)" msgstr "" -#: config/i386/i386.opt:92 +#: config/i386/i386.opt:91 msgid "Data greater than given threshold will go into .ldata section in x86-64 medium model" msgstr "" -#: config/i386/i386.opt:96 +#: config/i386/i386.opt:95 msgid "Use given x86-64 code model" msgstr "" -#: config/i386/i386.opt:106 +#: config/i386/i386.opt:105 msgid "Generate sin, cos, sqrt for FPU" msgstr "" -#: config/i386/i386.opt:110 +#: config/i386/i386.opt:109 msgid "Return values of functions in FPU registers" msgstr "" -#: config/i386/i386.opt:114 +#: config/i386/i386.opt:113 msgid "Generate floating point mathematics using given instruction set" msgstr "" -#: config/i386/i386.opt:122 config/m68k/ieee.opt:25 +#: config/i386/i386.opt:121 config/m68k/ieee.opt:24 msgid "Use IEEE math for fp comparisons" msgstr "" -#: config/i386/i386.opt:126 +#: config/i386/i386.opt:125 msgid "Inline all known string operations" msgstr "" -#: config/i386/i386.opt:134 +#: config/i386/i386.opt:133 msgid "Support MMX built-in functions" msgstr "" -#: config/i386/i386.opt:138 +#: config/i386/i386.opt:137 msgid "Use native (MS) bitfield layout" msgstr "" -#: config/i386/i386.opt:154 +#: config/i386/i386.opt:153 msgid "Omit the frame pointer in leaf functions" msgstr "" -#: config/i386/i386.opt:166 +#: config/i386/i386.opt:165 msgid "Attempt to keep stack aligned to this power of 2" msgstr "" -#: config/i386/i386.opt:170 +#: config/i386/i386.opt:169 msgid "Use push instructions to save outgoing arguments" msgstr "" -#: config/i386/i386.opt:174 +#: config/i386/i386.opt:173 msgid "Use red-zone in the x86-64 code" msgstr "" -#: config/i386/i386.opt:178 +#: config/i386/i386.opt:177 msgid "Number of registers used to pass integer arguments" msgstr "" -#: config/i386/i386.opt:182 +#: config/i386/i386.opt:181 msgid "Alternate calling convention" msgstr "" -#: config/i386/i386.opt:190 +#: config/i386/i386.opt:189 msgid "Support MMX and SSE built-in functions and code generation" msgstr "" -#: config/i386/i386.opt:194 +#: config/i386/i386.opt:193 msgid "Support MMX, SSE and SSE2 built-in functions and code generation" msgstr "" -#: config/i386/i386.opt:198 +#: config/i386/i386.opt:197 msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation" msgstr "" -#: config/i386/i386.opt:202 +#: config/i386/i386.opt:201 msgid "Use SSE register passing conventions for SF and DF mode" msgstr "" -#: config/i386/i386.opt:206 +#: config/i386/i386.opt:205 msgid "Realign stack in prologue" msgstr "" -#: config/i386/i386.opt:210 +#: config/i386/i386.opt:209 msgid "Uninitialized locals in .bss" msgstr "" -#: config/i386/i386.opt:214 +#: config/i386/i386.opt:213 msgid "Enable stack probing" msgstr "" -#: config/i386/i386.opt:218 +#: config/i386/i386.opt:217 #, fuzzy msgid "Use given thread-local storage dialect" msgstr "Выкарыстоўвываць зададзены дыялект асэмблера" -#: config/i386/i386.opt:222 +#: config/i386/i386.opt:221 #, c-format msgid "Use direct references against %gs when accessing tls data" msgstr "" -#: config/i386/sco5.opt:25 +#: config/i386/sco5.opt:24 msgid "Generate ELF output" msgstr "Стварыць ELF-вывад" -#: config/m32r/m32r.opt:24 +#: config/m32r/m32r.opt:23 msgid "Compile for the m32rx" msgstr "" -#: config/m32r/m32r.opt:28 +#: config/m32r/m32r.opt:27 msgid "Compile for the m32r2" msgstr "" -#: config/m32r/m32r.opt:32 +#: config/m32r/m32r.opt:31 msgid "Compile for the m32r" msgstr "" -#: config/m32r/m32r.opt:36 +#: config/m32r/m32r.opt:35 msgid "Align all loops to 32 byte boundary" msgstr "" -#: config/m32r/m32r.opt:40 +#: config/m32r/m32r.opt:39 msgid "Prefer branches over conditional execution" msgstr "" -#: config/m32r/m32r.opt:44 +#: config/m32r/m32r.opt:43 msgid "Give branches their default cost" msgstr "" -#: config/m32r/m32r.opt:48 +#: config/m32r/m32r.opt:47 msgid "Display compile time statistics" msgstr "" -#: config/m32r/m32r.opt:52 +#: config/m32r/m32r.opt:51 msgid "Specify cache flush function" msgstr "" -#: config/m32r/m32r.opt:56 +#: config/m32r/m32r.opt:55 msgid "Specify cache flush trap number" msgstr "" -#: config/m32r/m32r.opt:60 +#: config/m32r/m32r.opt:59 msgid "Only issue one instruction per cycle" msgstr "" -#: config/m32r/m32r.opt:64 +#: config/m32r/m32r.opt:63 msgid "Allow two instructions to be issued per cycle" msgstr "" -#: config/m32r/m32r.opt:68 +#: config/m32r/m32r.opt:67 msgid "Code size: small, medium or large" msgstr "" -#: config/m32r/m32r.opt:72 +#: config/m32r/m32r.opt:71 msgid "Don't call any cache flush functions" msgstr "" -#: config/m32r/m32r.opt:76 +#: config/m32r/m32r.opt:75 msgid "Don't call any cache flush trap" msgstr "" -#: config/m32r/m32r.opt:83 +#: config/m32r/m32r.opt:82 msgid "Small data area: none, sdata, use" msgstr "" -#: config/pa/pa.opt:24 config/pa/pa.opt:77 config/pa/pa.opt:85 +#: config/pa/pa.opt:23 config/pa/pa.opt:76 config/pa/pa.opt:84 #, fuzzy msgid "Generate PA1.0 code" msgstr "Стварыць код для DLL" -#: config/pa/pa.opt:28 config/pa/pa.opt:89 config/pa/pa.opt:109 +#: config/pa/pa.opt:27 config/pa/pa.opt:88 config/pa/pa.opt:108 #, fuzzy msgid "Generate PA1.1 code" msgstr "Стварыць код для DLL" -#: config/pa/pa.opt:32 config/pa/pa.opt:93 +#: config/pa/pa.opt:31 config/pa/pa.opt:92 msgid "Generate PA2.0 code (requires binutils 2.10 or later)" msgstr "" -#: config/pa/pa.opt:36 +#: config/pa/pa.opt:35 #, fuzzy msgid "Generate code for huge switch statements" msgstr "Генерыраваць код для Intel as" -#: config/pa/pa.opt:40 +#: config/pa/pa.opt:39 msgid "Disable FP regs" msgstr "" -#: config/pa/pa.opt:44 +#: config/pa/pa.opt:43 #, fuzzy msgid "Disable indexed addressing" msgstr "нерэчаісны адрас" -#: config/pa/pa.opt:48 +#: config/pa/pa.opt:47 #, fuzzy msgid "Generate fast indirect calls" msgstr "Генерыраваць код для Intel as" -#: config/pa/pa.opt:52 config/ia64/ia64.opt:89 +#: config/pa/pa.opt:51 config/ia64/ia64.opt:89 msgid "Specify range of registers to make fixed" msgstr "" -#: config/pa/pa.opt:56 +#: config/pa/pa.opt:55 msgid "Assume code will be assembled by GAS" msgstr "" -#: config/pa/pa.opt:60 +#: config/pa/pa.opt:59 msgid "Put jumps in call delay slots" msgstr "" -#: config/pa/pa.opt:65 +#: config/pa/pa.opt:64 #, fuzzy msgid "Enable linker optimizations" msgstr "Уключаць SSA аптымізацыю" -#: config/pa/pa.opt:69 +#: config/pa/pa.opt:68 #, fuzzy msgid "Always generate long calls" msgstr "Генерыраваць код для Intel as" -#: config/pa/pa.opt:73 +#: config/pa/pa.opt:72 msgid "Emit long load/store sequences" msgstr "" -#: config/pa/pa.opt:81 +#: config/pa/pa.opt:80 msgid "Disable space regs" msgstr "" -#: config/pa/pa.opt:97 +#: config/pa/pa.opt:96 msgid "Use portable calling conventions" msgstr "" -#: config/pa/pa.opt:101 +#: config/pa/pa.opt:100 msgid "Specify CPU for scheduling purposes. Valid arguments are 700, 7100, 7100LC, 7200, 7300, and 8000" msgstr "" -#: config/pa/pa.opt:105 config/frv/frv.opt:178 +#: config/pa/pa.opt:104 config/frv/frv.opt:177 msgid "Use software floating point" msgstr "" -#: config/pa/pa.opt:113 +#: config/pa/pa.opt:112 msgid "Do not disable space regs" msgstr "" -#: config/pa/pa-hpux1111.opt:24 config/pa/pa-hpux1010.opt:24 -#: config/pa/pa-hpux.opt:28 +#: config/pa/pa-hpux1111.opt:23 config/pa/pa-hpux1010.opt:23 +#: config/pa/pa-hpux.opt:27 msgid "Specify UNIX standard for predefines and linking" msgstr "" -#: config/pa/pa64-hpux.opt:24 +#: config/pa/pa64-hpux.opt:23 msgid "Assume code will be linked by GNU ld" msgstr "" -#: config/pa/pa64-hpux.opt:28 +#: config/pa/pa64-hpux.opt:27 msgid "Assume code will be linked by HP ld" msgstr "" -#: config/pa/pa-hpux.opt:24 +#: config/pa/pa-hpux.opt:23 #, fuzzy msgid "Generate cpp defines for server IO" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/pa/pa-hpux.opt:32 +#: config/pa/pa-hpux.opt:31 #, fuzzy msgid "Generate cpp defines for workstation IO" msgstr "Стварыць код для DLL" -#: config/m68hc11/m68hc11.opt:24 config/m68hc11/m68hc11.opt:32 +#: config/m68hc11/m68hc11.opt:23 config/m68hc11/m68hc11.opt:31 msgid "Compile for a 68HC11" msgstr "" -#: config/m68hc11/m68hc11.opt:28 config/m68hc11/m68hc11.opt:36 +#: config/m68hc11/m68hc11.opt:27 config/m68hc11/m68hc11.opt:35 msgid "Compile for a 68HC12" msgstr "" -#: config/m68hc11/m68hc11.opt:42 config/m68hc11/m68hc11.opt:46 +#: config/m68hc11/m68hc11.opt:41 config/m68hc11/m68hc11.opt:45 msgid "Compile for a 68HCS12" msgstr "" -#: config/m68hc11/m68hc11.opt:50 +#: config/m68hc11/m68hc11.opt:49 msgid "Auto pre/post decrement increment allowed" msgstr "" -#: config/m68hc11/m68hc11.opt:54 +#: config/m68hc11/m68hc11.opt:53 msgid "Min/max instructions allowed" msgstr "" -#: config/m68hc11/m68hc11.opt:58 +#: config/m68hc11/m68hc11.opt:57 msgid "Use call and rtc for function calls and returns" msgstr "" -#: config/m68hc11/m68hc11.opt:62 +#: config/m68hc11/m68hc11.opt:61 msgid "Auto pre/post decrement increment not allowed" msgstr "" -#: config/m68hc11/m68hc11.opt:66 +#: config/m68hc11/m68hc11.opt:65 msgid "Use jsr and rts for function calls and returns" msgstr "" -#: config/m68hc11/m68hc11.opt:70 +#: config/m68hc11/m68hc11.opt:69 msgid "Min/max instructions not allowed" msgstr "" -#: config/m68hc11/m68hc11.opt:74 +#: config/m68hc11/m68hc11.opt:73 msgid "Use direct addressing mode for soft registers" msgstr "" -#: config/m68hc11/m68hc11.opt:78 +#: config/m68hc11/m68hc11.opt:77 msgid "Compile with 32-bit integer mode" msgstr "" -#: config/m68hc11/m68hc11.opt:83 +#: config/m68hc11/m68hc11.opt:82 msgid "Specify the register allocation order" msgstr "" -#: config/m68hc11/m68hc11.opt:87 +#: config/m68hc11/m68hc11.opt:86 msgid "Do not use direct addressing mode for soft registers" msgstr "" -#: config/m68hc11/m68hc11.opt:91 +#: config/m68hc11/m68hc11.opt:90 msgid "Compile with 16-bit integer mode" msgstr "" -#: config/m68hc11/m68hc11.opt:95 +#: config/m68hc11/m68hc11.opt:94 msgid "Indicate the number of soft registers available" msgstr "" -#: config/arm/arm.opt:24 +#: config/arm/arm.opt:23 msgid "Specify an ABI" msgstr "" -#: config/arm/arm.opt:28 +#: config/arm/arm.opt:27 msgid "Generate a call to abort if a noreturn function returns" msgstr "" -#: config/arm/arm.opt:35 +#: config/arm/arm.opt:34 msgid "Pass FP arguments in FP registers" msgstr "" -#: config/arm/arm.opt:39 +#: config/arm/arm.opt:38 msgid "Generate APCS conformant stack frames" msgstr "" -#: config/arm/arm.opt:43 +#: config/arm/arm.opt:42 msgid "Generate re-entrant, PIC code" msgstr "" -#: config/arm/arm.opt:50 +#: config/arm/arm.opt:49 msgid "Specify the name of the target architecture" msgstr "" -#: config/arm/arm.opt:57 +#: config/arm/arm.opt:56 msgid "Assume target CPU is configured as big endian" msgstr "" -#: config/arm/arm.opt:61 +#: config/arm/arm.opt:60 msgid "Thumb: Assume non-static functions may be called from ARM code" msgstr "" -#: config/arm/arm.opt:65 +#: config/arm/arm.opt:64 msgid "Thumb: Assume function pointers may go to non-Thumb aware code" msgstr "" -#: config/arm/arm.opt:69 +#: config/arm/arm.opt:68 msgid "Cirrus: Place NOPs to avoid invalid instruction combinations" msgstr "" -#: config/arm/arm.opt:73 +#: config/arm/arm.opt:72 msgid "Specify the name of the target CPU" msgstr "" -#: config/arm/arm.opt:77 +#: config/arm/arm.opt:76 msgid "Specify if floating point hardware should be used" msgstr "" -#: config/arm/arm.opt:91 +#: config/arm/arm.opt:90 msgid "Specify the name of the target floating point hardware/format" msgstr "" -#: config/arm/arm.opt:95 +#: config/arm/arm.opt:94 msgid "Alias for -mfloat-abi=hard" msgstr "" -#: config/arm/arm.opt:99 +#: config/arm/arm.opt:98 msgid "Assume target CPU is configured as little endian" msgstr "" -#: config/arm/arm.opt:103 +#: config/arm/arm.opt:102 msgid "Generate call insns as indirect calls, if necessary" msgstr "" -#: config/arm/arm.opt:107 +#: config/arm/arm.opt:106 msgid "Specify the register to be used for PIC addressing" msgstr "" -#: config/arm/arm.opt:111 +#: config/arm/arm.opt:110 msgid "Store function names in object code" msgstr "" -#: config/arm/arm.opt:115 +#: config/arm/arm.opt:114 msgid "Permit scheduling of a function's prologue sequence" msgstr "" -#: config/arm/arm.opt:119 +#: config/arm/arm.opt:118 msgid "Do not load the PIC register in function prologues" msgstr "" -#: config/arm/arm.opt:123 +#: config/arm/arm.opt:122 msgid "Alias for -mfloat-abi=soft" msgstr "" -#: config/arm/arm.opt:127 +#: config/arm/arm.opt:126 msgid "Specify the minimum bit alignment of structures" msgstr "" -#: config/arm/arm.opt:131 +#: config/arm/arm.opt:130 msgid "Compile for the Thumb not the ARM" msgstr "" -#: config/arm/arm.opt:135 +#: config/arm/arm.opt:134 msgid "Support calls between Thumb and ARM instruction sets" msgstr "" -#: config/arm/arm.opt:139 +#: config/arm/arm.opt:138 msgid "Specify how to access the thread pointer" msgstr "" -#: config/arm/arm.opt:143 +#: config/arm/arm.opt:142 msgid "Thumb: Generate (non-leaf) stack frames even if not needed" msgstr "" -#: config/arm/arm.opt:147 +#: config/arm/arm.opt:146 msgid "Thumb: Generate (leaf) stack frames even if not needed" msgstr "" -#: config/arm/arm.opt:151 +#: config/arm/arm.opt:150 #, fuzzy msgid "Tune code for the given processor" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/arm/arm.opt:155 +#: config/arm/arm.opt:154 msgid "Assume big endian bytes, little endian words" msgstr "" -#: config/arm/pe.opt:24 +#: config/arm/pe.opt:23 msgid "Ignore dllimport attribute for functions" msgstr "" -#: config/lynx.opt:24 +#: config/lynx.opt:23 msgid "Support legacy multi-threading" msgstr "" -#: config/lynx.opt:28 +#: config/lynx.opt:27 #, fuzzy msgid "Use shared libraries" msgstr "Выкарыстоўваць апаратную плаваючую кропку" -#: config/lynx.opt:32 +#: config/lynx.opt:31 msgid "Support multi-threading" msgstr "" -#: config/c4x/c4x.opt:24 +#: config/c4x/c4x.opt:23 msgid "Generate code for C30 CPU" msgstr "" -#: config/c4x/c4x.opt:28 +#: config/c4x/c4x.opt:27 msgid "Generate code for C31 CPU" msgstr "" -#: config/c4x/c4x.opt:32 +#: config/c4x/c4x.opt:31 msgid "Generate code for C32 CPU" msgstr "" -#: config/c4x/c4x.opt:36 +#: config/c4x/c4x.opt:35 msgid "Generate code for C33 CPU" msgstr "" -#: config/c4x/c4x.opt:40 +#: config/c4x/c4x.opt:39 msgid "Generate code for C40 CPU" msgstr "" -#: config/c4x/c4x.opt:44 +#: config/c4x/c4x.opt:43 msgid "Generate code for C44 CPU" msgstr "" -#: config/c4x/c4x.opt:48 +#: config/c4x/c4x.opt:47 msgid "Assume that pointers may be aliased" msgstr "" -#: config/c4x/c4x.opt:52 +#: config/c4x/c4x.opt:51 msgid "Big memory model" msgstr "" -#: config/c4x/c4x.opt:56 +#: config/c4x/c4x.opt:55 msgid "Use the BK register as a general purpose register" msgstr "" -#: config/c4x/c4x.opt:60 +#: config/c4x/c4x.opt:59 #, fuzzy msgid "Generate code for CPU" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/c4x/c4x.opt:64 +#: config/c4x/c4x.opt:63 msgid "Enable use of DB instruction" msgstr "" -#: config/c4x/c4x.opt:68 +#: config/c4x/c4x.opt:67 msgid "Enable debugging" msgstr "" -#: config/c4x/c4x.opt:72 +#: config/c4x/c4x.opt:71 msgid "Enable new features under development" msgstr "" -#: config/c4x/c4x.opt:76 +#: config/c4x/c4x.opt:75 msgid "Use fast but approximate float to integer conversion" msgstr "" -#: config/c4x/c4x.opt:80 +#: config/c4x/c4x.opt:79 msgid "Force RTL generation to emit valid 3 operand insns" msgstr "" -#: config/c4x/c4x.opt:84 +#: config/c4x/c4x.opt:83 msgid "Force constants into registers to improve hoisting" msgstr "" -#: config/c4x/c4x.opt:88 config/c4x/c4x.opt:112 +#: config/c4x/c4x.opt:87 config/c4x/c4x.opt:111 msgid "Save DP across ISR in small memory model" msgstr "" -#: config/c4x/c4x.opt:92 +#: config/c4x/c4x.opt:91 msgid "Allow unsigned iteration counts for RPTB/DB" msgstr "" -#: config/c4x/c4x.opt:96 +#: config/c4x/c4x.opt:95 msgid "Pass arguments on the stack" msgstr "" -#: config/c4x/c4x.opt:100 +#: config/c4x/c4x.opt:99 msgid "Use MPYI instruction for C3x" msgstr "" -#: config/c4x/c4x.opt:104 +#: config/c4x/c4x.opt:103 msgid "Enable parallel instructions" msgstr "" -#: config/c4x/c4x.opt:108 +#: config/c4x/c4x.opt:107 msgid "Enable MPY||ADD and MPY||SUB instructions" msgstr "" -#: config/c4x/c4x.opt:116 +#: config/c4x/c4x.opt:115 msgid "Preserve all 40 bits of FP reg across call" msgstr "" -#: config/c4x/c4x.opt:120 +#: config/c4x/c4x.opt:119 msgid "Pass arguments in registers" msgstr "" -#: config/c4x/c4x.opt:124 +#: config/c4x/c4x.opt:123 msgid "Enable use of RTPB instruction" msgstr "" -#: config/c4x/c4x.opt:128 +#: config/c4x/c4x.opt:127 msgid "Enable use of RTPS instruction" msgstr "" -#: config/c4x/c4x.opt:132 +#: config/c4x/c4x.opt:131 msgid "Set the maximum number of iterations for RPTS to N" msgstr "" -#: config/c4x/c4x.opt:136 +#: config/c4x/c4x.opt:135 msgid "Small memory model" msgstr "" -#: config/c4x/c4x.opt:140 +#: config/c4x/c4x.opt:139 msgid "Emit code compatible with TI tools" msgstr "" -#: config/h8300/h8300.opt:24 +#: config/h8300/h8300.opt:23 #, fuzzy msgid "Generate H8S code" msgstr "Стварыць код для DLL" -#: config/h8300/h8300.opt:28 +#: config/h8300/h8300.opt:27 #, fuzzy msgid "Generate H8SX code" msgstr "Стварыць код для DLL" -#: config/h8300/h8300.opt:32 +#: config/h8300/h8300.opt:31 msgid "Generate H8S/2600 code" msgstr "" -#: config/h8300/h8300.opt:36 +#: config/h8300/h8300.opt:35 msgid "Make integers 32 bits wide" msgstr "" -#: config/h8300/h8300.opt:43 +#: config/h8300/h8300.opt:42 msgid "Use registers for argument passing" msgstr "" -#: config/h8300/h8300.opt:47 +#: config/h8300/h8300.opt:46 msgid "Consider access to byte sized memory slow" msgstr "" -#: config/h8300/h8300.opt:51 +#: config/h8300/h8300.opt:50 msgid "Enable linker relaxing" msgstr "" -#: config/h8300/h8300.opt:55 +#: config/h8300/h8300.opt:54 msgid "Generate H8/300H code" msgstr "" -#: config/h8300/h8300.opt:59 +#: config/h8300/h8300.opt:58 msgid "Enable the normal mode" msgstr "" -#: config/h8300/h8300.opt:63 +#: config/h8300/h8300.opt:62 msgid "Use H8/300 alignment rules" msgstr "" -#: config/xtensa/xtensa.opt:24 +#: config/xtensa/xtensa.opt:23 msgid "Use CONST16 instruction to load constants" msgstr "" -#: config/xtensa/xtensa.opt:28 +#: config/xtensa/xtensa.opt:27 msgid "Enable fused multiply/add and multiply/subtract FP instructions" msgstr "" -#: config/xtensa/xtensa.opt:32 +#: config/xtensa/xtensa.opt:31 msgid "Use indirect CALLXn instructions for large programs" msgstr "" -#: config/xtensa/xtensa.opt:36 +#: config/xtensa/xtensa.opt:35 msgid "Automatically align branch targets to reduce branch penalties" msgstr "" -#: config/xtensa/xtensa.opt:40 +#: config/xtensa/xtensa.opt:39 msgid "Intersperse literal pools with code in the text section" msgstr "" -#: config/mcore/mcore.opt:24 +#: config/mcore/mcore.opt:23 #, fuzzy msgid "Generate code for the M*Core M210" msgstr "Генерыраваць код для Intel as" -#: config/mcore/mcore.opt:28 +#: config/mcore/mcore.opt:27 msgid "Generate code for the M*Core M340" msgstr "" -#: config/mcore/mcore.opt:32 +#: config/mcore/mcore.opt:31 msgid "Set maximum alignment to 4" msgstr "" -#: config/mcore/mcore.opt:36 +#: config/mcore/mcore.opt:35 msgid "Force functions to be aligned to a 4 byte boundary" msgstr "" -#: config/mcore/mcore.opt:40 +#: config/mcore/mcore.opt:39 msgid "Set maximum alignment to 8" msgstr "" -#: config/mcore/mcore.opt:44 config/score/score.opt:24 +#: config/mcore/mcore.opt:43 config/score/score.opt:23 msgid "Generate big-endian code" msgstr "" -#: config/mcore/mcore.opt:48 +#: config/mcore/mcore.opt:47 msgid "Emit call graph information" msgstr "" -#: config/mcore/mcore.opt:52 +#: config/mcore/mcore.opt:51 #, fuzzy msgid "Use the divide instruction" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/mcore/mcore.opt:56 +#: config/mcore/mcore.opt:55 msgid "Inline constants if it can be done in 2 insns or less" msgstr "" -#: config/mcore/mcore.opt:60 config/score/score.opt:28 +#: config/mcore/mcore.opt:59 config/score/score.opt:27 msgid "Generate little-endian code" msgstr "" -#: config/mcore/mcore.opt:68 +#: config/mcore/mcore.opt:67 msgid "Use arbitrary sized immediates in bit operations" msgstr "" -#: config/mcore/mcore.opt:72 +#: config/mcore/mcore.opt:71 msgid "Prefer word accesses over byte accesses" msgstr "" -#: config/mcore/mcore.opt:76 +#: config/mcore/mcore.opt:75 msgid "Set the maximum amount for a single stack increment operation" msgstr "" -#: config/mcore/mcore.opt:80 +#: config/mcore/mcore.opt:79 msgid "Always treat bitfields as int-sized" msgstr "" -#: config/cris/cris.opt:46 +#: config/cris/cris.opt:45 msgid "Work around bug in multiplication instruction" msgstr "" -#: config/cris/cris.opt:52 +#: config/cris/cris.opt:51 msgid "Compile for ETRAX 4 (CRIS v3)" msgstr "" -#: config/cris/cris.opt:57 +#: config/cris/cris.opt:56 msgid "Compile for ETRAX 100 (CRIS v8)" msgstr "" -#: config/cris/cris.opt:65 +#: config/cris/cris.opt:64 msgid "Emit verbose debug information in assembly code" msgstr "" -#: config/cris/cris.opt:72 +#: config/cris/cris.opt:71 #, fuzzy msgid "Do not use condition codes from normal instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/cris/cris.opt:81 +#: config/cris/cris.opt:80 msgid "Do not emit addressing modes with side-effect assignment" msgstr "" -#: config/cris/cris.opt:90 +#: config/cris/cris.opt:89 msgid "Do not tune stack alignment" msgstr "" -#: config/cris/cris.opt:99 +#: config/cris/cris.opt:98 msgid "Do not tune writable data alignment" msgstr "" -#: config/cris/cris.opt:108 +#: config/cris/cris.opt:107 msgid "Do not tune code and read-only data alignment" msgstr "" -#: config/cris/cris.opt:117 +#: config/cris/cris.opt:116 msgid "Align code and data to 32 bits" msgstr "" -#: config/cris/cris.opt:134 +#: config/cris/cris.opt:133 msgid "Don't align items in code or data" msgstr "" -#: config/cris/cris.opt:143 +#: config/cris/cris.opt:142 msgid "Do not emit function prologue or epilogue" msgstr "" -#: config/cris/cris.opt:150 +#: config/cris/cris.opt:149 msgid "Use the most feature-enabling options allowed by other options" msgstr "" -#: config/cris/cris.opt:159 +#: config/cris/cris.opt:158 msgid "Override -mbest-lib-options" msgstr "" -#: config/cris/cris.opt:166 +#: config/cris/cris.opt:165 #, fuzzy msgid "Generate code for the specified chip or CPU version" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/cris/cris.opt:170 +#: config/cris/cris.opt:169 msgid "Tune alignment for the specified chip or CPU version" msgstr "" -#: config/cris/cris.opt:174 +#: config/cris/cris.opt:173 msgid "Warn when a stackframe is larger than the specified size" msgstr "" -#: config/cris/aout.opt:28 +#: config/cris/aout.opt:27 msgid "Compile for the MMU-less Etrax 100-based elinux system" msgstr "" -#: config/cris/aout.opt:34 +#: config/cris/aout.opt:33 msgid "For elinux, request a specified stack-size for this program" msgstr "" -#: config/cris/linux.opt:28 +#: config/cris/linux.opt:27 msgid "Together with -fpic and -fPIC, do not use GOTPLT references" msgstr "" -#: config/sparc/sparc.opt:24 config/sparc/sparc.opt:28 +#: config/sparc/sparc.opt:23 config/sparc/sparc.opt:27 #, fuzzy msgid "Use hardware FP" msgstr "Выкарыстоўваць апаратную плаваючую кропку" -#: config/sparc/sparc.opt:32 +#: config/sparc/sparc.opt:31 #, fuzzy msgid "Do not use hardware FP" msgstr "Не выкарыстоўваць апаратную плаваючую кропку" -#: config/sparc/sparc.opt:36 +#: config/sparc/sparc.opt:35 msgid "Assume possible double misalignment" msgstr "" -#: config/sparc/sparc.opt:40 +#: config/sparc/sparc.opt:39 msgid "Pass -assert pure-text to linker" msgstr "" -#: config/sparc/sparc.opt:44 +#: config/sparc/sparc.opt:43 msgid "Use ABI reserved registers" msgstr "" -#: config/sparc/sparc.opt:48 +#: config/sparc/sparc.opt:47 #, fuzzy msgid "Use hardware quad FP instructions" msgstr "Выкарыстоўваць апаратную \"плаваючую кропку\"" -#: config/sparc/sparc.opt:52 +#: config/sparc/sparc.opt:51 msgid "Do not use hardware quad fp instructions" msgstr "" -#: config/sparc/sparc.opt:56 +#: config/sparc/sparc.opt:55 msgid "Compile for V8+ ABI" msgstr "" -#: config/sparc/sparc.opt:60 +#: config/sparc/sparc.opt:59 msgid "Use UltraSPARC Visual Instruction Set extensions" msgstr "" -#: config/sparc/sparc.opt:64 +#: config/sparc/sparc.opt:63 msgid "Pointers are 64-bit" msgstr "" -#: config/sparc/sparc.opt:68 +#: config/sparc/sparc.opt:67 msgid "Pointers are 32-bit" msgstr "" -#: config/sparc/sparc.opt:72 +#: config/sparc/sparc.opt:71 msgid "Use 64-bit ABI" msgstr "" -#: config/sparc/sparc.opt:76 +#: config/sparc/sparc.opt:75 msgid "Use 32-bit ABI" msgstr "" -#: config/sparc/sparc.opt:80 +#: config/sparc/sparc.opt:79 msgid "Use stack bias" msgstr "" -#: config/sparc/sparc.opt:84 +#: config/sparc/sparc.opt:83 msgid "Use structs on stronger alignment for double-word copies" msgstr "" -#: config/sparc/sparc.opt:88 +#: config/sparc/sparc.opt:87 msgid "Optimize tail call instructions in assembler and linker" msgstr "" -#: config/sparc/sparc.opt:100 +#: config/sparc/sparc.opt:99 msgid "Use given SPARC-V9 code model" msgstr "" -#: config/sparc/sparc.opt:104 +#: config/sparc/sparc.opt:103 msgid "Enable strict 32-bit psABI struct return checking." msgstr "" -#: config/sparc/little-endian.opt:24 +#: config/sparc/little-endian.opt:23 #, fuzzy msgid "Generate code for little-endian" -msgstr "Генерыраваць код для Intel ld" +msgstr "Генерыраваць код для Intel as" -#: config/sparc/little-endian.opt:28 +#: config/sparc/little-endian.opt:27 #, fuzzy msgid "Generate code for big-endian" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/arc/arc.opt:33 +#: config/arc/arc.opt:32 msgid "Prepend the name of the cpu to all public symbol names" msgstr "" -#: config/arc/arc.opt:43 +#: config/arc/arc.opt:42 msgid "Compile code for ARC variant CPU" msgstr "" -#: config/arc/arc.opt:47 +#: config/arc/arc.opt:46 msgid "Put functions in SECTION" msgstr "" -#: config/arc/arc.opt:51 +#: config/arc/arc.opt:50 msgid "Put data in SECTION" msgstr "" -#: config/arc/arc.opt:55 +#: config/arc/arc.opt:54 msgid "Put read-only data in SECTION" msgstr "" @@ -11895,305 +11895,305 @@ msgid "Runtime name." msgstr "" -#: config/sh/sh.opt:45 +#: config/sh/sh.opt:44 #, fuzzy msgid "Generate SH1 code" msgstr "Стварыць код для DLL" -#: config/sh/sh.opt:49 +#: config/sh/sh.opt:48 #, fuzzy msgid "Generate SH2 code" msgstr "Стварыць код для DLL" -#: config/sh/sh.opt:53 +#: config/sh/sh.opt:52 #, fuzzy msgid "Generate SH2a code" msgstr "Стварыць код для DLL" -#: config/sh/sh.opt:57 +#: config/sh/sh.opt:56 msgid "Generate SH2a FPU-less code" msgstr "" -#: config/sh/sh.opt:61 +#: config/sh/sh.opt:60 msgid "Generate default single-precision SH2a code" msgstr "" -#: config/sh/sh.opt:65 +#: config/sh/sh.opt:64 msgid "Generate only single-precision SH2a code" msgstr "" -#: config/sh/sh.opt:69 +#: config/sh/sh.opt:68 #, fuzzy msgid "Generate SH2e code" msgstr "Стварыць код для DLL" -#: config/sh/sh.opt:73 +#: config/sh/sh.opt:72 #, fuzzy msgid "Generate SH3 code" msgstr "Стварыць код для DLL" -#: config/sh/sh.opt:77 +#: config/sh/sh.opt:76 #, fuzzy msgid "Generate SH3e code" msgstr "Стварыць код для DLL" -#: config/sh/sh.opt:81 +#: config/sh/sh.opt:80 #, fuzzy msgid "Generate SH4 code" msgstr "Стварыць код для DLL" -#: config/sh/sh.opt:85 +#: config/sh/sh.opt:84 msgid "Generate SH4-100 code" msgstr "" -#: config/sh/sh.opt:89 +#: config/sh/sh.opt:88 msgid "Generate SH4-200 code" msgstr "" -#: config/sh/sh.opt:93 +#: config/sh/sh.opt:92 msgid "Generate SH4 FPU-less code" msgstr "" -#: config/sh/sh.opt:97 +#: config/sh/sh.opt:96 #, fuzzy msgid "Generate code for SH4 400 series (MMU/FPU-less)" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/sh/sh.opt:102 +#: config/sh/sh.opt:101 #, fuzzy msgid "Generate code for SH4 500 series (FPU-less)." msgstr "Генерыраваць код для дадзенага ЦП" -#: config/sh/sh.opt:107 +#: config/sh/sh.opt:106 msgid "Generate default single-precision SH4 code" msgstr "" -#: config/sh/sh.opt:111 +#: config/sh/sh.opt:110 msgid "Generate default single-precision SH4-100 code" msgstr "" -#: config/sh/sh.opt:115 +#: config/sh/sh.opt:114 msgid "Generate default single-precision SH4-200 code" msgstr "" -#: config/sh/sh.opt:119 +#: config/sh/sh.opt:118 msgid "Generate only single-precision SH4 code" msgstr "" -#: config/sh/sh.opt:123 +#: config/sh/sh.opt:122 msgid "Generate only single-precision SH4-100 code" msgstr "" -#: config/sh/sh.opt:127 +#: config/sh/sh.opt:126 msgid "Generate only single-precision SH4-200 code" msgstr "" -#: config/sh/sh.opt:131 +#: config/sh/sh.opt:130 #, fuzzy msgid "Generate SH4a code" msgstr "Стварыць код для DLL" -#: config/sh/sh.opt:135 +#: config/sh/sh.opt:134 msgid "Generate SH4a FPU-less code" msgstr "" -#: config/sh/sh.opt:139 +#: config/sh/sh.opt:138 msgid "Generate default single-precision SH4a code" msgstr "" -#: config/sh/sh.opt:143 +#: config/sh/sh.opt:142 msgid "Generate only single-precision SH4a code" msgstr "" -#: config/sh/sh.opt:147 +#: config/sh/sh.opt:146 msgid "Generate SH4al-dsp code" msgstr "" -#: config/sh/sh.opt:151 +#: config/sh/sh.opt:150 msgid "Generate 32-bit SHmedia code" msgstr "" -#: config/sh/sh.opt:155 +#: config/sh/sh.opt:154 msgid "Generate 32-bit FPU-less SHmedia code" msgstr "" -#: config/sh/sh.opt:159 +#: config/sh/sh.opt:158 msgid "Generate 64-bit SHmedia code" msgstr "" -#: config/sh/sh.opt:163 +#: config/sh/sh.opt:162 msgid "Generate 64-bit FPU-less SHmedia code" msgstr "" -#: config/sh/sh.opt:167 +#: config/sh/sh.opt:166 msgid "Generate SHcompact code" msgstr "" -#: config/sh/sh.opt:171 +#: config/sh/sh.opt:170 msgid "Generate FPU-less SHcompact code" msgstr "" -#: config/sh/sh.opt:175 +#: config/sh/sh.opt:174 msgid "Throttle unrolling to avoid thrashing target registers unless the unroll benefit outweighs this" msgstr "" -#: config/sh/sh.opt:179 +#: config/sh/sh.opt:178 #, fuzzy msgid "Generate code in big endian mode" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/sh/sh.opt:183 +#: config/sh/sh.opt:182 msgid "Generate 32-bit offsets in switch tables" msgstr "" -#: config/sh/sh.opt:187 +#: config/sh/sh.opt:186 msgid "Enable SH5 cut2 workaround" msgstr "" -#: config/sh/sh.opt:191 +#: config/sh/sh.opt:190 msgid "Align doubles at 64-bit boundaries" msgstr "" -#: config/sh/sh.opt:195 +#: config/sh/sh.opt:194 msgid "Division strategy, one of: call, call2, fp, inv, inv:minlat, inv20u, inv20l, inv:call, inv:call2, inv:fp call-div1 call-fp call-table" msgstr "" -#: config/sh/sh.opt:199 +#: config/sh/sh.opt:198 msgid "Specify name for 32 bit signed division function" msgstr "" -#: config/sh/sh.opt:206 +#: config/sh/sh.opt:205 msgid "Cost to assume for gettr insn" msgstr "" -#: config/sh/sh.opt:210 config/sh/sh.opt:256 +#: config/sh/sh.opt:209 config/sh/sh.opt:255 msgid "Follow Renesas (formerly Hitachi) / SuperH calling conventions" msgstr "" -#: config/sh/sh.opt:214 +#: config/sh/sh.opt:213 msgid "Increase the IEEE compliance for floating-point code" msgstr "" -#: config/sh/sh.opt:218 +#: config/sh/sh.opt:217 msgid "Enable the use of the indexed addressing mode for SHmedia32/SHcompact" msgstr "" -#: config/sh/sh.opt:222 +#: config/sh/sh.opt:221 msgid "Assume symbols might be invalid" msgstr "" -#: config/sh/sh.opt:226 +#: config/sh/sh.opt:225 msgid "Annotate assembler instructions with estimated addresses" msgstr "" -#: config/sh/sh.opt:230 +#: config/sh/sh.opt:229 #, fuzzy msgid "Generate code in little endian mode" msgstr "Генерыраваць код без GP reg" -#: config/sh/sh.opt:234 +#: config/sh/sh.opt:233 msgid "Mark MAC register as call-clobbered" msgstr "" -#: config/sh/sh.opt:240 +#: config/sh/sh.opt:239 msgid "Make structs a multiple of 4 bytes (warning: ABI altered)" msgstr "" -#: config/sh/sh.opt:244 +#: config/sh/sh.opt:243 msgid "Emit function-calls using global offset table when generating PIC" msgstr "" -#: config/sh/sh.opt:248 +#: config/sh/sh.opt:247 msgid "Assume pt* instructions won't trap" msgstr "" -#: config/sh/sh.opt:252 +#: config/sh/sh.opt:251 msgid "Shorten address references during linking" msgstr "" -#: config/sh/sh.opt:260 +#: config/sh/sh.opt:259 msgid "Deprecated. Use -Os instead" msgstr "" -#: config/sh/sh.opt:264 +#: config/sh/sh.opt:263 msgid "Cost to assume for a multiply insn" msgstr "" -#: config/sh/sh.opt:268 +#: config/sh/sh.opt:267 msgid "Generate library function call to invalidate instruction cache entries after fixing trampoline" msgstr "" -#: config/sh/sh.opt:274 +#: config/sh/sh.opt:273 msgid "Pretend a branch-around-a-move is a conditional move." msgstr "" -#: config/pdp11/pdp11.opt:24 +#: config/pdp11/pdp11.opt:23 msgid "Generate code for an 11/10" msgstr "" -#: config/pdp11/pdp11.opt:28 +#: config/pdp11/pdp11.opt:27 msgid "Generate code for an 11/40" msgstr "" -#: config/pdp11/pdp11.opt:32 +#: config/pdp11/pdp11.opt:31 msgid "Generate code for an 11/45" msgstr "" -#: config/pdp11/pdp11.opt:36 +#: config/pdp11/pdp11.opt:35 #, fuzzy msgid "Use 16-bit abs patterns" msgstr "Выкарыстоўваць 64-бітныя FP-рэгістры" -#: config/pdp11/pdp11.opt:40 +#: config/pdp11/pdp11.opt:39 msgid "Return floating-point results in ac0 (fr0 in Unix assembler syntax)" msgstr "" -#: config/pdp11/pdp11.opt:44 +#: config/pdp11/pdp11.opt:43 msgid "Do not use inline patterns for copying memory" msgstr "" -#: config/pdp11/pdp11.opt:48 +#: config/pdp11/pdp11.opt:47 msgid "Use inline patterns for copying memory" msgstr "" -#: config/pdp11/pdp11.opt:52 +#: config/pdp11/pdp11.opt:51 msgid "Do not pretend that branches are expensive" msgstr "" -#: config/pdp11/pdp11.opt:56 +#: config/pdp11/pdp11.opt:55 msgid "Pretend that branches are expensive" msgstr "" -#: config/pdp11/pdp11.opt:60 +#: config/pdp11/pdp11.opt:59 #, fuzzy msgid "Use the DEC assembler syntax" msgstr "Выкарыстоўваць DEC-сінтакс для асэмблера" -#: config/pdp11/pdp11.opt:64 +#: config/pdp11/pdp11.opt:63 msgid "Use 32 bit float" msgstr "Выкарыстоўваць 32-х бітны float" -#: config/pdp11/pdp11.opt:68 +#: config/pdp11/pdp11.opt:67 msgid "Use 64 bit float" msgstr "Выкарыстоўваць 64-х бітны float" -#: config/pdp11/pdp11.opt:76 +#: config/pdp11/pdp11.opt:75 msgid "Use 16 bit int" msgstr "Выкарыстоўваць 16-ці бітны int" -#: config/pdp11/pdp11.opt:80 +#: config/pdp11/pdp11.opt:79 msgid "Use 32 bit int" msgstr "Выкарыстоўваць 32-х бітны int" -#: config/pdp11/pdp11.opt:88 +#: config/pdp11/pdp11.opt:87 msgid "Target has split I&D" msgstr "" -#: config/pdp11/pdp11.opt:92 +#: config/pdp11/pdp11.opt:91 msgid "Use UNIX assembler syntax" msgstr "Выкарыстоўваць UNIX-сінтакс для асэмблера" -#: config/stormy16/stormy16.opt:25 +#: config/stormy16/stormy16.opt:24 msgid "Provide libraries for the simulator" msgstr "" @@ -12336,1729 +12336,1729 @@ msgid "Generate LP64 code" msgstr "Стварыць ELF-вывад" -#: config/darwin.opt:24 +#: config/darwin.opt:23 #, fuzzy msgid "Generate code suitable for fast turn around debugging" msgstr "Стварыць код для DLL" -#: config/darwin.opt:28 +#: config/darwin.opt:27 msgid "The earliest MacOS X version on which this program will run" msgstr "" -#: config/darwin.opt:32 +#: config/darwin.opt:31 msgid "Set sizeof(bool) to 1" msgstr "" -#: config/darwin.opt:36 +#: config/darwin.opt:35 #, fuzzy msgid "Generate code for darwin loadable kernel extentions" msgstr "Генерыраваць код для Intel as" -#: config/darwin.opt:40 +#: config/darwin.opt:39 #, fuzzy msgid "Generate code for the kernel or loadable kernel extentions" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/fr30/fr30.opt:24 +#: config/fr30/fr30.opt:23 msgid "Assume small address space" msgstr "" -#: config/mips/mips.opt:24 +#: config/mips/mips.opt:23 #, fuzzy msgid "Generate code that conforms to the given ABI" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/mips/mips.opt:28 +#: config/mips/mips.opt:27 msgid "Generate code that can be used in SVR4-style dynamic objects" msgstr "" -#: config/mips/mips.opt:32 +#: config/mips/mips.opt:31 msgid "Use PMC-style 'mad' instructions" msgstr "" -#: config/mips/mips.opt:36 +#: config/mips/mips.opt:35 #, fuzzy msgid "Generate code for the given ISA" msgstr "Генерыраваць код для дадзенага ЦП" -#: config/mips/mips.opt:40 +#: config/mips/mips.opt:39 msgid "Use Branch Likely instructions, overriding the architecture default" msgstr "" -#: config/mips/mips.opt:44 +#: config/mips/mips.opt:43 msgid "Trap on integer divide by zero" msgstr "" -#: config/mips/mips.opt:48 +#: config/mips/mips.opt:47 msgid "Use branch-and-break sequences to check for integer divide by zero" msgstr "" -#: config/mips/mips.opt:52 +#: config/mips/mips.opt:51 msgid "Use trap instructions to check for integer divide by zero" msgstr "" -#: config/mips/mips.opt:56 +#: config/mips/mips.opt:55 msgid "Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations" msgstr "" -#: config/mips/mips.opt:60 +#: config/mips/mips.opt:59 msgid "Use MIPS-DSP instructions" msgstr "" -#: config/mips/mips.opt:70 +#: config/mips/mips.opt:69 msgid "Use big-endian byte order" msgstr "" -#: config/mips/mips.opt:74 +#: config/mips/mips.opt:73 msgid "Use little-endian byte order" msgstr "" -#: config/mips/mips.opt:78 config/iq2000/iq2000.opt:32 +#: config/mips/mips.opt:77 config/iq2000/iq2000.opt:31 msgid "Use ROM instead of RAM" msgstr "" -#: config/mips/mips.opt:82 +#: config/mips/mips.opt:81 msgid "Use NewABI-style %reloc() assembly operators" msgstr "" -#: config/mips/mips.opt:86 +#: config/mips/mips.opt:85 msgid "Work around certain R4000 errata" msgstr "" -#: config/mips/mips.opt:90 +#: config/mips/mips.opt:89 msgid "Work around certain R4400 errata" msgstr "" -#: config/mips/mips.opt:94 +#: config/mips/mips.opt:93 msgid "Work around errata for early SB-1 revision 2 cores" msgstr "" -#: config/mips/mips.opt:98 +#: config/mips/mips.opt:97 msgid "Work around certain VR4120 errata" msgstr "" -#: config/mips/mips.opt:102 +#: config/mips/mips.opt:101 msgid "Work around VR4130 mflo/mfhi errata" msgstr "" -#: config/mips/mips.opt:106 +#: config/mips/mips.opt:105 msgid "Work around an early 4300 hardware bug" msgstr "" -#: config/mips/mips.opt:110 +#: config/mips/mips.opt:109 #, fuzzy msgid "FP exceptions are enabled" msgstr "выбары ўключаны:" -#: config/mips/mips.opt:114 +#: config/mips/mips.opt:113 #, fuzzy msgid "Use 32-bit floating-point registers" msgstr "Выкарыстоўваць 32-бітныя галоўныя рэгістры" -#: config/mips/mips.opt:118 +#: config/mips/mips.opt:117 #, fuzzy msgid "Use 64-bit floating-point registers" msgstr "Выкарыстоўваць 64-бітныя галоўныя рэгістры" -#: config/mips/mips.opt:122 +#: config/mips/mips.opt:121 msgid "Use FUNC to flush the cache before calling stack trampolines" msgstr "" -#: config/mips/mips.opt:126 +#: config/mips/mips.opt:125 msgid "Generate floating-point multiply-add instructions" msgstr "" -#: config/mips/mips.opt:130 +#: config/mips/mips.opt:129 msgid "Use 32-bit general registers" msgstr "Выкарыстоўваць 32-бітныя галоўныя рэгістры" -#: config/mips/mips.opt:134 +#: config/mips/mips.opt:133 msgid "Use 64-bit general registers" msgstr "Выкарыстоўваць 64-бітныя галоўныя рэгістры" -#: config/mips/mips.opt:138 +#: config/mips/mips.opt:137 #, fuzzy msgid "Allow the use of hardware floating-point instructions" msgstr "Выкарыстоўваць апаратную \"плаваючую кропку\"" -#: config/mips/mips.opt:142 +#: config/mips/mips.opt:141 #, fuzzy msgid "Generate code for ISA level N" msgstr "Генерыраваць код для Intel as" -#: config/mips/mips.opt:146 +#: config/mips/mips.opt:145 #, fuzzy msgid "Generate mips16 code" msgstr "Стварыць код для DLL" -#: config/mips/mips.opt:150 +#: config/mips/mips.opt:149 msgid "Use MIPS-3D instructions" msgstr "" -#: config/mips/mips.opt:154 +#: config/mips/mips.opt:153 msgid "Use indirect calls" msgstr "" -#: config/mips/mips.opt:158 +#: config/mips/mips.opt:157 #, fuzzy msgid "Use a 32-bit long type" msgstr "Выкарыстоўваць 32-х бітны float" -#: config/mips/mips.opt:162 +#: config/mips/mips.opt:161 #, fuzzy msgid "Use a 64-bit long type" msgstr "Выкарыстоўваць 64-х бітны float" -#: config/mips/mips.opt:166 +#: config/mips/mips.opt:165 msgid "Don't optimize block moves" msgstr "" -#: config/mips/mips.opt:170 +#: config/mips/mips.opt:169 msgid "Use the mips-tfile postpass" msgstr "" -#: config/mips/mips.opt:174 +#: config/mips/mips.opt:173 msgid "Do not use a cache-flushing function before calling stack trampolines" msgstr "" -#: config/mips/mips.opt:178 +#: config/mips/mips.opt:177 #, fuzzy msgid "Generate normal-mode code" msgstr "Генерыраваць код для GNU ld" -#: config/mips/mips.opt:182 +#: config/mips/mips.opt:181 #, fuzzy msgid "Do not use MIPS-3D instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/mips/mips.opt:186 +#: config/mips/mips.opt:185 #, fuzzy msgid "Use paired-single floating-point instructions" msgstr "Выкарыстоўваць апаратную \"плаваючую кропку\"" -#: config/mips/mips.opt:190 +#: config/mips/mips.opt:189 msgid "When generating -mabicalls code, make the code suitable for use in shared libraries" msgstr "" -#: config/mips/mips.opt:194 +#: config/mips/mips.opt:193 msgid "Restrict the use of hardware floating-point instructions to 32-bit operations" msgstr "" -#: config/mips/mips.opt:198 +#: config/mips/mips.opt:197 msgid "Prevent the use of all hardware floating-point instructions" msgstr "" -#: config/mips/mips.opt:202 +#: config/mips/mips.opt:201 msgid "Optimize lui/addiu address loads" msgstr "" -#: config/mips/mips.opt:206 +#: config/mips/mips.opt:205 msgid "Assume all symbols have 32-bit values" msgstr "" -#: config/mips/mips.opt:210 +#: config/mips/mips.opt:209 msgid "Optimize the output for PROCESSOR" msgstr "" -#: config/mips/mips.opt:214 config/iq2000/iq2000.opt:45 +#: config/mips/mips.opt:213 config/iq2000/iq2000.opt:44 msgid "Put uninitialized constants in ROM (needs -membedded-data)" msgstr "" -#: config/mips/mips.opt:218 +#: config/mips/mips.opt:217 msgid "Perform VR4130-specific alignment optimizations" msgstr "" -#: config/mips/mips.opt:222 +#: config/mips/mips.opt:221 msgid "Lift restrictions on GOT size" msgstr "" -#: config/m68k/m68k.opt:24 +#: config/m68k/m68k.opt:23 msgid "Generate code for a 520X" msgstr "Ствараць код для 520X" -#: config/m68k/m68k.opt:28 +#: config/m68k/m68k.opt:27 #, fuzzy msgid "Generate code for a 5206e" msgstr "Ствараць код для 520X" -#: config/m68k/m68k.opt:32 +#: config/m68k/m68k.opt:31 #, fuzzy msgid "Generate code for a 528x" msgstr "Ствараць код для 520X" -#: config/m68k/m68k.opt:36 +#: config/m68k/m68k.opt:35 #, fuzzy msgid "Generate code for a 5307" msgstr "Ствараць код для 520X" -#: config/m68k/m68k.opt:40 +#: config/m68k/m68k.opt:39 #, fuzzy msgid "Generate code for a 5407" msgstr "Ствараць код для 520X" -#: config/m68k/m68k.opt:44 +#: config/m68k/m68k.opt:43 #, fuzzy msgid "Generate code for a ColdFire v4e" msgstr "Генерыраваць код для GNU ld" -#: config/m68k/m68k.opt:48 config/m68k/m68k.opt:101 +#: config/m68k/m68k.opt:47 config/m68k/m68k.opt:100 msgid "Generate code for a 68000" msgstr "Ствараць код для 68000" -#: config/m68k/m68k.opt:52 config/m68k/m68k.opt:105 +#: config/m68k/m68k.opt:51 config/m68k/m68k.opt:104 msgid "Generate code for a 68020" msgstr "Ствараць код для 68020" -#: config/m68k/m68k.opt:56 +#: config/m68k/m68k.opt:55 msgid "Generate code for a 68040, without any new instructions" msgstr "" -#: config/m68k/m68k.opt:60 +#: config/m68k/m68k.opt:59 msgid "Generate code for a 68060, without any new instructions" msgstr "" -#: config/m68k/m68k.opt:64 +#: config/m68k/m68k.opt:63 msgid "Generate code for a 68030" msgstr "Ствараць код для 68030" -#: config/m68k/m68k.opt:68 +#: config/m68k/m68k.opt:67 msgid "Generate code for a 68040" msgstr "Ствараць код для 68040" -#: config/m68k/m68k.opt:72 +#: config/m68k/m68k.opt:71 msgid "Generate code for a 68060" msgstr "Ствараць код для 68060" -#: config/m68k/m68k.opt:76 +#: config/m68k/m68k.opt:75 msgid "Generate code for a 68302" msgstr "Ствараць код для 68302" -#: config/m68k/m68k.opt:80 +#: config/m68k/m68k.opt:79 msgid "Generate code for a 68332" msgstr "Ствараць код для 68332" -#: config/m68k/m68k.opt:85 +#: config/m68k/m68k.opt:84 msgid "Generate code for a 68851" msgstr "Ствараць код для 68851" -#: config/m68k/m68k.opt:89 +#: config/m68k/m68k.opt:88 msgid "Generate code that uses 68881 floating-point instructions" msgstr "" -#: config/m68k/m68k.opt:93 +#: config/m68k/m68k.opt:92 msgid "Align variables on a 32-bit boundary" msgstr "" -#: config/m68k/m68k.opt:97 +#: config/m68k/m68k.opt:96 msgid "Use the bit-field instructions" msgstr "" -#: config/m68k/m68k.opt:109 +#: config/m68k/m68k.opt:108 msgid "Generate code for a cpu32" msgstr "Ствараць код для цп32" -#: config/m68k/m68k.opt:113 +#: config/m68k/m68k.opt:112 msgid "Enable ID based shared library" msgstr "" -#: config/m68k/m68k.opt:117 +#: config/m68k/m68k.opt:116 #, fuzzy msgid "Do not use the bit-field instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/m68k/m68k.opt:121 +#: config/m68k/m68k.opt:120 msgid "Use normal calling convention" msgstr "" -#: config/m68k/m68k.opt:125 +#: config/m68k/m68k.opt:124 msgid "Consider type 'int' to be 32 bits wide" msgstr "" -#: config/m68k/m68k.opt:129 +#: config/m68k/m68k.opt:128 msgid "Generate pc-relative code" msgstr "" -#: config/m68k/m68k.opt:133 +#: config/m68k/m68k.opt:132 msgid "Use different calling convention using 'rtd'" msgstr "" -#: config/m68k/m68k.opt:137 +#: config/m68k/m68k.opt:136 msgid "Enable separate data segment" msgstr "" -#: config/m68k/m68k.opt:141 config/bfin/bfin.opt:45 +#: config/m68k/m68k.opt:140 config/bfin/bfin.opt:44 msgid "ID of shared library to build" msgstr "" -#: config/m68k/m68k.opt:145 +#: config/m68k/m68k.opt:144 msgid "Consider type 'int' to be 16 bits wide" msgstr "" -#: config/m68k/m68k.opt:149 +#: config/m68k/m68k.opt:148 msgid "Generate code with library calls for floating point" msgstr "" -#: config/m68k/m68k.opt:153 +#: config/m68k/m68k.opt:152 msgid "Do not use unaligned memory references" msgstr "" -#: config/score/score.opt:32 +#: config/score/score.opt:31 #, fuzzy msgid "Disable bcnz instruction" msgstr "Не выкарыстоўваць інструкцыі AltiVec" -#: config/score/score.opt:36 +#: config/score/score.opt:35 msgid "Enable unaligned load/store instruction" msgstr "" -#: config/score/score.opt:40 +#: config/score/score.opt:39 #, fuzzy msgid "Enable mac instruction" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/score/score.opt:44 +#: config/score/score.opt:43 msgid "Support SCORE 5 ISA" msgstr "" -#: config/score/score.opt:48 +#: config/score/score.opt:47 msgid "Support SCORE 5U ISA" msgstr "" -#: config/score/score.opt:52 +#: config/score/score.opt:51 msgid "Support SCORE 7 ISA" msgstr "" -#: config/score/score.opt:56 +#: config/score/score.opt:55 msgid "Support SCORE 7D ISA" msgstr "" -#: config/vxworks.opt:25 +#: config/vxworks.opt:24 msgid "Assume the VxWorks RTP environment" msgstr "" -#: config/vxworks.opt:32 +#: config/vxworks.opt:31 msgid "Assume the VxWorks vThreads environment" msgstr "" -#: config/vax/vax.opt:24 config/vax/vax.opt:28 +#: config/vax/vax.opt:23 config/vax/vax.opt:27 msgid "Target DFLOAT double precision code" msgstr "" -#: config/vax/vax.opt:32 config/vax/vax.opt:36 +#: config/vax/vax.opt:31 config/vax/vax.opt:35 msgid "Generate GFLOAT double precision code" msgstr "" -#: config/vax/vax.opt:40 +#: config/vax/vax.opt:39 #, fuzzy msgid "Generate code for GNU assembler (gas)" msgstr "Генерыраваць код для GNU as" -#: config/vax/vax.opt:44 +#: config/vax/vax.opt:43 #, fuzzy msgid "Generate code for UNIX assembler" msgstr "Генерыраваць код для GNU as" -#: config/vax/vax.opt:48 +#: config/vax/vax.opt:47 msgid "Use VAXC structure conventions" msgstr "" -#: config/crx/crx.opt:24 +#: config/crx/crx.opt:23 #, fuzzy msgid "Support multiply accumulate instructions" msgstr "Не выкарыстоўваць інструкцыі AltiVec" -#: config/crx/crx.opt:28 +#: config/crx/crx.opt:27 #, fuzzy msgid "Do not use push to store function arguments" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/crx/crx.opt:32 +#: config/crx/crx.opt:31 msgid "Restrict doloop to the given nesting level" msgstr "" -#: config/v850/v850.opt:24 +#: config/v850/v850.opt:23 #, fuzzy msgid "Use registers r2 and r5" msgstr "невядомая назва рэгістра: %s" -#: config/v850/v850.opt:28 +#: config/v850/v850.opt:27 msgid "Use 4 byte entries in switch tables" msgstr "" -#: config/v850/v850.opt:32 +#: config/v850/v850.opt:31 msgid "Enable backend debugging" msgstr "" -#: config/v850/v850.opt:36 +#: config/v850/v850.opt:35 #, fuzzy msgid "Do not use the callt instruction" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/v850/v850.opt:40 +#: config/v850/v850.opt:39 msgid "Reuse r30 on a per function basis" msgstr "" -#: config/v850/v850.opt:44 +#: config/v850/v850.opt:43 msgid "Support Green Hills ABI" msgstr "" -#: config/v850/v850.opt:48 +#: config/v850/v850.opt:47 msgid "Prohibit PC relative function calls" msgstr "" -#: config/v850/v850.opt:52 +#: config/v850/v850.opt:51 msgid "Use stubs for function prologues" msgstr "" -#: config/v850/v850.opt:56 +#: config/v850/v850.opt:55 msgid "Set the max size of data eligible for the SDA area" msgstr "" -#: config/v850/v850.opt:60 +#: config/v850/v850.opt:59 #, fuzzy msgid "Enable the use of the short load instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/v850/v850.opt:64 +#: config/v850/v850.opt:63 msgid "Same as: -mep -mprolog-function" msgstr "" -#: config/v850/v850.opt:68 +#: config/v850/v850.opt:67 msgid "Set the max size of data eligible for the TDA area" msgstr "" -#: config/v850/v850.opt:72 +#: config/v850/v850.opt:71 msgid "Enforce strict alignment" msgstr "" -#: config/v850/v850.opt:79 +#: config/v850/v850.opt:78 msgid "Compile for the v850 processor" msgstr "" -#: config/v850/v850.opt:83 +#: config/v850/v850.opt:82 #, fuzzy msgid "Compile for the v850e processor" msgstr "Аптымізацыя для F930 працэсараў" -#: config/v850/v850.opt:87 +#: config/v850/v850.opt:86 #, fuzzy msgid "Compile for the v850e1 processor" msgstr "Аптымізацыя для F930 працэсараў" -#: config/v850/v850.opt:91 +#: config/v850/v850.opt:90 msgid "Set the max size of data eligible for the ZDA area" msgstr "" -#: config/linux.opt:25 +#: config/linux.opt:24 msgid "Use uClibc instead of GNU libc" msgstr "" -#: config/linux.opt:29 +#: config/linux.opt:28 msgid "Use GNU libc instead of uClibc" msgstr "" -#: config/frv/frv.opt:24 +#: config/frv/frv.opt:23 msgid "Use 4 media accumulators" msgstr "" -#: config/frv/frv.opt:28 +#: config/frv/frv.opt:27 msgid "Use 8 media accumulators" msgstr "" -#: config/frv/frv.opt:32 +#: config/frv/frv.opt:31 #, fuzzy msgid "Enable label alignment optimizations" msgstr "Уключаць SSA аптымізацыю" -#: config/frv/frv.opt:36 +#: config/frv/frv.opt:35 msgid "Dynamically allocate cc registers" msgstr "" -#: config/frv/frv.opt:43 +#: config/frv/frv.opt:42 msgid "Set the cost of branches" msgstr "" -#: config/frv/frv.opt:47 +#: config/frv/frv.opt:46 msgid "Enable conditional execution other than moves/scc" msgstr "" -#: config/frv/frv.opt:51 +#: config/frv/frv.opt:50 msgid "Change the maximum length of conditionally-executed sequences" msgstr "" -#: config/frv/frv.opt:55 +#: config/frv/frv.opt:54 msgid "Change the number of temporary registers that are available to conditionally-executed sequences" msgstr "" -#: config/frv/frv.opt:59 +#: config/frv/frv.opt:58 msgid "Enable conditional moves" msgstr "" -#: config/frv/frv.opt:63 +#: config/frv/frv.opt:62 msgid "Set the target CPU type" msgstr "" -#: config/frv/frv.opt:85 +#: config/frv/frv.opt:84 #, fuzzy msgid "Use fp double instructions" msgstr "Не выкарыстоўваць інструкцыі AltiVec" -#: config/frv/frv.opt:89 +#: config/frv/frv.opt:88 msgid "Change the ABI to allow double word insns" msgstr "" -#: config/frv/frv.opt:93 config/bfin/bfin.opt:53 +#: config/frv/frv.opt:92 config/bfin/bfin.opt:52 msgid "Enable Function Descriptor PIC mode" msgstr "" -#: config/frv/frv.opt:97 +#: config/frv/frv.opt:96 msgid "Just use icc0/fcc0" msgstr "" -#: config/frv/frv.opt:101 +#: config/frv/frv.opt:100 msgid "Only use 32 FPRs" msgstr "" -#: config/frv/frv.opt:105 +#: config/frv/frv.opt:104 msgid "Use 64 FPRs" msgstr "" -#: config/frv/frv.opt:109 +#: config/frv/frv.opt:108 msgid "Only use 32 GPRs" msgstr "" -#: config/frv/frv.opt:113 +#: config/frv/frv.opt:112 msgid "Use 64 GPRs" msgstr "" -#: config/frv/frv.opt:117 +#: config/frv/frv.opt:116 msgid "Enable use of GPREL for read-only data in FDPIC" msgstr "" -#: config/frv/frv.opt:125 +#: config/frv/frv.opt:124 msgid "Enable inlining of PLT in function calls" msgstr "" -#: config/frv/frv.opt:129 +#: config/frv/frv.opt:128 msgid "Enable PIC support for building libraries" msgstr "" -#: config/frv/frv.opt:133 +#: config/frv/frv.opt:132 msgid "Follow the EABI linkage requirements" msgstr "" -#: config/frv/frv.opt:137 +#: config/frv/frv.opt:136 msgid "Disallow direct calls to global functions" msgstr "" -#: config/frv/frv.opt:141 +#: config/frv/frv.opt:140 #, fuzzy msgid "Use media instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/frv/frv.opt:145 +#: config/frv/frv.opt:144 msgid "Use multiply add/subtract instructions" msgstr "" -#: config/frv/frv.opt:149 +#: config/frv/frv.opt:148 msgid "Enable optimizing &&/|| in conditional execution" msgstr "" -#: config/frv/frv.opt:153 +#: config/frv/frv.opt:152 msgid "Enable nested conditional execution optimizations" msgstr "" -#: config/frv/frv.opt:158 +#: config/frv/frv.opt:157 msgid "Do not mark ABI switches in e_flags" msgstr "" -#: config/frv/frv.opt:162 +#: config/frv/frv.opt:161 msgid "Remove redundant membars" msgstr "" -#: config/frv/frv.opt:166 +#: config/frv/frv.opt:165 msgid "Pack VLIW instructions" msgstr "" -#: config/frv/frv.opt:170 +#: config/frv/frv.opt:169 msgid "Enable setting GPRs to the result of comparisons" msgstr "" -#: config/frv/frv.opt:174 +#: config/frv/frv.opt:173 msgid "Change the amount of scheduler lookahead" msgstr "" -#: config/frv/frv.opt:182 +#: config/frv/frv.opt:181 msgid "Assume a large TLS segment" msgstr "" -#: config/frv/frv.opt:186 +#: config/frv/frv.opt:185 msgid "Do not assume a large TLS segment" msgstr "" -#: config/frv/frv.opt:191 +#: config/frv/frv.opt:190 msgid "Cause gas to print tomcat statistics" msgstr "" -#: config/frv/frv.opt:196 +#: config/frv/frv.opt:195 msgid "Link with the library-pic libraries" msgstr "" -#: config/frv/frv.opt:200 +#: config/frv/frv.opt:199 msgid "Allow branches to be packed with other instructions" msgstr "" -#: config/avr/avr.opt:24 +#: config/avr/avr.opt:23 msgid "Use subroutines for function prologues and epilogues" msgstr "" -#: config/avr/avr.opt:28 +#: config/avr/avr.opt:27 msgid "Select the target MCU" msgstr "" -#: config/avr/avr.opt:35 +#: config/avr/avr.opt:34 msgid "Use STACK as the initial value of the stack pointer" msgstr "" -#: config/avr/avr.opt:39 +#: config/avr/avr.opt:38 #, fuzzy msgid "Use an 8-bit 'int' type" msgstr "Выкарыстоўваць 32-х бітны int" -#: config/avr/avr.opt:43 +#: config/avr/avr.opt:42 msgid "Change the stack pointer without disabling interrupts" msgstr "" -#: config/avr/avr.opt:47 +#: config/avr/avr.opt:46 msgid "Do not generate tablejump insns" msgstr "" -#: config/avr/avr.opt:57 +#: config/avr/avr.opt:56 msgid "Use rjmp/rcall (limited range) on >8K devices" msgstr "" -#: config/avr/avr.opt:61 +#: config/avr/avr.opt:60 msgid "Output instruction sizes to the asm file" msgstr "" -#: config/avr/avr.opt:65 +#: config/avr/avr.opt:64 msgid "Change only the low 8 bits of the stack pointer" msgstr "" -#: config/bfin/bfin.opt:24 +#: config/bfin/bfin.opt:23 msgid "Omit frame pointer for leaf functions" msgstr "" -#: config/bfin/bfin.opt:28 +#: config/bfin/bfin.opt:27 msgid "Program is entirely located in low 64k of memory" msgstr "" -#: config/bfin/bfin.opt:32 +#: config/bfin/bfin.opt:31 msgid "Work around a hardware anomaly by adding a number of NOPs before a" msgstr "" -#: config/bfin/bfin.opt:37 +#: config/bfin/bfin.opt:36 msgid "Avoid speculative loads to work around a hardware anomaly." msgstr "" -#: config/bfin/bfin.opt:41 +#: config/bfin/bfin.opt:40 msgid "Enabled ID based shared library" msgstr "" -#: config/bfin/bfin.opt:49 +#: config/bfin/bfin.opt:48 msgid "Avoid generating pc-relative calls; use indirection" msgstr "" -#: config/m32c/m32c.opt:29 +#: config/m32c/m32c.opt:28 msgid "Compile code for R8C variants" msgstr "" -#: config/m32c/m32c.opt:33 +#: config/m32c/m32c.opt:32 msgid "Compile code for M16C variants" msgstr "" -#: config/m32c/m32c.opt:37 +#: config/m32c/m32c.opt:36 msgid "Compile code for M32CM variants" msgstr "" -#: config/m32c/m32c.opt:41 +#: config/m32c/m32c.opt:40 msgid "Compile code for M32C variants" msgstr "" -#: config/m32c/m32c.opt:45 +#: config/m32c/m32c.opt:44 msgid "Number of memreg bytes (default: 16, range: 0..16)" msgstr "" -#: config/s390/tpf.opt:24 +#: config/s390/tpf.opt:23 msgid "Enable TPF-OS tracing code" msgstr "" -#: config/s390/tpf.opt:28 +#: config/s390/tpf.opt:27 msgid "Specify main object for TPF-OS" msgstr "" -#: config/s390/s390.opt:24 +#: config/s390/s390.opt:23 msgid "31 bit ABI" msgstr "" -#: config/s390/s390.opt:28 +#: config/s390/s390.opt:27 msgid "64 bit ABI" msgstr "" -#: config/s390/s390.opt:36 +#: config/s390/s390.opt:35 msgid "Maintain backchain pointer" msgstr "" -#: config/s390/s390.opt:40 +#: config/s390/s390.opt:39 msgid "Additional debug prints" msgstr "" -#: config/s390/s390.opt:44 +#: config/s390/s390.opt:43 msgid "ESA/390 architecture" msgstr "" -#: config/s390/s390.opt:48 +#: config/s390/s390.opt:47 #, fuzzy msgid "Enable fused multiply/add instructions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: config/s390/s390.opt:64 +#: config/s390/s390.opt:63 msgid "Use packed stack layout" msgstr "" -#: config/s390/s390.opt:68 +#: config/s390/s390.opt:67 msgid "Use bras for executable < 64k" msgstr "" -#: config/s390/s390.opt:72 +#: config/s390/s390.opt:71 msgid "Don't use hardware fp" msgstr "Не выкарыстоўваць апаратную fp" -#: config/s390/s390.opt:76 +#: config/s390/s390.opt:75 msgid "Set the max. number of bytes which has to be left to stack size before a trap instruction is triggered" msgstr "" -#: config/s390/s390.opt:80 +#: config/s390/s390.opt:79 msgid "Emit extra code in the function prologue in order to trap if the stack size exceeds the given limit" msgstr "" -#: config/s390/s390.opt:88 +#: config/s390/s390.opt:87 msgid "mvcle use" msgstr "" -#: config/s390/s390.opt:92 +#: config/s390/s390.opt:91 msgid "Warn if a function uses alloca or creates an array with dynamic size" msgstr "" -#: config/s390/s390.opt:96 +#: config/s390/s390.opt:95 msgid "Warn if a single function's framesize exceeds the given framesize" msgstr "" -#: config/s390/s390.opt:100 +#: config/s390/s390.opt:99 msgid "z/Architecture" msgstr "" -#: config/mn10300/mn10300.opt:24 +#: config/mn10300/mn10300.opt:23 msgid "Target the AM33 processor" msgstr "Мэта - AM33 працэсар" -#: config/mn10300/mn10300.opt:28 +#: config/mn10300/mn10300.opt:27 #, fuzzy msgid "Target the AM33/2.0 processor" msgstr "Мэта - AM33 працэсар" -#: config/mn10300/mn10300.opt:32 +#: config/mn10300/mn10300.opt:31 msgid "Work around hardware multiply bug" msgstr "" -#: config/mn10300/mn10300.opt:37 +#: config/mn10300/mn10300.opt:36 msgid "Enable linker relaxations" msgstr "" -#: config/mn10300/mn10300.opt:41 +#: config/mn10300/mn10300.opt:40 msgid "Return pointers in both a0 and d0" msgstr "" -#: config/iq2000/iq2000.opt:28 +#: config/iq2000/iq2000.opt:27 msgid "Specify CPU for scheduling purposes" msgstr "" -#: config/iq2000/iq2000.opt:36 +#: config/iq2000/iq2000.opt:35 msgid "Use GP relative sdata/sbss sections" msgstr "" -#: config/iq2000/iq2000.opt:41 +#: config/iq2000/iq2000.opt:40 msgid "No default crt0.o" msgstr "" -#: c.opt:42 +#: c.opt:41 msgid "Assert the to . Putting '-' before disables the to " msgstr "" -#: c.opt:46 +#: c.opt:45 #, fuzzy msgid "Do not discard comments" msgstr "незавершаныя каментарыі" -#: c.opt:50 +#: c.opt:49 msgid "Do not discard comments in macro expansions" msgstr "" -#: c.opt:54 +#: c.opt:53 msgid "Define a with as its value. If just is given, is taken to be 1" msgstr "" -#: c.opt:61 +#: c.opt:60 msgid "Add

to the end of the main framework include path" msgstr "" -#: c.opt:65 +#: c.opt:64 msgid "Print the name of header files as they are used" msgstr "" -#: c.opt:69 c.opt:797 +#: c.opt:68 c.opt:796 msgid "Add to the end of the main include path" msgstr "" -#: c.opt:73 +#: c.opt:72 msgid "Generate make dependencies" msgstr "" -#: c.opt:77 +#: c.opt:76 msgid "Generate make dependencies and compile" msgstr "" -#: c.opt:81 +#: c.opt:80 msgid "Write dependency output to the given file" msgstr "" -#: c.opt:85 +#: c.opt:84 msgid "Treat missing header files as generated files" msgstr "" -#: c.opt:89 +#: c.opt:88 msgid "Like -M but ignore system header files" msgstr "" -#: c.opt:93 +#: c.opt:92 msgid "Like -MD but ignore system header files" msgstr "" -#: c.opt:97 +#: c.opt:96 #, fuzzy msgid "Generate phony targets for all headers" msgstr "Генерыраваць код для Intel as" -#: c.opt:101 +#: c.opt:100 msgid "Add a MAKE-quoted target" msgstr "" -#: c.opt:105 +#: c.opt:104 msgid "Add an unquoted target" msgstr "" -#: c.opt:109 +#: c.opt:108 #, fuzzy msgid "Do not generate #line directives" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: c.opt:113 +#: c.opt:112 msgid "Undefine " msgstr "" -#: c.opt:117 +#: c.opt:116 msgid "Warn about things that will change when compiling with an ABI-compliant compiler" msgstr "" -#: c.opt:121 +#: c.opt:120 msgid "Warn about suspicious uses of memory addresses" msgstr "" -#: c.opt:125 +#: c.opt:124 msgid "Enable most warning messages" msgstr "" -#: c.opt:129 +#: c.opt:128 msgid "Warn whenever an Objective-C assignment is being intercepted by the garbage collector" msgstr "" -#: c.opt:133 +#: c.opt:132 msgid "Warn about casting functions to incompatible types" msgstr "" -#: c.opt:137 +#: c.opt:136 msgid "Warn about C constructs that are not in the common subset of C and C++" msgstr "" -#: c.opt:142 +#: c.opt:141 msgid "Warn about casts which discard qualifiers" msgstr "" -#: c.opt:146 +#: c.opt:145 msgid "Warn about subscripts whose type is \"char\"" msgstr "" -#: c.opt:150 +#: c.opt:149 msgid "Warn about possibly nested block comments, and C++ comments spanning more than one physical line" msgstr "" -#: c.opt:154 +#: c.opt:153 msgid "Synonym for -Wcomment" msgstr "" -#: c.opt:158 +#: c.opt:157 msgid "Warn about possibly confusing type conversions" msgstr "" -#: c.opt:162 +#: c.opt:161 msgid "Warn when all constructors and destructors are private" msgstr "" -#: c.opt:166 +#: c.opt:165 msgid "Warn when a declaration is found after a statement" msgstr "" -#: c.opt:170 +#: c.opt:169 msgid "Warn about deprecated compiler features" msgstr "" -#: c.opt:174 +#: c.opt:173 msgid "Warn about compile-time integer division by zero" msgstr "" -#: c.opt:178 +#: c.opt:177 msgid "Warn about violations of Effective C++ style rules" msgstr "" -#: c.opt:182 +#: c.opt:181 msgid "Warn about stray tokens after #elif and #endif" msgstr "" -#: c.opt:190 +#: c.opt:189 #, fuzzy msgid "Make implicit function declarations an error" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: c.opt:194 +#: c.opt:193 msgid "Warn if testing floating point numbers for equality" msgstr "" -#: c.opt:198 +#: c.opt:197 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies" msgstr "" -#: c.opt:202 +#: c.opt:201 #, fuzzy msgid "Warn if passing too many arguments to a function for its format string" msgstr "вельмі шмат аргумэнтаў у функцыі `%s'" -#: c.opt:206 +#: c.opt:205 msgid "Warn about format strings that are not literals" msgstr "" -#: c.opt:210 +#: c.opt:209 msgid "Warn about possible security problems with format functions" msgstr "" -#: c.opt:214 +#: c.opt:213 msgid "Warn about strftime formats yielding 2-digit years" msgstr "" -#: c.opt:218 +#: c.opt:217 msgid "Warn about zero-length formats" msgstr "" -#: c.opt:225 +#: c.opt:224 msgid "Warn about variables which are initialized to themselves" msgstr "" -#: c.opt:232 +#: c.opt:231 msgid "Warn about implicit function declarations" msgstr "" -#: c.opt:236 +#: c.opt:235 msgid "Warn when a declaration does not specify a type" msgstr "" -#: c.opt:240 +#: c.opt:239 msgid "Deprecated. This switch has no effect" msgstr "" -#: c.opt:244 +#: c.opt:243 msgid "Warn when there is a cast to a pointer from an integer of a different size" msgstr "" -#: c.opt:248 +#: c.opt:247 msgid "Warn about invalid uses of the \"offsetof\" macro" msgstr "" -#: c.opt:252 +#: c.opt:251 msgid "Warn about PCH files that are found but not used" msgstr "" -#: c.opt:256 +#: c.opt:255 msgid "Do not warn about using \"long long\" when -pedantic" msgstr "" -#: c.opt:260 +#: c.opt:259 #, fuzzy msgid "Warn about suspicious declarations of \"main\"" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c.opt:264 +#: c.opt:263 msgid "Warn about possibly missing braces around initializers" msgstr "" -#: c.opt:268 +#: c.opt:267 #, fuzzy msgid "Warn about global functions without previous declarations" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: c.opt:272 +#: c.opt:271 msgid "Warn about missing fields in struct initializers" msgstr "" -#: c.opt:276 +#: c.opt:275 msgid "Warn about functions which might be candidates for format attributes" msgstr "" -#: c.opt:280 +#: c.opt:279 msgid "Warn about user-specified include directories that do not exist" msgstr "" -#: c.opt:284 +#: c.opt:283 msgid "Warn about global functions without prototypes" msgstr "" -#: c.opt:288 +#: c.opt:287 #, fuzzy msgid "Warn about use of multi-character character constants" msgstr "мнагасімвальная сімвальная канстанта" -#: c.opt:292 +#: c.opt:291 msgid "Warn about \"extern\" declarations not at file scope" msgstr "" -#: c.opt:296 +#: c.opt:295 msgid "Warn when non-templatized friend functions are declared within a template" msgstr "" -#: c.opt:300 +#: c.opt:299 msgid "Warn about non-virtual destructors" msgstr "" -#: c.opt:304 +#: c.opt:303 msgid "Warn about NULL being passed to argument slots marked as requiring non-NULL" msgstr "" -#: c.opt:308 +#: c.opt:307 msgid "Warn about non-normalised Unicode strings" msgstr "" -#: c.opt:312 +#: c.opt:311 msgid "Warn if a C-style cast is used in a program" msgstr "" -#: c.opt:316 +#: c.opt:315 msgid "Warn if an old-style parameter definition is used" msgstr "" -#: c.opt:320 +#: c.opt:319 msgid "Warn if a string is longer than the maximum portable length specified by the standard" msgstr "" -#: c.opt:324 +#: c.opt:323 msgid "Warn about overloaded virtual function names" msgstr "" -#: c.opt:328 +#: c.opt:327 msgid "Warn about overriding initializers without side effects" msgstr "" -#: c.opt:332 +#: c.opt:331 msgid "Warn about possibly missing parentheses" msgstr "" -#: c.opt:336 +#: c.opt:335 msgid "Warn when converting the type of pointers to member functions" msgstr "" -#: c.opt:340 +#: c.opt:339 msgid "Warn about function pointer arithmetic" msgstr "" -#: c.opt:344 +#: c.opt:343 msgid "Warn when a pointer is cast to an integer of a different size" msgstr "" -#: c.opt:348 +#: c.opt:347 msgid "Warn about misuses of pragmas" msgstr "" -#: c.opt:352 +#: c.opt:351 msgid "Warn if inherited methods are unimplemented" msgstr "" -#: c.opt:356 +#: c.opt:355 msgid "Warn about multiple declarations of the same object" msgstr "" -#: c.opt:360 +#: c.opt:359 msgid "Warn when the compiler reorders code" msgstr "" -#: c.opt:364 +#: c.opt:363 msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)" msgstr "" -#: c.opt:368 +#: c.opt:367 msgid "Warn if a selector has multiple methods" msgstr "" -#: c.opt:372 +#: c.opt:371 msgid "Warn about possible violations of sequence point rules" msgstr "" -#: c.opt:376 +#: c.opt:375 msgid "Warn about signed-unsigned comparisons" msgstr "" -#: c.opt:380 +#: c.opt:379 msgid "Warn when overload promotes from unsigned to signed" msgstr "" -#: c.opt:384 +#: c.opt:383 msgid "Warn about uncasted NULL used as sentinel" msgstr "" -#: c.opt:388 +#: c.opt:387 #, fuzzy msgid "Warn about unprototyped function declarations" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c.opt:392 +#: c.opt:391 msgid "Warn if type signatures of candidate methods do not match exactly" msgstr "" -#: c.opt:396 +#: c.opt:395 msgid "Warn when synthesis behavior differs from Cfront" msgstr "" -#: c.opt:400 common.opt:158 +#: c.opt:399 common.opt:157 msgid "Do not suppress warnings from system headers" msgstr "" -#: c.opt:404 +#: c.opt:403 msgid "Warn about features not present in traditional C" msgstr "" -#: c.opt:408 +#: c.opt:407 msgid "Warn if trigraphs are encountered that might affect the meaning of the program" msgstr "" -#: c.opt:412 +#: c.opt:411 msgid "Warn about @selector()s without previously declared methods" msgstr "" -#: c.opt:416 +#: c.opt:415 msgid "Warn if an undefined macro is used in an #if directive" msgstr "" -#: c.opt:420 +#: c.opt:419 msgid "Warn about unrecognized pragmas" msgstr "" -#: c.opt:424 +#: c.opt:423 msgid "Warn about macros defined in the main file that are not used" msgstr "" -#: c.opt:428 +#: c.opt:427 msgid "Do not warn about using variadic macros when -pedantic" msgstr "" -#: c.opt:432 +#: c.opt:431 msgid "In C++, nonzero means warn about deprecated conversion from string literals to `char *'. In C, similar warning, except that the conversion is of course not deprecated by the ISO C standard." msgstr "" -#: c.opt:436 +#: c.opt:435 msgid "Warn when a pointer differs in signedness in an assignment" msgstr "" -#: c.opt:440 +#: c.opt:439 msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)" msgstr "" -#: c.opt:448 +#: c.opt:447 msgid "Enforce class member access control semantics" msgstr "" -#: c.opt:455 +#: c.opt:454 msgid "Change when template instances are emitted" msgstr "" -#: c.opt:459 +#: c.opt:458 msgid "Recognize the \"asm\" keyword" msgstr "" -#: c.opt:463 +#: c.opt:462 #, fuzzy msgid "Recognize built-in functions" msgstr "Не генерыраваць сімвальныя інструкцыі" -#: c.opt:470 +#: c.opt:469 msgid "Check the return value of new" msgstr "" -#: c.opt:474 +#: c.opt:473 msgid "Allow the arguments of the '?' operator to have different types" msgstr "" -#: c.opt:478 +#: c.opt:477 msgid "Reduce the size of object files" msgstr "" -#: c.opt:482 +#: c.opt:481 msgid "Use class for constant strings" msgstr "" -#: c.opt:486 +#: c.opt:485 #, fuzzy msgid "Inline member functions by default" msgstr "у функцыі \"%s\":" -#: c.opt:490 +#: c.opt:489 msgid "Permit '$' as an identifier character" msgstr "" -#: c.opt:497 +#: c.opt:496 #, fuzzy msgid "Generate code to check exception specifications" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c.opt:504 +#: c.opt:503 msgid "Convert all strings and character constants to character set " msgstr "" -#: c.opt:508 +#: c.opt:507 msgid "Permit universal character names (\\u and \\U) in identifiers" msgstr "" -#: c.opt:512 +#: c.opt:511 msgid "Specify the default character set for source files" msgstr "" -#: c.opt:520 +#: c.opt:519 msgid "Scope of for-init-statement variables is local to the loop" msgstr "" -#: c.opt:524 +#: c.opt:523 msgid "Do not assume that standard C libraries and \"main\" exist" msgstr "" -#: c.opt:528 +#: c.opt:527 msgid "Recognize GNU-defined keywords" msgstr "" -#: c.opt:532 +#: c.opt:531 msgid "Generate code for GNU runtime environment" msgstr "" -#: c.opt:536 +#: c.opt:535 msgid "Use traditional GNU semantics for inline functions" msgstr "" -#: c.opt:549 +#: c.opt:548 msgid "Assume normal C execution environment" msgstr "" -#: c.opt:553 +#: c.opt:552 msgid "Enable support for huge objects" msgstr "" -#: c.opt:557 +#: c.opt:556 msgid "Export functions even if they can be inlined" msgstr "" -#: c.opt:561 +#: c.opt:560 #, fuzzy msgid "Emit implicit instantiations of inline templates" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: c.opt:565 +#: c.opt:564 #, fuzzy msgid "Emit implicit instantiations of templates" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: c.opt:569 +#: c.opt:568 msgid "Inject friend functions into enclosing namespace" msgstr "" -#: c.opt:576 +#: c.opt:575 msgid "Don't warn about uses of Microsoft extensions" msgstr "" -#: c.opt:586 +#: c.opt:585 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment" msgstr "" -#: c.opt:590 +#: c.opt:589 msgid "Assume that receivers of Objective-C messages may be nil" msgstr "" -#: c.opt:602 +#: c.opt:601 msgid "Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed" msgstr "" -#: c.opt:606 +#: c.opt:605 msgid "Allow fast jumps to the message dispatcher" msgstr "" -#: c.opt:612 +#: c.opt:611 msgid "Enable Objective-C exception and synchronization syntax" msgstr "" -#: c.opt:616 +#: c.opt:615 msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs" msgstr "" -#: c.opt:621 +#: c.opt:620 #, fuzzy msgid "Enable Objective-C setjmp exception handling runtime" msgstr "Уключыць апрацоўку выключэньняў" -#: c.opt:625 fortran/lang.opt:134 +#: c.opt:624 fortran/lang.opt:134 msgid "Enable OpenMP" msgstr "" -#: c.opt:629 +#: c.opt:628 msgid "Recognize C++ kewords like \"compl\" and \"xor\"" msgstr "" -#: c.opt:633 +#: c.opt:632 #, fuzzy msgid "Enable optional diagnostics" msgstr "Уключаць SSA аптымізацыю" -#: c.opt:640 +#: c.opt:639 msgid "Look for and use PCH files even when preprocessing" msgstr "" -#: c.opt:644 +#: c.opt:643 msgid "Downgrade conformance errors to warnings" msgstr "" -#: c.opt:648 +#: c.opt:647 msgid "Treat the input file as already preprocessed" msgstr "" -#: c.opt:652 +#: c.opt:651 msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime" msgstr "" -#: c.opt:656 +#: c.opt:655 msgid "Enable automatic template instantiation" msgstr "" -#: c.opt:660 +#: c.opt:659 msgid "Generate run time type descriptor information" msgstr "" -#: c.opt:664 +#: c.opt:663 msgid "Use the same size for double as for float" msgstr "" -#: c.opt:668 fortran/lang.opt:226 +#: c.opt:667 fortran/lang.opt:226 msgid "Use the narrowest integer type possible for enumeration types" msgstr "" -#: c.opt:672 +#: c.opt:671 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"" msgstr "" -#: c.opt:676 +#: c.opt:675 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed" msgstr "" -#: c.opt:680 +#: c.opt:679 msgid "Make \"char\" signed by default" msgstr "" -#: c.opt:687 +#: c.opt:686 msgid "Display statistics accumulated during compilation" msgstr "" -#: c.opt:694 +#: c.opt:693 msgid "Distance between tab stops for column reporting" msgstr "" -#: c.opt:698 +#: c.opt:697 msgid "Specify maximum template instantiation depth" msgstr "" -#: c.opt:705 +#: c.opt:704 #, fuzzy msgid "Do not generate thread-safe code for initializing local statics" msgstr "Генерыраваць код для Intel as" -#: c.opt:709 +#: c.opt:708 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned" msgstr "" -#: c.opt:713 +#: c.opt:712 msgid "Make \"char\" unsigned by default" msgstr "" -#: c.opt:717 +#: c.opt:716 msgid "Use __cxa_atexit to register destructors" msgstr "" -#: c.opt:721 +#: c.opt:720 msgid "Use __cxa_get_exception_ptr in exception handling" msgstr "" -#: c.opt:725 +#: c.opt:724 msgid "Marks all inlined methods as having hidden visibility" msgstr "" -#: c.opt:729 +#: c.opt:728 msgid "Discard unused virtual functions" msgstr "" -#: c.opt:733 +#: c.opt:732 msgid "Implement vtables using thunks" msgstr "" -#: c.opt:737 +#: c.opt:736 msgid "Emit common-like symbols as weak symbols" msgstr "" -#: c.opt:741 +#: c.opt:740 msgid "Convert all wide strings and character constants to character set " msgstr "" -#: c.opt:745 +#: c.opt:744 msgid "Generate a #line directive pointing at the current working directory" msgstr "" -#: c.opt:749 +#: c.opt:748 msgid "Emit cross referencing information" msgstr "" -#: c.opt:753 +#: c.opt:752 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode" msgstr "" -#: c.opt:757 +#: c.opt:756 msgid "Dump declarations to a .decl file" msgstr "" -#: c.opt:761 c.opt:793 +#: c.opt:760 c.opt:792 msgid "Add to the end of the system include path" msgstr "" -#: c.opt:765 +#: c.opt:764 msgid "Accept definition of macros in " msgstr "" -#: c.opt:769 +#: c.opt:768 msgid "-imultilib Set to be the multilib include subdirectory" msgstr "" -#: c.opt:773 +#: c.opt:772 msgid "Include the contents of before other files" msgstr "" -#: c.opt:777 +#: c.opt:776 msgid "Specify as a prefix for next two options" msgstr "" -#: c.opt:781 +#: c.opt:780 msgid "Set to be the system root directory" msgstr "" -#: c.opt:785 +#: c.opt:784 msgid "Add to the start of the system include path" msgstr "" -#: c.opt:789 +#: c.opt:788 msgid "Add to the end of the quote include path" msgstr "" -#: c.opt:810 +#: c.opt:809 msgid "Do not search standard system include directories (those specified with -isystem will still be used)" msgstr "" -#: c.opt:814 +#: c.opt:813 msgid "Do not search standard system include directories for C++" msgstr "" -#: c.opt:830 +#: c.opt:829 msgid "Generate C header of platform-specific features" msgstr "" -#: c.opt:834 +#: c.opt:833 msgid "Print a checksum of the executable for PCH validity checking, and stop" msgstr "" -#: c.opt:838 +#: c.opt:837 msgid "Remap file names when including files" msgstr "" -#: c.opt:842 +#: c.opt:841 msgid "Conform to the ISO 1998 C++ standard" msgstr "" -#: c.opt:846 c.opt:874 +#: c.opt:845 c.opt:873 msgid "Conform to the ISO 1990 C standard" msgstr "" -#: c.opt:850 c.opt:882 +#: c.opt:849 c.opt:881 msgid "Conform to the ISO 1999 C standard" msgstr "" -#: c.opt:854 +#: c.opt:853 msgid "Deprecated in favor of -std=c99" msgstr "" -#: c.opt:858 +#: c.opt:857 msgid "Conform to the ISO 1998 C++ standard with GNU extensions" msgstr "" -#: c.opt:862 +#: c.opt:861 msgid "Conform to the ISO 1990 C standard with GNU extensions" msgstr "" -#: c.opt:866 +#: c.opt:865 msgid "Conform to the ISO 1999 C standard with GNU extensions" msgstr "" -#: c.opt:870 +#: c.opt:869 msgid "Deprecated in favor of -std=gnu99" msgstr "" -#: c.opt:878 +#: c.opt:877 msgid "Conform to the ISO 1990 C standard as amended in 1994" msgstr "" -#: c.opt:886 +#: c.opt:885 msgid "Deprecated in favor of -std=iso9899:1999" msgstr "" -#: c.opt:890 +#: c.opt:889 msgid "Enable traditional preprocessing" msgstr "" -#: c.opt:894 +#: c.opt:893 msgid "Support ISO C trigraphs" msgstr "" -#: c.opt:898 +#: c.opt:897 msgid "Do not predefine system-specific and GCC-specific macros" msgstr "" -#: c.opt:902 +#: c.opt:901 msgid "Enable verbose output" msgstr "" -#: java/lang.opt:66 +#: java/lang.opt:65 msgid "Warn if a deprecated compiler feature, class, method, or field is used" msgstr "" -#: java/lang.opt:70 +#: java/lang.opt:69 msgid "Warn if deprecated empty statements are found" msgstr "" -#: java/lang.opt:74 +#: java/lang.opt:73 msgid "Warn if .class files are out of date" msgstr "" -#: java/lang.opt:78 +#: java/lang.opt:77 msgid "Warn if modifiers are specified when not necessary" msgstr "" -#: java/lang.opt:82 +#: java/lang.opt:81 msgid "Deprecated; use --classpath instead" msgstr "" -#: java/lang.opt:86 +#: java/lang.opt:85 msgid "Permit the use of the assert keyword" msgstr "" -#: java/lang.opt:108 +#: java/lang.opt:107 msgid "Replace system path" msgstr "" -#: java/lang.opt:112 +#: java/lang.opt:111 #, fuzzy msgid "Generate checks for references to NULL" msgstr "Стварыць код для DLL" -#: java/lang.opt:116 +#: java/lang.opt:115 msgid "Set class path" msgstr "" -#: java/lang.opt:123 +#: java/lang.opt:122 msgid "Output a class file" msgstr "" -#: java/lang.opt:127 +#: java/lang.opt:126 msgid "Alias for -femit-class-file" msgstr "" -#: java/lang.opt:131 +#: java/lang.opt:130 msgid "Choose input encoding (defaults from your locale)" msgstr "" -#: java/lang.opt:135 +#: java/lang.opt:134 msgid "Set the extension directory path" msgstr "" -#: java/lang.opt:139 +#: java/lang.opt:138 msgid "Input file is a file with a list of filenames to compile" msgstr "" -#: java/lang.opt:143 +#: java/lang.opt:142 msgid "Always check for non gcj generated classes archives" msgstr "" -#: java/lang.opt:147 +#: java/lang.opt:146 msgid "Assume the runtime uses a hash table to map an object to its synchronization structure" msgstr "" -#: java/lang.opt:151 +#: java/lang.opt:150 msgid "Generate instances of Class at runtime" msgstr "" -#: java/lang.opt:155 +#: java/lang.opt:154 msgid "Use offset tables for virtual method calls" msgstr "" -#: java/lang.opt:162 +#: java/lang.opt:161 msgid "Assume native functions are implemented using JNI" msgstr "" -#: java/lang.opt:166 +#: java/lang.opt:165 msgid "Enable optimization of static class initialization code" msgstr "" -#: java/lang.opt:173 +#: java/lang.opt:172 msgid "Reduce the amount of reflection meta-data generated" msgstr "" -#: java/lang.opt:177 +#: java/lang.opt:176 msgid "Enable assignability checks for stores into object arrays" msgstr "" -#: java/lang.opt:181 +#: java/lang.opt:180 #, fuzzy msgid "Generate code for the Boehm GC" msgstr "Генерыраваць код для Intel as" -#: java/lang.opt:185 +#: java/lang.opt:184 msgid "Call a library routine to do integer divisions" msgstr "" -#: java/lang.opt:189 +#: java/lang.opt:188 msgid "Generated should be loaded by bootstrap loader" msgstr "" @@ -14280,1048 +14280,1048 @@ msgid "Specify options to GNAT" msgstr "" -#: treelang/lang.opt:30 +#: treelang/lang.opt:29 msgid "Trace lexical analysis" msgstr "" -#: treelang/lang.opt:34 +#: treelang/lang.opt:33 #, fuzzy msgid "Trace the parsing process" msgstr "Мэта - AM33 працэсар" -#: common.opt:28 +#: common.opt:27 #, fuzzy msgid "Display this information" msgstr " --help Адлюстраваць гэту інфармацыю\n" -#: common.opt:32 +#: common.opt:31 msgid "Set parameter to value. See below for a complete list of parameters" msgstr "" -#: common.opt:42 +#: common.opt:41 msgid "Put global and static data smaller than bytes into a special section (on some targets)" msgstr "" -#: common.opt:46 +#: common.opt:45 #, fuzzy msgid "Set optimization level to " msgstr "аптымізацыя уключана" -#: common.opt:50 +#: common.opt:49 #, fuzzy msgid "Optimize for space rather than speed" msgstr "Аптымізацыя для SparcLite працэсараў" -#: common.opt:54 +#: common.opt:53 msgid "This switch is deprecated; use -Wextra instead" msgstr "" -#: common.opt:58 +#: common.opt:57 msgid "Warn about returning structures, unions or arrays" msgstr "" -#: common.opt:62 +#: common.opt:61 msgid "Warn about inappropriate attribute usage" msgstr "" -#: common.opt:66 +#: common.opt:65 msgid "Warn about pointer casts which increase alignment" msgstr "" -#: common.opt:70 +#: common.opt:69 msgid "Warn about uses of __attribute__((deprecated)) declarations" msgstr "" -#: common.opt:74 +#: common.opt:73 msgid "Warn when an optimization pass is disabled" msgstr "" -#: common.opt:78 +#: common.opt:77 msgid "Treat all warnings as errors" msgstr "" -#: common.opt:82 +#: common.opt:81 msgid "Treat specified warning as error" msgstr "" -#: common.opt:86 +#: common.opt:85 msgid "Print extra (possibly unwanted) warnings" msgstr "" -#: common.opt:90 +#: common.opt:89 msgid "Exit on the first error occurred" msgstr "" -#: common.opt:94 +#: common.opt:93 msgid "Warn when an inlined function cannot be inlined" msgstr "" -#: common.opt:98 +#: common.opt:97 #, fuzzy msgid "Warn if an object is larger than bytes" msgstr "памер \"%s\" больш чам %d байт" -#: common.opt:102 +#: common.opt:101 msgid "Warn if the loop cannot be optimized due to nontrivial assumptions." msgstr "" -#: common.opt:106 +#: common.opt:105 msgid "Warn about functions which might be candidates for __attribute__((noreturn))" msgstr "" -#: common.opt:110 +#: common.opt:109 msgid "Warn about overflow in arithmetic expressions" msgstr "" -#: common.opt:114 +#: common.opt:113 msgid "Warn when the packed attribute has no effect on struct layout" msgstr "" -#: common.opt:118 +#: common.opt:117 msgid "Warn when padding is required to align structure members" msgstr "" -#: common.opt:122 +#: common.opt:121 msgid "Warn when one local variable shadows another" msgstr "" -#: common.opt:126 +#: common.opt:125 msgid "Warn when not issuing stack smashing protection for some reason" msgstr "" -#: common.opt:130 common.opt:134 +#: common.opt:129 common.opt:133 msgid "Warn about code which might break strict aliasing rules" msgstr "" -#: common.opt:138 common.opt:142 +#: common.opt:137 common.opt:141 msgid "Warn about optimizations that assume that signed overflow is undefined" msgstr "" -#: common.opt:146 +#: common.opt:145 msgid "Warn about enumerated switches, with no default, missing a case" msgstr "" -#: common.opt:150 +#: common.opt:149 msgid "Warn about enumerated switches missing a \"default:\" statement" msgstr "" -#: common.opt:154 +#: common.opt:153 msgid "Warn about all enumerated switches missing a specific case" msgstr "" -#: common.opt:162 +#: common.opt:161 msgid "Warn about uninitialized automatic variables" msgstr "" -#: common.opt:166 +#: common.opt:165 msgid "Warn about code that will never be executed" msgstr "" -#: common.opt:170 +#: common.opt:169 msgid "Enable all -Wunused- warnings" msgstr "" -#: common.opt:174 +#: common.opt:173 msgid "Warn when a function is unused" msgstr "" -#: common.opt:178 +#: common.opt:177 msgid "Warn when a label is unused" msgstr "" -#: common.opt:182 +#: common.opt:181 msgid "Warn when a function parameter is unused" msgstr "" -#: common.opt:186 +#: common.opt:185 msgid "Warn when an expression value is unused" msgstr "" -#: common.opt:190 +#: common.opt:189 msgid "Warn when a variable is unused" msgstr "" -#: common.opt:194 +#: common.opt:193 msgid "Warn when a register variable is declared volatile" msgstr "" -#: common.opt:198 +#: common.opt:197 msgid "Emit declaration information into " msgstr "" -#: common.opt:211 +#: common.opt:210 msgid "Enable dumps from specific passes of the compiler" msgstr "" -#: common.opt:215 +#: common.opt:214 msgid "Set the file basename to be used for dumps" msgstr "" -#: common.opt:233 +#: common.opt:232 msgid "Align the start of functions" msgstr "" -#: common.opt:240 +#: common.opt:239 msgid "Align labels which are only reached by jumping" msgstr "" -#: common.opt:247 +#: common.opt:246 msgid "Align all labels" msgstr "" -#: common.opt:254 +#: common.opt:253 msgid "Align the start of loops" msgstr "" -#: common.opt:269 +#: common.opt:268 msgid "Specify that arguments may alias each other and globals" msgstr "" -#: common.opt:273 +#: common.opt:272 msgid "Assume arguments may alias globals but not each other" msgstr "" -#: common.opt:277 +#: common.opt:276 msgid "Assume arguments alias neither each other nor globals" msgstr "" -#: common.opt:281 +#: common.opt:280 msgid "Assume arguments alias no other storage" msgstr "" -#: common.opt:285 +#: common.opt:284 msgid "Generate unwind tables that are exact at each instruction boundary" msgstr "" -#: common.opt:293 +#: common.opt:292 #, fuzzy msgid "Generate code to check bounds before indexing arrays" msgstr "Генерыраваць код для Intel as" -#: common.opt:297 +#: common.opt:296 msgid "Replace add, compare, branch with branch on count register" msgstr "" -#: common.opt:301 +#: common.opt:300 msgid "Use profiling information for branch probabilities" msgstr "" -#: common.opt:305 +#: common.opt:304 msgid "Perform branch target load optimization before prologue / epilogue threading" msgstr "" -#: common.opt:309 +#: common.opt:308 msgid "Perform branch target load optimization after prologue / epilogue threading" msgstr "" -#: common.opt:313 +#: common.opt:312 msgid "Restrict target load migration not to re-use registers in any basic block" msgstr "" -#: common.opt:317 +#: common.opt:316 msgid "Mark as being preserved across functions" msgstr "" -#: common.opt:321 +#: common.opt:320 msgid "Mark as being corrupted by function calls" msgstr "" -#: common.opt:328 +#: common.opt:327 msgid "Save registers around function calls" msgstr "" -#: common.opt:332 +#: common.opt:331 msgid "Do not put uninitialized globals in the common section" msgstr "" -#: common.opt:336 +#: common.opt:335 msgid "Perform a register copy-propagation optimization pass" msgstr "" -#: common.opt:340 +#: common.opt:339 msgid "Perform cross-jumping optimization" msgstr "" -#: common.opt:344 +#: common.opt:343 msgid "When running CSE, follow jumps to their targets" msgstr "" -#: common.opt:348 +#: common.opt:347 msgid "When running CSE, follow conditional jumps" msgstr "" -#: common.opt:352 +#: common.opt:351 msgid "Omit range reduction step when performing complex division" msgstr "" -#: common.opt:356 +#: common.opt:355 msgid "Place data items into their own section" msgstr "" -#: common.opt:362 +#: common.opt:361 msgid "Defer popping functions args from stack until later" msgstr "" -#: common.opt:366 +#: common.opt:365 msgid "Attempt to fill delay slots of branch instructions" msgstr "" -#: common.opt:370 +#: common.opt:369 msgid "Delete useless null pointer checks" msgstr "" -#: common.opt:374 +#: common.opt:373 msgid "How often to emit source location at the beginning of line-wrapped diagnostics" msgstr "" -#: common.opt:378 +#: common.opt:377 msgid "Amend appropriate diagnostic messages with the command line option that controls them" msgstr "" -#: common.opt:382 +#: common.opt:381 msgid "Dump various compiler internals to a file" msgstr "" -#: common.opt:386 +#: common.opt:385 msgid "Suppress output of addresses in debugging dumps" msgstr "" -#: common.opt:390 +#: common.opt:389 msgid "Suppress output of instruction numbers, line number notes and addresses in debugging dumps" msgstr "" -#: common.opt:394 +#: common.opt:393 msgid "Perform early inlining" msgstr "" -#: common.opt:398 +#: common.opt:397 msgid "Perform DWARF2 duplicate elimination" msgstr "" -#: common.opt:402 common.opt:406 +#: common.opt:401 common.opt:405 msgid "Perform unused type elimination in debug info" msgstr "" -#: common.opt:410 +#: common.opt:409 msgid "Do not suppress C++ class debug information." msgstr "" -#: common.opt:414 +#: common.opt:413 msgid "Enable exception handling" msgstr "Уключыць апрацоўку выключэньняў" -#: common.opt:418 +#: common.opt:417 msgid "Perform a number of minor, expensive optimizations" msgstr "" -#: common.opt:425 +#: common.opt:424 msgid "Assume no NaNs or infinities are generated" msgstr "" -#: common.opt:429 +#: common.opt:428 msgid "Mark as being unavailable to the compiler" msgstr "" -#: common.opt:433 +#: common.opt:432 msgid "Don't allocate floats and doubles in extended-precision registers" msgstr "" -#: common.opt:439 +#: common.opt:438 msgid "Copy memory address constants into registers before use" msgstr "" -#: common.opt:445 +#: common.opt:444 msgid "Copy memory operands into registers before use" msgstr "" -#: common.opt:452 +#: common.opt:451 msgid "Allow function addresses to be held in registers" msgstr "" -#: common.opt:456 +#: common.opt:455 #, fuzzy msgid "Place each function into its own section" msgstr "адзін раз для кожнай функцыі, дзе ён з'яўляецца.)" -#: common.opt:460 +#: common.opt:459 msgid "Perform global common subexpression elimination" msgstr "" -#: common.opt:464 +#: common.opt:463 msgid "Perform enhanced load motion during global common subexpression elimination" msgstr "" -#: common.opt:468 +#: common.opt:467 msgid "Perform store motion after global common subexpression elimination" msgstr "" -#: common.opt:472 +#: common.opt:471 msgid "Perform redundant load after store elimination in global common subexpression" msgstr "" -#: common.opt:477 +#: common.opt:476 msgid "Perform global common subexpression elimination after register allocation" msgstr "" -#: common.opt:482 +#: common.opt:481 msgid "Enable guessing of branch probabilities" msgstr "" -#: common.opt:490 +#: common.opt:489 msgid "Process #ident directives" msgstr "" -#: common.opt:494 +#: common.opt:493 msgid "Perform conversion of conditional jumps to branchless equivalents" msgstr "" -#: common.opt:498 +#: common.opt:497 msgid "Perform conversion of conditional jumps to conditional execution" msgstr "" -#: common.opt:506 +#: common.opt:505 msgid "Do not generate .size directives" msgstr "" -#: common.opt:515 +#: common.opt:514 msgid "Pay attention to the \"inline\" keyword" msgstr "" -#: common.opt:519 +#: common.opt:518 msgid "Integrate simple functions into their callers" msgstr "" -#: common.opt:523 +#: common.opt:522 msgid "Integrate functions called once into their callers" msgstr "" -#: common.opt:530 +#: common.opt:529 msgid "Limit the size of inlined functions to " msgstr "" -#: common.opt:534 +#: common.opt:533 msgid "Instrument function entry and exit with profiling calls" msgstr "" -#: common.opt:538 +#: common.opt:537 msgid "Perform Interprocedural constant propagation" msgstr "" -#: common.opt:542 +#: common.opt:541 msgid "Discover pure and const functions" msgstr "" -#: common.opt:546 +#: common.opt:545 msgid "Perform interprocedural points-to analysis" msgstr "" -#: common.opt:550 +#: common.opt:549 msgid "Discover readonly and non addressable static variables" msgstr "" -#: common.opt:554 +#: common.opt:553 msgid "Type based escape and alias analysis" msgstr "" -#: common.opt:558 +#: common.opt:557 msgid "Optimize induction variables on trees" msgstr "" -#: common.opt:562 +#: common.opt:561 msgid "Use jump tables for sufficiently large switch statements" msgstr "" -#: common.opt:566 +#: common.opt:565 msgid "Generate code for functions even if they are fully inlined" msgstr "" -#: common.opt:570 +#: common.opt:569 msgid "Emit static const variables even if they are not used" msgstr "" -#: common.opt:574 +#: common.opt:573 msgid "Give external symbols a leading underscore" msgstr "" -#: common.opt:578 common.opt:744 common.opt:867 +#: common.opt:577 common.opt:743 common.opt:866 msgid "Does nothing. Preserved for backward compatibility." msgstr "" -#: common.opt:582 +#: common.opt:581 msgid "Set errno after built-in math functions" msgstr "" -#: common.opt:586 +#: common.opt:585 msgid "Report on permanent memory allocation" msgstr "" -#: common.opt:593 +#: common.opt:592 msgid "Attempt to merge identical constants and constant variables" msgstr "" -#: common.opt:597 +#: common.opt:596 msgid "Attempt to merge identical constants across compilation units" msgstr "" -#: common.opt:601 +#: common.opt:600 msgid "Limit diagnostics to characters per line. 0 suppresses line-wrapping" msgstr "" -#: common.opt:605 +#: common.opt:604 msgid "Perform SMS based modulo scheduling before the first scheduling pass" msgstr "" -#: common.opt:609 +#: common.opt:608 msgid "Move loop invariant computations out of loops" msgstr "" -#: common.opt:613 +#: common.opt:612 msgid "Add mudflap bounds-checking instrumentation for single-threaded program" msgstr "" -#: common.opt:617 +#: common.opt:616 msgid "Add mudflap bounds-checking instrumentation for multi-threaded program" msgstr "" -#: common.opt:621 +#: common.opt:620 msgid "Ignore read operations when inserting mudflap instrumentation" msgstr "" -#: common.opt:625 +#: common.opt:624 msgid "Enable/Disable the traditional scheduling in loops that already passed modulo scheduling" msgstr "" -#: common.opt:629 +#: common.opt:628 msgid "Support synchronous non-call exceptions" msgstr "" -#: common.opt:633 +#: common.opt:632 msgid "When possible do not generate stack frames" msgstr "" -#: common.opt:637 +#: common.opt:636 msgid "Do the full register move optimization pass" msgstr "" -#: common.opt:641 +#: common.opt:640 msgid "Optimize sibling and tail recursive calls" msgstr "" -#: common.opt:645 +#: common.opt:644 msgid "Pack structure members together without holes" msgstr "" -#: common.opt:649 +#: common.opt:648 msgid "Set initial maximum structure member alignment" msgstr "" -#: common.opt:653 +#: common.opt:652 msgid "Return small aggregates in memory, not registers" msgstr "" -#: common.opt:657 +#: common.opt:656 msgid "Perform loop peeling" msgstr "" -#: common.opt:661 +#: common.opt:660 msgid "Enable machine specific peephole optimizations" msgstr "" -#: common.opt:665 +#: common.opt:664 msgid "Enable an RTL peephole pass before sched2" msgstr "" -#: common.opt:669 +#: common.opt:668 msgid "Generate position-independent code if possible (large mode)" msgstr "" -#: common.opt:673 +#: common.opt:672 msgid "Generate position-independent code for executables if possible (large mode)" msgstr "" -#: common.opt:677 +#: common.opt:676 msgid "Generate position-independent code if possible (small mode)" msgstr "" -#: common.opt:681 +#: common.opt:680 msgid "Generate position-independent code for executables if possible (small mode)" msgstr "" -#: common.opt:685 +#: common.opt:684 msgid "Generate prefetch instructions, if available, for arrays in loops" msgstr "" -#: common.opt:689 +#: common.opt:688 msgid "Enable basic program profiling code" msgstr "" -#: common.opt:693 +#: common.opt:692 msgid "Insert arc-based program profiling code" msgstr "" -#: common.opt:697 +#: common.opt:696 msgid "Enable common options for generating profile info for profile feedback directed optimizations" msgstr "" -#: common.opt:701 +#: common.opt:700 msgid "Enable common options for performing profile feedback directed optimizations" msgstr "" -#: common.opt:705 +#: common.opt:704 msgid "Insert code to profile values of expressions" msgstr "" -#: common.opt:712 +#: common.opt:711 msgid "Make compile reproducible using " msgstr "" -#: common.opt:716 +#: common.opt:715 #, fuzzy msgid "Return small aggregates in registers" msgstr "Не выкарыстоўваць рэгістра sb" -#: common.opt:720 +#: common.opt:719 msgid "Enables a register move optimization" msgstr "" -#: common.opt:724 +#: common.opt:723 msgid "Perform a register renaming optimization pass" msgstr "" -#: common.opt:728 +#: common.opt:727 msgid "Reorder basic blocks to improve code placement" msgstr "" -#: common.opt:732 +#: common.opt:731 msgid "Reorder basic blocks and partition into hot and cold sections" msgstr "" -#: common.opt:736 +#: common.opt:735 msgid "Reorder functions to improve code placement" msgstr "" -#: common.opt:740 +#: common.opt:739 msgid "Add a common subexpression elimination pass after loop optimizations" msgstr "" -#: common.opt:748 +#: common.opt:747 msgid "Disable optimizations that assume default FP rounding behavior" msgstr "" -#: common.opt:752 +#: common.opt:751 msgid "Enable scheduling across basic blocks" msgstr "" -#: common.opt:756 +#: common.opt:755 msgid "Allow speculative motion of non-loads" msgstr "" -#: common.opt:760 +#: common.opt:759 msgid "Allow speculative motion of some loads" msgstr "" -#: common.opt:764 +#: common.opt:763 msgid "Allow speculative motion of more loads" msgstr "" -#: common.opt:768 +#: common.opt:767 msgid "Set the verbosity level of the scheduler" msgstr "" -#: common.opt:772 +#: common.opt:771 msgid "If scheduling post reload, do superblock scheduling" msgstr "" -#: common.opt:776 +#: common.opt:775 msgid "If scheduling post reload, do trace scheduling" msgstr "" -#: common.opt:780 +#: common.opt:779 msgid "Reschedule instructions before register allocation" msgstr "" -#: common.opt:784 +#: common.opt:783 msgid "Reschedule instructions after register allocation" msgstr "" -#: common.opt:790 +#: common.opt:789 msgid "Allow premature scheduling of queued insns" msgstr "" -#: common.opt:794 +#: common.opt:793 msgid "Set number of queued insns that can be prematurely scheduled" msgstr "" -#: common.opt:802 common.opt:806 +#: common.opt:801 common.opt:805 msgid "Set dependence distance checking in premature scheduling of queued insns" msgstr "" -#: common.opt:810 +#: common.opt:809 msgid "Access data in the same section from shared anchor points" msgstr "" -#: common.opt:814 +#: common.opt:813 msgid "Perform sequence abstraction optimization on RTL" msgstr "" -#: common.opt:818 +#: common.opt:817 msgid "Eliminate redundant sign extensions using LCM." msgstr "" -#: common.opt:822 +#: common.opt:821 msgid "Show column numbers in diagnostics, when available. Default on" msgstr "" -#: common.opt:826 +#: common.opt:825 msgid "Disable optimizations observable by IEEE signaling NaNs" msgstr "" -#: common.opt:830 +#: common.opt:829 msgid "Convert floating point constants to single precision constants" msgstr "" -#: common.opt:834 +#: common.opt:833 msgid "Split lifetimes of induction variables when loops are unrolled" msgstr "" -#: common.opt:838 +#: common.opt:837 msgid "Apply variable expansion when loops are unrolled" msgstr "" -#: common.opt:844 +#: common.opt:843 msgid "Insert stack checking code into the program" msgstr "Уключаць код правэркі стэку ў праграму" -#: common.opt:851 +#: common.opt:850 msgid "Trap if the stack goes past " msgstr "" -#: common.opt:855 +#: common.opt:854 msgid "Trap if the stack goes past symbol " msgstr "" -#: common.opt:859 +#: common.opt:858 msgid "Use propolice as a stack protection method" msgstr "" -#: common.opt:863 +#: common.opt:862 msgid "Use a stack protection method for every function" msgstr "" -#: common.opt:875 +#: common.opt:874 msgid "Assume strict aliasing rules apply" msgstr "" -#: common.opt:879 +#: common.opt:878 msgid "Treat signed overflow as undefined" msgstr "" -#: common.opt:883 +#: common.opt:882 msgid "Check for syntax errors, then stop" msgstr "" -#: common.opt:887 +#: common.opt:886 msgid "Create data files needed by \"gcov\"" msgstr "" -#: common.opt:891 +#: common.opt:890 msgid "Perform jump threading optimizations" msgstr "" -#: common.opt:895 +#: common.opt:894 msgid "Report the time taken by each compiler pass" msgstr "" -#: common.opt:899 +#: common.opt:898 msgid "Set the default thread-local storage code generation model" msgstr "" -#: common.opt:903 +#: common.opt:902 msgid "Reorder top level functions, variables, and asms" msgstr "" -#: common.opt:907 +#: common.opt:906 msgid "Perform superblock formation via tail duplication" msgstr "" -#: common.opt:914 +#: common.opt:913 msgid "Assume floating-point operations can trap" msgstr "" -#: common.opt:918 +#: common.opt:917 msgid "Trap for signed overflow in addition, subtraction and multiplication" msgstr "" -#: common.opt:922 +#: common.opt:921 #, fuzzy msgid "Enable SSA-CCP optimization on trees" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:926 +#: common.opt:925 #, fuzzy msgid "Enable SSA-CCP optimization for stores and loads" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:930 +#: common.opt:929 msgid "Enable loop header copying on trees" msgstr "" -#: common.opt:934 +#: common.opt:933 msgid "Coalesce memory temporaries in the SSA->normal pass" msgstr "" -#: common.opt:938 +#: common.opt:937 msgid "Replace SSA temporaries with better names in copies" msgstr "" -#: common.opt:942 +#: common.opt:941 msgid "Enable copy propagation on trees" msgstr "" -#: common.opt:946 +#: common.opt:945 msgid "Enable copy propagation for stores and loads" msgstr "" -#: common.opt:950 +#: common.opt:949 #, fuzzy msgid "Enable SSA dead code elimination optimization on trees" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:954 +#: common.opt:953 #, fuzzy msgid "Enable dominator optimizations" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:958 +#: common.opt:957 #, fuzzy msgid "Enable dead store elimination" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:962 +#: common.opt:961 msgid "Enable Full Redundancy Elimination (FRE) on trees" msgstr "" -#: common.opt:966 +#: common.opt:965 msgid "Enable loop invariant motion on trees" msgstr "" -#: common.opt:970 +#: common.opt:969 msgid "Enable linear loop transforms on trees" msgstr "" -#: common.opt:974 +#: common.opt:973 msgid "Create canonical induction variables in loops" msgstr "" -#: common.opt:978 +#: common.opt:977 #, fuzzy msgid "Enable loop optimizations on tree level" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:982 +#: common.opt:981 #, fuzzy msgid "Enable SSA-PRE optimization on trees" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:986 +#: common.opt:985 msgid "Perform structural alias analysis" msgstr "" -#: common.opt:990 +#: common.opt:989 #, fuzzy msgid "Enable SSA code sinking on trees" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:994 +#: common.opt:993 msgid "Perform scalar replacement of aggregates" msgstr "" -#: common.opt:998 +#: common.opt:997 msgid "Replace temporary expressions in the SSA->normal pass" msgstr "" -#: common.opt:1002 +#: common.opt:1001 msgid "Perform live range splitting during the SSA->normal pass" msgstr "" -#: common.opt:1006 +#: common.opt:1005 msgid "Perform Value Range Propagation on trees" msgstr "" -#: common.opt:1010 +#: common.opt:1009 msgid "Compile whole compilation unit at a time" msgstr "" -#: common.opt:1014 +#: common.opt:1013 msgid "Perform loop unrolling when iteration count is known" msgstr "" -#: common.opt:1018 +#: common.opt:1017 msgid "Perform loop unrolling for all loops" msgstr "" -#: common.opt:1025 +#: common.opt:1024 msgid "Allow loop optimizations to assume that the loops behave in normal way" msgstr "" -#: common.opt:1033 +#: common.opt:1032 msgid "Allow math optimizations that may violate IEEE or ISO standards" msgstr "" -#: common.opt:1037 +#: common.opt:1036 msgid "Perform loop unswitching" msgstr "" -#: common.opt:1041 +#: common.opt:1040 msgid "Just generate unwind tables for exception handling" msgstr "" -#: common.opt:1045 +#: common.opt:1044 msgid "Perform variable tracking" msgstr "" -#: common.opt:1049 +#: common.opt:1048 #, fuzzy msgid "Enable loop vectorization on trees" msgstr "Уключаць SSA аптымізацыю" -#: common.opt:1053 +#: common.opt:1052 msgid "Enable loop versioning when doing loop vectorization on trees" msgstr "" -#: common.opt:1057 +#: common.opt:1056 msgid "Set the verbosity level of the vectorizer" msgstr "" -#: common.opt:1067 +#: common.opt:1066 msgid "Add extra commentary to assembler output" msgstr "" -#: common.opt:1071 +#: common.opt:1070 msgid "Set the default symbol visibility" msgstr "" -#: common.opt:1076 +#: common.opt:1075 msgid "Use expression value profiles in optimizations" msgstr "" -#: common.opt:1080 +#: common.opt:1079 msgid "Construct webs and split unrelated uses of single variable" msgstr "" -#: common.opt:1084 +#: common.opt:1083 msgid "Perform whole program optimizations" msgstr "" -#: common.opt:1088 +#: common.opt:1087 msgid "Assume signed arithmetic overflow wraps around" msgstr "" -#: common.opt:1092 +#: common.opt:1091 msgid "Put zero initialized data in the bss section" msgstr "" -#: common.opt:1096 +#: common.opt:1095 #, fuzzy msgid "Generate debug information in default format" msgstr "Генерыраваць код для Intel as" -#: common.opt:1100 +#: common.opt:1099 msgid "Generate debug information in COFF format" msgstr "" -#: common.opt:1104 +#: common.opt:1103 msgid "Generate debug information in DWARF v2 format" msgstr "" -#: common.opt:1108 +#: common.opt:1107 msgid "Generate debug information in default extended format" msgstr "" -#: common.opt:1112 +#: common.opt:1111 #, fuzzy msgid "Generate debug information in STABS format" msgstr "Стварыць код для DLL" -#: common.opt:1116 +#: common.opt:1115 msgid "Generate debug information in extended STABS format" msgstr "" -#: common.opt:1120 +#: common.opt:1119 #, fuzzy msgid "Generate debug information in VMS format" msgstr "Стварыць код для DLL" -#: common.opt:1124 +#: common.opt:1123 msgid "Generate debug information in XCOFF format" msgstr "" -#: common.opt:1128 +#: common.opt:1127 msgid "Generate debug information in extended XCOFF format" msgstr "" -#: common.opt:1132 +#: common.opt:1131 #, fuzzy msgid "Place output into " msgstr " -o <файл> Памясціць вывад у <файл>\n" -#: common.opt:1136 +#: common.opt:1135 #, fuzzy msgid "Enable function profiling" msgstr "Уключыць апрацоўку выключэньняў" -#: common.opt:1140 +#: common.opt:1139 msgid "Issue warnings needed for strict compliance to the standard" msgstr "" -#: common.opt:1144 +#: common.opt:1143 msgid "Like -pedantic but issue them as errors" msgstr "" -#: common.opt:1148 +#: common.opt:1147 msgid "Do not display functions compiled or elapsed time" msgstr "" -#: common.opt:1152 +#: common.opt:1151 msgid "Display the compiler's version" msgstr "" -#: common.opt:1156 +#: common.opt:1155 #, fuzzy msgid "Suppress warnings" msgstr "%s: увага: " -#: attribs.c:175 cp/name-lookup.c:3081 +#: attribs.c:174 cp/name-lookup.c:3081 #, fuzzy, gcc-internal-format msgid "%qs attribute directive ignored" msgstr "\"%s\" атрыбут ігнарыруецца" -#: attribs.c:183 +#: attribs.c:182 #, fuzzy, gcc-internal-format msgid "wrong number of arguments specified for %qs attribute" msgstr "памылковая колькасьць аргументаў, зададзеных для атрыбута `%s'" -#: attribs.c:200 +#: attribs.c:199 #, fuzzy, gcc-internal-format msgid "%qs attribute does not apply to types" msgstr "\"%s\" звычайна функцыя" -#: attribs.c:247 +#: attribs.c:246 #, fuzzy, gcc-internal-format msgid "%qs attribute only applies to function types" msgstr "\"%s\" звычайна функцыя" -#: attribs.c:257 +#: attribs.c:256 #, gcc-internal-format msgid "type attributes ignored after type is already defined" msgstr "" -#: bb-reorder.c:1872 +#: bb-reorder.c:1871 #, gcc-internal-format msgid "multiple hot/cold transitions found (bb %i)" msgstr "" -#: bt-load.c:1515 +#: bt-load.c:1514 #, gcc-internal-format msgid "branch target register load optimization is not intended to be run twice" msgstr "" @@ -15391,7 +15391,7 @@ #. We can, however, treat "undefined" any way we please. #. Call abort to encourage the user to fix the program. -#: builtins.c:4412 c-typeck.c:2288 +#: builtins.c:4412 c-typeck.c:2287 #, gcc-internal-format msgid "if this code is reached, the program will abort" msgstr "" @@ -15490,7 +15490,7 @@ msgid "%Hcall to %D will always overflow destination buffer" msgstr "" -#: c-common.c:835 +#: c-common.c:834 #, fuzzy, gcc-internal-format msgid "%qD is not defined outside of function scope" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" @@ -15499,571 +15499,571 @@ #. separate the %d from the 'C'. 'ISO' should not be #. translated, but it may be moved after 'C%d' in languages #. where modifiers follow nouns. -#: c-common.c:867 +#: c-common.c:866 #, gcc-internal-format msgid "string length %qd is greater than the length %qd ISO C%d compilers are required to support" msgstr "" -#: c-common.c:916 +#: c-common.c:915 #, gcc-internal-format msgid "overflow in constant expression" msgstr "" -#: c-common.c:936 +#: c-common.c:935 #, gcc-internal-format msgid "integer overflow in expression" msgstr "" -#: c-common.c:945 +#: c-common.c:944 #, gcc-internal-format msgid "floating point overflow in expression" msgstr "" -#: c-common.c:951 +#: c-common.c:950 #, gcc-internal-format msgid "vector overflow in expression" msgstr "" -#: c-common.c:974 +#: c-common.c:973 #, gcc-internal-format msgid "large integer implicitly truncated to unsigned type" msgstr "" -#: c-common.c:977 +#: c-common.c:976 #, gcc-internal-format msgid "negative integer implicitly converted to unsigned type" msgstr "" -#: c-common.c:999 +#: c-common.c:998 #, gcc-internal-format msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "" -#: c-common.c:1007 +#: c-common.c:1006 #, gcc-internal-format msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "" -#: c-common.c:1011 +#: c-common.c:1010 #, gcc-internal-format msgid "dereferencing type-punned pointer might break strict-aliasing rules" msgstr "" -#: c-common.c:1037 +#: c-common.c:1036 #, fuzzy, gcc-internal-format msgid "%Hempty body in an if-statement" msgstr "пустое цела ў else-выражэнні" -#: c-common.c:1041 +#: c-common.c:1040 #, fuzzy, gcc-internal-format msgid "%Hempty body in an else-statement" msgstr "пустое цела ў else-выражэнні" -#: c-common.c:1105 +#: c-common.c:1104 #, gcc-internal-format msgid "overflow in implicit constant conversion" msgstr "" -#: c-common.c:1241 +#: c-common.c:1240 #, gcc-internal-format msgid "operation on %qE may be undefined" msgstr "" -#: c-common.c:1527 +#: c-common.c:1526 #, gcc-internal-format msgid "case label does not reduce to an integer constant" msgstr "" -#: c-common.c:1567 +#: c-common.c:1566 #, gcc-internal-format msgid "case label value is less than minimum value for type" msgstr "" -#: c-common.c:1575 +#: c-common.c:1574 #, gcc-internal-format msgid "case label value exceeds maximum value for type" msgstr "" -#: c-common.c:1583 +#: c-common.c:1582 #, gcc-internal-format msgid "lower value in case label range less than minimum value for type" msgstr "" -#: c-common.c:1592 +#: c-common.c:1591 #, gcc-internal-format msgid "upper value in case label range exceeds maximum value for type" msgstr "" -#: c-common.c:2007 +#: c-common.c:2006 #, gcc-internal-format msgid "invalid operands to binary %s" msgstr "" -#: c-common.c:2242 +#: c-common.c:2241 #, gcc-internal-format msgid "comparison is always false due to limited range of data type" msgstr "" -#: c-common.c:2244 +#: c-common.c:2243 #, gcc-internal-format msgid "comparison is always true due to limited range of data type" msgstr "" -#: c-common.c:2322 +#: c-common.c:2321 #, gcc-internal-format msgid "comparison of unsigned expression >= 0 is always true" msgstr "" -#: c-common.c:2331 +#: c-common.c:2330 #, gcc-internal-format msgid "comparison of unsigned expression < 0 is always false" msgstr "" -#: c-common.c:2373 +#: c-common.c:2372 #, gcc-internal-format msgid "pointer of type % used in arithmetic" msgstr "" -#: c-common.c:2379 +#: c-common.c:2378 #, gcc-internal-format msgid "pointer to a function used in arithmetic" msgstr "" -#: c-common.c:2385 +#: c-common.c:2384 #, gcc-internal-format msgid "pointer to member function used in arithmetic" msgstr "" -#: c-common.c:2525 +#: c-common.c:2524 #, gcc-internal-format msgid "the address of %qD will always evaluate as %" msgstr "" -#: c-common.c:2590 +#: c-common.c:2589 #, gcc-internal-format msgid "suggest parentheses around assignment used as truth value" msgstr "" -#: c-common.c:2658 c-common.c:2698 +#: c-common.c:2657 c-common.c:2697 #, fuzzy, gcc-internal-format msgid "invalid use of %" msgstr "нявернае выкарыстанне \"restict\"" -#: c-common.c:2914 +#: c-common.c:2913 #, fuzzy, gcc-internal-format msgid "invalid application of % to a function type" msgstr "Нерэчаісны выбар \"%s\"" -#: c-common.c:2924 +#: c-common.c:2923 #, gcc-internal-format msgid "invalid application of %qs to a void type" msgstr "" -#: c-common.c:2930 +#: c-common.c:2929 #, fuzzy, gcc-internal-format msgid "invalid application of %qs to incomplete type %qT " msgstr "\"%s\" мае незавершаны тып" -#: c-common.c:2971 +#: c-common.c:2970 #, gcc-internal-format msgid "%<__alignof%> applied to a bit-field" msgstr "" -#: c-common.c:3462 +#: c-common.c:3461 #, fuzzy, gcc-internal-format msgid "cannot disable built-in function %qs" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: c-common.c:3656 +#: c-common.c:3655 #, gcc-internal-format msgid "pointers are not permitted as case values" msgstr "" -#: c-common.c:3662 +#: c-common.c:3661 #, gcc-internal-format msgid "range expressions in switch statements are non-standard" msgstr "" -#: c-common.c:3688 +#: c-common.c:3687 #, gcc-internal-format msgid "empty range specified" msgstr "" -#: c-common.c:3748 +#: c-common.c:3747 #, gcc-internal-format msgid "duplicate (or overlapping) case value" msgstr "" -#: c-common.c:3749 +#: c-common.c:3748 #, gcc-internal-format msgid "%Jthis is the first entry overlapping that value" msgstr "" -#: c-common.c:3753 +#: c-common.c:3752 #, gcc-internal-format msgid "duplicate case value" msgstr "" -#: c-common.c:3754 +#: c-common.c:3753 #, fuzzy, gcc-internal-format msgid "%Jpreviously used here" msgstr "папярэдняе вызначэньне" -#: c-common.c:3758 +#: c-common.c:3757 #, gcc-internal-format msgid "multiple default labels in one switch" msgstr "" -#: c-common.c:3759 +#: c-common.c:3758 #, gcc-internal-format msgid "%Jthis is the first default label" msgstr "" -#: c-common.c:3808 +#: c-common.c:3807 #, gcc-internal-format msgid "%Jcase value %qs not in enumerated type" msgstr "" -#: c-common.c:3811 +#: c-common.c:3810 #, gcc-internal-format msgid "%Jcase value %qs not in enumerated type %qT" msgstr "" -#: c-common.c:3869 +#: c-common.c:3868 #, gcc-internal-format msgid "%Hswitch missing default case" msgstr "" -#: c-common.c:3932 +#: c-common.c:3931 #, gcc-internal-format msgid "%Henumeration value %qE not handled in switch" msgstr "" -#: c-common.c:3956 +#: c-common.c:3955 #, fuzzy, gcc-internal-format msgid "taking the address of a label is non-standard" msgstr "ISO C не дазваляе пусты ізыходны файл" -#: c-common.c:4106 +#: c-common.c:4105 #, fuzzy, gcc-internal-format msgid "%qE attribute ignored for field of type %qT" msgstr "\"%s\" атрыбут ігнарыруецца" -#: c-common.c:4117 c-common.c:4136 c-common.c:4154 c-common.c:4181 -#: c-common.c:4200 c-common.c:4223 c-common.c:4246 c-common.c:4267 -#: c-common.c:4292 c-common.c:4318 c-common.c:4355 c-common.c:4382 -#: c-common.c:4433 c-common.c:4458 c-common.c:4486 c-common.c:4505 -#: c-common.c:4788 c-common.c:4848 c-common.c:4869 c-common.c:4933 -#: c-common.c:5046 c-common.c:5112 c-common.c:5130 c-common.c:5176 -#: c-common.c:5246 c-common.c:5270 c-common.c:5571 c-common.c:5594 -#: c-common.c:5633 +#: c-common.c:4116 c-common.c:4135 c-common.c:4153 c-common.c:4180 +#: c-common.c:4199 c-common.c:4222 c-common.c:4245 c-common.c:4266 +#: c-common.c:4291 c-common.c:4317 c-common.c:4354 c-common.c:4381 +#: c-common.c:4432 c-common.c:4457 c-common.c:4485 c-common.c:4504 +#: c-common.c:4787 c-common.c:4847 c-common.c:4868 c-common.c:4932 +#: c-common.c:5045 c-common.c:5111 c-common.c:5129 c-common.c:5175 +#: c-common.c:5245 c-common.c:5269 c-common.c:5570 c-common.c:5593 +#: c-common.c:5632 #, fuzzy, gcc-internal-format msgid "%qE attribute ignored" msgstr "\"%s\" атрыбут ігнарыруецца" -#: c-common.c:4349 +#: c-common.c:4348 #, gcc-internal-format msgid "%qE attribute have effect only on public objects" msgstr "" -#: c-common.c:4543 +#: c-common.c:4542 #, fuzzy, gcc-internal-format msgid "unknown machine mode %qs" msgstr "невядомы рэжым машыны \"%s\"" -#: c-common.c:4564 +#: c-common.c:4563 #, gcc-internal-format msgid "specifying vector types with __attribute__ ((mode)) is deprecated" msgstr "" -#: c-common.c:4567 +#: c-common.c:4566 #, gcc-internal-format msgid "use __attribute__ ((vector_size)) instead" msgstr "" -#: c-common.c:4576 +#: c-common.c:4575 #, fuzzy, gcc-internal-format msgid "unable to emulate %qs" msgstr "немагу адчыніць файл \"%s\"" -#: c-common.c:4586 +#: c-common.c:4585 #, fuzzy, gcc-internal-format msgid "invalid pointer mode %qs" msgstr "Нерэчаісны выбар \"%s\"" -#: c-common.c:4601 +#: c-common.c:4600 #, fuzzy, gcc-internal-format msgid "no data type for mode %qs" msgstr "няма тыпа дадзеных для рэжыма \"%s\"" -#: c-common.c:4611 +#: c-common.c:4610 #, gcc-internal-format msgid "cannot use mode %qs for enumeral types" msgstr "" -#: c-common.c:4638 +#: c-common.c:4637 #, fuzzy, gcc-internal-format msgid "mode %qs applied to inappropriate type" msgstr "\"%s\" мае незавершаны тып" -#: c-common.c:4669 +#: c-common.c:4668 #, fuzzy, gcc-internal-format msgid "%Jsection attribute cannot be specified for local variables" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-common.c:4680 +#: c-common.c:4679 #, fuzzy, gcc-internal-format msgid "section of %q+D conflicts with previous declaration" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: c-common.c:4689 +#: c-common.c:4688 #, fuzzy, gcc-internal-format msgid "section attribute not allowed for %q+D" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-common.c:4695 +#: c-common.c:4694 #, fuzzy, gcc-internal-format msgid "%Jsection attributes are not supported for this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-common.c:4727 +#: c-common.c:4726 #, gcc-internal-format msgid "requested alignment is not a constant" msgstr "" -#: c-common.c:4732 +#: c-common.c:4731 #, gcc-internal-format msgid "requested alignment is not a power of 2" msgstr "" -#: c-common.c:4737 +#: c-common.c:4736 #, gcc-internal-format msgid "requested alignment is too large" msgstr "" -#: c-common.c:4763 +#: c-common.c:4762 #, gcc-internal-format msgid "alignment may not be specified for %q+D" msgstr "" -#: c-common.c:4811 +#: c-common.c:4810 #, gcc-internal-format msgid "%q+D defined both normally and as an alias" msgstr "" -#: c-common.c:4827 +#: c-common.c:4826 #, fuzzy, gcc-internal-format msgid "alias argument not a string" msgstr "аргумент для \"%s\" прапушчан" -#: c-common.c:4890 +#: c-common.c:4889 #, gcc-internal-format msgid "%Jweakref attribute must appear before alias attribute" msgstr "" -#: c-common.c:4920 +#: c-common.c:4919 #, fuzzy, gcc-internal-format msgid "%qE attribute ignored on non-class types" msgstr "\"%s\" атрыбут ігнарыруецца" -#: c-common.c:4926 +#: c-common.c:4925 #, gcc-internal-format msgid "%qE attribute ignored because %qT is already defined" msgstr "" -#: c-common.c:4939 +#: c-common.c:4938 #, fuzzy, gcc-internal-format msgid "visibility argument not a string" msgstr "аргумент для \"%s\" прапушчан" -#: c-common.c:4951 +#: c-common.c:4950 #, fuzzy, gcc-internal-format msgid "%qE attribute ignored on types" msgstr "\"%s\" атрыбут ігнарыруецца" -#: c-common.c:4967 +#: c-common.c:4966 #, gcc-internal-format msgid "visibility argument must be one of \"default\", \"hidden\", \"protected\" or \"internal\"" msgstr "" -#: c-common.c:4976 +#: c-common.c:4975 #, gcc-internal-format msgid "%qD redeclared with different visibility" msgstr "" -#: c-common.c:5054 +#: c-common.c:5053 #, fuzzy, gcc-internal-format msgid "tls_model argument not a string" msgstr "не хапае аргументаў у функцыі" -#: c-common.c:5067 +#: c-common.c:5066 #, gcc-internal-format msgid "tls_model argument must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\"" msgstr "" -#: c-common.c:5086 c-common.c:5150 +#: c-common.c:5085 c-common.c:5149 #, fuzzy, gcc-internal-format msgid "%J%qE attribute applies only to functions" msgstr "\"%s\" звычайна функцыя" -#: c-common.c:5091 c-common.c:5155 +#: c-common.c:5090 c-common.c:5154 #, gcc-internal-format msgid "%Jcan%'t set %qE attribute after definition" msgstr "" -#: c-common.c:5244 +#: c-common.c:5243 #, fuzzy, gcc-internal-format msgid "%qE attribute ignored for %qE" msgstr "\"%s\" атрыбут ігнарыруецца" -#: c-common.c:5301 +#: c-common.c:5300 #, fuzzy, gcc-internal-format msgid "invalid vector type for attribute %qE" msgstr "нявернае выкарыстанне \"restict\"" -#: c-common.c:5307 +#: c-common.c:5306 #, gcc-internal-format msgid "vector size not an integral multiple of component size" msgstr "" -#: c-common.c:5313 +#: c-common.c:5312 #, gcc-internal-format msgid "zero vector size" msgstr "" -#: c-common.c:5321 +#: c-common.c:5320 #, gcc-internal-format msgid "number of components of the vector not a power of two" msgstr "" -#: c-common.c:5349 +#: c-common.c:5348 #, gcc-internal-format msgid "nonnull attribute without arguments on a non-prototype" msgstr "" -#: c-common.c:5364 +#: c-common.c:5363 #, gcc-internal-format msgid "nonnull argument has invalid operand number (argument %lu)" msgstr "" -#: c-common.c:5383 +#: c-common.c:5382 #, gcc-internal-format msgid "nonnull argument with out-of-range operand number (argument %lu, operand %lu)" msgstr "" -#: c-common.c:5391 +#: c-common.c:5390 #, gcc-internal-format msgid "nonnull argument references non-pointer operand (argument %lu, operand %lu)" msgstr "" -#: c-common.c:5454 c-common.c:5477 +#: c-common.c:5453 c-common.c:5476 #, fuzzy, gcc-internal-format msgid "not enough variable arguments to fit a sentinel" msgstr "не хапае аргументаў у функцыі" -#: c-common.c:5498 +#: c-common.c:5497 #, gcc-internal-format msgid "missing sentinel in function call" msgstr "" -#: c-common.c:5540 +#: c-common.c:5539 #, gcc-internal-format msgid "null argument where non-null required (argument %lu)" msgstr "" -#: c-common.c:5605 +#: c-common.c:5604 #, gcc-internal-format msgid "cleanup argument not an identifier" msgstr "" -#: c-common.c:5612 +#: c-common.c:5611 #, fuzzy, gcc-internal-format msgid "cleanup argument not a function" msgstr "вельмі шмат аргументаў у функцыі" -#: c-common.c:5651 +#: c-common.c:5650 #, gcc-internal-format msgid "%qE attribute requires prototypes with named arguments" msgstr "" -#: c-common.c:5662 +#: c-common.c:5661 #, fuzzy, gcc-internal-format msgid "%qE attribute only applies to variadic functions" msgstr "\"%s\" звычайна функцыя" -#: c-common.c:5673 +#: c-common.c:5672 #, fuzzy, gcc-internal-format msgid "requested position is not an integer constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: c-common.c:5680 +#: c-common.c:5679 #, gcc-internal-format msgid "requested position is less than zero" msgstr "" -#: c-common.c:5988 +#: c-common.c:5987 #, gcc-internal-format msgid "%Hignoring return value of %qD, declared with attribute warn_unused_result" msgstr "" -#: c-common.c:5992 +#: c-common.c:5991 #, gcc-internal-format msgid "%Hignoring return value of function declared with attribute warn_unused_result" msgstr "" -#: c-common.c:6045 +#: c-common.c:6044 #, gcc-internal-format msgid "cannot apply % to static data member %qD" msgstr "" -#: c-common.c:6049 +#: c-common.c:6048 #, gcc-internal-format msgid "cannot apply % when % is overloaded" msgstr "" -#: c-common.c:6070 cp/typeck.c:4434 +#: c-common.c:6069 cp/typeck.c:4431 #, fuzzy, gcc-internal-format msgid "attempt to take address of bit-field structure member %qD" msgstr "не магу атрымаць адрас бітавага поля \"%s\"" -#: c-common.c:6123 +#: c-common.c:6122 #, gcc-internal-format msgid "lvalue required as left operand of assignment" msgstr "" -#: c-common.c:6126 +#: c-common.c:6125 #, gcc-internal-format msgid "lvalue required as increment operand" msgstr "" -#: c-common.c:6129 +#: c-common.c:6128 #, gcc-internal-format msgid "lvalue required as decrement operand" msgstr "" -#: c-common.c:6132 +#: c-common.c:6131 #, gcc-internal-format msgid "lvalue required as unary %<&%> operand" msgstr "" -#: c-common.c:6135 +#: c-common.c:6134 #, gcc-internal-format msgid "lvalue required in asm statement" msgstr "" -#: c-common.c:6263 c-common.c:6312 c-typeck.c:2574 +#: c-common.c:6262 c-common.c:6311 c-typeck.c:2573 #, fuzzy, gcc-internal-format msgid "too few arguments to function %qE" msgstr "не хапае аргументаў у функцыі" #. ??? This should not be an error when inlining calls to #. unprototyped functions. -#: c-common.c:6280 c-typeck.c:4257 +#: c-common.c:6279 c-typeck.c:4256 #, gcc-internal-format msgid "incompatible type for argument %d of %qE" msgstr "" -#: c-common.c:6471 +#: c-common.c:6470 #, gcc-internal-format msgid "array subscript has type %" msgstr "" @@ -16073,122 +16073,122 @@ #. an unprototyped function, it is compile-time undefined; #. making it a constraint in that case was rejected in #. DR#252. -#: c-convert.c:96 c-typeck.c:1691 c-typeck.c:3901 cp/typeck.c:1506 -#: cp/typeck.c:5619 cp/typeck.c:6208 fortran/convert.c:89 +#: c-convert.c:95 c-typeck.c:1690 c-typeck.c:3900 cp/typeck.c:1503 +#: cp/typeck.c:5616 cp/typeck.c:6205 fortran/convert.c:89 #: treelang/tree-convert.c:79 #, gcc-internal-format msgid "void value not ignored as it ought to be" msgstr "" -#: c-convert.c:117 fortran/convert.c:122 java/typeck.c:155 +#: c-convert.c:116 fortran/convert.c:122 java/typeck.c:154 #: treelang/tree-convert.c:105 #, gcc-internal-format msgid "conversion to non-scalar type requested" msgstr "" -#: c-decl.c:568 +#: c-decl.c:567 #, gcc-internal-format msgid "array %q+D assumed to have one element" msgstr "" -#: c-decl.c:673 +#: c-decl.c:672 #, gcc-internal-format msgid "GCC supports only %u nested scopes" msgstr "" -#: c-decl.c:759 cp/decl.c:360 java/decl.c:1620 +#: c-decl.c:758 cp/decl.c:359 java/decl.c:1619 #, fuzzy, gcc-internal-format msgid "label %q+D used but not defined" msgstr "адмеціна `%D' выкарыстоўвываецца, але ня вызначана" -#: c-decl.c:765 cp/decl.c:371 java/decl.c:1625 +#: c-decl.c:764 cp/decl.c:370 java/decl.c:1624 #, fuzzy, gcc-internal-format msgid "label %q+D defined but not used" msgstr "адмеціна `%D' вызначана, але не выкарыстоўваецца" -#: c-decl.c:767 +#: c-decl.c:766 #, fuzzy, gcc-internal-format msgid "label %q+D declared but not defined" msgstr "адмеціна `%D' выкарыстоўвываецца, але ня вызначана" -#: c-decl.c:802 +#: c-decl.c:801 #, fuzzy, gcc-internal-format msgid "nested function %q+D declared but never defined" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:816 cp/decl.c:610 +#: c-decl.c:815 cp/decl.c:609 #, fuzzy, gcc-internal-format msgid "unused variable %q+D" msgstr "невыкарыстоўваемая пераменная \"%s\"" -#: c-decl.c:820 +#: c-decl.c:819 #, gcc-internal-format msgid "type of array %q+D completed incompatibly with implicit initialization" msgstr "" -#: c-decl.c:1054 +#: c-decl.c:1053 #, gcc-internal-format msgid "a parameter list with an ellipsis can%'t match an empty parameter name list declaration" msgstr "" -#: c-decl.c:1061 +#: c-decl.c:1060 #, gcc-internal-format msgid "an argument type that has a default promotion can%'t match an empty parameter name list declaration" msgstr "" -#: c-decl.c:1102 +#: c-decl.c:1101 #, gcc-internal-format msgid "prototype for %q+D declares more arguments than previous old-style definition" msgstr "" -#: c-decl.c:1108 +#: c-decl.c:1107 #, gcc-internal-format msgid "prototype for %q+D declares fewer arguments than previous old-style definition" msgstr "" -#: c-decl.c:1117 +#: c-decl.c:1116 #, gcc-internal-format msgid "prototype for %q+D declares argument %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:1130 +#: c-decl.c:1129 #, gcc-internal-format msgid "prototype for %q+D follows non-prototype definition" msgstr "" -#: c-decl.c:1145 +#: c-decl.c:1144 #, fuzzy, gcc-internal-format msgid "previous definition of %q+D was here" msgstr "папярэдняе вызначэньне" -#: c-decl.c:1147 +#: c-decl.c:1146 #, fuzzy, gcc-internal-format msgid "previous implicit declaration of %q+D was here" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:1149 +#: c-decl.c:1148 #, fuzzy, gcc-internal-format msgid "previous declaration of %q+D was here" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:1189 +#: c-decl.c:1188 #, gcc-internal-format msgid "%q+D redeclared as different kind of symbol" msgstr "" -#: c-decl.c:1193 +#: c-decl.c:1192 #, fuzzy, gcc-internal-format msgid "built-in function %q+D declared as non-function" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:1196 c-decl.c:1312 c-decl.c:1946 +#: c-decl.c:1195 c-decl.c:1311 c-decl.c:1945 #, fuzzy, gcc-internal-format msgid "declaration of %q+D shadows a built-in function" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: c-decl.c:1205 +#: c-decl.c:1204 #, fuzzy, gcc-internal-format msgid "redeclaration of enumerator %q+D" msgstr "абвяшчэньне шаблёну `%#D'" @@ -16196,264 +16196,264 @@ #. 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:1226 +#: c-decl.c:1225 #, fuzzy, gcc-internal-format msgid "conflicting types for built-in function %q+D" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: c-decl.c:1250 c-decl.c:1263 c-decl.c:1273 +#: c-decl.c:1249 c-decl.c:1262 c-decl.c:1272 #, gcc-internal-format msgid "conflicting types for %q+D" msgstr "" -#: c-decl.c:1271 +#: c-decl.c:1270 #, gcc-internal-format msgid "conflicting type qualifiers for %q+D" msgstr "" #. Allow OLDDECL to continue in use. -#: c-decl.c:1288 +#: c-decl.c:1287 #, fuzzy, gcc-internal-format msgid "redefinition of typedef %q+D" msgstr "перанакіраванне stdout: %s" -#: c-decl.c:1336 c-decl.c:1421 +#: c-decl.c:1335 c-decl.c:1420 #, fuzzy, gcc-internal-format msgid "redefinition of %q+D" msgstr "перанакіраванне stdout: %s" -#: c-decl.c:1371 c-decl.c:1459 +#: c-decl.c:1370 c-decl.c:1458 #, gcc-internal-format msgid "static declaration of %q+D follows non-static declaration" msgstr "" -#: c-decl.c:1381 c-decl.c:1388 c-decl.c:1448 c-decl.c:1456 +#: c-decl.c:1380 c-decl.c:1387 c-decl.c:1447 c-decl.c:1455 #, gcc-internal-format msgid "non-static declaration of %q+D follows static declaration" msgstr "" -#: c-decl.c:1408 +#: c-decl.c:1407 #, gcc-internal-format msgid "thread-local declaration of %q+D follows non-thread-local declaration" msgstr "" -#: c-decl.c:1411 +#: c-decl.c:1410 #, gcc-internal-format msgid "non-thread-local declaration of %q+D follows thread-local declaration" msgstr "" -#: c-decl.c:1441 +#: c-decl.c:1440 #, fuzzy, gcc-internal-format msgid "extern declaration of %q+D follows declaration with no linkage" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:1477 +#: c-decl.c:1476 #, gcc-internal-format msgid "declaration of %q+D with no linkage follows extern declaration" msgstr "" -#: c-decl.c:1483 +#: c-decl.c:1482 #, fuzzy, gcc-internal-format msgid "redeclaration of %q+D with no linkage" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:1497 +#: c-decl.c:1496 #, gcc-internal-format msgid "redeclaration of %q+D with different visibility (old visibility preserved)" msgstr "" -#: c-decl.c:1508 +#: c-decl.c:1507 #, fuzzy, gcc-internal-format msgid "inline declaration of %qD follows declaration with attribute noinline" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:1515 +#: c-decl.c:1514 #, fuzzy, gcc-internal-format msgid "declaration of %q+D with attribute noinline follows inline declaration " msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:1530 +#: c-decl.c:1529 #, gcc-internal-format msgid "%q+D declared inline after being called" msgstr "" -#: c-decl.c:1535 +#: c-decl.c:1534 #, fuzzy, gcc-internal-format msgid "%q+D declared inline after its definition" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:1554 +#: c-decl.c:1553 #, fuzzy, gcc-internal-format msgid "redefinition of parameter %q+D" msgstr "перанакіраванне stdout: %s" -#: c-decl.c:1581 +#: c-decl.c:1580 #, fuzzy, gcc-internal-format msgid "redundant redeclaration of %q+D" msgstr "Нерэчаіснае абвяшчэнне" -#: c-decl.c:1933 +#: c-decl.c:1932 #, fuzzy, gcc-internal-format msgid "declaration of %q+D shadows previous non-variable" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: c-decl.c:1938 +#: c-decl.c:1937 #, gcc-internal-format msgid "declaration of %q+D shadows a parameter" msgstr "" -#: c-decl.c:1941 +#: c-decl.c:1940 #, gcc-internal-format msgid "declaration of %q+D shadows a global declaration" msgstr "" -#: c-decl.c:1951 +#: c-decl.c:1950 #, fuzzy, gcc-internal-format msgid "declaration of %q+D shadows a previous local" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: c-decl.c:1954 cp/name-lookup.c:972 cp/name-lookup.c:1003 +#: c-decl.c:1953 cp/name-lookup.c:972 cp/name-lookup.c:1003 #: cp/name-lookup.c:1011 #, fuzzy, gcc-internal-format msgid "%Jshadowed declaration is here" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:2154 +#: c-decl.c:2153 #, fuzzy, gcc-internal-format msgid "nested extern declaration of %qD" msgstr "пустое абвяшчэнне" -#: c-decl.c:2323 +#: c-decl.c:2322 #, fuzzy, gcc-internal-format msgid "implicit declaration of function %qE" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:2384 +#: c-decl.c:2383 #, fuzzy, gcc-internal-format msgid "incompatible implicit declaration of built-in function %qD" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:2393 +#: c-decl.c:2392 #, fuzzy, gcc-internal-format msgid "incompatible implicit declaration of function %qD" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:2446 +#: c-decl.c:2445 #, fuzzy, gcc-internal-format msgid "%H%qE undeclared here (not in a function)" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:2451 +#: c-decl.c:2450 #, fuzzy, gcc-internal-format msgid "%H%qE undeclared (first use in this function)" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:2455 +#: c-decl.c:2454 #, fuzzy, gcc-internal-format msgid "%H(Each undeclared identifier is reported only once" msgstr "(Аб кожным неабвешчаным ідэнтыфікатары паведамляецца" -#: c-decl.c:2456 +#: c-decl.c:2455 #, fuzzy, gcc-internal-format msgid "%Hfor each function it appears in.)" msgstr "адзін раз для кожнай функцыі, дзе ён з'яўляецца.)" -#: c-decl.c:2494 cp/decl.c:2252 +#: c-decl.c:2493 cp/decl.c:2268 #, gcc-internal-format msgid "label %qE referenced outside of any function" msgstr "" -#: c-decl.c:2536 +#: c-decl.c:2535 #, fuzzy, gcc-internal-format msgid "duplicate label declaration %qE" msgstr "паўторнае абвяшчэньне адмеціны `%s'" -#: c-decl.c:2572 +#: c-decl.c:2571 #, fuzzy, gcc-internal-format msgid "%Hduplicate label %qD" msgstr "паўтарэнне \"%s\"" -#: c-decl.c:2582 +#: c-decl.c:2581 #, gcc-internal-format msgid "%Jjump into statement expression" msgstr "" -#: c-decl.c:2584 +#: c-decl.c:2583 #, gcc-internal-format msgid "%Jjump into scope of identifier with variably modified type" msgstr "" -#: c-decl.c:2599 +#: c-decl.c:2598 #, gcc-internal-format msgid "%Htraditional C lacks a separate namespace for labels, identifier %qE conflicts" msgstr "" -#: c-decl.c:2674 +#: c-decl.c:2673 #, gcc-internal-format msgid "%H%qE defined as wrong kind of tag" msgstr "" -#: c-decl.c:2898 +#: c-decl.c:2897 #, gcc-internal-format msgid "unnamed struct/union that defines no instances" msgstr "" -#: c-decl.c:2906 +#: c-decl.c:2905 #, gcc-internal-format msgid "empty declaration with storage class specifier does not redeclare tag" msgstr "" -#: c-decl.c:2917 +#: c-decl.c:2916 #, gcc-internal-format msgid "empty declaration with type qualifier does not redeclare tag" msgstr "" -#: c-decl.c:2938 c-decl.c:2945 +#: c-decl.c:2937 c-decl.c:2944 #, fuzzy, gcc-internal-format msgid "useless type name in empty declaration" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: c-decl.c:2953 +#: c-decl.c:2952 #, fuzzy, gcc-internal-format msgid "% in empty declaration" msgstr "пустое абвяшчэньне" -#: c-decl.c:2959 +#: c-decl.c:2958 #, gcc-internal-format msgid "% in file-scope empty declaration" msgstr "" -#: c-decl.c:2965 +#: c-decl.c:2964 #, gcc-internal-format msgid "% in file-scope empty declaration" msgstr "" -#: c-decl.c:2971 +#: c-decl.c:2970 #, fuzzy, gcc-internal-format msgid "useless storage class specifier in empty declaration" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: c-decl.c:2977 +#: c-decl.c:2976 #, gcc-internal-format msgid "useless %<__thread%> in empty declaration" msgstr "" -#: c-decl.c:2985 +#: c-decl.c:2984 #, fuzzy, gcc-internal-format msgid "useless type qualifier in empty declaration" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: c-decl.c:2992 c-parser.c:1285 +#: c-decl.c:2991 c-parser.c:1284 #, gcc-internal-format msgid "empty declaration" msgstr "пустое абвяшчэньне" -#: c-decl.c:3058 +#: c-decl.c:3057 #, fuzzy, gcc-internal-format msgid "ISO C90 does not support % or type qualifiers in parameter array declarators" msgstr "ISO C89 не падтрымлівае \"long long\"" -#: c-decl.c:3061 +#: c-decl.c:3060 #, fuzzy, gcc-internal-format msgid "ISO C90 does not support %<[*]%> array declarators" msgstr "ISO C89 не падтрымлівае \"long long\"" @@ -16461,208 +16461,208 @@ #. C99 6.7.5.2p4 #. A function definition isn't function prototype scope C99 6.2.1p4. #. C99 6.7.5.2p4 -#: c-decl.c:3068 c-decl.c:4936 +#: c-decl.c:3067 c-decl.c:4935 #, gcc-internal-format msgid "%<[*]%> not allowed in other than function prototype scope" msgstr "" -#: c-decl.c:3092 +#: c-decl.c:3091 #, gcc-internal-format msgid "static or type qualifiers in abstract declarator" msgstr "" -#: c-decl.c:3178 +#: c-decl.c:3177 #, fuzzy, gcc-internal-format msgid "%q+D is usually a function" msgstr "`%s' - звычайна функцыя" -#: c-decl.c:3187 cp/decl.c:3858 cp/decl2.c:780 +#: c-decl.c:3186 cp/decl.c:3874 cp/decl2.c:779 #, fuzzy, gcc-internal-format msgid "typedef %qD is initialized (use __typeof__ instead)" msgstr "параметр \"%s\" ініцыялізаваны" -#: c-decl.c:3192 +#: c-decl.c:3191 #, gcc-internal-format msgid "function %qD is initialized like a variable" msgstr "" #. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE. -#: c-decl.c:3198 +#: c-decl.c:3197 #, fuzzy, gcc-internal-format msgid "parameter %qD is initialized" msgstr "параметр \"%s\" ініцыялізаваны" -#: c-decl.c:3223 +#: c-decl.c:3222 #, fuzzy, gcc-internal-format msgid "variable %qD has initializer but incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: c-decl.c:3299 c-decl.c:6023 cp/decl.c:3900 cp/decl.c:10482 +#: c-decl.c:3298 c-decl.c:6022 cp/decl.c:3916 cp/decl.c:10551 #, fuzzy, gcc-internal-format msgid "inline function %q+D given attribute noinline" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:3390 +#: c-decl.c:3389 #, gcc-internal-format msgid "initializer fails to determine size of %q+D" msgstr "" -#: c-decl.c:3395 +#: c-decl.c:3394 #, fuzzy, gcc-internal-format msgid "array size missing in %q+D" msgstr "прапушчан памер масіва ў `%D'" -#: c-decl.c:3407 +#: c-decl.c:3406 #, fuzzy, gcc-internal-format msgid "zero or negative size array %q+D" msgstr "нулявы памер масіва `%D'" -#: c-decl.c:3462 varasm.c:1765 +#: c-decl.c:3461 varasm.c:1764 #, gcc-internal-format msgid "storage size of %q+D isn%'t known" msgstr "" -#: c-decl.c:3472 +#: c-decl.c:3471 #, fuzzy, gcc-internal-format msgid "storage size of %q+D isn%'t constant" msgstr "тып параметра \"%s\" не аб'яўлены" -#: c-decl.c:3517 +#: c-decl.c:3516 #, gcc-internal-format msgid "ignoring asm-specifier for non-static local variable %q+D" msgstr "" -#: c-decl.c:3545 fortran/f95-lang.c:684 +#: c-decl.c:3544 fortran/f95-lang.c:683 #, gcc-internal-format msgid "cannot put object with volatile field into register" msgstr "" -#: c-decl.c:3671 +#: c-decl.c:3670 #, gcc-internal-format msgid "ISO C forbids forward parameter declarations" msgstr "" -#: c-decl.c:3790 +#: c-decl.c:3789 #, fuzzy, gcc-internal-format msgid "bit-field %qs width not an integer constant" msgstr "бітавае поле \"%s\" мае нерэчаісны тып" -#: c-decl.c:3798 +#: c-decl.c:3797 #, gcc-internal-format msgid "negative width in bit-field %qs" msgstr "" -#: c-decl.c:3803 +#: c-decl.c:3802 #, gcc-internal-format msgid "zero width for bit-field %qs" msgstr "" -#: c-decl.c:3813 +#: c-decl.c:3812 #, fuzzy, gcc-internal-format msgid "bit-field %qs has invalid type" msgstr "бітавае поле \"%s\" мае нерэчаісны тып" -#: c-decl.c:3823 +#: c-decl.c:3822 #, gcc-internal-format msgid "type of bit-field %qs is a GCC extension" msgstr "" -#: c-decl.c:3832 +#: c-decl.c:3831 #, gcc-internal-format msgid "width of %qs exceeds its type" msgstr "" -#: c-decl.c:3845 +#: c-decl.c:3844 #, gcc-internal-format msgid "%qs is narrower than values of its type" msgstr "" -#: c-decl.c:3962 c-decl.c:4239 +#: c-decl.c:3961 c-decl.c:4238 #, gcc-internal-format msgid "variably modified %qs at file scope" msgstr "" -#: c-decl.c:3980 +#: c-decl.c:3979 #, gcc-internal-format msgid "type defaults to % in declaration of %qs" msgstr "" -#: c-decl.c:4008 +#: c-decl.c:4007 #, fuzzy, gcc-internal-format msgid "duplicate %" msgstr "паўтарэнне \"const\"" -#: c-decl.c:4010 +#: c-decl.c:4009 #, fuzzy, gcc-internal-format msgid "duplicate %" msgstr "паўтарэнне \"restrict\"" -#: c-decl.c:4012 +#: c-decl.c:4011 #, fuzzy, gcc-internal-format msgid "duplicate %" msgstr "паўтарэнне \"volatile\"" -#: c-decl.c:4031 +#: c-decl.c:4030 #, gcc-internal-format msgid "function definition declared %" msgstr "" -#: c-decl.c:4033 +#: c-decl.c:4032 #, fuzzy, gcc-internal-format msgid "function definition declared %" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: c-decl.c:4035 +#: c-decl.c:4034 #, gcc-internal-format msgid "function definition declared %" msgstr "" -#: c-decl.c:4037 +#: c-decl.c:4036 #, fuzzy, gcc-internal-format msgid "function definition declared %<__thread%>" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: c-decl.c:4053 +#: c-decl.c:4052 #, gcc-internal-format msgid "storage class specified for structure field %qs" msgstr "" -#: c-decl.c:4057 cp/decl.c:7511 +#: c-decl.c:4056 cp/decl.c:7580 #, gcc-internal-format msgid "storage class specified for parameter %qs" msgstr "" -#: c-decl.c:4060 cp/decl.c:7513 +#: c-decl.c:4059 cp/decl.c:7582 #, gcc-internal-format msgid "storage class specified for typename" msgstr "" -#: c-decl.c:4077 cp/decl.c:7530 +#: c-decl.c:4076 cp/decl.c:7599 #, gcc-internal-format msgid "%qs initialized and declared %" msgstr "" -#: c-decl.c:4080 cp/decl.c:7533 +#: c-decl.c:4079 cp/decl.c:7602 #, gcc-internal-format msgid "%qs has both % and initializer" msgstr "" -#: c-decl.c:4085 +#: c-decl.c:4084 #, gcc-internal-format msgid "file-scope declaration of %qs specifies %" msgstr "" -#: c-decl.c:4087 +#: c-decl.c:4086 #, gcc-internal-format msgid "file-scope declaration of %qs specifies %" msgstr "" -#: c-decl.c:4092 cp/decl.c:7537 +#: c-decl.c:4091 cp/decl.c:7606 #, gcc-internal-format msgid "nested function %qs declared %" msgstr "" -#: c-decl.c:4095 cp/decl.c:7547 +#: c-decl.c:4094 cp/decl.c:7616 #, gcc-internal-format msgid "function-scope %qs implicitly auto and declared %<__thread%>" msgstr "" @@ -16670,159 +16670,159 @@ #. 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:4142 c-decl.c:4393 +#: c-decl.c:4141 c-decl.c:4392 #, gcc-internal-format msgid "static or type qualifiers in non-parameter array declarator" msgstr "" -#: c-decl.c:4189 +#: c-decl.c:4188 #, gcc-internal-format msgid "declaration of %qs as array of voids" msgstr "" -#: c-decl.c:4195 +#: c-decl.c:4194 #, gcc-internal-format msgid "declaration of %qs as array of functions" msgstr "" -#: c-decl.c:4200 +#: c-decl.c:4199 #, fuzzy, gcc-internal-format msgid "invalid use of structure with flexible array member" msgstr "нявернае выкарыстанне \"restict\"" -#: c-decl.c:4220 +#: c-decl.c:4219 #, fuzzy, gcc-internal-format msgid "size of array %qs has non-integer type" msgstr "памер масіва \"%s\" адмоўны" -#: c-decl.c:4225 +#: c-decl.c:4224 #, fuzzy, gcc-internal-format msgid "ISO C forbids zero-size array %qs" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-decl.c:4232 +#: c-decl.c:4231 #, fuzzy, gcc-internal-format msgid "size of array %qs is negative" msgstr "памер масіва \"%s\" адмоўны" -#: c-decl.c:4252 +#: c-decl.c:4251 #, gcc-internal-format msgid "ISO C90 forbids array %qs whose size can%'t be evaluated" msgstr "" -#: c-decl.c:4256 +#: c-decl.c:4255 #, fuzzy, gcc-internal-format msgid "ISO C90 forbids variable-size array %qs" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-decl.c:4296 c-decl.c:4551 cp/decl.c:7946 +#: c-decl.c:4295 c-decl.c:4550 cp/decl.c:8015 #, fuzzy, gcc-internal-format msgid "size of array %qs is too large" msgstr "памер масіва \"%s\" вельмі вялікі" -#: c-decl.c:4307 +#: c-decl.c:4306 #, fuzzy, gcc-internal-format msgid "ISO C90 does not support flexible array members" msgstr "ISO C89 не падтрымлівае комлексныя тыпы" #. C99 6.7.5.2p4 -#: c-decl.c:4320 c-parser.c:4911 +#: c-decl.c:4319 c-parser.c:4910 #, fuzzy, gcc-internal-format msgid "%<[*]%> not allowed in other than a declaration" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: c-decl.c:4343 +#: c-decl.c:4342 #, gcc-internal-format msgid "array type has incomplete element type" msgstr "" -#: c-decl.c:4425 cp/decl.c:7631 +#: c-decl.c:4424 cp/decl.c:7700 #, fuzzy, gcc-internal-format msgid "%qs declared as function returning a function" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:4430 cp/decl.c:7636 +#: c-decl.c:4429 cp/decl.c:7705 #, gcc-internal-format msgid "%qs declared as function returning an array" msgstr "" -#: c-decl.c:4452 +#: c-decl.c:4451 #, fuzzy, gcc-internal-format msgid "function definition has qualified void return type" msgstr "функцыя не вяртае тып string" -#: c-decl.c:4455 +#: c-decl.c:4454 #, gcc-internal-format msgid "type qualifiers ignored on function return type" msgstr "" -#: c-decl.c:4484 c-decl.c:4564 c-decl.c:4651 c-decl.c:4741 +#: c-decl.c:4483 c-decl.c:4563 c-decl.c:4650 c-decl.c:4740 #, gcc-internal-format msgid "ISO C forbids qualified function types" msgstr "" -#: c-decl.c:4572 +#: c-decl.c:4571 #, gcc-internal-format msgid "typedef %q+D declared %" msgstr "" -#: c-decl.c:4587 +#: c-decl.c:4586 #, gcc-internal-format msgid "ISO C forbids const or volatile function types" msgstr "" #. C99 6.7.2.1p8 -#: c-decl.c:4598 +#: c-decl.c:4597 #, gcc-internal-format msgid "a member of a structure or union cannot have a variably modified type" msgstr "" -#: c-decl.c:4614 +#: c-decl.c:4613 #, fuzzy, gcc-internal-format msgid "variable or field %qs declared void" msgstr "тып параметра \"%s\" не аб'яўлены" -#: c-decl.c:4644 +#: c-decl.c:4643 #, gcc-internal-format msgid "attributes in parameter array declarator ignored" msgstr "" -#: c-decl.c:4678 +#: c-decl.c:4677 #, fuzzy, gcc-internal-format msgid "parameter %q+D declared %" msgstr "тып параметра \"%s\" не аб'яўлены" -#: c-decl.c:4691 +#: c-decl.c:4690 #, fuzzy, gcc-internal-format msgid "field %qs declared as a function" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:4697 +#: c-decl.c:4696 #, fuzzy, gcc-internal-format msgid "field %qs has incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: c-decl.c:4711 c-decl.c:4723 c-decl.c:4727 +#: c-decl.c:4710 c-decl.c:4722 c-decl.c:4726 #, fuzzy, gcc-internal-format msgid "invalid storage class for function %qs" msgstr "Нерэчаісны выбар \"%s\"" -#: c-decl.c:4747 +#: c-decl.c:4746 #, gcc-internal-format msgid "% function returns non-void value" msgstr "" -#: c-decl.c:4775 +#: c-decl.c:4774 #, fuzzy, gcc-internal-format msgid "cannot inline function %" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: c-decl.c:4822 +#: c-decl.c:4821 #, gcc-internal-format msgid "variable previously declared % redeclared %" msgstr "" -#: c-decl.c:4832 +#: c-decl.c:4831 #, gcc-internal-format msgid "variable %q+D declared %" msgstr "" @@ -16832,361 +16832,361 @@ #. A mere warning is sure to result in improper #. semantics at runtime. Don't bother to allow this to #. compile. -#: c-decl.c:4862 cp/decl.c:6398 cp/decl.c:8538 +#: c-decl.c:4861 cp/decl.c:6467 cp/decl.c:8607 #, fuzzy, gcc-internal-format msgid "thread-local storage not supported for this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" #. C99 6.7.5.2p2 -#: c-decl.c:4870 +#: c-decl.c:4869 #, gcc-internal-format msgid "object with variably modified type must have no linkage" msgstr "" -#: c-decl.c:4941 c-decl.c:6104 +#: c-decl.c:4940 c-decl.c:6103 #, gcc-internal-format msgid "function declaration isn%'t a prototype" msgstr "" -#: c-decl.c:4949 +#: c-decl.c:4948 #, gcc-internal-format msgid "parameter names (without types) in function declaration" msgstr "" -#: c-decl.c:4982 +#: c-decl.c:4981 #, fuzzy, gcc-internal-format msgid "parameter %u (%q+D) has incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: c-decl.c:4985 +#: c-decl.c:4984 #, fuzzy, gcc-internal-format msgid "%Jparameter %u has incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: c-decl.c:4994 +#: c-decl.c:4993 #, fuzzy, gcc-internal-format msgid "parameter %u (%q+D) has void type" msgstr "тып параметра \"%s\" не аб'яўлены" -#: c-decl.c:4997 +#: c-decl.c:4996 #, fuzzy, gcc-internal-format msgid "%Jparameter %u has void type" msgstr "тып параметра \"%s\" не аб'яўлены" -#: c-decl.c:5059 +#: c-decl.c:5058 #, gcc-internal-format msgid "% as only parameter may not be qualified" msgstr "" -#: c-decl.c:5063 c-decl.c:5097 +#: c-decl.c:5062 c-decl.c:5096 #, fuzzy, gcc-internal-format msgid "% must be the only parameter" msgstr "нявернае выкарыстанне \"restict\"" -#: c-decl.c:5091 +#: c-decl.c:5090 #, gcc-internal-format msgid "parameter %q+D has just a forward declaration" msgstr "" #. The %s will be one of 'struct', 'union', or 'enum'. -#: c-decl.c:5136 +#: c-decl.c:5135 #, gcc-internal-format msgid "%<%s %E%> declared inside parameter list" msgstr "" #. The %s will be one of 'struct', 'union', or 'enum'. -#: c-decl.c:5140 +#: c-decl.c:5139 #, gcc-internal-format msgid "anonymous %s declared inside parameter list" msgstr "" -#: c-decl.c:5145 +#: c-decl.c:5144 #, gcc-internal-format msgid "its scope is only this definition or declaration, which is probably not what you want" msgstr "" -#: c-decl.c:5279 +#: c-decl.c:5278 #, fuzzy, gcc-internal-format msgid "redefinition of %" msgstr "перанакіраванне stdout: %s" -#: c-decl.c:5281 +#: c-decl.c:5280 #, fuzzy, gcc-internal-format msgid "redefinition of %" msgstr "перанакіраванне stdout: %s" -#: c-decl.c:5286 +#: c-decl.c:5285 #, fuzzy, gcc-internal-format msgid "nested redefinition of %" msgstr "перанакіраванне stdout: %s" -#: c-decl.c:5288 +#: c-decl.c:5287 #, fuzzy, gcc-internal-format msgid "nested redefinition of %" msgstr "перанакіраванне stdout: %s" -#: c-decl.c:5359 cp/decl.c:3663 +#: c-decl.c:5358 cp/decl.c:3679 #, gcc-internal-format msgid "declaration does not declare anything" msgstr "" -#: c-decl.c:5363 +#: c-decl.c:5362 #, fuzzy, gcc-internal-format msgid "ISO C doesn%'t support unnamed structs/unions" msgstr "ISO C не падтрымлівае комлексныя цэлалікавыя тыпы" -#: c-decl.c:5406 c-decl.c:5422 +#: c-decl.c:5405 c-decl.c:5421 #, fuzzy, gcc-internal-format msgid "duplicate member %q+D" msgstr "паўтарэнне \"%s\"" -#: c-decl.c:5461 +#: c-decl.c:5460 #, gcc-internal-format msgid "union has no named members" msgstr "" -#: c-decl.c:5463 +#: c-decl.c:5462 #, gcc-internal-format msgid "union has no members" msgstr "" -#: c-decl.c:5468 +#: c-decl.c:5467 #, gcc-internal-format msgid "struct has no named members" msgstr "" -#: c-decl.c:5470 +#: c-decl.c:5469 #, gcc-internal-format msgid "struct has no members" msgstr "" -#: c-decl.c:5532 +#: c-decl.c:5531 #, gcc-internal-format msgid "%Jflexible array member in union" msgstr "" -#: c-decl.c:5537 +#: c-decl.c:5536 #, gcc-internal-format msgid "%Jflexible array member not at end of struct" msgstr "" -#: c-decl.c:5542 +#: c-decl.c:5541 #, gcc-internal-format msgid "%Jflexible array member in otherwise empty struct" msgstr "" -#: c-decl.c:5549 +#: c-decl.c:5548 #, fuzzy, gcc-internal-format msgid "%Jinvalid use of structure with flexible array member" msgstr "нявернае выкарыстанне \"restict\"" -#: c-decl.c:5658 +#: c-decl.c:5657 #, gcc-internal-format msgid "union cannot be made transparent" msgstr "" -#: c-decl.c:5729 +#: c-decl.c:5728 #, fuzzy, gcc-internal-format msgid "nested redefinition of %" msgstr "перанакіраванне stdout: %s" #. This enum is a named one that has been declared already. -#: c-decl.c:5736 +#: c-decl.c:5735 #, fuzzy, gcc-internal-format msgid "redeclaration of %" -msgstr "абвяшчэньне шаблёну `%#D'" +msgstr "абвяшчэньне `%#D'" -#: c-decl.c:5799 +#: c-decl.c:5798 #, gcc-internal-format msgid "enumeration values exceed range of largest integer" msgstr "" -#: c-decl.c:5816 +#: c-decl.c:5815 #, gcc-internal-format msgid "specified mode too small for enumeral values" msgstr "" -#: c-decl.c:5912 +#: c-decl.c:5911 #, fuzzy, gcc-internal-format msgid "enumerator value for %qE is not an integer constant" msgstr "памер масіва \"%s\" адмоўны" -#: c-decl.c:5929 +#: c-decl.c:5928 #, gcc-internal-format msgid "overflow in enumeration values" msgstr "" -#: c-decl.c:5934 +#: c-decl.c:5933 #, gcc-internal-format msgid "ISO C restricts enumerator values to range of %" msgstr "" -#: c-decl.c:6030 +#: c-decl.c:6029 #, gcc-internal-format msgid "return type is an incomplete type" msgstr "" -#: c-decl.c:6038 +#: c-decl.c:6037 #, fuzzy, gcc-internal-format msgid "return type defaults to %" msgstr "вяртаемы тып \"%s\" не \"int\"" -#: c-decl.c:6111 +#: c-decl.c:6110 #, fuzzy, gcc-internal-format msgid "no previous prototype for %q+D" msgstr "няма папярэдняга прататыпа для \"%s\"" -#: c-decl.c:6120 +#: c-decl.c:6119 #, fuzzy, gcc-internal-format msgid "%q+D was used with no prototype before its definition" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:6126 +#: c-decl.c:6125 #, fuzzy, gcc-internal-format msgid "no previous declaration for %q+D" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: c-decl.c:6136 +#: c-decl.c:6135 #, fuzzy, gcc-internal-format msgid "%q+D was used with no declaration before its definition" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: c-decl.c:6158 +#: c-decl.c:6157 #, gcc-internal-format msgid "C99 inline functions are not supported; using GNU89" msgstr "" -#: c-decl.c:6162 +#: c-decl.c:6161 #, gcc-internal-format msgid "to disable this warning use -fgnu89-inline or the gnu_inline function attribute" msgstr "" -#: c-decl.c:6192 c-decl.c:6713 +#: c-decl.c:6191 c-decl.c:6712 #, fuzzy, gcc-internal-format msgid "return type of %q+D is not %" msgstr "вяртаемы тып \"%s\" не \"int\"" -#: c-decl.c:6207 +#: c-decl.c:6206 #, fuzzy, gcc-internal-format msgid "first argument of %q+D should be %" msgstr "першым аргументам \"%s\" павінен быць \"int\"" -#: c-decl.c:6215 +#: c-decl.c:6214 #, fuzzy, gcc-internal-format msgid "second argument of %q+D should be %" msgstr "другім аргументам \"%s\" павінен быць \"char **\"" -#: c-decl.c:6224 +#: c-decl.c:6223 #, fuzzy, gcc-internal-format msgid "third argument of %q+D should probably be %" msgstr "другім аргументам \"%s\" павінен быць \"char **\"" -#: c-decl.c:6234 +#: c-decl.c:6233 #, gcc-internal-format msgid "%q+D takes only zero or two arguments" msgstr "" -#: c-decl.c:6237 +#: c-decl.c:6236 #, fuzzy, gcc-internal-format msgid "%q+D is normally a non-static function" msgstr "`%s' - звычайна функцыя" -#: c-decl.c:6283 +#: c-decl.c:6282 #, gcc-internal-format msgid "%Jold-style parameter declarations in prototyped function definition" msgstr "" -#: c-decl.c:6297 +#: c-decl.c:6296 #, gcc-internal-format msgid "%Jtraditional C rejects ISO C style function definitions" msgstr "" -#: c-decl.c:6313 +#: c-decl.c:6312 #, fuzzy, gcc-internal-format msgid "%Jparameter name omitted" msgstr "тып параметра \"%s\" не аб'яўлены" -#: c-decl.c:6347 +#: c-decl.c:6346 #, gcc-internal-format msgid "%Jold-style function definition" msgstr "" -#: c-decl.c:6356 +#: c-decl.c:6355 #, gcc-internal-format msgid "%Jparameter name missing from parameter list" msgstr "" -#: c-decl.c:6367 +#: c-decl.c:6366 #, gcc-internal-format msgid "%q+D declared as a non-parameter" msgstr "" -#: c-decl.c:6372 +#: c-decl.c:6371 #, fuzzy, gcc-internal-format msgid "multiple parameters named %q+D" msgstr "невыкарыстаемы параметр \"%s\"" -#: c-decl.c:6380 +#: c-decl.c:6379 #, fuzzy, gcc-internal-format msgid "parameter %q+D declared with void type" msgstr "тып параметра \"%s\" не аб'яўлены" -#: c-decl.c:6397 c-decl.c:6399 +#: c-decl.c:6396 c-decl.c:6398 #, gcc-internal-format msgid "type of %q+D defaults to %" msgstr "" -#: c-decl.c:6418 +#: c-decl.c:6417 #, fuzzy, gcc-internal-format msgid "parameter %q+D has incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: c-decl.c:6424 +#: c-decl.c:6423 #, gcc-internal-format msgid "declaration for parameter %q+D but no such parameter" msgstr "" -#: c-decl.c:6474 +#: c-decl.c:6473 #, gcc-internal-format msgid "number of arguments doesn%'t match built-in prototype" msgstr "" -#: c-decl.c:6478 +#: c-decl.c:6477 #, fuzzy, gcc-internal-format msgid "number of arguments doesn%'t match prototype" msgstr "памылковая колькасьць аргументаў, зададзеных для атрыбута `%s'" -#: c-decl.c:6479 c-decl.c:6519 c-decl.c:6532 +#: c-decl.c:6478 c-decl.c:6518 c-decl.c:6531 #, fuzzy, gcc-internal-format msgid "%Hprototype declaration" msgstr "пустое абвяшчэньне" -#: c-decl.c:6513 +#: c-decl.c:6512 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match built-in prototype" msgstr "" -#: c-decl.c:6517 +#: c-decl.c:6516 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match prototype" msgstr "" -#: c-decl.c:6527 +#: c-decl.c:6526 #, gcc-internal-format msgid "argument %qD doesn%'t match built-in prototype" msgstr "" -#: c-decl.c:6531 +#: c-decl.c:6530 #, gcc-internal-format msgid "argument %qD doesn%'t match prototype" msgstr "" -#: c-decl.c:6758 cp/decl.c:11270 +#: c-decl.c:6757 cp/decl.c:11339 #, gcc-internal-format msgid "no return statement in function returning non-void" msgstr "" -#: c-decl.c:6767 +#: c-decl.c:6766 #, gcc-internal-format msgid "this function may return with or without a value" msgstr "" @@ -17194,944 +17194,944 @@ #. 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:6864 +#: c-decl.c:6863 #, gcc-internal-format msgid "% loop initial declaration used outside C99 mode" msgstr "" -#: c-decl.c:6893 +#: c-decl.c:6892 #, gcc-internal-format msgid "declaration of static variable %q+D in % loop initial declaration" msgstr "" -#: c-decl.c:6896 +#: c-decl.c:6895 #, gcc-internal-format msgid "declaration of % variable %q+D in % loop initial declaration" msgstr "" -#: c-decl.c:6901 +#: c-decl.c:6900 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "" -#: c-decl.c:6905 +#: c-decl.c:6904 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "" -#: c-decl.c:6909 +#: c-decl.c:6908 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "" -#: c-decl.c:6913 +#: c-decl.c:6912 #, gcc-internal-format msgid "declaration of non-variable %q+D in % loop initial declaration" msgstr "" -#: c-decl.c:7202 c-decl.c:7398 c-decl.c:7649 +#: c-decl.c:7201 c-decl.c:7397 c-decl.c:7648 #, fuzzy, gcc-internal-format msgid "duplicate %qE" msgstr "паўтарэньне `%s'" -#: c-decl.c:7225 c-decl.c:7407 c-decl.c:7551 +#: c-decl.c:7224 c-decl.c:7406 c-decl.c:7550 #, gcc-internal-format msgid "two or more data types in declaration specifiers" msgstr "" -#: c-decl.c:7237 cp/parser.c:2048 +#: c-decl.c:7236 cp/parser.c:2047 #, fuzzy, gcc-internal-format msgid "% is too long for GCC" msgstr "`long long long' - вельмі доўга для GCC" -#: c-decl.c:7244 c-decl.c:7481 +#: c-decl.c:7243 c-decl.c:7480 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7250 +#: c-decl.c:7249 #, fuzzy, gcc-internal-format msgid "ISO C90 does not support %" msgstr "ISO C89 не падтрымлівае `long long'" -#: c-decl.c:7255 c-decl.c:7284 +#: c-decl.c:7254 c-decl.c:7283 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7258 c-decl.c:7414 +#: c-decl.c:7257 c-decl.c:7413 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7261 c-decl.c:7433 +#: c-decl.c:7260 c-decl.c:7432 #, gcc-internal-format msgid "both % and %<_Bool%> in declaration specifiers" msgstr "" -#: c-decl.c:7264 c-decl.c:7452 +#: c-decl.c:7263 c-decl.c:7451 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7267 c-decl.c:7465 +#: c-decl.c:7266 c-decl.c:7464 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7270 +#: c-decl.c:7269 #, gcc-internal-format msgid "both % and %<_Decimal32%> in declaration specifiers" msgstr "" -#: c-decl.c:7273 +#: c-decl.c:7272 #, gcc-internal-format msgid "both % and %<_Decimal64%> in declaration specifiers" msgstr "" -#: c-decl.c:7276 +#: c-decl.c:7275 #, gcc-internal-format msgid "both % and %<_Decimal128%> in declaration specifiers" msgstr "" -#: c-decl.c:7287 c-decl.c:7417 +#: c-decl.c:7286 c-decl.c:7416 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7290 c-decl.c:7436 +#: c-decl.c:7289 c-decl.c:7435 #, gcc-internal-format msgid "both % and %<_Bool%> in declaration specifiers" msgstr "" -#: c-decl.c:7293 c-decl.c:7455 +#: c-decl.c:7292 c-decl.c:7454 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7296 c-decl.c:7468 +#: c-decl.c:7295 c-decl.c:7467 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7299 c-decl.c:7484 +#: c-decl.c:7298 c-decl.c:7483 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7302 +#: c-decl.c:7301 #, gcc-internal-format msgid "both % and %<_Decimal32%> in declaration specifiers" msgstr "" -#: c-decl.c:7305 +#: c-decl.c:7304 #, gcc-internal-format msgid "both % and %<_Decimal64%> in declaration specifiers" msgstr "" -#: c-decl.c:7308 +#: c-decl.c:7307 #, gcc-internal-format msgid "both % and %<_Decimal128%> in declaration specifiers" msgstr "" -#: c-decl.c:7316 c-decl.c:7345 +#: c-decl.c:7315 c-decl.c:7344 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7319 c-decl.c:7420 +#: c-decl.c:7318 c-decl.c:7419 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7322 c-decl.c:7439 +#: c-decl.c:7321 c-decl.c:7438 #, gcc-internal-format msgid "both % and %<_Bool%> in declaration specifiers" msgstr "" -#: c-decl.c:7325 c-decl.c:7471 +#: c-decl.c:7324 c-decl.c:7470 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7328 c-decl.c:7487 +#: c-decl.c:7327 c-decl.c:7486 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7331 +#: c-decl.c:7330 #, gcc-internal-format msgid "both % and %<_Decimal32%> in declaration specifiers" msgstr "" -#: c-decl.c:7334 +#: c-decl.c:7333 #, gcc-internal-format msgid "both % and %<_Decimal64%> in declaration specifiers" msgstr "" -#: c-decl.c:7337 +#: c-decl.c:7336 #, gcc-internal-format msgid "both % and %<_Decimal128%> in declaration specifiers" msgstr "" -#: c-decl.c:7348 c-decl.c:7423 +#: c-decl.c:7347 c-decl.c:7422 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7351 c-decl.c:7442 +#: c-decl.c:7350 c-decl.c:7441 #, gcc-internal-format msgid "both % and %<_Bool%> in declaration specifiers" msgstr "" -#: c-decl.c:7354 c-decl.c:7474 +#: c-decl.c:7353 c-decl.c:7473 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7357 c-decl.c:7490 +#: c-decl.c:7356 c-decl.c:7489 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7360 +#: c-decl.c:7359 #, gcc-internal-format msgid "both % and %<_Decimal32%> in declaration specifiers" msgstr "" -#: c-decl.c:7363 +#: c-decl.c:7362 #, gcc-internal-format msgid "both % and %<_Decimal64%> in declaration specifiers" msgstr "" -#: c-decl.c:7366 +#: c-decl.c:7365 #, gcc-internal-format msgid "both % and %<_Decimal128%> in declaration specifiers" msgstr "" -#: c-decl.c:7374 +#: c-decl.c:7373 #, fuzzy, gcc-internal-format msgid "ISO C90 does not support complex types" msgstr "ISO C89 не падтрымлівае комлексныя тыпы" -#: c-decl.c:7376 c-decl.c:7426 +#: c-decl.c:7375 c-decl.c:7425 #, gcc-internal-format msgid "both % and % in declaration specifiers" msgstr "" -#: c-decl.c:7379 c-decl.c:7445 +#: c-decl.c:7378 c-decl.c:7444 #, gcc-internal-format msgid "both % and %<_Bool%> in declaration specifiers" msgstr "" -#: c-decl.c:7382 +#: c-decl.c:7381 #, gcc-internal-format msgid "both % and %<_Decimal32%> in declaration specifiers" msgstr "" -#: c-decl.c:7385 +#: c-decl.c:7384 #, gcc-internal-format msgid "both % and %<_Decimal64%> in declaration specifiers" msgstr "" -#: c-decl.c:7388 +#: c-decl.c:7387 #, gcc-internal-format msgid "both % and %<_Decimal128%> in declaration specifiers" msgstr "" -#: c-decl.c:7507 +#: c-decl.c:7506 #, gcc-internal-format msgid "both % and %<%s%> in declaration specifiers" msgstr "" -#: c-decl.c:7510 +#: c-decl.c:7509 #, gcc-internal-format msgid "both % and %<%s%> in declaration specifiers" msgstr "" -#: c-decl.c:7513 +#: c-decl.c:7512 #, gcc-internal-format msgid "both % and %<%s%> in declaration specifiers" msgstr "" -#: c-decl.c:7516 +#: c-decl.c:7515 #, gcc-internal-format msgid "both % and %<%s%> in declaration specifiers" msgstr "" -#: c-decl.c:7519 +#: c-decl.c:7518 #, gcc-internal-format msgid "both % and %<%s%> in declaration specifiers" msgstr "" -#: c-decl.c:7522 +#: c-decl.c:7521 #, gcc-internal-format msgid "both % and %<%s%> in declaration specifiers" msgstr "" -#: c-decl.c:7532 +#: c-decl.c:7531 #, fuzzy, gcc-internal-format msgid "decimal floating point not supported for this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-decl.c:7534 +#: c-decl.c:7533 #, fuzzy, gcc-internal-format msgid "ISO C does not support decimal floating point" -msgstr "ISO C++ не падтрымлівае \"long long\"" +msgstr "ISO C89 не падтрымлівае `long long'" -#: c-decl.c:7568 +#: c-decl.c:7567 #, gcc-internal-format msgid "%qE fails to be a typedef or built in type" msgstr "" -#: c-decl.c:7600 +#: c-decl.c:7599 #, fuzzy, gcc-internal-format msgid "%qE is not at beginning of declaration" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: c-decl.c:7614 +#: c-decl.c:7613 #, gcc-internal-format msgid "%<__thread%> used with %" msgstr "" -#: c-decl.c:7616 +#: c-decl.c:7615 #, gcc-internal-format msgid "%<__thread%> used with %" msgstr "" -#: c-decl.c:7618 +#: c-decl.c:7617 #, gcc-internal-format msgid "%<__thread%> used with %" msgstr "" -#: c-decl.c:7629 +#: c-decl.c:7628 #, gcc-internal-format msgid "%<__thread%> before %" msgstr "" -#: c-decl.c:7638 +#: c-decl.c:7637 #, gcc-internal-format msgid "%<__thread%> before %" msgstr "" -#: c-decl.c:7654 +#: c-decl.c:7653 #, gcc-internal-format msgid "multiple storage classes in declaration specifiers" msgstr "" -#: c-decl.c:7661 +#: c-decl.c:7660 #, gcc-internal-format msgid "%<__thread%> used with %qE" msgstr "" -#: c-decl.c:7715 +#: c-decl.c:7714 #, fuzzy, gcc-internal-format msgid "ISO C does not support plain % meaning %" msgstr "ISO C не падтрымлівае просты \"complex\" у значэнні \"double complex\"" -#: c-decl.c:7760 c-decl.c:7786 +#: c-decl.c:7759 c-decl.c:7785 #, gcc-internal-format msgid "ISO C does not support complex integer types" msgstr "ISO C не падтрымлівае комлексныя цэлалікавыя тыпы" -#: c-decl.c:7872 toplev.c:840 +#: c-decl.c:7871 toplev.c:839 #, fuzzy, gcc-internal-format msgid "%q+F used but never defined" msgstr "адмеціна `%s' выкарыстоўвываецца, але ня вызначана" -#: c-format.c:97 c-format.c:206 +#: c-format.c:96 c-format.c:205 #, gcc-internal-format msgid "format string has invalid operand number" msgstr "" -#: c-format.c:114 +#: c-format.c:113 #, gcc-internal-format msgid "function does not return string type" msgstr "функцыя не вяртае тып string" -#: c-format.c:143 +#: c-format.c:142 #, fuzzy, gcc-internal-format msgid "format string argument not a string type" msgstr "функцыя не вяртае тып string" -#: c-format.c:186 +#: c-format.c:185 #, gcc-internal-format msgid "unrecognized format specifier" msgstr "" -#: c-format.c:198 +#: c-format.c:197 #, gcc-internal-format msgid "%qE is an unrecognized format function type" msgstr "" -#: c-format.c:212 +#: c-format.c:211 #, gcc-internal-format msgid "%<...%> has invalid operand number" msgstr "" -#: c-format.c:219 +#: c-format.c:218 #, gcc-internal-format msgid "format string argument follows the args to be formatted" msgstr "" -#: c-format.c:904 +#: c-format.c:903 #, gcc-internal-format msgid "function might be possible candidate for %qs format attribute" msgstr "" -#: c-format.c:996 c-format.c:1017 c-format.c:2031 +#: c-format.c:995 c-format.c:1016 c-format.c:2030 #, gcc-internal-format msgid "missing $ operand number in format" msgstr "" -#: c-format.c:1026 +#: c-format.c:1025 #, gcc-internal-format msgid "%s does not support %%n$ operand number formats" msgstr "" -#: c-format.c:1033 +#: c-format.c:1032 #, gcc-internal-format msgid "operand number out of range in format" msgstr "" -#: c-format.c:1056 +#: c-format.c:1055 #, gcc-internal-format msgid "format argument %d used more than once in %s format" msgstr "" -#: c-format.c:1088 +#: c-format.c:1087 #, gcc-internal-format msgid "$ operand number used after format without operand number" msgstr "" -#: c-format.c:1119 +#: c-format.c:1118 #, gcc-internal-format msgid "format argument %d unused before used argument %d in $-style format" msgstr "" -#: c-format.c:1214 +#: c-format.c:1213 #, gcc-internal-format msgid "format not a string literal, format string not checked" msgstr "" -#: c-format.c:1229 c-format.c:1232 +#: c-format.c:1228 c-format.c:1231 #, gcc-internal-format msgid "format not a string literal and no format arguments" msgstr "" -#: c-format.c:1235 +#: c-format.c:1234 #, gcc-internal-format msgid "format not a string literal, argument types not checked" msgstr "" -#: c-format.c:1248 +#: c-format.c:1247 #, gcc-internal-format msgid "too many arguments for format" msgstr "" -#: c-format.c:1251 +#: c-format.c:1250 #, gcc-internal-format msgid "unused arguments in $-style format" msgstr "" -#: c-format.c:1254 +#: c-format.c:1253 #, gcc-internal-format msgid "zero-length %s format string" msgstr "" -#: c-format.c:1258 +#: c-format.c:1257 #, gcc-internal-format msgid "format is a wide character string" msgstr "" -#: c-format.c:1261 +#: c-format.c:1260 #, gcc-internal-format msgid "unterminated format string" msgstr "" -#: c-format.c:1475 +#: c-format.c:1474 #, gcc-internal-format msgid "embedded %<\\0%> in format" msgstr "" -#: c-format.c:1490 +#: c-format.c:1489 #, gcc-internal-format msgid "spurious trailing %<%%%> in format" msgstr "" -#: c-format.c:1534 c-format.c:1779 +#: c-format.c:1533 c-format.c:1778 #, gcc-internal-format msgid "repeated %s in format" msgstr "" -#: c-format.c:1547 +#: c-format.c:1546 #, gcc-internal-format msgid "missing fill character at end of strfmon format" msgstr "" -#: c-format.c:1591 c-format.c:1693 c-format.c:1978 c-format.c:2043 +#: c-format.c:1590 c-format.c:1692 c-format.c:1977 c-format.c:2042 #, gcc-internal-format msgid "too few arguments for format" msgstr "" -#: c-format.c:1632 +#: c-format.c:1631 #, gcc-internal-format msgid "zero width in %s format" msgstr "" -#: c-format.c:1650 +#: c-format.c:1649 #, gcc-internal-format msgid "empty left precision in %s format" msgstr "" -#: c-format.c:1723 +#: c-format.c:1722 #, gcc-internal-format msgid "empty precision in %s format" msgstr "" -#: c-format.c:1763 +#: c-format.c:1762 #, fuzzy, gcc-internal-format msgid "%s does not support the %qs %s length modifier" msgstr "%s не падтрымлівае %s" -#: c-format.c:1813 +#: c-format.c:1812 #, gcc-internal-format msgid "conversion lacks type at end of format" msgstr "" -#: c-format.c:1824 +#: c-format.c:1823 #, gcc-internal-format msgid "unknown conversion type character %qc in format" msgstr "" -#: c-format.c:1827 +#: c-format.c:1826 #, gcc-internal-format msgid "unknown conversion type character 0x%x in format" msgstr "" -#: c-format.c:1834 +#: c-format.c:1833 #, fuzzy, gcc-internal-format msgid "%s does not support the %<%%%c%> %s format" msgstr "%s не падтрымлівае %s" -#: c-format.c:1850 +#: c-format.c:1849 #, gcc-internal-format msgid "%s used with %<%%%c%> %s format" msgstr "" -#: c-format.c:1859 +#: c-format.c:1858 #, gcc-internal-format msgid "%s does not support %s" msgstr "%s не падтрымлівае %s" -#: c-format.c:1869 +#: c-format.c:1868 #, fuzzy, gcc-internal-format msgid "%s does not support %s with the %<%%%c%> %s format" msgstr "%s не падтрымлівае %s" -#: c-format.c:1903 +#: c-format.c:1902 #, gcc-internal-format msgid "%s ignored with %s and %<%%%c%> %s format" msgstr "" -#: c-format.c:1907 +#: c-format.c:1906 #, gcc-internal-format msgid "%s ignored with %s in %s format" msgstr "" -#: c-format.c:1914 +#: c-format.c:1913 #, gcc-internal-format msgid "use of %s and %s together with %<%%%c%> %s format" msgstr "" -#: c-format.c:1918 +#: c-format.c:1917 #, gcc-internal-format msgid "use of %s and %s together in %s format" msgstr "" -#: c-format.c:1937 +#: c-format.c:1936 #, gcc-internal-format msgid "%<%%%c%> yields only last 2 digits of year in some locales" msgstr "" -#: c-format.c:1940 +#: c-format.c:1939 #, gcc-internal-format msgid "%<%%%c%> yields only last 2 digits of year" msgstr "" #. The end of the format string was reached. -#: c-format.c:1957 +#: c-format.c:1956 #, gcc-internal-format msgid "no closing %<]%> for %<%%[%> format" msgstr "" -#: c-format.c:1971 +#: c-format.c:1970 #, gcc-internal-format msgid "use of %qs length modifier with %qc type character" msgstr "" -#: c-format.c:1993 +#: c-format.c:1992 #, fuzzy, gcc-internal-format msgid "%s does not support the %<%%%s%c%> %s format" msgstr "%s не падтрымлівае %s" -#: c-format.c:2010 +#: c-format.c:2009 #, gcc-internal-format msgid "operand number specified with suppressed assignment" msgstr "" -#: c-format.c:2013 +#: c-format.c:2012 #, gcc-internal-format msgid "operand number specified for format taking no argument" msgstr "" -#: c-format.c:2156 +#: c-format.c:2155 #, gcc-internal-format msgid "writing through null pointer (argument %d)" msgstr "" -#: c-format.c:2164 +#: c-format.c:2163 #, gcc-internal-format msgid "reading through null pointer (argument %d)" msgstr "" -#: c-format.c:2184 +#: c-format.c:2183 #, gcc-internal-format msgid "writing into constant object (argument %d)" msgstr "" -#: c-format.c:2195 +#: c-format.c:2194 #, gcc-internal-format msgid "extra type qualifiers in format argument (argument %d)" msgstr "" -#: c-format.c:2306 +#: c-format.c:2305 #, gcc-internal-format msgid "%s should have type %<%s%s%>, but argument %d has type %qT" msgstr "" -#: c-format.c:2310 +#: c-format.c:2309 #, gcc-internal-format msgid "format %q.*s expects type %<%s%s%>, but argument %d has type %qT" msgstr "" -#: c-format.c:2318 +#: c-format.c:2317 #, gcc-internal-format msgid "%s should have type %<%T%s%>, but argument %d has type %qT" msgstr "" -#: c-format.c:2322 +#: c-format.c:2321 #, gcc-internal-format msgid "format %q.*s expects type %<%T%s%>, but argument %d has type %qT" msgstr "" -#: c-format.c:2381 c-format.c:2387 c-format.c:2537 +#: c-format.c:2380 c-format.c:2386 c-format.c:2536 #, gcc-internal-format msgid "%<__gcc_host_wide_int__%> is not defined as a type" msgstr "" -#: c-format.c:2394 c-format.c:2547 +#: c-format.c:2393 c-format.c:2546 #, gcc-internal-format msgid "%<__gcc_host_wide_int__%> is not defined as % or %" msgstr "" -#: c-format.c:2443 +#: c-format.c:2442 #, gcc-internal-format msgid "% is not defined as a type" msgstr "" -#: c-format.c:2496 +#: c-format.c:2495 #, gcc-internal-format msgid "% is not defined as a type" msgstr "" -#: c-format.c:2513 +#: c-format.c:2512 #, gcc-internal-format msgid "% is not defined as a type" msgstr "" -#: c-format.c:2518 +#: c-format.c:2517 #, gcc-internal-format msgid "% is not defined as a pointer type" msgstr "" -#: c-format.c:2729 +#: c-format.c:2728 #, gcc-internal-format msgid "args to be formatted is not %<...%>" msgstr "" -#: c-format.c:2738 +#: c-format.c:2737 #, gcc-internal-format msgid "strftime formats cannot format arguments" msgstr "" -#: c-lex.c:254 +#: c-lex.c:253 #, gcc-internal-format msgid "badly nested C headers from preprocessor" msgstr "" -#: c-lex.c:302 +#: c-lex.c:301 #, gcc-internal-format msgid "%Hignoring #pragma %s %s" msgstr "" #. ... or not. -#: c-lex.c:418 +#: c-lex.c:417 #, gcc-internal-format msgid "%Hstray %<@%> in program" msgstr "" -#: c-lex.c:432 +#: c-lex.c:431 #, fuzzy, gcc-internal-format msgid "stray %qs in program" msgstr "У праграме" -#: c-lex.c:442 +#: c-lex.c:441 #, gcc-internal-format msgid "missing terminating %c character" msgstr "прапушчан завяршаючы сімвал %c" -#: c-lex.c:444 +#: c-lex.c:443 #, fuzzy, gcc-internal-format msgid "stray %qc in program" msgstr "У праграме" -#: c-lex.c:446 +#: c-lex.c:445 #, gcc-internal-format msgid "stray %<\\%o%> in program" msgstr "" -#: c-lex.c:600 +#: c-lex.c:599 #, gcc-internal-format msgid "this decimal constant is unsigned only in ISO C90" msgstr "" -#: c-lex.c:604 +#: c-lex.c:603 #, gcc-internal-format msgid "this decimal constant would be unsigned in ISO C90" msgstr "" -#: c-lex.c:620 +#: c-lex.c:619 #, gcc-internal-format msgid "integer constant is too large for %qs type" msgstr "" -#: c-lex.c:688 +#: c-lex.c:687 #, gcc-internal-format msgid "floating constant exceeds range of %qT" msgstr "" -#: c-lex.c:771 +#: c-lex.c:770 #, gcc-internal-format msgid "traditional C rejects string constant concatenation" msgstr "" -#: c-objc-common.c:81 +#: c-objc-common.c:80 #, gcc-internal-format msgid "function %q+F can never be inlined because it is suppressed using -fno-inline" msgstr "" -#: c-objc-common.c:91 +#: c-objc-common.c:90 #, gcc-internal-format msgid "function %q+F can never be inlined because it might not be bound within this unit of translation" msgstr "" -#: c-objc-common.c:99 +#: c-objc-common.c:98 #, gcc-internal-format msgid "function %q+F can never be inlined because it uses attributes conflicting with inlining" msgstr "" -#: c-omp.c:107 +#: c-omp.c:106 #, gcc-internal-format msgid "invalid expression type for %<#pragma omp atomic%>" msgstr "" -#: c-omp.c:219 +#: c-omp.c:218 #, gcc-internal-format msgid "%Hinvalid type for iteration variable %qE" msgstr "" -#: c-omp.c:223 +#: c-omp.c:222 #, gcc-internal-format msgid "%Hiteration variable %qE is unsigned" msgstr "" -#: c-omp.c:234 +#: c-omp.c:233 #, fuzzy, gcc-internal-format msgid "%H%qE is not initialized" msgstr "прапушчан ініцыялізатар" -#: c-omp.c:247 cp/semantics.c:3812 +#: c-omp.c:246 cp/semantics.c:3819 #, gcc-internal-format msgid "%Hmissing controlling predicate" msgstr "" -#: c-omp.c:305 +#: c-omp.c:304 #, gcc-internal-format msgid "%Hinvalid controlling predicate" msgstr "" -#: c-omp.c:312 cp/semantics.c:3818 +#: c-omp.c:311 cp/semantics.c:3825 #, gcc-internal-format msgid "%Hmissing increment expression" msgstr "" -#: c-omp.c:362 +#: c-omp.c:361 #, gcc-internal-format msgid "%Hinvalid increment expression" msgstr "" -#: c-opts.c:151 +#: c-opts.c:150 #, fuzzy, gcc-internal-format msgid "no class name specified with %qs" msgstr "не зададзены ўваходзячыя файлы" -#: c-opts.c:155 +#: c-opts.c:154 #, fuzzy, gcc-internal-format msgid "assertion missing after %qs" msgstr "аргумент для \"%s\" прапушчан" -#: c-opts.c:160 +#: c-opts.c:159 #, fuzzy, gcc-internal-format msgid "macro name missing after %qs" msgstr "аргумент для \"%s\" прапушчан" -#: c-opts.c:169 +#: c-opts.c:168 #, fuzzy, gcc-internal-format msgid "missing path after %qs" msgstr "аргумент для \"%s\" прапушчан" -#: c-opts.c:178 +#: c-opts.c:177 #, fuzzy, gcc-internal-format msgid "missing filename after %qs" msgstr "прапушчан прабел пасля нумара \"%.*s\"" -#: c-opts.c:183 +#: c-opts.c:182 #, fuzzy, gcc-internal-format msgid "missing makefile target after %qs" msgstr "прапушчан прабел пасля нумара \"%.*s\"" -#: c-opts.c:327 +#: c-opts.c:326 #, gcc-internal-format msgid "-I- specified twice" msgstr "" -#: c-opts.c:330 +#: c-opts.c:329 #, gcc-internal-format msgid "obsolete option -I- used, please use -iquote instead" msgstr "" -#: c-opts.c:497 +#: c-opts.c:496 #, fuzzy, gcc-internal-format msgid "argument %qs to %<-Wnormalized%> not recognized" msgstr "мова %s не распазнана" -#: c-opts.c:584 +#: c-opts.c:583 #, fuzzy, gcc-internal-format msgid "switch %qs is no longer supported" msgstr "-pipe не падтрымліваецца." -#: c-opts.c:690 +#: c-opts.c:689 #, gcc-internal-format msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)" msgstr "" -#: c-opts.c:880 +#: c-opts.c:879 #, fuzzy, gcc-internal-format msgid "output filename specified twice" msgstr "не зададзены ўваходзячыя файлы" -#: c-opts.c:1013 +#: c-opts.c:1012 #, fuzzy, gcc-internal-format msgid "-fno-gnu89-inline is not supported" msgstr "-pipe не падтрымліваецца" -#: c-opts.c:1051 +#: c-opts.c:1050 #, gcc-internal-format msgid "-Wformat-y2k ignored without -Wformat" msgstr "" -#: c-opts.c:1053 +#: c-opts.c:1052 #, gcc-internal-format msgid "-Wformat-extra-args ignored without -Wformat" msgstr "" -#: c-opts.c:1055 +#: c-opts.c:1054 #, gcc-internal-format msgid "-Wformat-zero-length ignored without -Wformat" msgstr "" -#: c-opts.c:1057 +#: c-opts.c:1056 #, gcc-internal-format msgid "-Wformat-nonliteral ignored without -Wformat" msgstr "" -#: c-opts.c:1059 +#: c-opts.c:1058 #, gcc-internal-format msgid "-Wformat-security ignored without -Wformat" msgstr "" -#: c-opts.c:1079 +#: c-opts.c:1078 #, fuzzy, gcc-internal-format msgid "opening output file %s: %m" msgstr "немагчыма адчыніць файл уводу `%s'" -#: c-opts.c:1084 +#: c-opts.c:1083 #, gcc-internal-format msgid "too many filenames given. Type %s --help for usage" msgstr "" -#: c-opts.c:1170 +#: c-opts.c:1169 #, gcc-internal-format msgid "YYDEBUG was not defined at build time, -dy ignored" msgstr "" -#: c-opts.c:1216 +#: c-opts.c:1215 #, gcc-internal-format msgid "opening dependency file %s: %m" msgstr "" -#: c-opts.c:1226 +#: c-opts.c:1225 #, gcc-internal-format msgid "closing dependency file %s: %m" msgstr "" -#: c-opts.c:1229 +#: c-opts.c:1228 #, fuzzy, gcc-internal-format msgid "when writing output to %s: %m" msgstr "памылка запісу ў %s" -#: c-opts.c:1309 +#: c-opts.c:1308 #, gcc-internal-format msgid "to generate dependencies you must specify either -M or -MM" msgstr "" -#: c-opts.c:1480 +#: c-opts.c:1479 #, gcc-internal-format msgid "too late for # directive to set debug directory" msgstr "" -#: c-parser.c:1087 +#: c-parser.c:1086 #, gcc-internal-format msgid "ISO C forbids an empty source file" msgstr "ISO C не дазваляе пусты ізыходны файл" -#: c-parser.c:1172 c-parser.c:6018 +#: c-parser.c:1171 c-parser.c:6017 #, gcc-internal-format msgid "ISO C does not allow extra %<;%> outside of a function" msgstr "" -#: c-parser.c:1273 c-parser.c:6564 +#: c-parser.c:1272 c-parser.c:6563 #, fuzzy, gcc-internal-format msgid "expected declaration specifiers" msgstr "пустое абвяшчэньне" -#: c-parser.c:1321 +#: c-parser.c:1320 #, gcc-internal-format msgid "data definition has no type or storage class" msgstr "" -#: c-parser.c:1375 +#: c-parser.c:1374 #, gcc-internal-format msgid "expected %<,%> or %<;%>" msgstr "" @@ -18139,172 +18139,172 @@ #. This can appear in many cases looking nothing like a #. function definition, so we don't give a more specific #. error suggesting there was one. -#: c-parser.c:1382 c-parser.c:1399 +#: c-parser.c:1381 c-parser.c:1398 #, gcc-internal-format msgid "expected %<=%>, %<,%>, %<;%>, % or %<__attribute__%>" msgstr "" -#: c-parser.c:1391 +#: c-parser.c:1390 #, gcc-internal-format msgid "ISO C forbids nested functions" msgstr "" -#: c-parser.c:1739 c-parser.c:2529 c-parser.c:3151 c-parser.c:3401 -#: c-parser.c:4249 c-parser.c:4834 c-parser.c:5230 c-parser.c:5250 -#: c-parser.c:5365 c-parser.c:5511 c-parser.c:5528 c-parser.c:5660 -#: c-parser.c:5672 c-parser.c:5697 c-parser.c:5831 c-parser.c:5860 -#: c-parser.c:5868 c-parser.c:5896 c-parser.c:5910 c-parser.c:6126 -#: c-parser.c:6225 c-parser.c:6727 c-parser.c:7346 +#: c-parser.c:1738 c-parser.c:2528 c-parser.c:3150 c-parser.c:3400 +#: c-parser.c:4248 c-parser.c:4833 c-parser.c:5229 c-parser.c:5249 +#: c-parser.c:5364 c-parser.c:5510 c-parser.c:5527 c-parser.c:5659 +#: c-parser.c:5671 c-parser.c:5696 c-parser.c:5830 c-parser.c:5859 +#: c-parser.c:5867 c-parser.c:5895 c-parser.c:5909 c-parser.c:6125 +#: c-parser.c:6224 c-parser.c:6726 c-parser.c:7345 #, gcc-internal-format msgid "expected identifier" msgstr "" -#: c-parser.c:1765 cp/parser.c:10509 +#: c-parser.c:1764 cp/parser.c:10520 #, gcc-internal-format msgid "comma at end of enumerator list" msgstr "" -#: c-parser.c:1771 +#: c-parser.c:1770 #, gcc-internal-format msgid "expected %<,%> or %<}%>" msgstr "" -#: c-parser.c:1785 c-parser.c:1961 c-parser.c:5985 +#: c-parser.c:1784 c-parser.c:1960 c-parser.c:5984 #, gcc-internal-format msgid "expected %<{%>" msgstr "" -#: c-parser.c:1794 +#: c-parser.c:1793 #, gcc-internal-format msgid "ISO C forbids forward references to % types" msgstr "" -#: c-parser.c:1897 +#: c-parser.c:1896 #, gcc-internal-format msgid "expected class name" msgstr "" -#: c-parser.c:1916 c-parser.c:5764 +#: c-parser.c:1915 c-parser.c:5763 #, gcc-internal-format msgid "extra semicolon in struct or union specified" msgstr "" -#: c-parser.c:1944 +#: c-parser.c:1943 #, gcc-internal-format msgid "no semicolon at end of struct or union" msgstr "" -#: c-parser.c:1947 +#: c-parser.c:1946 #, gcc-internal-format msgid "expected %<;%>" msgstr "" -#: c-parser.c:2024 c-parser.c:2985 +#: c-parser.c:2023 c-parser.c:2984 #, gcc-internal-format msgid "expected specifier-qualifier-list" msgstr "" -#: c-parser.c:2034 +#: c-parser.c:2033 #, gcc-internal-format msgid "ISO C forbids member declarations with no members" msgstr "" -#: c-parser.c:2103 +#: c-parser.c:2102 #, gcc-internal-format msgid "expected %<,%>, %<;%> or %<}%>" msgstr "" -#: c-parser.c:2110 +#: c-parser.c:2109 #, gcc-internal-format msgid "expected %<:%>, %<,%>, %<;%>, %<}%> or %<__attribute__%>" msgstr "" -#: c-parser.c:2160 +#: c-parser.c:2159 #, gcc-internal-format msgid "% applied to a bit-field" msgstr "" -#: c-parser.c:2397 +#: c-parser.c:2396 #, gcc-internal-format msgid "expected identifier or %<(%>" msgstr "" -#: c-parser.c:2598 +#: c-parser.c:2597 #, gcc-internal-format msgid "ISO C requires a named argument before %<...%>" msgstr "" -#: c-parser.c:2704 +#: c-parser.c:2703 #, gcc-internal-format msgid "expected declaration specifiers or %<...%>" msgstr "" -#: c-parser.c:2754 +#: c-parser.c:2753 #, gcc-internal-format msgid "wide string literal in %" msgstr "" -#: c-parser.c:2760 c-parser.c:6619 cp/parser.c:19250 +#: c-parser.c:2759 c-parser.c:6618 cp/parser.c:19261 #, gcc-internal-format msgid "expected string literal" msgstr "" -#: c-parser.c:3077 +#: c-parser.c:3076 #, gcc-internal-format msgid "ISO C forbids empty initializer braces" msgstr "" -#: c-parser.c:3122 +#: c-parser.c:3121 #, gcc-internal-format msgid "obsolete use of designated initializer with %<:%>" msgstr "" -#: c-parser.c:3245 +#: c-parser.c:3244 #, gcc-internal-format msgid "ISO C forbids specifying range of elements to initialize" msgstr "" -#: c-parser.c:3258 +#: c-parser.c:3257 #, gcc-internal-format msgid "ISO C90 forbids specifying subobject to initialize" msgstr "" -#: c-parser.c:3266 +#: c-parser.c:3265 #, gcc-internal-format msgid "obsolete use of designated initializer without %<=%>" msgstr "" -#: c-parser.c:3274 +#: c-parser.c:3273 #, gcc-internal-format msgid "expected %<=%>" msgstr "" -#: c-parser.c:3420 +#: c-parser.c:3419 #, gcc-internal-format msgid "ISO C forbids label declarations" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-parser.c:3425 c-parser.c:3496 +#: c-parser.c:3424 c-parser.c:3495 #, fuzzy, gcc-internal-format msgid "expected declaration or statement" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: c-parser.c:3449 c-parser.c:3477 +#: c-parser.c:3448 c-parser.c:3476 #, fuzzy, gcc-internal-format msgid "%HISO C90 forbids mixed declarations and code" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-parser.c:3510 +#: c-parser.c:3509 #, gcc-internal-format msgid "label at end of compound statement" msgstr "" -#: c-parser.c:3553 +#: c-parser.c:3552 #, gcc-internal-format msgid "expected %<:%> or %<...%>" msgstr "" -#: c-parser.c:3735 +#: c-parser.c:3734 #, gcc-internal-format msgid "expected identifier or %<*%>" msgstr "" @@ -18313,538 +18313,538 @@ #. c_parser_skip_until_found stops at a closing nesting #. delimiter without consuming it, but here we need to consume #. it to proceed further. -#: c-parser.c:3797 +#: c-parser.c:3796 #, gcc-internal-format msgid "expected statement" msgstr "" -#: c-parser.c:4134 +#: c-parser.c:4133 #, gcc-internal-format msgid "%E qualifier ignored on asm" msgstr "" -#: c-parser.c:4414 +#: c-parser.c:4413 #, gcc-internal-format msgid "ISO C forbids omitting the middle term of a ?: expression" msgstr "" -#: c-parser.c:4804 +#: c-parser.c:4803 #, gcc-internal-format msgid "traditional C rejects the unary plus operator" msgstr "" -#: c-parser.c:4923 +#: c-parser.c:4922 #, gcc-internal-format msgid "% applied to a bit-field" msgstr "" -#: c-parser.c:5066 c-parser.c:5407 c-parser.c:5429 +#: c-parser.c:5065 c-parser.c:5406 c-parser.c:5428 #, gcc-internal-format msgid "expected expression" msgstr "" -#: c-parser.c:5092 +#: c-parser.c:5091 #, gcc-internal-format msgid "braced-group within expression allowed only inside a function" msgstr "" -#: c-parser.c:5106 +#: c-parser.c:5105 #, gcc-internal-format msgid "ISO C forbids braced-groups within expressions" msgstr "" -#: c-parser.c:5289 +#: c-parser.c:5288 #, fuzzy, gcc-internal-format msgid "first argument to %<__builtin_choose_expr%> not a constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: c-parser.c:5456 +#: c-parser.c:5455 #, gcc-internal-format msgid "compound literal has variable size" msgstr "" -#: c-parser.c:5464 +#: c-parser.c:5463 #, fuzzy, gcc-internal-format msgid "ISO C90 forbids compound literals" msgstr "ISO C не падтрымлівае \"goto *expr;\"" -#: c-parser.c:5981 +#: c-parser.c:5980 #, gcc-internal-format msgid "extra semicolon in method definition specified" msgstr "" -#: c-parser.c:6525 cp/parser.c:19293 +#: c-parser.c:6524 cp/parser.c:19304 #, gcc-internal-format msgid "%<#pragma omp barrier%> may only be used in compound statements" msgstr "" -#: c-parser.c:6536 cp/parser.c:19308 +#: c-parser.c:6535 cp/parser.c:19319 #, gcc-internal-format msgid "%<#pragma omp flush%> may only be used in compound statements" msgstr "" -#: c-parser.c:6548 cp/parser.c:19334 +#: c-parser.c:6547 cp/parser.c:19345 #, gcc-internal-format msgid "%<#pragma omp section%> may only be used in %<#pragma omp sections%> construct" msgstr "" -#: c-parser.c:6554 cp/parser.c:19283 +#: c-parser.c:6553 cp/parser.c:19294 #, gcc-internal-format msgid "%<#pragma GCC pch_preprocess%> must be first" msgstr "" -#: c-parser.c:6705 cp/parser.c:18131 +#: c-parser.c:6704 cp/parser.c:18142 #, fuzzy, gcc-internal-format msgid "too many %qs clauses" msgstr "вельмі шмат уваходзячых файлаў" -#: c-parser.c:6830 +#: c-parser.c:6829 #, gcc-internal-format msgid "expected % or %" msgstr "" -#: c-parser.c:6873 +#: c-parser.c:6872 #, gcc-internal-format msgid "expected %<(%>" msgstr "" -#: c-parser.c:6916 c-parser.c:7091 +#: c-parser.c:6915 c-parser.c:7090 #, gcc-internal-format msgid "expected integer expression" msgstr "" -#: c-parser.c:6925 +#: c-parser.c:6924 #, gcc-internal-format msgid "% value must be positive" msgstr "" -#: c-parser.c:7005 +#: c-parser.c:7004 #, gcc-internal-format msgid "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, or %<||%>" msgstr "" -#: c-parser.c:7086 cp/parser.c:18480 +#: c-parser.c:7085 cp/parser.c:18491 #, gcc-internal-format msgid "schedule % does not take a % parameter" msgstr "" -#: c-parser.c:7104 +#: c-parser.c:7103 #, fuzzy, gcc-internal-format msgid "invalid schedule kind" msgstr "нерэчаісны %%-код" -#: c-parser.c:7189 +#: c-parser.c:7188 #, gcc-internal-format msgid "expected %<#pragma omp%> clause" msgstr "" -#: c-parser.c:7198 cp/parser.c:18589 +#: c-parser.c:7197 cp/parser.c:18600 #, fuzzy, gcc-internal-format msgid "%qs is not valid for %qs" msgstr "complex нерэчаісны для \"%s\"" -#: c-parser.c:7298 +#: c-parser.c:7297 #, gcc-internal-format msgid "invalid operator for %<#pragma omp atomic%>" msgstr "" -#: c-parser.c:7349 c-parser.c:7369 +#: c-parser.c:7348 c-parser.c:7368 #, gcc-internal-format msgid "expected %<(%> or end of line" msgstr "" -#: c-parser.c:7387 +#: c-parser.c:7386 #, fuzzy, gcc-internal-format msgid "for statement expected" msgstr "вельмі шмат аргументаў у функцыі" -#: c-parser.c:7460 cp/semantics.c:3798 cp/semantics.c:3842 +#: c-parser.c:7459 cp/semantics.c:3805 cp/semantics.c:3849 #, gcc-internal-format msgid "expected iteration declaration or initialization" msgstr "" -#: c-parser.c:7586 +#: c-parser.c:7585 #, gcc-internal-format msgid "expected %<#pragma omp section%> or %<}%>" msgstr "" -#: c-parser.c:7811 cp/parser.c:19171 fortran/openmp.c:470 +#: c-parser.c:7810 cp/parser.c:19182 fortran/openmp.c:469 #, fuzzy, gcc-internal-format msgid "threadprivate variables not supported in this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-parser.c:7821 cp/semantics.c:3692 +#: c-parser.c:7820 cp/semantics.c:3699 #, gcc-internal-format msgid "%qE declared % after first use" msgstr "" -#: c-parser.c:7823 cp/semantics.c:3694 +#: c-parser.c:7822 cp/semantics.c:3701 #, gcc-internal-format msgid "automatic variable %qE cannot be %" msgstr "" -#: c-parser.c:7825 cp/semantics.c:3696 +#: c-parser.c:7824 cp/semantics.c:3703 #, fuzzy, gcc-internal-format msgid "% %qE has incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: c-pch.c:132 +#: c-pch.c:131 #, fuzzy, gcc-internal-format msgid "can%'t create precompiled header %s: %m" msgstr "немагчыма стварыць дырэкторыю \"%s\"" -#: c-pch.c:153 +#: c-pch.c:152 #, fuzzy, gcc-internal-format msgid "can%'t write to %s: %m" msgstr "не магу запісаць ў %s" -#: c-pch.c:159 +#: c-pch.c:158 #, gcc-internal-format msgid "%qs is not a valid output file" msgstr "" -#: c-pch.c:188 c-pch.c:203 c-pch.c:217 +#: c-pch.c:187 c-pch.c:202 c-pch.c:216 #, fuzzy, gcc-internal-format msgid "can%'t write %s: %m" msgstr "немагчыма адчыніць %s" -#: c-pch.c:193 c-pch.c:210 +#: c-pch.c:192 c-pch.c:209 #, fuzzy, gcc-internal-format msgid "can%'t seek in %s: %m" msgstr "немагчыма адчыніць %s" -#: c-pch.c:201 c-pch.c:243 c-pch.c:283 c-pch.c:334 +#: c-pch.c:200 c-pch.c:242 c-pch.c:282 c-pch.c:333 #, fuzzy, gcc-internal-format msgid "can%'t read %s: %m" msgstr "не магу прачытаць з %s" -#: c-pch.c:450 +#: c-pch.c:449 #, gcc-internal-format msgid "pch_preprocess pragma should only be used with -fpreprocessed" msgstr "" -#: c-pch.c:451 +#: c-pch.c:450 #, gcc-internal-format msgid "use #include instead" msgstr "" -#: c-pch.c:457 +#: c-pch.c:456 #, fuzzy, gcc-internal-format msgid "%s: couldn%'t open PCH file: %m" msgstr "Немагчыма адчыніць файл з дадзенымі %s.\n" -#: c-pch.c:462 +#: c-pch.c:461 #, gcc-internal-format msgid "use -Winvalid-pch for more information" msgstr "" -#: c-pch.c:463 +#: c-pch.c:462 #, gcc-internal-format msgid "%s: PCH file was invalid" msgstr "" -#: c-pragma.c:103 +#: c-pragma.c:102 #, gcc-internal-format msgid "#pragma pack (pop) encountered without matching #pragma pack (push)" msgstr "" -#: c-pragma.c:116 +#: c-pragma.c:115 #, gcc-internal-format msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s)" msgstr "" -#: c-pragma.c:130 +#: c-pragma.c:129 #, fuzzy, gcc-internal-format msgid "#pragma pack(push[, id], ) is not supported on this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-pragma.c:132 +#: c-pragma.c:131 #, fuzzy, gcc-internal-format msgid "#pragma pack(pop[, id], ) is not supported on this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-pragma.c:153 +#: c-pragma.c:152 #, gcc-internal-format msgid "missing %<(%> after %<#pragma pack%> - ignored" msgstr "" -#: c-pragma.c:164 c-pragma.c:196 +#: c-pragma.c:163 c-pragma.c:195 #, gcc-internal-format msgid "invalid constant in %<#pragma pack%> - ignored" msgstr "" -#: c-pragma.c:168 c-pragma.c:210 +#: c-pragma.c:167 c-pragma.c:209 #, gcc-internal-format msgid "malformed %<#pragma pack%> - ignored" msgstr "" -#: c-pragma.c:173 +#: c-pragma.c:172 #, fuzzy, gcc-internal-format msgid "malformed %<#pragma pack(push[, id][, ])%> - ignored" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: c-pragma.c:175 +#: c-pragma.c:174 #, gcc-internal-format msgid "malformed %<#pragma pack(pop[, id])%> - ignored" msgstr "" -#: c-pragma.c:184 +#: c-pragma.c:183 #, gcc-internal-format msgid "unknown action %qs for %<#pragma pack%> - ignored" msgstr "" -#: c-pragma.c:213 +#: c-pragma.c:212 #, gcc-internal-format msgid "junk at end of %<#pragma pack%>" msgstr "" -#: c-pragma.c:216 +#: c-pragma.c:215 #, gcc-internal-format msgid "#pragma pack has no effect with -fpack-struct - ignored" msgstr "" -#: c-pragma.c:236 +#: c-pragma.c:235 #, gcc-internal-format msgid "alignment must be a small power of two, not %d" msgstr "" -#: c-pragma.c:269 +#: c-pragma.c:268 #, gcc-internal-format msgid "applying #pragma weak %q+D after first use results in unspecified behavior" msgstr "" -#: c-pragma.c:343 c-pragma.c:348 +#: c-pragma.c:342 c-pragma.c:347 #, gcc-internal-format msgid "malformed #pragma weak, ignored" msgstr "" -#: c-pragma.c:352 +#: c-pragma.c:351 #, gcc-internal-format msgid "junk at end of %<#pragma weak%>" msgstr "" -#: c-pragma.c:420 c-pragma.c:422 +#: c-pragma.c:419 c-pragma.c:421 #, gcc-internal-format msgid "malformed #pragma redefine_extname, ignored" msgstr "" -#: c-pragma.c:425 +#: c-pragma.c:424 #, gcc-internal-format msgid "junk at end of %<#pragma redefine_extname%>" msgstr "" -#: c-pragma.c:431 +#: c-pragma.c:430 #, fuzzy, gcc-internal-format msgid "#pragma redefine_extname not supported on this target" msgstr "__buitin_saveregs не падтрымліваецца гэтай мэтай" -#: c-pragma.c:448 c-pragma.c:535 +#: c-pragma.c:447 c-pragma.c:534 #, fuzzy, gcc-internal-format msgid "#pragma redefine_extname ignored due to conflict with previous rename" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: c-pragma.c:471 +#: c-pragma.c:470 #, gcc-internal-format msgid "#pragma redefine_extname ignored due to conflict with previous #pragma redefine_extname" msgstr "" -#: c-pragma.c:490 +#: c-pragma.c:489 #, gcc-internal-format msgid "malformed #pragma extern_prefix, ignored" msgstr "" -#: c-pragma.c:493 +#: c-pragma.c:492 #, gcc-internal-format msgid "junk at end of %<#pragma extern_prefix%>" msgstr "" -#: c-pragma.c:500 +#: c-pragma.c:499 #, fuzzy, gcc-internal-format msgid "#pragma extern_prefix not supported on this target" msgstr "__buitin_saveregs не падтрымліваецца гэтай мэтай" -#: c-pragma.c:526 +#: c-pragma.c:525 #, fuzzy, gcc-internal-format msgid "asm declaration ignored due to conflict with previous rename" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: c-pragma.c:557 +#: c-pragma.c:556 #, gcc-internal-format msgid "#pragma redefine_extname ignored due to conflict with __asm__ declaration" msgstr "" -#: c-pragma.c:619 +#: c-pragma.c:618 #, gcc-internal-format msgid "#pragma GCC visibility push() must specify default, internal, hidden or protected" msgstr "" -#: c-pragma.c:654 +#: c-pragma.c:653 #, gcc-internal-format msgid "#pragma GCC visibility must be followed by push or pop" msgstr "" -#: c-pragma.c:660 +#: c-pragma.c:659 #, gcc-internal-format msgid "no matching push for %<#pragma GCC visibility pop%>" msgstr "" -#: c-pragma.c:667 c-pragma.c:674 +#: c-pragma.c:666 c-pragma.c:673 #, gcc-internal-format msgid "missing %<(%> after %<#pragma GCC visibility push%> - ignored" msgstr "" -#: c-pragma.c:670 +#: c-pragma.c:669 #, gcc-internal-format msgid "malformed #pragma GCC visibility push" msgstr "" -#: c-pragma.c:678 +#: c-pragma.c:677 #, gcc-internal-format msgid "junk at end of %<#pragma GCC visibility%>" msgstr "" -#: c-pragma.c:694 +#: c-pragma.c:693 #, gcc-internal-format msgid "#pragma GCC diagnostic not allowed inside functions" msgstr "" -#: c-pragma.c:700 +#: c-pragma.c:699 #, gcc-internal-format msgid "missing [error|warning|ignored] after %<#pragma GCC diagnostic%>" msgstr "" -#: c-pragma.c:709 +#: c-pragma.c:708 #, gcc-internal-format msgid "expected [error|warning|ignored] after %<#pragma GCC diagnostic%>" msgstr "" -#: c-pragma.c:713 +#: c-pragma.c:712 #, gcc-internal-format msgid "missing option after %<#pragma GCC diagnostic%> kind" msgstr "" -#: c-pragma.c:727 +#: c-pragma.c:726 #, gcc-internal-format msgid "unknown option after %<#pragma GCC diagnostic%> kind" msgstr "" -#: c-typeck.c:175 +#: c-typeck.c:174 #, fuzzy, gcc-internal-format msgid "%qD has an incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: c-typeck.c:196 cp/call.c:2724 +#: c-typeck.c:195 cp/call.c:2729 #, gcc-internal-format msgid "invalid use of void expression" msgstr "" -#: c-typeck.c:204 +#: c-typeck.c:203 #, gcc-internal-format msgid "invalid use of flexible array member" msgstr "" -#: c-typeck.c:210 +#: c-typeck.c:209 #, gcc-internal-format msgid "invalid use of array with unspecified bounds" msgstr "" -#: c-typeck.c:218 +#: c-typeck.c:217 #, fuzzy, gcc-internal-format msgid "invalid use of undefined type %<%s %E%>" msgstr "нявернае выкарыстанне \"restict\"" #. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL. -#: c-typeck.c:222 +#: c-typeck.c:221 #, fuzzy, gcc-internal-format msgid "invalid use of incomplete typedef %qD" msgstr "нявернае выкарыстанне \"restict\"" -#: c-typeck.c:475 c-typeck.c:500 +#: c-typeck.c:474 c-typeck.c:499 #, gcc-internal-format msgid "function types not truly compatible in ISO C" msgstr "" -#: c-typeck.c:620 +#: c-typeck.c:619 #, gcc-internal-format msgid "can%'t mix operands of decimal float and vector types" msgstr "" -#: c-typeck.c:625 +#: c-typeck.c:624 #, gcc-internal-format msgid "can%'t mix operands of decimal float and complex types" msgstr "" -#: c-typeck.c:630 +#: c-typeck.c:629 #, gcc-internal-format msgid "can%'t mix operands of decimal float and other float types" msgstr "" -#: c-typeck.c:951 +#: c-typeck.c:950 #, gcc-internal-format msgid "types are not quite compatible" msgstr "" -#: c-typeck.c:1269 +#: c-typeck.c:1268 #, gcc-internal-format msgid "function return types not compatible due to %" msgstr "" -#: c-typeck.c:1428 c-typeck.c:2781 +#: c-typeck.c:1427 c-typeck.c:2780 #, gcc-internal-format msgid "arithmetic on pointer to an incomplete type" msgstr "" -#: c-typeck.c:1820 +#: c-typeck.c:1819 #, gcc-internal-format msgid "%qT has no member named %qE" msgstr "" -#: c-typeck.c:1861 +#: c-typeck.c:1860 #, gcc-internal-format msgid "request for member %qE in something not a structure or union" msgstr "" -#: c-typeck.c:1892 +#: c-typeck.c:1891 #, gcc-internal-format msgid "dereferencing pointer to incomplete type" msgstr "" -#: c-typeck.c:1896 +#: c-typeck.c:1895 #, gcc-internal-format msgid "dereferencing % pointer" msgstr "" -#: c-typeck.c:1913 cp/typeck.c:2369 +#: c-typeck.c:1912 cp/typeck.c:2366 #, fuzzy, gcc-internal-format msgid "invalid type argument of %qs" msgstr "нявернае выкарыстанне \"restict\"" -#: c-typeck.c:1941 cp/typeck.c:2512 +#: c-typeck.c:1940 cp/typeck.c:2509 #, gcc-internal-format msgid "subscripted value is neither array nor pointer" msgstr "" -#: c-typeck.c:1952 cp/typeck.c:2431 cp/typeck.c:2517 +#: c-typeck.c:1951 cp/typeck.c:2428 cp/typeck.c:2514 #, gcc-internal-format msgid "array subscript is not an integer" msgstr "" -#: c-typeck.c:1958 +#: c-typeck.c:1957 #, gcc-internal-format msgid "subscripted value is pointer to function" msgstr "" -#: c-typeck.c:2005 +#: c-typeck.c:2004 #, fuzzy, gcc-internal-format msgid "ISO C forbids subscripting % array" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-typeck.c:2007 +#: c-typeck.c:2006 #, fuzzy, gcc-internal-format msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-typeck.c:2256 +#: c-typeck.c:2255 #, fuzzy, gcc-internal-format msgid "called object %qE is not a function" msgstr "`%D' - гэта ня функцыя," @@ -18852,1310 +18852,1310 @@ #. 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:2284 +#: c-typeck.c:2283 #, gcc-internal-format msgid "function called through a non-compatible type" msgstr "" -#: c-typeck.c:2391 +#: c-typeck.c:2390 #, fuzzy, gcc-internal-format msgid "too many arguments to function %qE" msgstr "вельмі шмат аргументаў у функцыі" -#: c-typeck.c:2412 +#: c-typeck.c:2411 #, gcc-internal-format msgid "type of formal parameter %d is incomplete" msgstr "" -#: c-typeck.c:2425 +#: c-typeck.c:2424 #, gcc-internal-format msgid "passing argument %d of %qE as integer rather than floating due to prototype" msgstr "" -#: c-typeck.c:2430 +#: c-typeck.c:2429 #, gcc-internal-format msgid "passing argument %d of %qE as integer rather than complex due to prototype" msgstr "" -#: c-typeck.c:2435 +#: c-typeck.c:2434 #, gcc-internal-format msgid "passing argument %d of %qE as complex rather than floating due to prototype" msgstr "" -#: c-typeck.c:2440 +#: c-typeck.c:2439 #, gcc-internal-format msgid "passing argument %d of %qE as floating rather than integer due to prototype" msgstr "" -#: c-typeck.c:2445 +#: c-typeck.c:2444 #, gcc-internal-format msgid "passing argument %d of %qE as complex rather than integer due to prototype" msgstr "" -#: c-typeck.c:2450 +#: c-typeck.c:2449 #, gcc-internal-format msgid "passing argument %d of %qE as floating rather than complex due to prototype" msgstr "" -#: c-typeck.c:2463 +#: c-typeck.c:2462 #, gcc-internal-format msgid "passing argument %d of %qE as % rather than % due to prototype" msgstr "" -#: c-typeck.c:2488 +#: c-typeck.c:2487 #, gcc-internal-format msgid "passing argument %d of %qE as %qT rather than %qT due to prototype" msgstr "" -#: c-typeck.c:2509 +#: c-typeck.c:2508 #, gcc-internal-format msgid "passing argument %d of %qE with different width due to prototype" msgstr "" -#: c-typeck.c:2532 +#: c-typeck.c:2531 #, gcc-internal-format msgid "passing argument %d of %qE as unsigned due to prototype" msgstr "" -#: c-typeck.c:2536 +#: c-typeck.c:2535 #, gcc-internal-format msgid "passing argument %d of %qE as signed due to prototype" msgstr "" -#: c-typeck.c:2627 +#: c-typeck.c:2626 #, gcc-internal-format msgid "suggest parentheses around + or - inside shift" msgstr "" -#: c-typeck.c:2635 +#: c-typeck.c:2634 #, gcc-internal-format msgid "suggest parentheses around && within ||" msgstr "" -#: c-typeck.c:2645 +#: c-typeck.c:2644 #, gcc-internal-format msgid "suggest parentheses around arithmetic in operand of |" msgstr "" -#: c-typeck.c:2650 +#: c-typeck.c:2649 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of |" msgstr "" -#: c-typeck.c:2660 +#: c-typeck.c:2659 #, gcc-internal-format msgid "suggest parentheses around arithmetic in operand of ^" msgstr "" -#: c-typeck.c:2665 +#: c-typeck.c:2664 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of ^" msgstr "" -#: c-typeck.c:2673 +#: c-typeck.c:2672 #, gcc-internal-format msgid "suggest parentheses around + or - in operand of &" msgstr "" -#: c-typeck.c:2678 +#: c-typeck.c:2677 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of &" msgstr "" -#: c-typeck.c:2684 +#: c-typeck.c:2683 #, gcc-internal-format msgid "comparisons like X<=Y<=Z do not have their mathematical meaning" msgstr "" -#: c-typeck.c:2696 c-typeck.c:2701 cp/typeck.c:3281 cp/typeck.c:3390 +#: c-typeck.c:2695 c-typeck.c:2700 cp/typeck.c:3278 cp/typeck.c:3387 #, gcc-internal-format msgid "comparison with string literal results in unspecified behaviour" msgstr "" -#: c-typeck.c:2723 +#: c-typeck.c:2722 #, gcc-internal-format msgid "pointer of type % used in subtraction" msgstr "" -#: c-typeck.c:2725 +#: c-typeck.c:2724 #, gcc-internal-format msgid "pointer to a function used in subtraction" msgstr "" -#: c-typeck.c:2832 +#: c-typeck.c:2831 #, gcc-internal-format msgid "wrong type argument to unary plus" msgstr "" -#: c-typeck.c:2845 +#: c-typeck.c:2844 #, gcc-internal-format msgid "wrong type argument to unary minus" msgstr "" -#: c-typeck.c:2862 +#: c-typeck.c:2861 #, fuzzy, gcc-internal-format msgid "ISO C does not support %<~%> for complex conjugation" msgstr "ISO C89 не падтрымлівае комлексныя тыпы" -#: c-typeck.c:2868 +#: c-typeck.c:2867 #, gcc-internal-format msgid "wrong type argument to bit-complement" msgstr "" -#: c-typeck.c:2876 +#: c-typeck.c:2875 #, gcc-internal-format msgid "wrong type argument to abs" msgstr "" -#: c-typeck.c:2888 +#: c-typeck.c:2887 #, gcc-internal-format msgid "wrong type argument to conjugation" msgstr "" -#: c-typeck.c:2900 +#: c-typeck.c:2899 #, gcc-internal-format msgid "wrong type argument to unary exclamation mark" msgstr "" -#: c-typeck.c:2934 +#: c-typeck.c:2933 #, fuzzy, gcc-internal-format msgid "ISO C does not support %<++%> and %<--%> on complex types" msgstr "ISO C не падтрымлівае \"++\" і \"--\" для тыпу complex" -#: c-typeck.c:2950 c-typeck.c:2982 +#: c-typeck.c:2949 c-typeck.c:2981 #, fuzzy, gcc-internal-format msgid "wrong type argument to increment" msgstr "не хапае аргументаў у функцыі" -#: c-typeck.c:2952 c-typeck.c:2984 +#: c-typeck.c:2951 c-typeck.c:2983 #, gcc-internal-format msgid "wrong type argument to decrement" msgstr "" -#: c-typeck.c:2973 +#: c-typeck.c:2972 #, gcc-internal-format msgid "increment of pointer to unknown structure" msgstr "" -#: c-typeck.c:2975 +#: c-typeck.c:2974 #, gcc-internal-format msgid "decrement of pointer to unknown structure" msgstr "" -#: c-typeck.c:3155 +#: c-typeck.c:3154 #, gcc-internal-format msgid "assignment of read-only member %qD" msgstr "" -#: c-typeck.c:3156 +#: c-typeck.c:3155 #, gcc-internal-format msgid "increment of read-only member %qD" msgstr "" -#: c-typeck.c:3157 +#: c-typeck.c:3156 #, gcc-internal-format msgid "decrement of read-only member %qD" msgstr "" -#: c-typeck.c:3158 +#: c-typeck.c:3157 #, gcc-internal-format msgid "read-only member %qD used as % output" msgstr "" -#: c-typeck.c:3162 +#: c-typeck.c:3161 #, gcc-internal-format msgid "assignment of read-only variable %qD" msgstr "" -#: c-typeck.c:3163 +#: c-typeck.c:3162 #, gcc-internal-format msgid "increment of read-only variable %qD" msgstr "" -#: c-typeck.c:3164 +#: c-typeck.c:3163 #, gcc-internal-format msgid "decrement of read-only variable %qD" msgstr "" -#: c-typeck.c:3165 +#: c-typeck.c:3164 #, gcc-internal-format msgid "read-only variable %qD used as % output" msgstr "" -#: c-typeck.c:3168 +#: c-typeck.c:3167 #, gcc-internal-format msgid "assignment of read-only location" msgstr "" -#: c-typeck.c:3169 +#: c-typeck.c:3168 #, gcc-internal-format msgid "increment of read-only location" msgstr "" -#: c-typeck.c:3170 +#: c-typeck.c:3169 #, gcc-internal-format msgid "decrement of read-only location" msgstr "" -#: c-typeck.c:3171 +#: c-typeck.c:3170 #, gcc-internal-format msgid "read-only location used as % output" msgstr "" -#: c-typeck.c:3206 +#: c-typeck.c:3205 #, fuzzy, gcc-internal-format msgid "cannot take address of bit-field %qD" msgstr "не магу атрымаць адрас бітавага поля \"%s\"" -#: c-typeck.c:3234 +#: c-typeck.c:3233 #, gcc-internal-format msgid "global register variable %qD used in nested function" msgstr "" -#: c-typeck.c:3237 +#: c-typeck.c:3236 #, gcc-internal-format msgid "register variable %qD used in nested function" msgstr "" -#: c-typeck.c:3242 +#: c-typeck.c:3241 #, gcc-internal-format msgid "address of global register variable %qD requested" msgstr "" -#: c-typeck.c:3244 +#: c-typeck.c:3243 #, gcc-internal-format msgid "address of register variable %qD requested" msgstr "" -#: c-typeck.c:3290 +#: c-typeck.c:3289 #, gcc-internal-format msgid "non-lvalue array in conditional expression" msgstr "" -#: c-typeck.c:3338 +#: c-typeck.c:3337 #, gcc-internal-format msgid "signed and unsigned type in conditional expression" msgstr "" -#: c-typeck.c:3345 +#: c-typeck.c:3344 #, gcc-internal-format msgid "ISO C forbids conditional expr with only one void side" msgstr "" -#: c-typeck.c:3359 c-typeck.c:3367 +#: c-typeck.c:3358 c-typeck.c:3366 #, gcc-internal-format msgid "ISO C forbids conditional expr between % and function pointer" msgstr "" -#: c-typeck.c:3374 +#: c-typeck.c:3373 #, gcc-internal-format msgid "pointer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:3381 c-typeck.c:3391 +#: c-typeck.c:3380 c-typeck.c:3390 #, gcc-internal-format msgid "pointer/integer type mismatch in conditional expression" msgstr "" -#: c-typeck.c:3405 +#: c-typeck.c:3404 #, gcc-internal-format msgid "type mismatch in conditional expression" msgstr "" -#: c-typeck.c:3447 +#: c-typeck.c:3446 #, gcc-internal-format msgid "left-hand operand of comma expression has no effect" msgstr "" -#: c-typeck.c:3484 +#: c-typeck.c:3483 #, gcc-internal-format msgid "cast specifies array type" msgstr "" -#: c-typeck.c:3490 +#: c-typeck.c:3489 #, gcc-internal-format msgid "cast specifies function type" msgstr "" -#: c-typeck.c:3500 +#: c-typeck.c:3499 #, gcc-internal-format msgid "ISO C forbids casting nonscalar to the same type" msgstr "" -#: c-typeck.c:3517 +#: c-typeck.c:3516 #, gcc-internal-format msgid "ISO C forbids casts to union type" msgstr "" -#: c-typeck.c:3525 +#: c-typeck.c:3524 #, gcc-internal-format msgid "cast to union type from type not present in union" msgstr "" -#: c-typeck.c:3571 +#: c-typeck.c:3570 #, gcc-internal-format 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:3576 +#: c-typeck.c:3575 #, gcc-internal-format msgid "cast discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:3592 +#: c-typeck.c:3591 #, gcc-internal-format msgid "cast increases required alignment of target type" msgstr "" -#: c-typeck.c:3603 +#: c-typeck.c:3602 #, gcc-internal-format msgid "cast from pointer to integer of different size" msgstr "" -#: c-typeck.c:3607 +#: c-typeck.c:3606 #, gcc-internal-format msgid "cast from function call of type %qT to non-matching type %qT" msgstr "" -#: c-typeck.c:3615 +#: c-typeck.c:3614 #, gcc-internal-format msgid "cast to pointer from integer of different size" msgstr "" -#: c-typeck.c:3628 +#: c-typeck.c:3627 #, gcc-internal-format msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "" -#: c-typeck.c:3636 +#: c-typeck.c:3635 #, gcc-internal-format msgid "ISO C forbids conversion of object pointer to function pointer type" msgstr "" -#: c-typeck.c:3912 +#: c-typeck.c:3911 #, gcc-internal-format msgid "cannot pass rvalue to reference parameter" msgstr "" -#: c-typeck.c:4023 c-typeck.c:4189 +#: c-typeck.c:4022 c-typeck.c:4188 #, gcc-internal-format msgid "passing argument %d of %qE makes qualified function pointer from unqualified" msgstr "" -#: c-typeck.c:4026 c-typeck.c:4192 +#: c-typeck.c:4025 c-typeck.c:4191 #, gcc-internal-format msgid "assignment makes qualified function pointer from unqualified" msgstr "" -#: c-typeck.c:4029 c-typeck.c:4194 +#: c-typeck.c:4028 c-typeck.c:4193 #, gcc-internal-format msgid "initialization makes qualified function pointer from unqualified" msgstr "" -#: c-typeck.c:4032 c-typeck.c:4196 +#: c-typeck.c:4031 c-typeck.c:4195 #, gcc-internal-format msgid "return makes qualified function pointer from unqualified" msgstr "" -#: c-typeck.c:4036 c-typeck.c:4156 +#: c-typeck.c:4035 c-typeck.c:4155 #, gcc-internal-format msgid "passing argument %d of %qE discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:4038 c-typeck.c:4158 +#: c-typeck.c:4037 c-typeck.c:4157 #, gcc-internal-format msgid "assignment discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:4040 c-typeck.c:4160 +#: c-typeck.c:4039 c-typeck.c:4159 #, gcc-internal-format msgid "initialization discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:4042 c-typeck.c:4162 +#: c-typeck.c:4041 c-typeck.c:4161 #, gcc-internal-format msgid "return discards qualifiers from pointer target type" msgstr "" -#: c-typeck.c:4049 +#: c-typeck.c:4048 #, gcc-internal-format msgid "ISO C prohibits argument conversion to union type" msgstr "" -#: c-typeck.c:4084 +#: c-typeck.c:4083 #, gcc-internal-format msgid "request for implicit conversion from %qT to %qT not permitted in C++" msgstr "" -#: c-typeck.c:4097 +#: c-typeck.c:4096 #, gcc-internal-format msgid "argument %d of %qE might be a candidate for a format attribute" msgstr "" -#: c-typeck.c:4103 +#: c-typeck.c:4102 #, gcc-internal-format msgid "assignment left-hand side might be a candidate for a format attribute" msgstr "" -#: c-typeck.c:4108 +#: c-typeck.c:4107 #, gcc-internal-format msgid "initialization left-hand side might be a candidate for a format attribute" msgstr "" -#: c-typeck.c:4113 +#: c-typeck.c:4112 #, gcc-internal-format msgid "return type might be a candidate for a format attribute" msgstr "" -#: c-typeck.c:4136 +#: c-typeck.c:4135 #, gcc-internal-format msgid "ISO C forbids passing argument %d of %qE between function pointer and %" msgstr "" -#: c-typeck.c:4139 +#: c-typeck.c:4138 #, gcc-internal-format msgid "ISO C forbids assignment between function pointer and %" msgstr "" -#: c-typeck.c:4141 +#: c-typeck.c:4140 #, gcc-internal-format msgid "ISO C forbids initialization between function pointer and %" msgstr "" -#: c-typeck.c:4143 +#: c-typeck.c:4142 #, gcc-internal-format msgid "ISO C forbids return between function pointer and %" msgstr "" -#: c-typeck.c:4172 +#: c-typeck.c:4171 #, gcc-internal-format msgid "pointer targets in passing argument %d of %qE differ in signedness" msgstr "" -#: c-typeck.c:4174 +#: c-typeck.c:4173 #, gcc-internal-format msgid "pointer targets in assignment differ in signedness" msgstr "" -#: c-typeck.c:4176 +#: c-typeck.c:4175 #, gcc-internal-format msgid "pointer targets in initialization differ in signedness" msgstr "" -#: c-typeck.c:4178 +#: c-typeck.c:4177 #, gcc-internal-format msgid "pointer targets in return differ in signedness" msgstr "" -#: c-typeck.c:4203 +#: c-typeck.c:4202 #, gcc-internal-format msgid "passing argument %d of %qE from incompatible pointer type" msgstr "" -#: c-typeck.c:4205 +#: c-typeck.c:4204 #, gcc-internal-format msgid "assignment from incompatible pointer type" msgstr "" -#: c-typeck.c:4206 +#: c-typeck.c:4205 #, gcc-internal-format msgid "initialization from incompatible pointer type" msgstr "" -#: c-typeck.c:4208 +#: c-typeck.c:4207 #, gcc-internal-format msgid "return from incompatible pointer type" msgstr "" -#: c-typeck.c:4225 +#: c-typeck.c:4224 #, gcc-internal-format msgid "passing argument %d of %qE makes pointer from integer without a cast" msgstr "" -#: c-typeck.c:4227 +#: c-typeck.c:4226 #, gcc-internal-format msgid "assignment makes pointer from integer without a cast" msgstr "" -#: c-typeck.c:4229 +#: c-typeck.c:4228 #, gcc-internal-format msgid "initialization makes pointer from integer without a cast" msgstr "" -#: c-typeck.c:4231 +#: c-typeck.c:4230 #, gcc-internal-format msgid "return makes pointer from integer without a cast" msgstr "" -#: c-typeck.c:4238 +#: c-typeck.c:4237 #, gcc-internal-format msgid "passing argument %d of %qE makes integer from pointer without a cast" msgstr "" -#: c-typeck.c:4240 +#: c-typeck.c:4239 #, gcc-internal-format msgid "assignment makes integer from pointer without a cast" msgstr "" -#: c-typeck.c:4242 +#: c-typeck.c:4241 #, gcc-internal-format msgid "initialization makes integer from pointer without a cast" msgstr "" -#: c-typeck.c:4244 +#: c-typeck.c:4243 #, gcc-internal-format msgid "return makes integer from pointer without a cast" msgstr "" -#: c-typeck.c:4260 +#: c-typeck.c:4259 #, gcc-internal-format msgid "incompatible types in assignment" msgstr "" -#: c-typeck.c:4263 +#: c-typeck.c:4262 #, fuzzy, gcc-internal-format msgid "incompatible types in initialization" msgstr "нерэчаісны ініцыялізатар" -#: c-typeck.c:4266 +#: c-typeck.c:4265 #, gcc-internal-format msgid "incompatible types in return" msgstr "" -#: c-typeck.c:4353 +#: c-typeck.c:4352 #, gcc-internal-format msgid "traditional C rejects automatic aggregate initialization" msgstr "" -#: c-typeck.c:4523 c-typeck.c:4538 c-typeck.c:4553 +#: c-typeck.c:4522 c-typeck.c:4537 c-typeck.c:4552 #, fuzzy, gcc-internal-format msgid "(near initialization for %qs)" msgstr "ініцыялізацыя" -#: c-typeck.c:5093 cp/decl.c:4824 +#: c-typeck.c:5092 cp/decl.c:4840 #, gcc-internal-format msgid "opaque vector types cannot be initialized" msgstr "" -#: c-typeck.c:5716 +#: c-typeck.c:5715 #, gcc-internal-format msgid "unknown field %qE specified in initializer" msgstr "" -#: c-typeck.c:6616 +#: c-typeck.c:6615 #, gcc-internal-format msgid "traditional C rejects initialization of unions" msgstr "" -#: c-typeck.c:6924 +#: c-typeck.c:6923 #, gcc-internal-format msgid "jump into statement expression" msgstr "" -#: c-typeck.c:6930 +#: c-typeck.c:6929 #, gcc-internal-format msgid "jump into scope of identifier with variably modified type" msgstr "" -#: c-typeck.c:6967 +#: c-typeck.c:6966 #, fuzzy, gcc-internal-format msgid "ISO C forbids %" msgstr "ISO C не падтрымлівае \"goto *expr;\"" -#: c-typeck.c:6982 cp/typeck.c:6461 +#: c-typeck.c:6981 cp/typeck.c:6458 #, fuzzy, gcc-internal-format msgid "function declared % has a % statement" msgstr "функцыя не вяртае тып string" -#: c-typeck.c:6990 +#: c-typeck.c:6989 #, gcc-internal-format msgid "% with no value, in function returning non-void" msgstr "" -#: c-typeck.c:6999 +#: c-typeck.c:6998 #, gcc-internal-format msgid "% with a value, in function returning void" msgstr "" -#: c-typeck.c:7056 +#: c-typeck.c:7055 #, gcc-internal-format msgid "function returns address of local variable" msgstr "" -#: c-typeck.c:7128 cp/semantics.c:929 +#: c-typeck.c:7127 cp/semantics.c:928 #, gcc-internal-format msgid "switch quantity not an integer" msgstr "" -#: c-typeck.c:7140 +#: c-typeck.c:7139 #, gcc-internal-format msgid "% switch expression not converted to % in ISO C" msgstr "" -#: c-typeck.c:7180 +#: c-typeck.c:7179 #, gcc-internal-format msgid "case label in statement expression not containing enclosing switch statement" msgstr "" -#: c-typeck.c:7183 +#: c-typeck.c:7182 #, gcc-internal-format msgid "% label in statement expression not containing enclosing switch statement" msgstr "" -#: c-typeck.c:7189 +#: c-typeck.c:7188 #, gcc-internal-format msgid "case label in scope of identifier with variably modified type not containing enclosing switch statement" msgstr "" -#: c-typeck.c:7192 +#: c-typeck.c:7191 #, gcc-internal-format msgid "% label in scope of identifier with variably modified type not containing enclosing switch statement" msgstr "" -#: c-typeck.c:7196 cp/parser.c:6415 +#: c-typeck.c:7195 cp/parser.c:6426 #, gcc-internal-format msgid "case label not within a switch statement" msgstr "" -#: c-typeck.c:7198 +#: c-typeck.c:7197 #, gcc-internal-format msgid "% label not within a switch statement" msgstr "" -#: c-typeck.c:7275 +#: c-typeck.c:7274 #, gcc-internal-format msgid "%Hsuggest explicit braces to avoid ambiguous %" msgstr "" -#: c-typeck.c:7386 cp/cp-gimplify.c:97 cp/parser.c:6911 +#: c-typeck.c:7385 cp/cp-gimplify.c:97 cp/parser.c:6922 #, gcc-internal-format msgid "break statement not within loop or switch" msgstr "" -#: c-typeck.c:7388 cp/parser.c:6932 +#: c-typeck.c:7387 cp/parser.c:6943 #, gcc-internal-format msgid "continue statement not within a loop" msgstr "" -#: c-typeck.c:7393 cp/parser.c:6922 +#: c-typeck.c:7392 cp/parser.c:6933 #, gcc-internal-format msgid "break statement used with OpenMP for loop" msgstr "" -#: c-typeck.c:7416 +#: c-typeck.c:7415 #, gcc-internal-format msgid "%Hstatement with no effect" msgstr "" -#: c-typeck.c:7438 +#: c-typeck.c:7437 #, gcc-internal-format msgid "expression statement has incomplete type" msgstr "" -#: c-typeck.c:7901 c-typeck.c:7942 +#: c-typeck.c:7900 c-typeck.c:7941 #, gcc-internal-format msgid "division by zero" msgstr "" -#: c-typeck.c:7987 cp/typeck.c:3214 +#: c-typeck.c:7986 cp/typeck.c:3211 #, gcc-internal-format msgid "right shift count is negative" msgstr "" -#: c-typeck.c:7994 cp/typeck.c:3220 +#: c-typeck.c:7993 cp/typeck.c:3217 #, gcc-internal-format msgid "right shift count >= width of type" msgstr "" -#: c-typeck.c:8015 cp/typeck.c:3239 +#: c-typeck.c:8014 cp/typeck.c:3236 #, gcc-internal-format msgid "left shift count is negative" msgstr "" -#: c-typeck.c:8018 cp/typeck.c:3241 +#: c-typeck.c:8017 cp/typeck.c:3238 #, gcc-internal-format msgid "left shift count >= width of type" msgstr "" -#: c-typeck.c:8036 cp/typeck.c:3277 +#: c-typeck.c:8035 cp/typeck.c:3274 #, gcc-internal-format msgid "comparing floating point with == or != is unsafe" msgstr "" -#: c-typeck.c:8060 c-typeck.c:8067 +#: c-typeck.c:8059 c-typeck.c:8066 #, fuzzy, gcc-internal-format msgid "ISO C forbids comparison of % with function pointer" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: c-typeck.c:8073 c-typeck.c:8135 +#: c-typeck.c:8072 c-typeck.c:8134 #, gcc-internal-format msgid "comparison of distinct pointer types lacks a cast" msgstr "" -#: c-typeck.c:8085 c-typeck.c:8096 +#: c-typeck.c:8084 c-typeck.c:8095 #, gcc-internal-format msgid "the address of %qD will never be NULL" msgstr "" -#: c-typeck.c:8103 c-typeck.c:8108 c-typeck.c:8153 c-typeck.c:8158 +#: c-typeck.c:8102 c-typeck.c:8107 c-typeck.c:8152 c-typeck.c:8157 #, gcc-internal-format msgid "comparison between pointer and integer" msgstr "" -#: c-typeck.c:8127 +#: c-typeck.c:8126 #, gcc-internal-format msgid "comparison of complete and incomplete pointers" msgstr "" -#: c-typeck.c:8130 +#: c-typeck.c:8129 #, gcc-internal-format msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "" -#: c-typeck.c:8142 c-typeck.c:8148 +#: c-typeck.c:8141 c-typeck.c:8147 #, gcc-internal-format msgid "ordered comparison of pointer with integer zero" msgstr "" -#: c-typeck.c:8402 +#: c-typeck.c:8401 #, gcc-internal-format msgid "comparison between signed and unsigned" msgstr "" -#: c-typeck.c:8448 cp/typeck.c:3709 +#: c-typeck.c:8447 cp/typeck.c:3706 #, gcc-internal-format msgid "comparison of promoted ~unsigned with constant" msgstr "" -#: c-typeck.c:8456 cp/typeck.c:3717 +#: c-typeck.c:8455 cp/typeck.c:3714 #, gcc-internal-format msgid "comparison of promoted ~unsigned with unsigned" msgstr "" -#: c-typeck.c:8514 +#: c-typeck.c:8513 #, gcc-internal-format msgid "used array that cannot be converted to pointer where scalar is required" msgstr "" -#: c-typeck.c:8518 +#: c-typeck.c:8517 #, gcc-internal-format msgid "used struct type value where scalar is required" msgstr "" -#: c-typeck.c:8522 +#: c-typeck.c:8521 #, gcc-internal-format msgid "used union type value where scalar is required" msgstr "" -#: c-typeck.c:8627 cp/semantics.c:3519 +#: c-typeck.c:8626 cp/semantics.c:3526 #, gcc-internal-format msgid "%qE has invalid type for %" msgstr "" -#: c-typeck.c:8661 cp/semantics.c:3532 +#: c-typeck.c:8660 cp/semantics.c:3539 #, gcc-internal-format msgid "%qE has invalid type for %" msgstr "" -#: c-typeck.c:8677 cp/semantics.c:3542 +#: c-typeck.c:8676 cp/semantics.c:3549 #, gcc-internal-format msgid "%qE must be % for %" msgstr "" -#: c-typeck.c:8686 cp/semantics.c:3347 +#: c-typeck.c:8685 cp/semantics.c:3354 #, gcc-internal-format msgid "%qE is not a variable in clause %qs" msgstr "" -#: c-typeck.c:8693 c-typeck.c:8713 c-typeck.c:8733 cp/semantics.c:3354 -#: cp/semantics.c:3373 cp/semantics.c:3392 +#: c-typeck.c:8692 c-typeck.c:8712 c-typeck.c:8732 cp/semantics.c:3380 +#: cp/semantics.c:3399 #, gcc-internal-format msgid "%qE appears more than once in data clauses" msgstr "" -#: c-typeck.c:8707 cp/semantics.c:3367 +#: c-typeck.c:8706 cp/semantics.c:3374 #, gcc-internal-format msgid "%qE is not a variable in clause %" msgstr "" -#: c-typeck.c:8727 cp/semantics.c:3386 +#: c-typeck.c:8726 cp/semantics.c:3393 #, gcc-internal-format msgid "%qE is not a variable in clause %" msgstr "" -#: c-typeck.c:8785 cp/semantics.c:3583 +#: c-typeck.c:8784 cp/semantics.c:3590 #, gcc-internal-format msgid "%qE is predetermined %qs for %qs" msgstr "" -#: calls.c:1961 +#: calls.c:1972 #, gcc-internal-format msgid "function call has aggregate value" msgstr "" -#: cfgexpand.c:1617 +#: cfgexpand.c:1616 #, gcc-internal-format msgid "not protecting local variables: variable length buffer" msgstr "" -#: cfgexpand.c:1619 +#: cfgexpand.c:1618 #, gcc-internal-format msgid "not protecting function: no buffer at least %d bytes long" msgstr "" -#: cfghooks.c:90 +#: cfghooks.c:89 #, gcc-internal-format msgid "bb %d on wrong place" msgstr "" -#: cfghooks.c:96 +#: cfghooks.c:95 #, gcc-internal-format msgid "prev_bb of %d should be %d, not %d" msgstr "" -#: cfghooks.c:113 +#: cfghooks.c:112 #, gcc-internal-format msgid "verify_flow_info: Wrong count of block %i %i" msgstr "" -#: cfghooks.c:119 +#: cfghooks.c:118 #, gcc-internal-format msgid "verify_flow_info: Wrong frequency of block %i %i" msgstr "" -#: cfghooks.c:127 +#: cfghooks.c:126 #, gcc-internal-format msgid "verify_flow_info: Duplicate edge %i->%i" msgstr "" -#: cfghooks.c:133 +#: cfghooks.c:132 #, gcc-internal-format msgid "verify_flow_info: Wrong probability of edge %i->%i %i" msgstr "" -#: cfghooks.c:139 +#: cfghooks.c:138 #, gcc-internal-format msgid "verify_flow_info: Wrong count of edge %i->%i %i" msgstr "" -#: cfghooks.c:151 +#: cfghooks.c:150 #, gcc-internal-format msgid "verify_flow_info: Basic block %d succ edge is corrupted" msgstr "" -#: cfghooks.c:165 cfgrtl.c:1885 +#: cfghooks.c:164 cfgrtl.c:1884 #, gcc-internal-format msgid "wrong amount of branch edges after unconditional jump %i" msgstr "" -#: cfghooks.c:173 cfghooks.c:184 +#: cfghooks.c:172 cfghooks.c:183 #, gcc-internal-format msgid "basic block %d pred edge is corrupted" msgstr "" -#: cfghooks.c:185 +#: cfghooks.c:184 #, gcc-internal-format msgid "its dest_idx should be %d, not %d" msgstr "" -#: cfghooks.c:214 +#: cfghooks.c:213 #, gcc-internal-format msgid "basic block %i edge lists are corrupted" msgstr "" -#: cfghooks.c:227 +#: cfghooks.c:226 #, gcc-internal-format msgid "verify_flow_info failed" msgstr "" -#: cfghooks.c:288 +#: cfghooks.c:287 #, fuzzy, gcc-internal-format msgid "%s does not support redirect_edge_and_branch" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:306 +#: cfghooks.c:305 #, gcc-internal-format msgid "%s does not support redirect_edge_and_branch_force" msgstr "" -#: cfghooks.c:324 +#: cfghooks.c:323 #, fuzzy, gcc-internal-format msgid "%s does not support split_block" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:360 +#: cfghooks.c:359 #, fuzzy, gcc-internal-format msgid "%s does not support move_block_after" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:373 +#: cfghooks.c:372 #, fuzzy, gcc-internal-format msgid "%s does not support delete_basic_block" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:405 +#: cfghooks.c:404 #, fuzzy, gcc-internal-format msgid "%s does not support split_edge" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:466 +#: cfghooks.c:465 #, fuzzy, gcc-internal-format msgid "%s does not support create_basic_block" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:494 +#: cfghooks.c:493 #, fuzzy, gcc-internal-format msgid "%s does not support can_merge_blocks_p" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:505 +#: cfghooks.c:504 #, fuzzy, gcc-internal-format msgid "%s does not support predict_edge" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:514 +#: cfghooks.c:513 #, fuzzy, gcc-internal-format msgid "%s does not support predicted_by_p" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:528 +#: cfghooks.c:527 #, fuzzy, gcc-internal-format msgid "%s does not support merge_blocks" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:573 +#: cfghooks.c:572 #, fuzzy, gcc-internal-format msgid "%s does not support make_forwarder_block" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:678 +#: cfghooks.c:677 #, fuzzy, gcc-internal-format msgid "%s does not support can_duplicate_block_p" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:706 +#: cfghooks.c:705 #, fuzzy, gcc-internal-format msgid "%s does not support duplicate_block" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:774 +#: cfghooks.c:773 #, fuzzy, gcc-internal-format msgid "%s does not support block_ends_with_call_p" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:785 +#: cfghooks.c:784 #, fuzzy, gcc-internal-format msgid "%s does not support block_ends_with_condjump_p" msgstr "%s не падтрымлівае %s" -#: cfghooks.c:803 +#: cfghooks.c:802 #, fuzzy, gcc-internal-format msgid "%s does not support flow_call_edges_add" msgstr "%s не падтрымлівае %s" -#: cfgloop.c:1079 +#: cfgloop.c:1078 #, gcc-internal-format msgid "size of loop %d should be %d, not %d" msgstr "" -#: cfgloop.c:1096 +#: cfgloop.c:1095 #, gcc-internal-format msgid "bb %d do not belong to loop %d" msgstr "" -#: cfgloop.c:1113 +#: cfgloop.c:1112 #, gcc-internal-format msgid "loop %d's header does not have exactly 2 entries" msgstr "" -#: cfgloop.c:1120 +#: cfgloop.c:1119 #, gcc-internal-format msgid "loop %d's latch does not have exactly 1 successor" msgstr "" -#: cfgloop.c:1125 +#: cfgloop.c:1124 #, gcc-internal-format msgid "loop %d's latch does not have header as successor" msgstr "" -#: cfgloop.c:1130 +#: cfgloop.c:1129 #, gcc-internal-format msgid "loop %d's latch does not belong directly to it" msgstr "" -#: cfgloop.c:1136 +#: cfgloop.c:1135 #, gcc-internal-format msgid "loop %d's header does not belong directly to it" msgstr "" -#: cfgloop.c:1142 +#: cfgloop.c:1141 #, gcc-internal-format msgid "loop %d's latch is marked as part of irreducible region" msgstr "" -#: cfgloop.c:1175 +#: cfgloop.c:1174 #, gcc-internal-format msgid "basic block %d should be marked irreducible" msgstr "" -#: cfgloop.c:1181 +#: cfgloop.c:1180 #, gcc-internal-format msgid "basic block %d should not be marked irreducible" msgstr "" -#: cfgloop.c:1189 +#: cfgloop.c:1188 #, gcc-internal-format msgid "edge from %d to %d should be marked irreducible" msgstr "" -#: cfgloop.c:1196 +#: cfgloop.c:1195 #, gcc-internal-format msgid "edge from %d to %d should not be marked irreducible" msgstr "" -#: cfgloop.c:1231 +#: cfgloop.c:1230 #, gcc-internal-format msgid "wrong single exit %d->%d recorded for loop %d" msgstr "" -#: cfgloop.c:1235 +#: cfgloop.c:1234 #, gcc-internal-format msgid "right exit is %d->%d" msgstr "" -#: cfgloop.c:1252 +#: cfgloop.c:1251 #, gcc-internal-format msgid "single exit not recorded for loop %d" msgstr "" -#: cfgloop.c:1259 +#: cfgloop.c:1258 #, gcc-internal-format msgid "loop %d should not have single exit (%d -> %d)" msgstr "" -#: cfgrtl.c:1771 +#: cfgrtl.c:1770 #, gcc-internal-format msgid "BB_RTL flag not set for block %d" msgstr "" -#: cfgrtl.c:1777 +#: cfgrtl.c:1776 #, gcc-internal-format msgid "end insn %d for block %d not found in the insn stream" msgstr "" -#: cfgrtl.c:1791 +#: cfgrtl.c:1790 #, gcc-internal-format msgid "insn %d is in multiple basic blocks (%d and %d)" msgstr "" -#: cfgrtl.c:1803 +#: cfgrtl.c:1802 #, gcc-internal-format msgid "head insn %d for block %d not found in the insn stream" msgstr "" -#: cfgrtl.c:1827 +#: cfgrtl.c:1826 #, gcc-internal-format msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i" msgstr "" -#: cfgrtl.c:1842 +#: cfgrtl.c:1841 #, gcc-internal-format msgid "fallthru edge crosses section boundary (bb %i)" msgstr "" -#: cfgrtl.c:1867 +#: cfgrtl.c:1866 #, gcc-internal-format msgid "missing REG_EH_REGION note in the end of bb %i" msgstr "" -#: cfgrtl.c:1875 +#: cfgrtl.c:1874 #, gcc-internal-format msgid "too many outgoing branch edges from bb %i" msgstr "" -#: cfgrtl.c:1880 +#: cfgrtl.c:1879 #, gcc-internal-format msgid "fallthru edge after unconditional jump %i" msgstr "" -#: cfgrtl.c:1891 +#: cfgrtl.c:1890 #, gcc-internal-format msgid "wrong amount of branch edges after conditional jump %i" msgstr "" -#: cfgrtl.c:1897 +#: cfgrtl.c:1896 #, gcc-internal-format msgid "call edges for non-call insn in bb %i" msgstr "" -#: cfgrtl.c:1906 +#: cfgrtl.c:1905 #, gcc-internal-format msgid "abnormal edges for no purpose in bb %i" msgstr "" -#: cfgrtl.c:1918 +#: cfgrtl.c:1917 #, gcc-internal-format msgid "insn %d inside basic block %d but block_for_insn is NULL" msgstr "" -#: cfgrtl.c:1922 +#: cfgrtl.c:1921 #, gcc-internal-format msgid "insn %d inside basic block %d but block_for_insn is %i" msgstr "" -#: cfgrtl.c:1936 cfgrtl.c:1946 +#: cfgrtl.c:1935 cfgrtl.c:1945 #, gcc-internal-format msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d" msgstr "" -#: cfgrtl.c:1959 +#: cfgrtl.c:1958 #, gcc-internal-format msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d" msgstr "" -#: cfgrtl.c:1969 +#: cfgrtl.c:1968 #, gcc-internal-format msgid "in basic block %d:" msgstr "" -#: cfgrtl.c:2006 +#: cfgrtl.c:2005 #, gcc-internal-format msgid "bb prediction set for block %i, but it is not used in RTL land" msgstr "" -#: cfgrtl.c:2024 +#: cfgrtl.c:2023 #, gcc-internal-format msgid "missing barrier after block %i" msgstr "" -#: cfgrtl.c:2037 +#: cfgrtl.c:2036 #, gcc-internal-format msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i" msgstr "" -#: cfgrtl.c:2046 +#: cfgrtl.c:2045 #, gcc-internal-format msgid "verify_flow_info: Incorrect fallthru %i->%i" msgstr "" -#: cfgrtl.c:2065 +#: cfgrtl.c:2064 #, gcc-internal-format msgid "basic blocks not laid down consecutively" msgstr "" -#: cfgrtl.c:2104 +#: cfgrtl.c:2103 #, gcc-internal-format msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)" msgstr "" -#: cgraph.c:892 +#: cgraph.c:891 #, gcc-internal-format msgid "%D renamed after being referenced in assembly" msgstr "" -#: cgraphunit.c:707 +#: cgraphunit.c:706 #, gcc-internal-format msgid "aux field set for edge %s->%s" msgstr "" -#: cgraphunit.c:713 +#: cgraphunit.c:712 #, gcc-internal-format msgid "Execution count is negative" msgstr "" -#: cgraphunit.c:720 +#: cgraphunit.c:719 #, gcc-internal-format msgid "caller edge count is negative" msgstr "" -#: cgraphunit.c:729 +#: cgraphunit.c:728 #, gcc-internal-format msgid "inlined_to pointer is wrong" msgstr "" -#: cgraphunit.c:734 +#: cgraphunit.c:733 #, gcc-internal-format msgid "multiple inline callers" msgstr "" -#: cgraphunit.c:741 +#: cgraphunit.c:740 #, gcc-internal-format msgid "inlined_to pointer set for noninline callers" msgstr "" -#: cgraphunit.c:747 +#: cgraphunit.c:746 #, gcc-internal-format msgid "inlined_to pointer is set but no predecessors found" msgstr "" -#: cgraphunit.c:752 +#: cgraphunit.c:751 #, gcc-internal-format msgid "inlined_to pointer refers to itself" msgstr "" -#: cgraphunit.c:762 +#: cgraphunit.c:761 #, fuzzy, gcc-internal-format msgid "node not found in cgraph_hash" msgstr "метад \"%s\" не знойдзен у класе" -#: cgraphunit.c:790 +#: cgraphunit.c:789 #, gcc-internal-format msgid "shared call_stmt:" msgstr "" -#: cgraphunit.c:797 +#: cgraphunit.c:796 #, fuzzy, gcc-internal-format msgid "edge points to wrong declaration:" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cgraphunit.c:806 +#: cgraphunit.c:805 #, gcc-internal-format msgid "missing callgraph edge for call stmt:" msgstr "" -#: cgraphunit.c:823 +#: cgraphunit.c:822 #, gcc-internal-format msgid "edge %s->%s has no corresponding call_stmt" msgstr "" -#: cgraphunit.c:835 +#: cgraphunit.c:834 #, gcc-internal-format msgid "verify_cgraph_node failed" msgstr "" -#: cgraphunit.c:1017 cgraphunit.c:1040 +#: cgraphunit.c:1016 cgraphunit.c:1039 #, gcc-internal-format msgid "%J% attribute have effect only on public objects" msgstr "" -#: cgraphunit.c:1217 +#: cgraphunit.c:1216 #, gcc-internal-format msgid "failed to reclaim unneeded function" msgstr "" -#: cgraphunit.c:1619 +#: cgraphunit.c:1618 #, gcc-internal-format msgid "nodes with no released memory found" msgstr "" -#: collect2.c:1172 +#: collect2.c:1171 #, fuzzy, gcc-internal-format msgid "unknown demangling style '%s'" msgstr "невядомы рэжым машыны \"%s\"" -#: collect2.c:1495 +#: collect2.c:1494 #, gcc-internal-format msgid "%s terminated with signal %d [%s]%s" msgstr "" -#: collect2.c:1513 +#: collect2.c:1512 #, gcc-internal-format msgid "%s returned %d exit status" msgstr "" -#: collect2.c:2175 +#: collect2.c:2174 #, fuzzy, gcc-internal-format msgid "cannot find 'ldd'" msgstr "не магу знайсці \"ldd\"" @@ -20205,112 +20205,112 @@ msgid "can't convert value to a vector" msgstr "" -#: coverage.c:183 +#: coverage.c:182 #, gcc-internal-format msgid "%qs is not a gcov data file" msgstr "" -#: coverage.c:194 +#: coverage.c:193 #, gcc-internal-format msgid "%qs is version %q.*s, expected version %q.*s" msgstr "" -#: coverage.c:274 coverage.c:282 +#: coverage.c:273 coverage.c:281 #, gcc-internal-format msgid "coverage mismatch for function %u while reading execution counters" msgstr "" -#: coverage.c:276 coverage.c:359 +#: coverage.c:275 coverage.c:358 #, gcc-internal-format msgid "checksum is %x instead of %x" msgstr "" -#: coverage.c:284 coverage.c:367 +#: coverage.c:283 coverage.c:366 #, gcc-internal-format msgid "number of counters is %d instead of %d" msgstr "" -#: coverage.c:290 +#: coverage.c:289 #, gcc-internal-format msgid "cannot merge separate %s counters for function %u" msgstr "" -#: coverage.c:311 +#: coverage.c:310 #, gcc-internal-format msgid "%qs has overflowed" msgstr "" -#: coverage.c:311 +#: coverage.c:310 #, gcc-internal-format msgid "%qs is corrupted" msgstr "" -#: coverage.c:348 +#: coverage.c:347 #, gcc-internal-format msgid "no coverage for function %qs found" msgstr "" -#: coverage.c:356 coverage.c:364 +#: coverage.c:355 coverage.c:363 #, gcc-internal-format msgid "coverage mismatch for function %qs while reading counter %qs" msgstr "" -#: coverage.c:523 +#: coverage.c:522 #, fuzzy, gcc-internal-format msgid "cannot open %s" msgstr "немагчыма адчыніць %s" -#: coverage.c:558 +#: coverage.c:557 #, fuzzy, gcc-internal-format msgid "error writing %qs" msgstr "памылка запісу ў %s" -#: diagnostic.c:642 +#: diagnostic.c:641 #, fuzzy, gcc-internal-format msgid "in %s, at %s:%d" msgstr "спынена ў %s, ля %s:%d" -#: dominance.c:953 +#: dominance.c:952 #, gcc-internal-format msgid "dominator of %d status unknown" msgstr "" -#: dominance.c:955 +#: dominance.c:954 #, gcc-internal-format msgid "dominator of %d should be %d, not %d" msgstr "" -#: dominance.c:967 +#: dominance.c:966 #, gcc-internal-format msgid "ENTRY does not dominate bb %d" msgstr "" -#: dwarf2out.c:3598 +#: dwarf2out.c:3597 #, gcc-internal-format msgid "DW_LOC_OP %s not implemented" msgstr "" -#: emit-rtl.c:2235 +#: emit-rtl.c:2234 #, fuzzy, gcc-internal-format msgid "invalid rtl sharing found in the insn" msgstr "Нерэчаісны выбар %s" -#: emit-rtl.c:2237 +#: emit-rtl.c:2236 #, gcc-internal-format msgid "shared rtx" msgstr "" -#: emit-rtl.c:2239 flow.c:493 flow.c:518 flow.c:540 +#: emit-rtl.c:2238 flow.c:492 flow.c:517 flow.c:539 #, fuzzy, gcc-internal-format msgid "internal consistency failure" msgstr "унутраная памылка" -#: emit-rtl.c:3299 +#: emit-rtl.c:3298 #, gcc-internal-format msgid "ICE: emit_insn used where emit_jump_insn needed:\n" msgstr "" -#: errors.c:133 java/jv-scan.c:289 +#: errors.c:132 java/jv-scan.c:288 #, gcc-internal-format msgid "abort in %s, at %s:%d" msgstr "спынена ў %s, ля %s:%d" @@ -20320,157 +20320,157 @@ msgid "exception handling disabled, use -fexceptions to enable" msgstr "" -#: except.c:2879 +#: except.c:2883 #, fuzzy, gcc-internal-format msgid "argument of %<__builtin_eh_return_regno%> must be constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: except.c:3010 +#: except.c:3014 #, gcc-internal-format msgid "__builtin_eh_return not supported on this target" msgstr "" -#: except.c:3871 except.c:3880 +#: except.c:3875 except.c:3884 #, gcc-internal-format msgid "region_array is corrupted for region %i" msgstr "" -#: except.c:3885 +#: except.c:3889 #, gcc-internal-format msgid "outer block of region %i is wrong" msgstr "" -#: except.c:3890 +#: except.c:3894 #, gcc-internal-format msgid "region %i may contain throw and is contained in region that may not" msgstr "" -#: except.c:3896 +#: except.c:3900 #, gcc-internal-format msgid "negative nesting depth of region %i" msgstr "" -#: except.c:3916 +#: except.c:3920 #, gcc-internal-format msgid "tree list ends on depth %i" msgstr "" -#: except.c:3921 +#: except.c:3925 #, gcc-internal-format msgid "array does not match the region tree" msgstr "" -#: except.c:3927 +#: except.c:3931 #, gcc-internal-format msgid "verify_eh_tree failed" msgstr "" -#: explow.c:1272 +#: explow.c:1271 #, gcc-internal-format msgid "stack limits not supported on this target" msgstr "" -#: fold-const.c:958 tree-ssa-loop-niter.c:1163 tree-vrp.c:4346 +#: fold-const.c:957 tree-ssa-loop-niter.c:1162 tree-vrp.c:4422 #, gcc-internal-format msgid "%H%s" msgstr "" -#: fold-const.c:1280 +#: fold-const.c:1279 #, gcc-internal-format msgid "assuming signed overflow does not occur when negating a division" msgstr "" -#: fold-const.c:3583 fold-const.c:3594 +#: fold-const.c:3582 fold-const.c:3593 #, gcc-internal-format msgid "comparison is always %d due to width of bit-field" msgstr "" -#: fold-const.c:4868 +#: fold-const.c:4883 #, gcc-internal-format msgid "assuming signed overflow does not occur when simplifying range test" msgstr "" -#: fold-const.c:5247 fold-const.c:5262 +#: fold-const.c:5262 fold-const.c:5277 #, gcc-internal-format msgid "comparison is always %d" msgstr "" -#: fold-const.c:5391 +#: fold-const.c:5406 #, gcc-internal-format msgid "% of unmatched not-equal tests is always 1" msgstr "" -#: fold-const.c:5396 +#: fold-const.c:5411 #, gcc-internal-format msgid "% of mutually exclusive equal-tests is always 0" msgstr "" -#: fold-const.c:11859 +#: fold-const.c:11878 #, gcc-internal-format msgid "fold check: original tree changed by fold" msgstr "" -#: function.c:376 +#: function.c:375 #, fuzzy, gcc-internal-format msgid "%Jtotal size of local objects too large" msgstr "памер масіва \"%s\" вельмі вялікі" -#: function.c:843 varasm.c:1793 +#: function.c:842 varasm.c:1792 #, fuzzy, gcc-internal-format msgid "size of variable %q+D is too large" msgstr "памер масіва \"%s\" вельмі вялікі" -#: function.c:1560 +#: function.c:1559 gimplify.c:4065 #, fuzzy, gcc-internal-format msgid "impossible constraint in %" msgstr "немагчымы апэратар '%s'" -#: function.c:3539 +#: function.c:3538 #, gcc-internal-format msgid "variable %q+D might be clobbered by % or %" msgstr "" -#: function.c:3560 +#: function.c:3559 #, gcc-internal-format msgid "argument %q+D might be clobbered by % or %" msgstr "" -#: function.c:3901 +#: function.c:3900 #, gcc-internal-format msgid "function returns an aggregate" msgstr "" -#: function.c:4294 +#: function.c:4293 #, fuzzy, gcc-internal-format msgid "unused parameter %q+D" msgstr "невыкарыстаемы параметр \"%s\"" -#: gcc.c:1257 +#: gcc.c:1256 #, gcc-internal-format msgid "ambiguous abbreviation %s" msgstr "" -#: gcc.c:1284 +#: gcc.c:1283 #, fuzzy, gcc-internal-format msgid "incomplete '%s' option" msgstr "аргумент для \"%s\" прапушчан" -#: gcc.c:1295 +#: gcc.c:1294 #, fuzzy, gcc-internal-format msgid "missing argument to '%s' option" msgstr "аргумент для \"%s\" прапушчан" -#: gcc.c:1308 +#: gcc.c:1307 #, fuzzy, gcc-internal-format msgid "extraneous argument to '%s' option" msgstr "аргумент для \"%s\" прапушчан" -#: gcc.c:3935 +#: gcc.c:3934 #, gcc-internal-format msgid "warning: -pipe ignored because -save-temps specified" msgstr "" -#: gcc.c:4236 +#: gcc.c:4235 #, gcc-internal-format msgid "warning: '-x %s' after last input file has no effect" msgstr "" @@ -20478,328 +20478,333 @@ #. Catch the case where a spec string contains something like #. '%{foo:%*}'. i.e. there is no * in the pattern on the left #. hand side of the :. -#: gcc.c:5266 +#: gcc.c:5265 #, gcc-internal-format msgid "spec failure: '%%*' has not been initialized by pattern match" msgstr "" -#: gcc.c:5275 +#: gcc.c:5274 #, gcc-internal-format msgid "warning: use of obsolete %%[ operator in specs" msgstr "" -#: gcc.c:5356 +#: gcc.c:5355 #, fuzzy, gcc-internal-format msgid "spec failure: unrecognized spec option '%c'" msgstr "нераспазнаны выбар \"-%s\"" -#: gcc.c:6254 +#: gcc.c:6253 #, gcc-internal-format msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC" msgstr "" -#: gcc.c:6277 +#: gcc.c:6276 #, gcc-internal-format msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC" msgstr "" -#: gcc.c:6366 +#: gcc.c:6365 #, fuzzy, gcc-internal-format msgid "unrecognized option '-%s'" msgstr "нераспазнаны выбар \"-%s\"" -#: gcc.c:6559 gcc.c:6622 +#: gcc.c:6558 gcc.c:6621 #, gcc-internal-format msgid "%s: %s compiler not installed on this system" msgstr "%s: %s кампілятар не ўсталяваны на гэтай сістэме" -#: gcc.c:6714 +#: gcc.c:6713 #, gcc-internal-format msgid "%s: linker input file unused because linking not done" msgstr "" -#: gcc.c:6754 +#: gcc.c:6753 #, gcc-internal-format msgid "language %s not recognized" msgstr "мова %s не распазнана" -#: gcc.c:6825 +#: gcc.c:6824 #, gcc-internal-format msgid "%s: %s" msgstr "" -#: gcse.c:6592 +#: gcse.c:6591 #, gcc-internal-format msgid "%s: %d basic blocks and %d edges/basic block" msgstr "" -#: gcse.c:6605 +#: gcse.c:6604 #, gcc-internal-format msgid "%s: %d basic blocks and %d registers" msgstr "" -#: ggc-common.c:404 ggc-common.c:412 ggc-common.c:480 ggc-common.c:499 -#: ggc-page.c:2136 ggc-page.c:2167 ggc-page.c:2174 ggc-zone.c:2291 -#: ggc-zone.c:2306 +#: ggc-common.c:403 ggc-common.c:411 ggc-common.c:479 ggc-common.c:498 +#: ggc-page.c:2135 ggc-page.c:2166 ggc-page.c:2173 ggc-zone.c:2290 +#: ggc-zone.c:2305 #, fuzzy, gcc-internal-format msgid "can't write PCH file: %m" msgstr "не магу запісаць ў %s" -#: ggc-common.c:492 config/i386/host-cygwin.c:58 +#: ggc-common.c:491 config/i386/host-cygwin.c:57 #, fuzzy, gcc-internal-format msgid "can't get position in PCH file: %m" msgstr "немагчыма зачыніць уваходзячы файл %s" -#: ggc-common.c:502 +#: ggc-common.c:501 #, fuzzy, gcc-internal-format msgid "can't write padding to PCH file: %m" msgstr "не магу запісаць ў %s" -#: ggc-common.c:557 ggc-common.c:565 ggc-common.c:572 ggc-common.c:575 -#: ggc-common.c:585 ggc-common.c:588 ggc-page.c:2261 ggc-zone.c:2325 +#: ggc-common.c:556 ggc-common.c:564 ggc-common.c:571 ggc-common.c:574 +#: ggc-common.c:584 ggc-common.c:587 ggc-page.c:2260 ggc-zone.c:2324 #, fuzzy, gcc-internal-format msgid "can't read PCH file: %m" -msgstr "не магу прачытаць з %s" +msgstr "немагчыма стварыць часовы файл" -#: ggc-common.c:580 +#: ggc-common.c:579 #, gcc-internal-format msgid "had to relocate PCH" msgstr "" -#: ggc-page.c:1471 +#: ggc-page.c:1470 #, gcc-internal-format msgid "open /dev/zero: %m" msgstr "" -#: ggc-page.c:2152 ggc-page.c:2158 +#: ggc-page.c:2151 ggc-page.c:2157 #, fuzzy, gcc-internal-format msgid "can't write PCH file" msgstr "не магу запісаць ў %s" -#: ggc-zone.c:2288 ggc-zone.c:2299 +#: ggc-zone.c:2287 ggc-zone.c:2298 #, fuzzy, gcc-internal-format msgid "can't seek PCH file: %m" msgstr "немагчыма зачыніць уваходзячы файл %s" -#: ggc-zone.c:2302 +#: ggc-zone.c:2301 #, fuzzy, gcc-internal-format msgid "can't write PCH fle: %m" msgstr "не магу запісаць ў %s" -#: gimplify.c:3952 +#: gimplify.c:3954 #, gcc-internal-format msgid "invalid lvalue in asm output %d" msgstr "" -#: gimplify.c:4064 +#: gimplify.c:4066 +#, gcc-internal-format +msgid "non-memory input %d must stay in memory" +msgstr "" + +#: gimplify.c:4079 #, gcc-internal-format msgid "memory input %d is not directly addressable" msgstr "" -#: gimplify.c:4537 +#: gimplify.c:4552 #, gcc-internal-format msgid "%qs not specified in enclosing parallel" msgstr "" -#: gimplify.c:4539 +#: gimplify.c:4554 #, gcc-internal-format msgid "%Henclosing parallel" msgstr "" -#: gimplify.c:4593 +#: gimplify.c:4608 #, gcc-internal-format msgid "iteration variable %qs should be private" msgstr "" -#: gimplify.c:4607 +#: gimplify.c:4622 #, gcc-internal-format msgid "iteration variable %qs should not be firstprivate" msgstr "" -#: gimplify.c:4610 +#: gimplify.c:4625 #, gcc-internal-format msgid "iteration variable %qs should not be reduction" msgstr "" -#: gimplify.c:4734 +#: gimplify.c:4749 #, gcc-internal-format msgid "%s variable %qs is private in outer context" msgstr "" -#: gimplify.c:6025 +#: gimplify.c:6053 #, gcc-internal-format msgid "gimplification failed" msgstr "" -#: global.c:375 global.c:388 global.c:402 +#: global.c:374 global.c:387 global.c:401 #, fuzzy, gcc-internal-format msgid "%s cannot be used in asm here" msgstr "\"%s\" звычайна функцыя" -#: graph.c:403 java/jcf-parse.c:1083 java/jcf-parse.c:1218 java/lex.c:1855 +#: graph.c:402 java/jcf-parse.c:1082 java/jcf-parse.c:1217 java/lex.c:1854 #: objc/objc-act.c:500 #, fuzzy, gcc-internal-format msgid "can't open %s: %m" msgstr "немагчыма адчыніць %s" -#: haifa-sched.c:184 +#: haifa-sched.c:183 #, gcc-internal-format msgid "fix_sched_param: unknown param: %s" msgstr "" -#: omp-low.c:1266 +#: omp-low.c:1268 #, gcc-internal-format msgid "work-sharing region may not be closely nested inside of work-sharing, critical, ordered or master region" msgstr "" -#: omp-low.c:1282 +#: omp-low.c:1284 #, gcc-internal-format msgid "master region may not be closely nested inside of work-sharing region" msgstr "" -#: omp-low.c:1296 +#: omp-low.c:1298 #, gcc-internal-format msgid "ordered region may not be closely nested inside of critical region" msgstr "" -#: omp-low.c:1302 +#: omp-low.c:1304 #, gcc-internal-format msgid "ordered region must be closely nested inside a loop region with an ordered clause" msgstr "" -#: omp-low.c:1316 +#: omp-low.c:1318 #, gcc-internal-format msgid "critical region may not be nested inside a critical region with the same name" msgstr "" -#: omp-low.c:4459 cp/decl.c:2515 cp/parser.c:6919 cp/parser.c:6939 +#: omp-low.c:4496 cp/decl.c:2531 cp/parser.c:6930 cp/parser.c:6950 #, gcc-internal-format msgid "invalid exit from OpenMP structured block" msgstr "" -#: omp-low.c:4461 +#: omp-low.c:4498 #, gcc-internal-format msgid "invalid entry to OpenMP structured block" msgstr "" #. Eventually this should become a hard error IMO. -#: opts.c:186 +#: opts.c:185 #, gcc-internal-format msgid "command line option \"%s\" is valid for %s but not for %s" msgstr "" -#: opts.c:240 +#: opts.c:239 #, gcc-internal-format msgid "command line option %qs is not supported by this configuration" msgstr "" -#: opts.c:284 +#: opts.c:283 #, fuzzy, gcc-internal-format msgid "missing argument to \"%s\"" msgstr "аргумент для \"%s\" прапушчан" -#: opts.c:294 +#: opts.c:293 #, fuzzy, gcc-internal-format msgid "argument to \"%s\" should be a non-negative integer" msgstr "першым аргументам \"%s\" павінен быць \"int\"" -#: opts.c:382 +#: opts.c:381 #, fuzzy, gcc-internal-format msgid "unrecognized command line option \"%s\"" msgstr "Нераспазнаны выбар \"%s\"" -#: opts.c:594 +#: opts.c:593 #, gcc-internal-format msgid "-Wuninitialized is not supported without -O" msgstr "" -#: opts.c:609 +#: opts.c:608 #, gcc-internal-format msgid "-freorder-blocks-and-partition does not work with exceptions" msgstr "" -#: opts.c:620 +#: opts.c:619 #, gcc-internal-format msgid "-freorder-blocks-and-partition does not support unwind info" msgstr "" -#: opts.c:634 +#: opts.c:633 #, gcc-internal-format msgid "-freorder-blocks-and-partition does not work on this architecture" msgstr "" -#: opts.c:697 +#: opts.c:696 #, gcc-internal-format msgid "-Werror=%s: No option -%s" msgstr "" -#: opts.c:836 +#: opts.c:835 #, gcc-internal-format msgid "structure alignment must be a small power of two, not %d" msgstr "" -#: opts.c:891 +#: opts.c:890 #, fuzzy, gcc-internal-format msgid "unrecognized visibility value \"%s\"" msgstr "нераспазнаная назва сэкцыі \"%s\"" -#: opts.c:939 +#: opts.c:938 #, fuzzy, gcc-internal-format msgid "unrecognized register name \"%s\"" msgstr "нераспазнаная назва сэкцыі \"%s\"" -#: opts.c:963 +#: opts.c:962 #, fuzzy, gcc-internal-format msgid "unknown tls-model \"%s\"" msgstr "невядомы рэжым машыны \"%s\"" -#: opts.c:1013 +#: opts.c:1012 #, gcc-internal-format msgid "-f[no-]force-mem is nop and option will be removed in 4.3" msgstr "" -#: opts.c:1042 +#: opts.c:1041 #, gcc-internal-format msgid "%s: --param arguments should be of the form NAME=VALUE" msgstr "" -#: opts.c:1047 +#: opts.c:1046 #, fuzzy, gcc-internal-format msgid "invalid --param value %qs" msgstr "нерэчаісны выбар --param : %s" -#: opts.c:1144 +#: opts.c:1143 #, fuzzy, gcc-internal-format msgid "target system does not support debug output" msgstr "ISO C не падтрымлівае комлексныя цэлалікавыя тыпы" -#: opts.c:1151 +#: opts.c:1150 #, fuzzy, gcc-internal-format msgid "debug format \"%s\" conflicts with prior selection" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: opts.c:1167 +#: opts.c:1166 #, fuzzy, gcc-internal-format msgid "unrecognised debug output level \"%s\"" msgstr "нераспазнаная назва сэкцыі \"%s\"" -#: opts.c:1169 +#: opts.c:1168 #, gcc-internal-format msgid "debug output level %s is too high" msgstr "" -#: params.c:71 +#: params.c:68 #, fuzzy, gcc-internal-format msgid "minimum value of parameter %qs is %u" msgstr "нерэчаісны парамэтр `%s'" -#: params.c:76 +#: params.c:73 #, gcc-internal-format msgid "maximum value of parameter %qs is %u" msgstr "" #. If we didn't find this parameter, issue an error message. -#: params.c:85 +#: params.c:82 #, fuzzy, gcc-internal-format msgid "invalid parameter %qs" msgstr "нерэчаісны парамэтр `%s'" @@ -20829,781 +20834,781 @@ msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i" msgstr "" -#: reg-stack.c:535 +#: reg-stack.c:534 #, gcc-internal-format msgid "output constraint %d must specify a single register" msgstr "" -#: reg-stack.c:545 +#: reg-stack.c:544 #, gcc-internal-format msgid "output constraint %d cannot be specified together with \"%s\" clobber" msgstr "" -#: reg-stack.c:568 +#: reg-stack.c:567 #, gcc-internal-format msgid "output regs must be grouped at top of stack" msgstr "" -#: reg-stack.c:605 +#: reg-stack.c:604 #, gcc-internal-format msgid "implicitly popped regs must be grouped at top of stack" msgstr "" -#: reg-stack.c:624 +#: reg-stack.c:623 #, gcc-internal-format msgid "output operand %d must use %<&%> constraint" msgstr "" -#: regclass.c:740 +#: regclass.c:739 #, gcc-internal-format msgid "can't use '%s' as a %s register" msgstr "" -#: regclass.c:755 config/ia64/ia64.c:5096 config/ia64/ia64.c:5103 -#: config/pa/pa.c:351 config/pa/pa.c:358 +#: regclass.c:754 config/ia64/ia64.c:5095 config/ia64/ia64.c:5102 +#: config/pa/pa.c:350 config/pa/pa.c:357 #, gcc-internal-format msgid "unknown register name: %s" msgstr "невядомая назва рэгістра: %s" -#: regclass.c:765 +#: regclass.c:764 #, gcc-internal-format msgid "global register variable follows a function definition" msgstr "" -#: regclass.c:769 +#: regclass.c:768 #, gcc-internal-format msgid "register used for two global register variables" msgstr "" -#: regclass.c:774 +#: regclass.c:773 #, gcc-internal-format msgid "call-clobbered register used for global register variable" msgstr "" -#: regrename.c:1937 +#: regrename.c:1936 #, gcc-internal-format msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)" msgstr "" -#: regrename.c:1949 +#: regrename.c:1948 #, gcc-internal-format msgid "validate_value_data: Loop in regno chain (%u)" msgstr "" -#: regrename.c:1952 +#: regrename.c:1951 #, gcc-internal-format msgid "validate_value_data: [%u] Bad oldest_regno (%u)" msgstr "" -#: regrename.c:1964 +#: regrename.c:1963 #, gcc-internal-format msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)" msgstr "" -#: reload.c:1249 +#: reload.c:1248 #, gcc-internal-format msgid "cannot reload integer constant operand in %" msgstr "" -#: reload.c:1272 +#: reload.c:1271 #, gcc-internal-format msgid "impossible register constraint in %" msgstr "" -#: reload.c:3572 +#: reload.c:3571 #, gcc-internal-format msgid "%<&%> constraint used with no register class" msgstr "" -#: reload.c:3743 reload.c:3983 +#: reload.c:3742 reload.c:3982 #, gcc-internal-format msgid "inconsistent operand constraints in an %" msgstr "" -#: reload1.c:1239 +#: reload1.c:1238 #, gcc-internal-format msgid "% operand has impossible constraints" msgstr "" -#: reload1.c:1259 +#: reload1.c:1258 #, gcc-internal-format msgid "frame size too large for reliable stack checking" msgstr "" -#: reload1.c:1262 +#: reload1.c:1261 #, gcc-internal-format msgid "try reducing the number of local variables" msgstr "" -#: reload1.c:1925 +#: reload1.c:1924 #, gcc-internal-format msgid "can't find a register in class %qs while reloading %" msgstr "" -#: reload1.c:1930 +#: reload1.c:1929 #, gcc-internal-format msgid "unable to find a register to spill in class %qs" msgstr "" -#: reload1.c:4021 +#: reload1.c:4020 #, gcc-internal-format msgid "% operand requires impossible reload" msgstr "" -#: reload1.c:5184 +#: reload1.c:5183 #, gcc-internal-format msgid "% operand constraint incompatible with operand size" msgstr "" -#: reload1.c:6836 +#: reload1.c:6842 #, gcc-internal-format msgid "output operand is constant in %" msgstr "" -#: rtl.c:481 +#: rtl.c:480 #, gcc-internal-format msgid "RTL check: access of elt %d of '%s' with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:491 +#: rtl.c:490 #, gcc-internal-format msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d" msgstr "" -#: rtl.c:501 +#: rtl.c:500 #, gcc-internal-format msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d" msgstr "" -#: rtl.c:510 +#: rtl.c:509 #, gcc-internal-format msgid "RTL check: expected code '%s', have '%s' in %s, at %s:%d" msgstr "" -#: rtl.c:520 +#: rtl.c:519 #, gcc-internal-format msgid "RTL check: expected code '%s' or '%s', have '%s' in %s, at %s:%d" msgstr "" -#: rtl.c:547 +#: rtl.c:546 #, gcc-internal-format msgid "RTL check: attempt to treat non-block symbol as a block symbol in %s, at %s:%d" msgstr "" -#: rtl.c:557 +#: rtl.c:556 #, gcc-internal-format msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:568 +#: rtl.c:567 #, gcc-internal-format msgid "RTL flag check: %s used with unexpected rtx code '%s' in %s, at %s:%d" msgstr "" -#: stmt.c:316 +#: stmt.c:315 #, gcc-internal-format msgid "output operand constraint lacks %<=%>" msgstr "" -#: stmt.c:331 +#: stmt.c:330 #, gcc-internal-format msgid "output constraint %qc for operand %d is not at the beginning" msgstr "" -#: stmt.c:354 +#: stmt.c:353 #, gcc-internal-format msgid "operand constraint contains incorrectly positioned %<+%> or %<=%>" msgstr "" -#: stmt.c:361 stmt.c:460 +#: stmt.c:360 stmt.c:459 #, gcc-internal-format msgid "%<%%%> constraint used with last operand" msgstr "" -#: stmt.c:380 +#: stmt.c:379 #, gcc-internal-format msgid "matching constraint not valid in output operand" msgstr "" -#: stmt.c:451 +#: stmt.c:450 #, gcc-internal-format msgid "input operand constraint contains %qc" msgstr "" -#: stmt.c:493 +#: stmt.c:492 #, gcc-internal-format msgid "matching constraint references invalid operand number" msgstr "" -#: stmt.c:531 +#: stmt.c:530 #, fuzzy, gcc-internal-format msgid "invalid punctuation %qc in constraint" msgstr "`%E' - нерэчаісная нязьменная тыпу string" -#: stmt.c:555 +#: stmt.c:554 #, gcc-internal-format msgid "matching constraint does not allow a register" msgstr "" -#: stmt.c:614 +#: stmt.c:613 #, gcc-internal-format msgid "asm-specifier for variable %qs conflicts with asm clobber list" msgstr "" -#: stmt.c:706 +#: stmt.c:705 #, fuzzy, gcc-internal-format msgid "unknown register name %qs in %" msgstr "невядомая назва рэгістра: %s" -#: stmt.c:714 +#: stmt.c:713 #, gcc-internal-format msgid "PIC register %qs clobbered in %" msgstr "" -#: stmt.c:761 +#: stmt.c:760 #, gcc-internal-format msgid "more than %d operands in %" msgstr "" -#: stmt.c:824 +#: stmt.c:823 #, gcc-internal-format msgid "output number %d not directly addressable" msgstr "" -#: stmt.c:907 +#: stmt.c:906 #, gcc-internal-format msgid "asm operand %d probably doesn%'t match constraints" msgstr "" -#: stmt.c:917 +#: stmt.c:916 #, gcc-internal-format msgid "use of memory input without lvalue in asm operand %d is deprecated" msgstr "" -#: stmt.c:1064 +#: stmt.c:1063 #, fuzzy, gcc-internal-format msgid "asm clobber conflict with output operand" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: stmt.c:1069 +#: stmt.c:1068 #, fuzzy, gcc-internal-format msgid "asm clobber conflict with input operand" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: stmt.c:1146 +#: stmt.c:1145 #, fuzzy, gcc-internal-format msgid "too many alternatives in %" msgstr "вельмі шмат аргументаў у функцыі \"%s\"" -#: stmt.c:1158 +#: stmt.c:1157 #, gcc-internal-format msgid "operand constraints for % differ in number of alternatives" msgstr "" -#: stmt.c:1211 +#: stmt.c:1210 #, fuzzy, gcc-internal-format msgid "duplicate asm operand name %qs" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: stmt.c:1309 +#: stmt.c:1308 #, gcc-internal-format msgid "missing close brace for named operand" msgstr "" -#: stmt.c:1337 +#: stmt.c:1336 #, fuzzy, gcc-internal-format msgid "undefined named operand %qs" msgstr "нераспазнаны аператар %s" -#: stmt.c:1481 +#: stmt.c:1480 #, gcc-internal-format msgid "%Hvalue computed is not used" msgstr "" -#: stor-layout.c:150 +#: stor-layout.c:149 #, gcc-internal-format msgid "type size can%'t be explicitly evaluated" msgstr "" -#: stor-layout.c:152 +#: stor-layout.c:151 #, gcc-internal-format msgid "variable-size type declared outside of any function" msgstr "" -#: stor-layout.c:467 +#: stor-layout.c:466 #, fuzzy, gcc-internal-format msgid "size of %q+D is %d bytes" msgstr "памер \"%s\" - %d байт" -#: stor-layout.c:469 +#: stor-layout.c:468 #, fuzzy, gcc-internal-format msgid "size of %q+D is larger than %wd bytes" msgstr "памер \"%s\" больш чам %d байт" -#: stor-layout.c:891 +#: stor-layout.c:890 #, gcc-internal-format msgid "packed attribute causes inefficient alignment for %q+D" msgstr "" -#: stor-layout.c:894 +#: stor-layout.c:893 #, gcc-internal-format msgid "packed attribute is unnecessary for %q+D" msgstr "" #. No, we need to skip space before this field. #. Bump the cumulative size to multiple of field alignment. -#: stor-layout.c:911 +#: stor-layout.c:910 #, gcc-internal-format msgid "padding struct to align %q+D" msgstr "" -#: stor-layout.c:1262 +#: stor-layout.c:1261 #, gcc-internal-format msgid "padding struct size to alignment boundary" msgstr "" -#: stor-layout.c:1292 +#: stor-layout.c:1291 #, gcc-internal-format msgid "packed attribute causes inefficient alignment for %qs" msgstr "" -#: stor-layout.c:1296 +#: stor-layout.c:1295 #, fuzzy, gcc-internal-format msgid "packed attribute is unnecessary for %qs" msgstr "\"%s\" атрыбут ігнарыруецца" -#: stor-layout.c:1302 +#: stor-layout.c:1301 #, gcc-internal-format msgid "packed attribute causes inefficient alignment" msgstr "" -#: stor-layout.c:1304 +#: stor-layout.c:1303 #, gcc-internal-format msgid "packed attribute is unnecessary" msgstr "" -#: stor-layout.c:1816 +#: stor-layout.c:1815 #, gcc-internal-format msgid "alignment of array elements is greater than element size" msgstr "" -#: targhooks.c:101 +#: targhooks.c:100 #, gcc-internal-format msgid "__builtin_saveregs not supported by this target" msgstr "__buitin_saveregs не падтрымліваецца гэтай мэтай" -#: tlink.c:484 +#: tlink.c:483 #, gcc-internal-format msgid "repository file '%s' does not contain command-line arguments" msgstr "" -#: tlink.c:729 +#: tlink.c:728 #, gcc-internal-format msgid "'%s' was assigned to '%s', but was not defined during recompilation, or vice versa" msgstr "" -#: tlink.c:799 +#: tlink.c:798 #, gcc-internal-format msgid "ld returned %d exit status" msgstr "" -#: toplev.c:523 +#: toplev.c:522 #, fuzzy, gcc-internal-format msgid "invalid option argument %qs" msgstr "Нерэчаісны выбар \"%s\"" -#: toplev.c:621 +#: toplev.c:620 #, gcc-internal-format msgid "getting core file size maximum limit: %m" msgstr "" -#: toplev.c:624 +#: toplev.c:623 #, gcc-internal-format msgid "setting core file size limit to maximum: %m" msgstr "" -#: toplev.c:842 +#: toplev.c:841 #, gcc-internal-format msgid "%q+F declared % but never defined" msgstr "" -#: toplev.c:867 +#: toplev.c:866 #, fuzzy, gcc-internal-format msgid "%q+D defined but not used" msgstr "адмеціна `%D' вызначана, але не выкарыстоўваецца" -#: toplev.c:910 toplev.c:934 +#: toplev.c:909 toplev.c:933 #, gcc-internal-format msgid "%qs is deprecated (declared at %s:%d)" msgstr "" -#: toplev.c:938 +#: toplev.c:937 #, gcc-internal-format msgid "type is deprecated (declared at %s:%d)" msgstr "" -#: toplev.c:944 +#: toplev.c:943 #, gcc-internal-format msgid "%qs is deprecated" msgstr "" -#: toplev.c:946 +#: toplev.c:945 #, gcc-internal-format msgid "type is deprecated" msgstr "" -#: toplev.c:966 toplev.c:993 +#: toplev.c:965 toplev.c:992 #, gcc-internal-format msgid "GCC supports only %d input file changes" msgstr "" -#: toplev.c:1140 +#: toplev.c:1139 #, gcc-internal-format msgid "unrecognized gcc debugging option: %c" msgstr "" -#: toplev.c:1293 +#: toplev.c:1292 #, fuzzy, gcc-internal-format msgid "can%'t open %s for writing: %m" msgstr "немагчыма адчыніць %s для запісу" -#: toplev.c:1577 +#: toplev.c:1576 #, fuzzy, gcc-internal-format msgid "this target does not support %qs" msgstr "%s не падтрымлівае %s" -#: toplev.c:1648 +#: toplev.c:1647 #, gcc-internal-format msgid "instruction scheduling not supported on this target machine" msgstr "" -#: toplev.c:1652 +#: toplev.c:1651 #, gcc-internal-format msgid "this target machine does not have delayed branches" msgstr "" -#: toplev.c:1666 +#: toplev.c:1665 #, gcc-internal-format msgid "-f%sleading-underscore not supported on this target machine" msgstr "" -#: toplev.c:1739 +#: toplev.c:1738 #, gcc-internal-format msgid "target system does not support the \"%s\" debug format" msgstr "" -#: toplev.c:1751 +#: toplev.c:1750 #, gcc-internal-format msgid "variable tracking requested, but useless unless producing debug info" msgstr "" -#: toplev.c:1754 +#: toplev.c:1753 #, gcc-internal-format msgid "variable tracking requested, but not supported by this debug format" msgstr "" -#: toplev.c:1774 +#: toplev.c:1773 #, fuzzy, gcc-internal-format msgid "can%'t open %s: %m" msgstr "немагчыма адчыніць %s" -#: toplev.c:1781 +#: toplev.c:1780 #, fuzzy, gcc-internal-format msgid "-ffunction-sections not supported for this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: toplev.c:1786 +#: toplev.c:1785 #, fuzzy, gcc-internal-format msgid "-fdata-sections not supported for this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: toplev.c:1793 +#: toplev.c:1792 #, gcc-internal-format msgid "-ffunction-sections disabled; it makes profiling impossible" msgstr "" -#: toplev.c:1800 +#: toplev.c:1799 #, fuzzy, gcc-internal-format msgid "-fprefetch-loop-arrays not supported for this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: toplev.c:1806 +#: toplev.c:1805 #, gcc-internal-format msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)" msgstr "" -#: toplev.c:1815 +#: toplev.c:1814 #, gcc-internal-format msgid "-fprefetch-loop-arrays is not supported with -Os" msgstr "" -#: toplev.c:1822 +#: toplev.c:1821 #, gcc-internal-format msgid "-ffunction-sections may affect debugging on some targets" msgstr "" -#: toplev.c:1838 +#: toplev.c:1837 #, fuzzy, gcc-internal-format msgid "-fstack-protector not supported for this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: toplev.c:1851 +#: toplev.c:1850 #, gcc-internal-format msgid "unwind tables currently requires a frame pointer for correctness" msgstr "" -#: toplev.c:1955 +#: toplev.c:1954 #, fuzzy, gcc-internal-format msgid "error writing to %s: %m" msgstr "памылка запісу ў %s" -#: toplev.c:1957 java/jcf-parse.c:1102 java/jcf-write.c:3541 +#: toplev.c:1956 java/jcf-parse.c:1101 java/jcf-write.c:3541 #, fuzzy, gcc-internal-format msgid "error closing %s: %m" msgstr "памылка запісу ў %s" -#: tree-cfg.c:1452 tree-cfg.c:2091 tree-cfg.c:2094 +#: tree-cfg.c:1451 tree-cfg.c:2090 tree-cfg.c:2093 #, gcc-internal-format msgid "%Hwill never be executed" msgstr "" -#: tree-cfg.c:3249 +#: tree-cfg.c:3248 #, gcc-internal-format msgid "SSA name in freelist but still referenced" msgstr "" -#: tree-cfg.c:3258 +#: tree-cfg.c:3257 #, gcc-internal-format msgid "ASSERT_EXPR with an always-false condition" msgstr "" -#: tree-cfg.c:3268 +#: tree-cfg.c:3267 #, gcc-internal-format msgid "GIMPLE register modified with BIT_FIELD_REF" msgstr "" -#: tree-cfg.c:3303 +#: tree-cfg.c:3302 #, gcc-internal-format msgid "invariant not recomputed when ADDR_EXPR changed" msgstr "" -#: tree-cfg.c:3309 +#: tree-cfg.c:3308 #, gcc-internal-format msgid "constant not recomputed when ADDR_EXPR changed" msgstr "" -#: tree-cfg.c:3314 +#: tree-cfg.c:3313 #, gcc-internal-format msgid "side effects not recomputed when ADDR_EXPR changed" msgstr "" -#: tree-cfg.c:3330 +#: tree-cfg.c:3329 #, gcc-internal-format msgid "address taken, but ADDRESSABLE bit not set" msgstr "" -#: tree-cfg.c:3340 +#: tree-cfg.c:3339 #, gcc-internal-format msgid "non-boolean used in condition" msgstr "" -#: tree-cfg.c:3345 +#: tree-cfg.c:3344 #, fuzzy, gcc-internal-format msgid "invalid conditional operand" -msgstr "нерэчаісны %%d аперанд" +msgstr "нерэчаісны %%c аперанд" -#: tree-cfg.c:3400 +#: tree-cfg.c:3399 #, gcc-internal-format msgid "invalid reference prefix" msgstr "" -#: tree-cfg.c:3481 +#: tree-cfg.c:3480 #, gcc-internal-format msgid "is not a valid GIMPLE statement" msgstr "" -#: tree-cfg.c:3501 +#: tree-cfg.c:3500 #, gcc-internal-format msgid "statement marked for throw, but doesn%'t" msgstr "" -#: tree-cfg.c:3506 +#: tree-cfg.c:3505 #, gcc-internal-format msgid "statement marked for throw in middle of block" msgstr "" -#: tree-cfg.c:3596 +#: tree-cfg.c:3595 #, gcc-internal-format msgid "bb_for_stmt (phi) is set to a wrong basic block" msgstr "" -#: tree-cfg.c:3611 +#: tree-cfg.c:3610 #, gcc-internal-format msgid "PHI def is not a GIMPLE value" msgstr "" -#: tree-cfg.c:3627 tree-cfg.c:3650 +#: tree-cfg.c:3626 tree-cfg.c:3649 #, gcc-internal-format msgid "incorrect sharing of tree nodes" msgstr "" -#: tree-cfg.c:3641 +#: tree-cfg.c:3640 #, gcc-internal-format msgid "bb_for_stmt (stmt) is set to a wrong basic block" msgstr "" -#: tree-cfg.c:3659 +#: tree-cfg.c:3658 #, gcc-internal-format msgid "verify_stmts failed" msgstr "" -#: tree-cfg.c:3680 +#: tree-cfg.c:3679 #, gcc-internal-format msgid "ENTRY_BLOCK has a statement list associated with it" msgstr "" -#: tree-cfg.c:3686 +#: tree-cfg.c:3685 #, gcc-internal-format msgid "EXIT_BLOCK has a statement list associated with it" msgstr "" -#: tree-cfg.c:3693 +#: tree-cfg.c:3692 #, gcc-internal-format msgid "fallthru to exit from bb %d" msgstr "" -#: tree-cfg.c:3715 +#: tree-cfg.c:3714 #, gcc-internal-format msgid "nonlocal label " msgstr "" -#: tree-cfg.c:3724 tree-cfg.c:3734 tree-cfg.c:3759 +#: tree-cfg.c:3723 tree-cfg.c:3733 tree-cfg.c:3758 #, gcc-internal-format msgid "label " msgstr "" -#: tree-cfg.c:3749 +#: tree-cfg.c:3748 #, gcc-internal-format msgid "control flow in the middle of basic block %d" msgstr "" -#: tree-cfg.c:3779 +#: tree-cfg.c:3778 #, gcc-internal-format msgid "fallthru edge after a control statement in bb %d" msgstr "" -#: tree-cfg.c:3792 +#: tree-cfg.c:3791 #, gcc-internal-format msgid "true/false edge after a non-COND_EXPR in bb %d" msgstr "" -#: tree-cfg.c:3807 +#: tree-cfg.c:3806 #, gcc-internal-format msgid "structured COND_EXPR at the end of bb %d" msgstr "" -#: tree-cfg.c:3820 tree-cfg.c:3858 tree-cfg.c:3871 tree-cfg.c:3942 +#: tree-cfg.c:3819 tree-cfg.c:3857 tree-cfg.c:3870 tree-cfg.c:3941 #, gcc-internal-format msgid "wrong outgoing edge flags at end of bb %d" msgstr "" -#: tree-cfg.c:3828 +#: tree-cfg.c:3827 #, gcc-internal-format msgid "% label does not match edge at end of bb %d" msgstr "" -#: tree-cfg.c:3836 +#: tree-cfg.c:3835 #, gcc-internal-format msgid "% label does not match edge at end of bb %d" msgstr "" -#: tree-cfg.c:3846 +#: tree-cfg.c:3845 #, gcc-internal-format msgid "explicit goto at end of bb %d" msgstr "" -#: tree-cfg.c:3876 +#: tree-cfg.c:3875 #, gcc-internal-format msgid "return edge does not point to exit in bb %d" msgstr "" -#: tree-cfg.c:3909 +#: tree-cfg.c:3908 #, gcc-internal-format msgid "found default case not at end of case vector" msgstr "" -#: tree-cfg.c:3915 +#: tree-cfg.c:3914 #, fuzzy, gcc-internal-format msgid "case labels not sorted: " msgstr "%s не падтрымлівае %s" -#: tree-cfg.c:3926 +#: tree-cfg.c:3925 #, gcc-internal-format msgid "no default case found at end of case vector" msgstr "" -#: tree-cfg.c:3934 +#: tree-cfg.c:3933 #, gcc-internal-format msgid "extra outgoing edge %d->%d" msgstr "" -#: tree-cfg.c:3956 +#: tree-cfg.c:3955 #, fuzzy, gcc-internal-format msgid "missing edge %i->%i" msgstr "прапушчана поле '%s' у '%s'" -#: tree-cfg.c:5770 tree-cfg.c:5774 +#: tree-cfg.c:5769 tree-cfg.c:5773 #, gcc-internal-format msgid "%H% function does return" msgstr "" -#: tree-cfg.c:5796 tree-cfg.c:5801 +#: tree-cfg.c:5795 tree-cfg.c:5800 #, gcc-internal-format msgid "%Hcontrol reaches end of non-void function" msgstr "" -#: tree-cfg.c:5862 +#: tree-cfg.c:5861 #, gcc-internal-format msgid "%Jfunction might be possible candidate for attribute %" msgstr "" -#: tree-dump.c:892 +#: tree-dump.c:891 #, fuzzy, gcc-internal-format msgid "could not open dump file %qs: %s" msgstr "Немагчыма адчыніць файл з дадзенымі %s.\n" -#: tree-dump.c:1024 +#: tree-dump.c:1023 #, gcc-internal-format msgid "ignoring unknown option %q.*s in %<-fdump-%s%>" msgstr "" -#: tree-eh.c:1774 +#: tree-eh.c:1773 #, fuzzy, gcc-internal-format msgid "EH edge %i->%i is missing" msgstr "аргумент для \"-%s\" прапушчан" -#: tree-eh.c:1779 +#: tree-eh.c:1778 #, gcc-internal-format msgid "EH edge %i->%i miss EH flag" msgstr "" #. ??? might not be mistake. -#: tree-eh.c:1785 +#: tree-eh.c:1784 #, gcc-internal-format msgid "EH edge %i->%i has duplicated regions" msgstr "" -#: tree-eh.c:1819 +#: tree-eh.c:1818 #, gcc-internal-format msgid "BB %i can not throw but has EH edges" msgstr "" -#: tree-eh.c:1826 +#: tree-eh.c:1825 #, gcc-internal-format msgid "BB %i last statement has incorrectly set region" msgstr "" -#: tree-eh.c:1837 +#: tree-eh.c:1836 #, gcc-internal-format msgid "unnecessary EH edge %i->%i" msgstr "" @@ -21663,316 +21668,316 @@ msgid "called from here" msgstr "выклікана адсюль" -#: tree-mudflap.c:856 +#: tree-mudflap.c:855 #, gcc-internal-format msgid "mudflap checking not yet implemented for ARRAY_RANGE_REF" msgstr "" -#: tree-mudflap.c:1048 +#: tree-mudflap.c:1047 #, gcc-internal-format msgid "mudflap cannot track %qs in stub function" msgstr "" -#: tree-mudflap.c:1279 +#: tree-mudflap.c:1278 #, gcc-internal-format msgid "mudflap cannot track unknown size extern %qs" msgstr "" -#: tree-nomudflap.c:51 +#: tree-nomudflap.c:50 #, fuzzy, gcc-internal-format msgid "mudflap: this language is not supported" msgstr "-pipe не падтрымліваецца" -#: tree-optimize.c:489 +#: tree-optimize.c:488 #, fuzzy, gcc-internal-format msgid "size of return value of %q+D is %u bytes" msgstr "памер вяртаемага значэння \"%s\" %u байт" -#: tree-optimize.c:492 +#: tree-optimize.c:491 #, fuzzy, gcc-internal-format msgid "size of return value of %q+D is larger than %wd bytes" msgstr "памер вяртаемага значэння \"%s\" больш чым %d байт" -#: tree-outof-ssa.c:612 tree-outof-ssa.c:627 tree-outof-ssa.c:641 -#: tree-outof-ssa.c:663 tree-outof-ssa.c:1118 tree-outof-ssa.c:1897 -#: tree-ssa-live.c:500 tree-ssa-live.c:1905 +#: tree-outof-ssa.c:611 tree-outof-ssa.c:626 tree-outof-ssa.c:640 +#: tree-outof-ssa.c:662 tree-outof-ssa.c:1117 tree-outof-ssa.c:1896 +#: tree-ssa-live.c:499 tree-ssa-live.c:1924 #, gcc-internal-format msgid "SSA corruption" msgstr "" -#: tree-outof-ssa.c:2310 +#: tree-outof-ssa.c:2309 #, gcc-internal-format msgid " Pending stmts not issued on PRED edge (%d, %d)\n" msgstr "" -#: tree-outof-ssa.c:2316 +#: tree-outof-ssa.c:2315 #, gcc-internal-format msgid " Pending stmts not issued on SUCC edge (%d, %d)\n" msgstr "" -#: tree-outof-ssa.c:2323 +#: tree-outof-ssa.c:2322 #, gcc-internal-format msgid " Pending stmts not issued on ENTRY edge (%d, %d)\n" msgstr "" -#: tree-outof-ssa.c:2329 +#: tree-outof-ssa.c:2328 #, gcc-internal-format msgid " Pending stmts not issued on EXIT edge (%d, %d)\n" msgstr "" -#: tree-profile.c:216 +#: tree-profile.c:215 #, fuzzy, gcc-internal-format msgid "unimplemented functionality" msgstr "вельмі шмат аргументаў у функцыі" -#: tree-ssa.c:111 +#: tree-ssa.c:110 #, gcc-internal-format msgid "expected an SSA_NAME object" msgstr "" -#: tree-ssa.c:117 +#: tree-ssa.c:116 #, gcc-internal-format msgid "type mismatch between an SSA_NAME and its symbol" msgstr "" -#: tree-ssa.c:123 +#: tree-ssa.c:122 #, gcc-internal-format msgid "found an SSA_NAME that had been released into the free pool" msgstr "" -#: tree-ssa.c:129 +#: tree-ssa.c:128 #, gcc-internal-format msgid "found a virtual definition for a GIMPLE register" msgstr "" -#: tree-ssa.c:135 +#: tree-ssa.c:134 #, gcc-internal-format msgid "found a real definition for a non-register" msgstr "" -#: tree-ssa.c:142 +#: tree-ssa.c:141 #, gcc-internal-format msgid "found real variable when subvariables should have appeared" msgstr "" -#: tree-ssa.c:171 +#: tree-ssa.c:170 #, gcc-internal-format msgid "SSA_NAME created in two different blocks %i and %i" msgstr "" -#: tree-ssa.c:180 +#: tree-ssa.c:179 #, gcc-internal-format msgid "SSA_NAME_DEF_STMT is wrong" msgstr "" -#: tree-ssa.c:238 +#: tree-ssa.c:237 #, fuzzy, gcc-internal-format msgid "missing definition" msgstr "прапушчан ініцыялізатар" -#: tree-ssa.c:244 +#: tree-ssa.c:243 #, gcc-internal-format msgid "definition in block %i does not dominate use in block %i" msgstr "" -#: tree-ssa.c:252 +#: tree-ssa.c:251 #, gcc-internal-format msgid "definition in block %i follows the use" msgstr "" -#: tree-ssa.c:259 +#: tree-ssa.c:258 #, gcc-internal-format msgid "SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set" msgstr "" -#: tree-ssa.c:267 +#: tree-ssa.c:266 #, gcc-internal-format msgid "no immediate_use list" msgstr "" -#: tree-ssa.c:279 +#: tree-ssa.c:278 #, gcc-internal-format msgid "wrong immediate use list" msgstr "" -#: tree-ssa.c:312 +#: tree-ssa.c:311 #, gcc-internal-format msgid "incoming edge count does not match number of PHI arguments" msgstr "" -#: tree-ssa.c:327 +#: tree-ssa.c:326 #, fuzzy, gcc-internal-format msgid "PHI argument is missing for edge %d->%d" msgstr "аргумент для \"%s\" прапушчан" -#: tree-ssa.c:336 +#: tree-ssa.c:335 #, gcc-internal-format msgid "PHI argument is not SSA_NAME, or invariant" msgstr "" -#: tree-ssa.c:348 +#: tree-ssa.c:347 #, gcc-internal-format msgid "wrong edge %d->%d for PHI argument" msgstr "" -#: tree-ssa.c:396 +#: tree-ssa.c:395 #, gcc-internal-format msgid "non-addressable variable inside an alias set" msgstr "" -#: tree-ssa.c:412 +#: tree-ssa.c:411 #, gcc-internal-format msgid "addressable variable that is aliased but is not in any alias set" msgstr "" -#: tree-ssa.c:422 +#: tree-ssa.c:421 #, gcc-internal-format msgid "verify_flow_insensitive_alias_info failed" msgstr "" -#: tree-ssa.c:464 +#: tree-ssa.c:463 #, gcc-internal-format msgid "dereferenced pointers should have a name or a symbol tag" msgstr "" -#: tree-ssa.c:471 +#: tree-ssa.c:470 #, gcc-internal-format msgid "pointers with a memory tag, should have points-to sets" msgstr "" -#: tree-ssa.c:479 +#: tree-ssa.c:478 #, gcc-internal-format msgid "pointer escapes but its name tag is not call-clobbered" msgstr "" -#: tree-ssa.c:488 +#: tree-ssa.c:487 #, gcc-internal-format msgid "verify_flow_sensitive_alias_info failed" msgstr "" -#: tree-ssa.c:564 +#: tree-ssa.c:563 #, gcc-internal-format msgid "alias set of a pointer's symbol tag should be a superset of the corresponding name tag" msgstr "" -#: tree-ssa.c:580 +#: tree-ssa.c:579 #, gcc-internal-format msgid "two different pointers with identical points-to sets but different name tags" msgstr "" -#: tree-ssa.c:612 +#: tree-ssa.c:611 #, gcc-internal-format msgid "verify_name_tags failed" msgstr "" -#: tree-ssa.c:635 +#: tree-ssa.c:634 #, gcc-internal-format msgid "variable in call_clobbered_vars but not marked DECL_CALL_CLOBBERED" msgstr "" -#: tree-ssa.c:645 +#: tree-ssa.c:644 #, gcc-internal-format msgid "variable marked DECL_CALL_CLOBBERED but not in call_clobbered_vars bitmap." msgstr "" -#: tree-ssa.c:653 +#: tree-ssa.c:652 #, gcc-internal-format msgid "verify_call_clobbering failed" msgstr "" -#: tree-ssa.c:724 +#: tree-ssa.c:723 #, gcc-internal-format msgid "AUX pointer initialized for edge %d->%d" msgstr "" -#: tree-ssa.c:747 +#: tree-ssa.c:746 #, gcc-internal-format msgid "stmt (%p) marked modified after optimization pass : " msgstr "" -#: tree-ssa.c:765 +#: tree-ssa.c:764 #, gcc-internal-format msgid "statement makes a memory store, but has no V_MAY_DEFS nor V_MUST_DEFS" msgstr "" -#: tree-ssa.c:806 +#: tree-ssa.c:805 #, gcc-internal-format msgid "verify_ssa failed" msgstr "" -#: tree-ssa.c:1185 +#: tree-ssa.c:1184 #, fuzzy, gcc-internal-format msgid "%J%qD was declared here" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" #. We only do data flow with SSA_NAMEs, so that's all we #. can warn about. -#: tree-ssa.c:1203 +#: tree-ssa.c:1202 #, fuzzy, gcc-internal-format msgid "%H%qD is used uninitialized in this function" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: tree-ssa.c:1241 +#: tree-ssa.c:1240 #, gcc-internal-format msgid "%H%qD may be used uninitialized in this function" msgstr "" -#: tree-vect-transform.c:562 +#: tree-vect-transform.c:561 #, fuzzy, gcc-internal-format msgid "no support for induction" msgstr "непадтрымліваемая версія" -#: tree-vrp.c:4328 +#: tree-vrp.c:4404 #, gcc-internal-format msgid "assuming signed overflow does not occur when simplifying conditional to constant" msgstr "" -#: tree-vrp.c:4334 +#: tree-vrp.c:4410 #, gcc-internal-format msgid "assuming signed overflow does not occur when simplifying conditional" msgstr "" -#: tree.c:3646 +#: tree.c:3645 #, gcc-internal-format msgid "%q+D already declared with dllexport attribute: dllimport ignored" msgstr "" -#: tree.c:3658 +#: tree.c:3657 #, gcc-internal-format msgid "%q+D redeclared without dllimport attribute after being referenced with dll linkage" msgstr "" -#: tree.c:3674 config/i386/winnt-cxx.c:70 +#: tree.c:3673 config/i386/winnt-cxx.c:69 #, gcc-internal-format msgid "%q+D redeclared without dllimport attribute: previous dllimport ignored" msgstr "" -#: tree.c:3726 tree.c:3738 config/darwin.c:1359 config/arm/arm.c:2906 -#: config/arm/arm.c:2934 config/avr/avr.c:4693 config/h8300/h8300.c:5282 -#: config/h8300/h8300.c:5306 config/i386/i386.c:2382 config/i386/i386.c:17541 -#: config/ia64/ia64.c:565 config/m68hc11/m68hc11.c:1118 -#: config/rs6000/rs6000.c:17704 config/sh/symbian.c:409 -#: config/sh/symbian.c:416 +#: tree.c:3725 tree.c:3737 config/darwin.c:1358 config/arm/arm.c:2905 +#: config/arm/arm.c:2933 config/avr/avr.c:4693 config/h8300/h8300.c:5281 +#: config/h8300/h8300.c:5305 config/i386/i386.c:2381 config/i386/i386.c:17549 +#: config/ia64/ia64.c:564 config/m68hc11/m68hc11.c:1117 +#: config/rs6000/rs6000.c:17739 config/sh/symbian.c:408 +#: config/sh/symbian.c:415 #, fuzzy, gcc-internal-format msgid "%qs attribute ignored" msgstr "\"%s\" атрыбут ігнарыруецца" -#: tree.c:3754 +#: tree.c:3753 #, gcc-internal-format msgid "inline function %q+D declared as dllimport: attribute ignored" msgstr "" -#: tree.c:3762 +#: tree.c:3761 #, gcc-internal-format msgid "function %q+D definition is marked dllimport" msgstr "" -#: tree.c:3770 config/sh/symbian.c:431 +#: tree.c:3769 config/sh/symbian.c:430 #, gcc-internal-format msgid "variable %q+D definition is marked dllimport" msgstr "" -#: tree.c:3793 config/sh/symbian.c:506 +#: tree.c:3792 config/sh/symbian.c:505 #, gcc-internal-format msgid "external linkage required for symbol %q+D because of %qs attribute" msgstr "" @@ -22037,319 +22042,319 @@ msgid "tree check: accessed operand %d of omp_clause %s with %d operands in %s, at %s:%d" msgstr "" -#: value-prof.c:95 +#: value-prof.c:94 #, gcc-internal-format msgid "%HCorrupted value profile: %s profiler overall count (%d) does not match BB count (%d)" msgstr "" -#: varasm.c:311 +#: varasm.c:310 #, gcc-internal-format msgid "%+D causes a section type conflict" msgstr "" -#: varasm.c:853 +#: varasm.c:852 #, gcc-internal-format msgid "alignment of %q+D is greater than maximum object file alignment. Using %d" msgstr "" -#: varasm.c:1063 varasm.c:1071 +#: varasm.c:1062 varasm.c:1070 #, gcc-internal-format msgid "register name not specified for %q+D" msgstr "" -#: varasm.c:1073 +#: varasm.c:1072 #, fuzzy, gcc-internal-format msgid "invalid register name for %q+D" msgstr "нерэчаісная назва рэгістра `%s'" -#: varasm.c:1075 +#: varasm.c:1074 #, gcc-internal-format msgid "data type of %q+D isn%'t suitable for a register" msgstr "" -#: varasm.c:1078 +#: varasm.c:1077 #, gcc-internal-format msgid "register specified for %q+D isn%'t suitable for data type" msgstr "" -#: varasm.c:1088 +#: varasm.c:1087 #, gcc-internal-format msgid "global register variable has initial value" msgstr "" -#: varasm.c:1092 +#: varasm.c:1091 #, gcc-internal-format msgid "optimization may eliminate reads and/or writes to register variables" msgstr "" -#: varasm.c:1130 +#: varasm.c:1129 #, gcc-internal-format msgid "register name given for non-register variable %q+D" msgstr "" -#: varasm.c:1199 +#: varasm.c:1198 #, fuzzy, gcc-internal-format msgid "global destructors not supported on this target" msgstr "__buitin_saveregs не падтрымліваецца гэтай мэтай" -#: varasm.c:1249 +#: varasm.c:1248 #, fuzzy, gcc-internal-format msgid "global constructors not supported on this target" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: varasm.c:1646 +#: varasm.c:1645 #, gcc-internal-format msgid "thread-local COMMON data not implemented" msgstr "" -#: varasm.c:1675 +#: varasm.c:1674 #, gcc-internal-format msgid "requested alignment for %q+D is greater than implemented alignment of %wu" msgstr "" -#: varasm.c:4081 +#: varasm.c:4080 #, gcc-internal-format msgid "initializer for integer value is too complicated" msgstr "" -#: varasm.c:4086 +#: varasm.c:4085 #, gcc-internal-format msgid "initializer for floating value is not a floating constant" msgstr "" -#: varasm.c:4359 +#: varasm.c:4358 #, fuzzy, gcc-internal-format msgid "invalid initial value for member %qs" msgstr "нявернае выкарыстанне \"restict\"" -#: varasm.c:4559 varasm.c:4603 +#: varasm.c:4558 varasm.c:4602 #, gcc-internal-format msgid "weak declaration of %q+D must precede definition" msgstr "" -#: varasm.c:4567 +#: varasm.c:4566 #, gcc-internal-format msgid "weak declaration of %q+D after first use results in unspecified behavior" msgstr "" -#: varasm.c:4601 +#: varasm.c:4600 #, gcc-internal-format msgid "weak declaration of %q+D must be public" msgstr "" -#: varasm.c:4610 +#: varasm.c:4609 #, gcc-internal-format msgid "weak declaration of %q+D not supported" msgstr "" -#: varasm.c:4636 +#: varasm.c:4635 #, gcc-internal-format msgid "only weak aliases are supported in this configuration" msgstr "" -#: varasm.c:4866 +#: varasm.c:4865 #, fuzzy, gcc-internal-format msgid "%Jweakref is not supported in this configuration" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: varasm.c:4939 +#: varasm.c:4938 #, gcc-internal-format msgid "%q+D aliased to undefined symbol %qs" msgstr "" -#: varasm.c:4944 +#: varasm.c:4943 #, gcc-internal-format msgid "%q+D aliased to external symbol %qs" msgstr "" -#: varasm.c:4983 +#: varasm.c:4982 #, gcc-internal-format msgid "weakref %q+D ultimately targets itself" msgstr "" -#: varasm.c:4992 +#: varasm.c:4991 #, gcc-internal-format msgid "weakref %q+D must have static linkage" msgstr "" -#: varasm.c:4998 +#: varasm.c:4997 #, fuzzy, gcc-internal-format msgid "%Jalias definitions not supported in this configuration" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: varasm.c:5003 +#: varasm.c:5002 #, gcc-internal-format msgid "%Jonly weak aliases are supported in this configuration" msgstr "" -#: varasm.c:5060 +#: varasm.c:5059 #, fuzzy, gcc-internal-format msgid "visibility attribute not supported in this configuration; ignored" msgstr "атрыбуты секцыі не падтрымліваюцца для гэтай мэты" -#: varray.c:196 +#: varray.c:195 #, gcc-internal-format msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d" msgstr "" -#: varray.c:206 +#: varray.c:205 #, gcc-internal-format msgid "underflowed virtual array %s in %s, at %s:%d" msgstr "" -#: vec.c:235 +#: vec.c:234 #, gcc-internal-format msgid "vector %s %s domain error, in %s at %s:%u" msgstr "" #. Print an error message for unrecognized stab codes. -#: xcoffout.c:187 +#: xcoffout.c:186 #, gcc-internal-format msgid "no sclass for %s stab (0x%x)" msgstr "" -#: config/darwin-c.c:87 +#: config/darwin-c.c:86 #, gcc-internal-format msgid "too many #pragma options align=reset" msgstr "" -#: config/darwin-c.c:107 config/darwin-c.c:110 config/darwin-c.c:112 -#: config/darwin-c.c:114 +#: config/darwin-c.c:106 config/darwin-c.c:109 config/darwin-c.c:111 +#: config/darwin-c.c:113 #, gcc-internal-format msgid "malformed '#pragma options', ignoring" msgstr "" -#: config/darwin-c.c:117 +#: config/darwin-c.c:116 #, gcc-internal-format msgid "junk at end of '#pragma options'" msgstr "" -#: config/darwin-c.c:127 +#: config/darwin-c.c:126 #, gcc-internal-format msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring" msgstr "" -#: config/darwin-c.c:139 +#: config/darwin-c.c:138 #, gcc-internal-format msgid "missing '(' after '#pragma unused', ignoring" msgstr "" -#: config/darwin-c.c:157 +#: config/darwin-c.c:156 #, gcc-internal-format msgid "missing ')' after '#pragma unused', ignoring" msgstr "" -#: config/darwin-c.c:160 +#: config/darwin-c.c:159 #, gcc-internal-format msgid "junk at end of '#pragma unused'" msgstr "" -#: config/darwin-c.c:171 +#: config/darwin-c.c:170 #, gcc-internal-format msgid "malformed '#pragma ms_struct', ignoring" msgstr "" -#: config/darwin-c.c:179 +#: config/darwin-c.c:178 #, gcc-internal-format msgid "malformed '#pragma ms_struct {on|off|reset}', ignoring" msgstr "" -#: config/darwin-c.c:182 +#: config/darwin-c.c:181 #, gcc-internal-format msgid "junk at end of '#pragma ms_struct'" msgstr "" -#: config/darwin-c.c:408 +#: config/darwin-c.c:407 #, gcc-internal-format msgid "subframework include %s conflicts with framework include" msgstr "" -#: config/darwin-c.c:600 +#: config/darwin-c.c:599 #, gcc-internal-format msgid "Unknown value %qs of -mmacosx-version-min" msgstr "" -#: config/darwin.c:1332 +#: config/darwin.c:1331 #, gcc-internal-format msgid "%<%s%> 2.95 vtable-compatability attribute applies only when compiling a kext" msgstr "" -#: config/darwin.c:1339 +#: config/darwin.c:1338 #, gcc-internal-format msgid "%<%s%> 2.95 vtable-compatability attribute applies only to C++ classes" msgstr "" -#: config/darwin.c:1472 +#: config/darwin.c:1471 #, gcc-internal-format msgid "internal and protected visibility attributes not supported in this configuration; ignored" msgstr "" -#: config/darwin.c:1626 +#: config/darwin.c:1625 #, gcc-internal-format msgid "command line option %<-fapple-kext%> is only valid for C++" msgstr "" -#: config/host-darwin.c:63 +#: config/host-darwin.c:62 #, gcc-internal-format msgid "couldn't unmap pch_address_space: %m" msgstr "" -#: config/sol2-c.c:94 config/sol2-c.c:110 +#: config/sol2-c.c:93 config/sol2-c.c:109 #, gcc-internal-format msgid "malformed %<#pragma align%>, ignoring" msgstr "" -#: config/sol2-c.c:103 +#: config/sol2-c.c:102 #, gcc-internal-format msgid "invalid alignment for %<#pragma align%>, ignoring" msgstr "" -#: config/sol2-c.c:118 +#: config/sol2-c.c:117 #, gcc-internal-format msgid "%<#pragma align%> must appear before the declaration of %D, ignoring" msgstr "" -#: config/sol2-c.c:130 config/sol2-c.c:142 +#: config/sol2-c.c:129 config/sol2-c.c:141 #, gcc-internal-format msgid "malformed %<#pragma align%>" msgstr "" -#: config/sol2-c.c:137 +#: config/sol2-c.c:136 #, gcc-internal-format msgid "junk at end of %<#pragma align%>" msgstr "" -#: config/sol2-c.c:158 config/sol2-c.c:165 +#: config/sol2-c.c:157 config/sol2-c.c:164 #, gcc-internal-format msgid "malformed %<#pragma init%>, ignoring" msgstr "" -#: config/sol2-c.c:188 config/sol2-c.c:200 +#: config/sol2-c.c:187 config/sol2-c.c:199 #, gcc-internal-format msgid "malformed %<#pragma init%>" msgstr "" -#: config/sol2-c.c:195 +#: config/sol2-c.c:194 #, gcc-internal-format msgid "junk at end of %<#pragma init%>" msgstr "" -#: config/sol2-c.c:216 config/sol2-c.c:223 +#: config/sol2-c.c:215 config/sol2-c.c:222 #, gcc-internal-format msgid "malformed %<#pragma fini%>, ignoring" msgstr "" -#: config/sol2-c.c:246 config/sol2-c.c:258 +#: config/sol2-c.c:245 config/sol2-c.c:257 #, gcc-internal-format msgid "malformed %<#pragma fini%>" msgstr "" -#: config/sol2-c.c:253 +#: config/sol2-c.c:252 #, gcc-internal-format msgid "junk at end of %<#pragma fini%>" msgstr "" -#: config/sol2.c:54 +#: config/sol2.c:53 #, gcc-internal-format msgid "ignoring %<#pragma align%> for explicitly aligned %q+D" msgstr "" @@ -22365,238 +22370,239 @@ msgstr "-pipe не падтрымліваецца" #. No profiling. -#: config/vx-common.h:83 +#: config/vx-common.h:82 #, gcc-internal-format msgid "profiler support for VxWorks" msgstr "" -#: config/windiss.h:37 +#: config/windiss.h:36 #, gcc-internal-format msgid "profiler support for WindISS" msgstr "" -#: config/alpha/alpha.c:231 config/rs6000/rs6000.c:1619 +#: config/alpha/alpha.c:230 config/rs6000/rs6000.c:1653 #, gcc-internal-format msgid "bad value %qs for -mtls-size switch" msgstr "" -#: config/alpha/alpha.c:285 +#: config/alpha/alpha.c:284 #, fuzzy, gcc-internal-format msgid "-f%s ignored for Unicos/Mk (not supported)" msgstr "-pipe не падтрымліваецца." -#: config/alpha/alpha.c:309 +#: config/alpha/alpha.c:308 #, fuzzy, gcc-internal-format msgid "-mieee not supported on Unicos/Mk" msgstr "-pipe не падтрымліваецца" -#: config/alpha/alpha.c:320 +#: config/alpha/alpha.c:319 #, gcc-internal-format msgid "-mieee-with-inexact not supported on Unicos/Mk" msgstr "" -#: config/alpha/alpha.c:337 +#: config/alpha/alpha.c:336 #, gcc-internal-format msgid "bad value %qs for -mtrap-precision switch" msgstr "" -#: config/alpha/alpha.c:351 +#: config/alpha/alpha.c:350 #, gcc-internal-format msgid "bad value %qs for -mfp-rounding-mode switch" msgstr "" -#: config/alpha/alpha.c:366 +#: config/alpha/alpha.c:365 #, gcc-internal-format msgid "bad value %qs for -mfp-trap-mode switch" msgstr "" -#: config/alpha/alpha.c:380 config/alpha/alpha.c:392 +#: config/alpha/alpha.c:379 config/alpha/alpha.c:391 #, gcc-internal-format msgid "bad value %qs for -mcpu switch" msgstr "" -#: config/alpha/alpha.c:399 +#: config/alpha/alpha.c:398 #, gcc-internal-format msgid "trap mode not supported on Unicos/Mk" msgstr "" -#: config/alpha/alpha.c:406 +#: config/alpha/alpha.c:405 #, gcc-internal-format msgid "fp software completion requires -mtrap-precision=i" msgstr "" -#: config/alpha/alpha.c:422 +#: config/alpha/alpha.c:421 #, gcc-internal-format msgid "rounding mode not supported for VAX floats" msgstr "" -#: config/alpha/alpha.c:427 +#: config/alpha/alpha.c:426 #, gcc-internal-format msgid "trap mode not supported for VAX floats" msgstr "" -#: config/alpha/alpha.c:431 +#: config/alpha/alpha.c:430 #, gcc-internal-format msgid "128-bit long double not supported for VAX floats" msgstr "" -#: config/alpha/alpha.c:459 +#: config/alpha/alpha.c:458 #, gcc-internal-format msgid "L%d cache latency unknown for %s" msgstr "" -#: config/alpha/alpha.c:474 +#: config/alpha/alpha.c:473 #, gcc-internal-format msgid "bad value %qs for -mmemory-latency" msgstr "" -#: config/alpha/alpha.c:6603 config/alpha/alpha.c:6606 config/s390/s390.c:8224 -#: config/s390/s390.c:8227 +#: config/alpha/alpha.c:6602 config/alpha/alpha.c:6605 config/s390/s390.c:8223 +#: config/s390/s390.c:8226 #, gcc-internal-format msgid "bad builtin fcode" msgstr "" -#: config/arc/arc.c:390 +#: config/arc/arc.c:389 #, fuzzy, gcc-internal-format msgid "argument of %qs attribute is not a string constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: config/arc/arc.c:398 +#: config/arc/arc.c:397 #, fuzzy, gcc-internal-format msgid "argument of %qs attribute is not \"ilink1\" or \"ilink2\"" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: config/arm/arm.c:921 +#: config/arm/arm.c:920 #, gcc-internal-format msgid "switch -mcpu=%s conflicts with -march= switch" msgstr "" -#: config/arm/arm.c:931 config/rs6000/rs6000.c:1269 config/sparc/sparc.c:734 +#: config/arm/arm.c:930 config/rs6000/rs6000.c:1272 config/sparc/sparc.c:733 #, gcc-internal-format msgid "bad value (%s) for %s switch" msgstr "" -#: config/arm/arm.c:1041 +#: config/arm/arm.c:1040 #, gcc-internal-format msgid "target CPU does not support interworking" msgstr "" -#: config/arm/arm.c:1047 +#: config/arm/arm.c:1046 #, fuzzy, gcc-internal-format msgid "target CPU does not support THUMB instructions" msgstr "ISO C не падтрымлівае комлексныя цэлалікавыя тыпы" -#: config/arm/arm.c:1065 +#: config/arm/arm.c:1064 #, gcc-internal-format msgid "enabling backtrace support is only meaningful when compiling for the Thumb" msgstr "" -#: config/arm/arm.c:1068 +#: config/arm/arm.c:1067 #, gcc-internal-format msgid "enabling callee interworking support is only meaningful when compiling for the Thumb" msgstr "" -#: config/arm/arm.c:1071 +#: config/arm/arm.c:1070 #, gcc-internal-format msgid "enabling caller interworking support is only meaningful when compiling for the Thumb" msgstr "" -#: config/arm/arm.c:1075 +#: config/arm/arm.c:1074 #, gcc-internal-format msgid "-mapcs-stack-check incompatible with -mno-apcs-frame" msgstr "" -#: config/arm/arm.c:1083 +#: config/arm/arm.c:1082 #, gcc-internal-format msgid "-fpic and -mapcs-reent are incompatible" msgstr "" -#: config/arm/arm.c:1086 +#: config/arm/arm.c:1085 #, gcc-internal-format msgid "APCS reentrant code not supported. Ignored" msgstr "" -#: config/arm/arm.c:1094 +#: config/arm/arm.c:1093 #, gcc-internal-format msgid "-g with -mno-apcs-frame may not give sensible debugging" msgstr "" -#: config/arm/arm.c:1102 +#: config/arm/arm.c:1101 #, gcc-internal-format msgid "passing floating point arguments in fp regs not yet supported" msgstr "" -#: config/arm/arm.c:1144 +#: config/arm/arm.c:1143 #, fuzzy, gcc-internal-format msgid "invalid ABI option: -mabi=%s" msgstr "Нерэчаісны выбар %s" -#: config/arm/arm.c:1150 +#: config/arm/arm.c:1149 #, gcc-internal-format msgid "iwmmxt requires an AAPCS compatible ABI for proper operation" msgstr "" -#: config/arm/arm.c:1153 +#: config/arm/arm.c:1152 #, gcc-internal-format msgid "iwmmxt abi requires an iwmmxt capable cpu" msgstr "" -#: config/arm/arm.c:1163 +#: config/arm/arm.c:1162 #, gcc-internal-format msgid "invalid floating point emulation option: -mfpe=%s" msgstr "" -#: config/arm/arm.c:1180 +#: config/arm/arm.c:1179 #, fuzzy, gcc-internal-format msgid "invalid floating point option: -mfpu=%s" msgstr "нерэчаісны выбар --param : %s" -#: config/arm/arm.c:1220 +#: config/arm/arm.c:1219 #, gcc-internal-format msgid "invalid floating point abi: -mfloat-abi=%s" msgstr "" -#: config/arm/arm.c:1227 +#: config/arm/arm.c:1226 #, gcc-internal-format msgid "-mfloat-abi=hard and VFP" msgstr "" -#: config/arm/arm.c:1233 +#: config/arm/arm.c:1232 #, fuzzy, gcc-internal-format msgid "iWMMXt and hardware floating point" msgstr "Выкарыстоўваць апаратную \"плаваючую кропку\"" -#: config/arm/arm.c:1256 +#: config/arm/arm.c:1255 #, fuzzy, gcc-internal-format msgid "invalid thread pointer option: -mtp=%s" msgstr "нерэчаісны выбар --param : %s" -#: config/arm/arm.c:1269 +#: config/arm/arm.c:1268 #, gcc-internal-format msgid "can not use -mtp=cp15 with -mthumb" msgstr "" -#: config/arm/arm.c:1283 +#: config/arm/arm.c:1282 #, gcc-internal-format msgid "structure size boundary can only be set to %s" msgstr "" -#: config/arm/arm.c:1292 +#: config/arm/arm.c:1291 #, gcc-internal-format msgid "-mpic-register= is useless without -fpic" msgstr "" -#: config/arm/arm.c:1299 +#: config/arm/arm.c:1298 #, gcc-internal-format msgid "unable to use '%s' for PIC register" msgstr "" -#: config/arm/arm.c:2874 config/arm/arm.c:2892 config/avr/avr.c:4713 -#: config/bfin/bfin.c:3666 config/c4x/c4x.c:4076 config/h8300/h8300.c:5258 -#: config/i386/i386.c:2337 config/m68hc11/m68hc11.c:1155 -#: config/m68k/m68k.c:381 config/mcore/mcore.c:3032 config/mt/mt.c:1276 -#: config/rs6000/rs6000.c:17630 config/sh/sh.c:7709 config/sh/sh.c:7730 -#: config/sh/sh.c:7753 config/stormy16/stormy16.c:2255 config/v850/v850.c:2123 +#: config/arm/arm.c:2873 config/arm/arm.c:2891 config/avr/avr.c:4713 +#: config/avr/avr.c:4755 config/bfin/bfin.c:3665 config/c4x/c4x.c:4075 +#: config/h8300/h8300.c:5257 config/i386/i386.c:2336 +#: config/m68hc11/m68hc11.c:1154 config/m68k/m68k.c:380 +#: config/mcore/mcore.c:3031 config/mt/mt.c:1275 config/rs6000/rs6000.c:17665 +#: config/sh/sh.c:7717 config/sh/sh.c:7738 config/sh/sh.c:7761 +#: config/stormy16/stormy16.c:2254 config/v850/v850.c:2122 #, fuzzy, gcc-internal-format msgid "%qs attribute only applies to functions" msgstr "\"%s\" звычайна функцыя" @@ -22613,7 +22619,7 @@ msgstr "" #. @@@ better error message -#: config/arm/arm.c:12829 config/i386/i386.c:16158 config/i386/i386.c:16192 +#: config/arm/arm.c:12829 config/i386/i386.c:16165 config/i386/i386.c:16199 #, gcc-internal-format msgid "mask must be an immediate" msgstr "" @@ -22628,12 +22634,12 @@ msgid "interrupt Service Routines cannot be coded in Thumb mode" msgstr "" -#: config/arm/pe.c:165 config/mcore/mcore.c:2898 +#: config/arm/pe.c:164 config/mcore/mcore.c:2897 #, gcc-internal-format msgid "initialized variable %q+D is marked dllimport" msgstr "" -#: config/arm/pe.c:174 +#: config/arm/pe.c:173 #, gcc-internal-format msgid "static variable %q+D is marked dllimport" msgstr "" @@ -22658,12 +22664,12 @@ msgid "%qs appears to be a misspelled signal handler" msgstr "" -#: config/avr/avr.c:4830 +#: config/avr/avr.c:4846 #, gcc-internal-format msgid "only uninitialized variables can be placed in the .noinit section" msgstr "" -#: config/avr/avr.c:4844 +#: config/avr/avr.c:4860 #, gcc-internal-format msgid "MCU %qs supported for assembler only" msgstr "" @@ -22673,67 +22679,67 @@ msgid "trampolines not supported" msgstr "" -#: config/bfin/bfin.c:1958 config/m68k/m68k.c:299 +#: config/bfin/bfin.c:1957 config/m68k/m68k.c:298 #, gcc-internal-format msgid "-mshared-library-id=%s is not between 0 and %d" msgstr "" -#: config/bfin/bfin.c:1988 +#: config/bfin/bfin.c:1987 #, gcc-internal-format msgid "-mshared-library-id= specified without -mid-shared-library" msgstr "" -#: config/bfin/bfin.c:1994 +#: config/bfin/bfin.c:1993 #, gcc-internal-format msgid "ID shared libraries and FD-PIC mode can't be used together." msgstr "" -#: config/bfin/bfin.c:3671 +#: config/bfin/bfin.c:3670 #, gcc-internal-format msgid "multiple function type attributes specified" msgstr "" -#: config/bfin/bfin.c:3727 +#: config/bfin/bfin.c:3726 #, fuzzy, gcc-internal-format msgid "`%s' attribute only applies to functions" msgstr "\"%s\" звычайна функцыя" -#: config/bfin/bfin.c:3738 +#: config/bfin/bfin.c:3737 #, gcc-internal-format msgid "can't apply both longcall and shortcall attributes to the same function" msgstr "" -#: config/c4x/c4x-c.c:72 +#: config/c4x/c4x-c.c:71 #, gcc-internal-format msgid "missing '(' after '#pragma %s' - ignored" msgstr "" -#: config/c4x/c4x-c.c:75 +#: config/c4x/c4x-c.c:74 #, gcc-internal-format msgid "missing function name in '#pragma %s' - ignored" msgstr "" -#: config/c4x/c4x-c.c:80 +#: config/c4x/c4x-c.c:79 #, gcc-internal-format msgid "malformed '#pragma %s' - ignored" msgstr "" -#: config/c4x/c4x-c.c:82 +#: config/c4x/c4x-c.c:81 #, gcc-internal-format msgid "missing section name in '#pragma %s' - ignored" msgstr "" -#: config/c4x/c4x-c.c:87 +#: config/c4x/c4x-c.c:86 #, gcc-internal-format msgid "missing ')' for '#pragma %s' - ignored" msgstr "" -#: config/c4x/c4x-c.c:90 +#: config/c4x/c4x-c.c:89 #, gcc-internal-format msgid "junk at end of '#pragma %s'" msgstr "" -#: config/c4x/c4x.c:860 +#: config/c4x/c4x.c:859 #, gcc-internal-format msgid "ISR %s requires %d words of local vars, max is 32767" msgstr "" @@ -22742,89 +22748,89 @@ #. an operator, for immediate output. If that ever happens for #. MULT, we need to apply TARGET_MUL_BUG in the caller. Make sure #. we notice. -#: config/cris/cris.c:435 +#: config/cris/cris.c:434 #, gcc-internal-format msgid "MULT case in cris_op_str" msgstr "" -#: config/cris/cris.c:813 +#: config/cris/cris.c:812 #, fuzzy, gcc-internal-format msgid "invalid use of ':' modifier" msgstr "нерэчаіснае выкарыстаньне `::'" -#: config/cris/cris.c:986 +#: config/cris/cris.c:985 #, gcc-internal-format msgid "internal error: bad register: %d" msgstr "унутраная памылка: дрэнны рэгістр: %d" -#: config/cris/cris.c:1528 +#: config/cris/cris.c:1527 #, gcc-internal-format msgid "internal error: sideeffect-insn affecting main effect" msgstr "" -#: config/cris/cris.c:1552 +#: config/cris/cris.c:1551 #, gcc-internal-format msgid "unknown cc_attr value" msgstr "" #. If we get here, the caller got its initial tests wrong. -#: config/cris/cris.c:1903 +#: config/cris/cris.c:1902 #, gcc-internal-format msgid "internal error: cris_side_effect_mode_ok with bad operands" msgstr "" -#: config/cris/cris.c:2106 +#: config/cris/cris.c:2105 #, gcc-internal-format msgid "-max-stackframe=%d is not usable, not between 0 and %d" msgstr "" -#: config/cris/cris.c:2134 +#: config/cris/cris.c:2133 #, gcc-internal-format msgid "unknown CRIS version specification in -march= or -mcpu= : %s" msgstr "" -#: config/cris/cris.c:2170 +#: config/cris/cris.c:2169 #, gcc-internal-format msgid "unknown CRIS cpu version specification in -mtune= : %s" msgstr "" -#: config/cris/cris.c:2188 +#: config/cris/cris.c:2187 #, gcc-internal-format msgid "-fPIC and -fpic are not supported in this configuration" msgstr "" -#: config/cris/cris.c:2203 +#: config/cris/cris.c:2202 #, gcc-internal-format msgid "that particular -g option is invalid with -maout and -melinux" msgstr "" -#: config/cris/cris.c:2416 +#: config/cris/cris.c:2415 #, gcc-internal-format msgid "Unknown src" msgstr "" -#: config/cris/cris.c:2477 +#: config/cris/cris.c:2476 #, fuzzy, gcc-internal-format msgid "Unknown dest" msgstr "невядомы рэжым машыны \"%s\"" -#: config/cris/cris.c:2762 +#: config/cris/cris.c:2761 #, gcc-internal-format msgid "stackframe too big: %d bytes" msgstr "" -#: config/cris/cris.c:3214 config/cris/cris.c:3241 +#: config/cris/cris.c:3213 config/cris/cris.c:3240 #, gcc-internal-format msgid "expand_binop failed in movsi got" msgstr "" -#: config/cris/cris.c:3322 +#: config/cris/cris.c:3321 #, gcc-internal-format msgid "emitting PIC operand, but PIC register isn't set up" msgstr "" #. Definitions for GCC. Part of the machine description for CRIS. -#. Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +#. Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 #. Free Software Foundation, Inc. #. Contributed by Axis Communications. Written by Hans-Peter Nilsson. #. @@ -22832,7 +22838,7 @@ #. #. 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) +#. the Free Software Foundation; either version 3, or (at your option) #. any later version. #. #. GCC is distributed in the hope that it will be useful, @@ -22841,9 +22847,8 @@ #. 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, 51 Franklin Street, Fifth Floor, -#. Boston, MA 02110-1301, USA. +#. along with GCC; see the file COPYING3. If not see +#. . #. After the first "Node:" comment comes all preprocessor directives and #. attached declarations described in the info files, the "Using and #. Porting GCC" manual (uapgcc), in the same order as found in the "Target @@ -22862,7 +22867,7 @@ #. definitions and definitions for the cris-*-elf subtarget. #. We don't want to use gcc_assert for everything, as that can be #. compiled out. -#: config/cris/cris.h:44 +#: config/cris/cris.h:43 #, gcc-internal-format msgid "CRIS-port assertion failed: " msgstr "" @@ -22873,752 +22878,752 @@ #. See cris.c for TARGET_ASM_FUNCTION_PROLOGUE and #. TARGET_ASM_FUNCTION_EPILOGUE. #. Node: Profiling -#: config/cris/cris.h:867 +#: config/cris/cris.h:866 #, gcc-internal-format msgid "no FUNCTION_PROFILER for CRIS" msgstr "" -#: config/crx/crx.h:355 +#: config/crx/crx.h:354 #, gcc-internal-format msgid "Profiler support for CRX" msgstr "" -#: config/crx/crx.h:366 +#: config/crx/crx.h:365 #, gcc-internal-format msgid "Trampoline support for CRX" msgstr "" -#: config/frv/frv.c:8623 +#: config/frv/frv.c:8622 #, gcc-internal-format msgid "accumulator is not a constant integer" msgstr "" -#: config/frv/frv.c:8628 +#: config/frv/frv.c:8627 #, gcc-internal-format msgid "accumulator number is out of bounds" msgstr "" -#: config/frv/frv.c:8639 +#: config/frv/frv.c:8638 #, gcc-internal-format msgid "inappropriate accumulator for %qs" msgstr "" -#: config/frv/frv.c:8717 +#: config/frv/frv.c:8716 #, fuzzy, gcc-internal-format msgid "invalid IACC argument" msgstr "нерэчаіснае значэньне %%C" -#: config/frv/frv.c:8740 +#: config/frv/frv.c:8739 #, gcc-internal-format msgid "%qs expects a constant argument" msgstr "" -#: config/frv/frv.c:8745 +#: config/frv/frv.c:8744 #, gcc-internal-format msgid "constant argument out of range for %qs" msgstr "" -#: config/frv/frv.c:9227 +#: config/frv/frv.c:9226 #, gcc-internal-format msgid "media functions are not available unless -mmedia is used" msgstr "" -#: config/frv/frv.c:9239 +#: config/frv/frv.c:9238 #, gcc-internal-format msgid "this media function is only available on the fr500" msgstr "" -#: config/frv/frv.c:9267 +#: config/frv/frv.c:9266 #, gcc-internal-format msgid "this media function is only available on the fr400 and fr550" msgstr "" -#: config/frv/frv.c:9286 +#: config/frv/frv.c:9285 #, gcc-internal-format msgid "this builtin function is only available on the fr405 and fr450" msgstr "" -#: config/frv/frv.c:9295 +#: config/frv/frv.c:9294 #, gcc-internal-format msgid "this builtin function is only available on the fr500 and fr550" msgstr "" -#: config/frv/frv.c:9307 +#: config/frv/frv.c:9306 #, gcc-internal-format msgid "this builtin function is only available on the fr450" msgstr "" -#: config/h8300/h8300.c:331 +#: config/h8300/h8300.c:330 #, fuzzy, gcc-internal-format msgid "-ms2600 is used without -ms" msgstr "-ms2600 ужываецца без -ms." -#: config/h8300/h8300.c:337 +#: config/h8300/h8300.c:336 #, fuzzy, gcc-internal-format msgid "-mn is used without -mh or -ms" msgstr "-ms2600 ужываецца без -ms." -#: config/i386/host-cygwin.c:65 +#: config/i386/host-cygwin.c:64 #, fuzzy, gcc-internal-format msgid "can't extend PCH file: %m" msgstr "немагчыма стварыць часовы файл" -#: config/i386/host-cygwin.c:76 +#: config/i386/host-cygwin.c:75 #, fuzzy, gcc-internal-format msgid "can't set position in PCH file: %m" msgstr "немагчыма зачыніць уваходзячы файл %s" -#: config/i386/i386.c:1586 config/i386/i386.c:1727 +#: config/i386/i386.c:1585 config/i386/i386.c:1726 #, gcc-internal-format msgid "bad value (%s) for -mtune= switch" msgstr "" -#: config/i386/i386.c:1611 +#: config/i386/i386.c:1610 #, gcc-internal-format msgid "-mtune=x86-64 is deprecated. Use -mtune=k8 or -mtune=generic instead as appropriate." msgstr "" -#: config/i386/i386.c:1617 +#: config/i386/i386.c:1616 #, gcc-internal-format msgid "generic CPU can be used only for -mtune= switch" msgstr "" -#: config/i386/i386.c:1619 config/i386/i386.c:1696 config/mt/mt.c:805 +#: config/i386/i386.c:1618 config/i386/i386.c:1695 config/mt/mt.c:804 #, gcc-internal-format msgid "bad value (%s) for -march= switch" msgstr "" -#: config/i386/i386.c:1628 +#: config/i386/i386.c:1627 #, gcc-internal-format msgid "code model %s not supported in PIC mode" msgstr "" -#: config/i386/i386.c:1636 config/sparc/sparc.c:698 +#: config/i386/i386.c:1635 config/sparc/sparc.c:697 #, gcc-internal-format msgid "bad value (%s) for -mcmodel= switch" msgstr "" -#: config/i386/i386.c:1652 +#: config/i386/i386.c:1651 #, gcc-internal-format msgid "bad value (%s) for -masm= switch" msgstr "" -#: config/i386/i386.c:1655 +#: config/i386/i386.c:1654 #, fuzzy, gcc-internal-format msgid "code model %qs not supported in the %s bit mode" msgstr "__buitin_saveregs не падтрымліваецца гэтай мэтай" -#: config/i386/i386.c:1658 +#: config/i386/i386.c:1657 #, gcc-internal-format msgid "code model % not supported yet" msgstr "" -#: config/i386/i386.c:1660 +#: config/i386/i386.c:1659 #, gcc-internal-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:1690 config/i386/i386.c:1714 +#: config/i386/i386.c:1689 config/i386/i386.c:1713 #, fuzzy, gcc-internal-format msgid "CPU you selected does not support x86-64 instruction set" msgstr "ISO C не падтрымлівае комлексныя цэлалікавыя тыпы" -#: config/i386/i386.c:1744 +#: config/i386/i386.c:1743 #, gcc-internal-format msgid "-mregparm=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1757 +#: config/i386/i386.c:1756 #, gcc-internal-format msgid "-malign-loops is obsolete, use -falign-loops" msgstr "" -#: config/i386/i386.c:1762 config/i386/i386.c:1775 config/i386/i386.c:1788 +#: config/i386/i386.c:1761 config/i386/i386.c:1774 config/i386/i386.c:1787 #, gcc-internal-format msgid "-malign-loops=%d is not between 0 and %d" msgstr "" -#: config/i386/i386.c:1770 +#: config/i386/i386.c:1769 #, gcc-internal-format msgid "-malign-jumps is obsolete, use -falign-jumps" msgstr "" -#: config/i386/i386.c:1783 +#: config/i386/i386.c:1782 #, gcc-internal-format msgid "-malign-functions is obsolete, use -falign-functions" msgstr "" -#: config/i386/i386.c:1816 +#: config/i386/i386.c:1815 #, gcc-internal-format msgid "-mbranch-cost=%d is not between 0 and 5" msgstr "" -#: config/i386/i386.c:1824 +#: config/i386/i386.c:1823 #, gcc-internal-format msgid "-mlarge-data-threshold=%d is negative" msgstr "" -#: config/i386/i386.c:1838 +#: config/i386/i386.c:1837 #, gcc-internal-format msgid "bad value (%s) for -mtls-dialect= switch" msgstr "" -#: config/i386/i386.c:1885 +#: config/i386/i386.c:1884 #, gcc-internal-format msgid "-malign-double makes no sense in the 64bit mode" msgstr "" -#: config/i386/i386.c:1887 +#: config/i386/i386.c:1886 #, gcc-internal-format msgid "-mrtd calling convention not supported in the 64bit mode" msgstr "" -#: config/i386/i386.c:1913 +#: config/i386/i386.c:1912 #, gcc-internal-format msgid "-mpreferred-stack-boundary=%d is not between %d and 12" msgstr "" -#: config/i386/i386.c:1922 +#: config/i386/i386.c:1921 #, gcc-internal-format msgid "-msseregparm used without SSE enabled" msgstr "" -#: config/i386/i386.c:1934 config/i386/i386.c:1945 +#: config/i386/i386.c:1933 config/i386/i386.c:1944 #, gcc-internal-format msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "" -#: config/i386/i386.c:1950 +#: config/i386/i386.c:1949 #, gcc-internal-format msgid "387 instruction set disabled, using SSE arithmetics" msgstr "" -#: config/i386/i386.c:1957 +#: config/i386/i386.c:1956 #, gcc-internal-format msgid "bad value (%s) for -mfpmath= switch" msgstr "" -#: config/i386/i386.c:1979 +#: config/i386/i386.c:1978 #, gcc-internal-format msgid "unwind tables currently require either a frame pointer or -maccumulate-outgoing-args for correctness" msgstr "" -#: config/i386/i386.c:2350 config/i386/i386.c:2401 +#: config/i386/i386.c:2349 config/i386/i386.c:2400 #, gcc-internal-format msgid "fastcall and regparm attributes are not compatible" msgstr "" -#: config/i386/i386.c:2357 +#: config/i386/i386.c:2356 #, gcc-internal-format msgid "%qs attribute requires an integer constant argument" msgstr "" -#: config/i386/i386.c:2363 +#: config/i386/i386.c:2362 #, fuzzy, gcc-internal-format msgid "argument to %qs attribute larger than %d" msgstr "памер \"%s\" больш чам %d байт" -#: config/i386/i386.c:2373 +#: config/i386/i386.c:2372 #, gcc-internal-format msgid "%s functions limited to %d register parameters" msgstr "" -#: config/i386/i386.c:2393 config/i386/i386.c:2428 +#: config/i386/i386.c:2392 config/i386/i386.c:2427 #, gcc-internal-format msgid "fastcall and cdecl attributes are not compatible" msgstr "" -#: config/i386/i386.c:2397 +#: config/i386/i386.c:2396 #, gcc-internal-format msgid "fastcall and stdcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:2411 config/i386/i386.c:2424 +#: config/i386/i386.c:2410 config/i386/i386.c:2423 #, gcc-internal-format msgid "stdcall and cdecl attributes are not compatible" msgstr "" -#: config/i386/i386.c:2415 +#: config/i386/i386.c:2414 #, gcc-internal-format msgid "stdcall and fastcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:2562 +#: config/i386/i386.c:2561 #, gcc-internal-format msgid "Calling %qD with attribute sseregparm without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.c:2565 +#: config/i386/i386.c:2564 #, gcc-internal-format msgid "Calling %qT with attribute sseregparm without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.c:3323 +#: config/i386/i386.c:3322 #, gcc-internal-format msgid "SSE register return with SSE disabled" msgstr "" -#: config/i386/i386.c:3329 +#: config/i386/i386.c:3328 #, gcc-internal-format msgid "SSE register argument with SSE disabled" msgstr "" -#: config/i386/i386.c:3345 +#: config/i386/i386.c:3344 #, gcc-internal-format msgid "x87 register return with x87 disabled" msgstr "" -#: config/i386/i386.c:3661 +#: config/i386/i386.c:3660 #, gcc-internal-format msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:3678 +#: config/i386/i386.c:3677 #, gcc-internal-format msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:3962 +#: config/i386/i386.c:3961 #, gcc-internal-format msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:3972 +#: config/i386/i386.c:3971 #, gcc-internal-format msgid "MMX vector return without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:5327 +#: config/i386/i386.c:5326 #, gcc-internal-format msgid "-mstackrealign ignored for nested functions" msgstr "" -#: config/i386/i386.c:5329 +#: config/i386/i386.c:5328 #, fuzzy, gcc-internal-format msgid "%s not supported for nested functions" msgstr "-pipe не падтрымліваецца" -#: config/i386/i386.c:7552 +#: config/i386/i386.c:7551 #, gcc-internal-format msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:7567 +#: config/i386/i386.c:7566 #, gcc-internal-format msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:15882 config/rs6000/rs6000.c:7318 +#: config/i386/i386.c:15889 config/rs6000/rs6000.c:7352 #, gcc-internal-format msgid "selector must be an integer constant in the range 0..%wi" msgstr "" -#: config/i386/i386.c:16237 config/i386/i386.c:16321 +#: config/i386/i386.c:16244 config/i386/i386.c:16328 #, gcc-internal-format msgid "shift must be an immediate" msgstr "" -#: config/i386/i386.c:17551 config/rs6000/rs6000.c:17713 +#: config/i386/i386.c:17559 config/rs6000/rs6000.c:17748 #, fuzzy, gcc-internal-format msgid "%qs incompatible attribute ignored" msgstr "\"%s\" атрыбут ігнарыруецца" -#: config/i386/winnt-cxx.c:74 +#: config/i386/winnt-cxx.c:73 #, gcc-internal-format msgid "key method %q+D of dllimport'd class defined" msgstr "" -#: config/i386/winnt-cxx.c:95 config/sh/symbian.c:173 +#: config/i386/winnt-cxx.c:94 config/sh/symbian.c:172 #, gcc-internal-format msgid "definition of static data member %q+D of dllimport'd class" msgstr "" -#: config/i386/winnt.c:74 +#: config/i386/winnt.c:73 #, fuzzy, gcc-internal-format msgid "%qs attribute only applies to variables" msgstr "\"%s\" атрыбут ігнарыруецца" -#: config/i386/winnt.c:96 +#: config/i386/winnt.c:95 #, gcc-internal-format msgid "%qs attribute applies only to initialized variables with external linkage" msgstr "" -#: config/i386/winnt.c:153 +#: config/i386/winnt.c:152 #, gcc-internal-format msgid "%q+D: definition is marked as dllimport" msgstr "" -#: config/i386/winnt.c:217 +#: config/i386/winnt.c:216 #, gcc-internal-format msgid "inconsistent dll linkage for %q+D, dllexport assumed" msgstr "" -#: config/i386/winnt.c:257 config/sh/symbian.c:273 +#: config/i386/winnt.c:256 config/sh/symbian.c:272 #, gcc-internal-format msgid "%qs declared as both exported to and imported from a DLL" msgstr "" -#: config/i386/winnt.c:380 +#: config/i386/winnt.c:379 #, gcc-internal-format msgid "%q+D:'selectany' attribute applies only to initialized objects" msgstr "" -#: config/i386/winnt.c:568 +#: config/i386/winnt.c:567 #, gcc-internal-format msgid "%q+D causes a section type conflict" msgstr "" -#: config/i386/cygming.h:127 +#: config/i386/cygming.h:126 #, gcc-internal-format msgid "-f%s ignored for target (all code is position independent)" msgstr "" -#: config/i386/djgpp.h:181 +#: config/i386/djgpp.h:180 #, gcc-internal-format msgid "-mbnu210 is ignored (option is obsolete)" msgstr "" -#: config/i386/i386-interix.h:257 +#: config/i386/i386-interix.h:256 #, fuzzy, gcc-internal-format msgid "ms-bitfields not supported for objc" msgstr "-pipe не падтрымліваецца" -#: config/ia64/ia64-c.c:52 +#: config/ia64/ia64-c.c:51 #, gcc-internal-format msgid "malformed #pragma builtin" msgstr "" -#: config/ia64/ia64.c:533 config/m32r/m32r.c:373 +#: config/ia64/ia64.c:532 config/m32r/m32r.c:372 #, fuzzy, gcc-internal-format msgid "invalid argument of %qs attribute" msgstr "нявернае выкарыстанне \"restict\"" -#: config/ia64/ia64.c:545 +#: config/ia64/ia64.c:544 #, gcc-internal-format msgid "%Jan address area attribute cannot be specified for local variables" msgstr "" -#: config/ia64/ia64.c:552 +#: config/ia64/ia64.c:551 #, fuzzy, gcc-internal-format msgid "address area of %q+D conflicts with previous declaration" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: config/ia64/ia64.c:559 +#: config/ia64/ia64.c:558 #, fuzzy, gcc-internal-format msgid "%Jaddress area attribute cannot be specified for functions" msgstr "\"%s\" звычайна функцыя" -#: config/ia64/ia64.c:5084 config/pa/pa.c:339 +#: config/ia64/ia64.c:5083 config/pa/pa.c:338 #, gcc-internal-format msgid "value of -mfixed-range must have form REG1-REG2" msgstr "" -#: config/ia64/ia64.c:5111 config/pa/pa.c:366 +#: config/ia64/ia64.c:5110 config/pa/pa.c:365 #, gcc-internal-format msgid "%s-%s is an empty range" msgstr "" -#: config/ia64/ia64.c:5139 +#: config/ia64/ia64.c:5138 #, gcc-internal-format msgid "bad value %<%s%> for -mtls-size= switch" msgstr "" -#: config/ia64/ia64.c:5167 +#: config/ia64/ia64.c:5166 #, gcc-internal-format msgid "bad value %<%s%> for -mtune= switch" msgstr "" -#: config/ia64/ia64.c:5186 +#: config/ia64/ia64.c:5185 #, gcc-internal-format msgid "not yet implemented: latency-optimized inline square root" msgstr "" -#: config/iq2000/iq2000.c:1814 +#: config/iq2000/iq2000.c:1813 #, gcc-internal-format msgid "gp_offset (%ld) or end_offset (%ld) is less than zero" msgstr "" -#: config/iq2000/iq2000.c:2593 +#: config/iq2000/iq2000.c:2592 #, fuzzy, gcc-internal-format msgid "argument %qd is not a constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: config/iq2000/iq2000.c:2896 config/mt/mt.c:350 config/xtensa/xtensa.c:1789 +#: config/iq2000/iq2000.c:2895 config/mt/mt.c:349 config/xtensa/xtensa.c:1793 #, gcc-internal-format msgid "PRINT_OPERAND_ADDRESS, null pointer" msgstr "" -#: config/iq2000/iq2000.c:3051 +#: config/iq2000/iq2000.c:3050 #, gcc-internal-format msgid "PRINT_OPERAND: Unknown punctuation '%c'" msgstr "" -#: config/iq2000/iq2000.c:3060 config/mips/mips.c:5501 -#: config/xtensa/xtensa.c:1643 +#: config/iq2000/iq2000.c:3059 config/mips/mips.c:5523 +#: config/xtensa/xtensa.c:1647 #, gcc-internal-format msgid "PRINT_OPERAND null pointer" msgstr "" -#: config/m32c/m32c-pragma.c:64 +#: config/m32c/m32c-pragma.c:63 #, gcc-internal-format msgid "junk at end of #pragma GCC memregs [0..16]" msgstr "" -#: config/m32c/m32c-pragma.c:71 +#: config/m32c/m32c-pragma.c:70 #, gcc-internal-format msgid "#pragma GCC memregs must precede any function decls" msgstr "" -#: config/m32c/m32c-pragma.c:82 config/m32c/m32c-pragma.c:89 +#: config/m32c/m32c-pragma.c:81 config/m32c/m32c-pragma.c:88 #, gcc-internal-format msgid "#pragma GCC memregs takes a number [0..16]" msgstr "" -#: config/m32c/m32c.c:412 +#: config/m32c/m32c.c:410 #, fuzzy, gcc-internal-format msgid "invalid target memregs value '%d'" msgstr "нерэчаісны тып парамэтра `%T'" -#: config/m68hc11/m68hc11.c:279 +#: config/m68hc11/m68hc11.c:278 #, gcc-internal-format msgid "-f%s ignored for 68HC11/68HC12 (not supported)" msgstr "" -#: config/m68hc11/m68hc11.c:1240 +#: config/m68hc11/m68hc11.c:1239 #, gcc-internal-format msgid "% and % attributes are not compatible, ignoring %" msgstr "" -#: config/m68hc11/m68hc11.c:1247 +#: config/m68hc11/m68hc11.c:1246 #, gcc-internal-format msgid "% attribute is already used" msgstr "" -#: config/m68k/m68k.c:326 +#: config/m68k/m68k.c:325 #, gcc-internal-format msgid "cannot specify both -msep-data and -mid-shared-library" msgstr "" -#: config/m68k/m68k.c:338 +#: config/m68k/m68k.c:337 #, gcc-internal-format msgid "-fPIC is not currently supported on the 68000 or 68010" msgstr "" -#: config/m68k/m68k.c:680 config/rs6000/rs6000.c:13921 +#: config/m68k/m68k.c:679 config/rs6000/rs6000.c:13956 #, gcc-internal-format msgid "stack limit expression is not supported" msgstr "" -#: config/mips/mips.c:4708 +#: config/mips/mips.c:4730 #, gcc-internal-format msgid "-%s conflicts with the other architecture options, which specify a %s processor" msgstr "" -#: config/mips/mips.c:4724 +#: config/mips/mips.c:4746 #, gcc-internal-format msgid "-march=%s is not compatible with the selected ABI" msgstr "" -#: config/mips/mips.c:4742 +#: config/mips/mips.c:4764 #, gcc-internal-format msgid "-mgp64 used with a 32-bit processor" msgstr "" -#: config/mips/mips.c:4744 +#: config/mips/mips.c:4766 #, gcc-internal-format msgid "-mgp32 used with a 64-bit ABI" msgstr "" -#: config/mips/mips.c:4746 +#: config/mips/mips.c:4768 #, gcc-internal-format msgid "-mgp64 used with a 32-bit ABI" msgstr "" -#: config/mips/mips.c:4764 config/mips/mips.c:4766 config/mips/mips.c:4768 -#: config/mips/mips.c:4844 +#: config/mips/mips.c:4786 config/mips/mips.c:4788 config/mips/mips.c:4790 +#: config/mips/mips.c:4866 #, fuzzy, gcc-internal-format msgid "unsupported combination: %s" msgstr "непадтрымліваемая версія" -#: config/mips/mips.c:4839 +#: config/mips/mips.c:4861 #, gcc-internal-format msgid "generation of Branch Likely instructions enabled, but not supported by architecture" msgstr "" -#: config/mips/mips.c:4859 +#: config/mips/mips.c:4881 #, gcc-internal-format msgid "%<-G%> is incompatible with %<-mabicalls%>" msgstr "" -#: config/mips/mips.c:4926 +#: config/mips/mips.c:4948 #, gcc-internal-format msgid "-mips3d requires -mpaired-single" msgstr "" -#: config/mips/mips.c:4935 +#: config/mips/mips.c:4957 #, gcc-internal-format msgid "-mips3d/-mpaired-single must be used with -mfp64 -mhard-float" msgstr "" -#: config/mips/mips.c:4940 +#: config/mips/mips.c:4962 #, gcc-internal-format msgid "-mips3d/-mpaired-single must be used with -mips64" msgstr "" -#: config/mips/mips.c:4943 +#: config/mips/mips.c:4965 #, gcc-internal-format msgid "-mips16 and -mdsp cannot be used together" msgstr "" -#: config/mips/mips.c:5438 +#: config/mips/mips.c:5460 #, gcc-internal-format msgid "internal error: %%) found without a %%( in assembler pattern" msgstr "" -#: config/mips/mips.c:5452 +#: config/mips/mips.c:5474 #, gcc-internal-format msgid "internal error: %%] found without a %%[ in assembler pattern" msgstr "" -#: config/mips/mips.c:5465 +#: config/mips/mips.c:5487 #, gcc-internal-format msgid "internal error: %%> found without a %%< in assembler pattern" msgstr "" -#: config/mips/mips.c:5478 +#: config/mips/mips.c:5500 #, gcc-internal-format msgid "internal error: %%} found without a %%{ in assembler pattern" msgstr "" -#: config/mips/mips.c:5492 +#: config/mips/mips.c:5514 #, gcc-internal-format msgid "PRINT_OPERAND: unknown punctuation '%c'" msgstr "" -#: config/mips/mips.c:8307 +#: config/mips/mips.c:8330 #, gcc-internal-format msgid "cannot handle inconsistent calls to %qs" msgstr "" -#: config/mips/mips.c:9615 +#: config/mips/mips.c:9638 #, gcc-internal-format msgid "the cpu name must be lower case" msgstr "" -#: config/mips/mips.c:10293 +#: config/mips/mips.c:10316 #, fuzzy, gcc-internal-format msgid "invalid argument to builtin function" msgstr "вельмі шмат аргументаў у функцыі" #. Output assembler code to FILE to increment profiler label # LABELNO #. for profiling a function entry. -#: config/mips/mips.h:1989 +#: config/mips/mips.h:1988 #, gcc-internal-format msgid "mips16 function profiling" msgstr "" -#: config/mmix/mmix.c:227 +#: config/mmix/mmix.c:226 #, fuzzy, gcc-internal-format msgid "-f%s not supported: ignored" msgstr "-pipe не падтрымліваецца" -#: config/mmix/mmix.c:655 +#: config/mmix/mmix.c:654 #, fuzzy, gcc-internal-format msgid "support for mode %qs" msgstr "няма тыпа дадзеных для рэжыма \"%s\"" -#: config/mmix/mmix.c:669 +#: config/mmix/mmix.c:668 #, gcc-internal-format msgid "too large function value type, needs %d registers, have only %d registers for this" msgstr "" -#: config/mmix/mmix.c:839 +#: config/mmix/mmix.c:838 #, gcc-internal-format msgid "function_profiler support for MMIX" msgstr "" -#: config/mmix/mmix.c:861 +#: config/mmix/mmix.c:860 #, gcc-internal-format msgid "MMIX Internal: Last named vararg would not fit in a register" msgstr "" -#: config/mmix/mmix.c:1476 config/mmix/mmix.c:1500 config/mmix/mmix.c:1616 +#: config/mmix/mmix.c:1475 config/mmix/mmix.c:1499 config/mmix/mmix.c:1615 #, gcc-internal-format msgid "MMIX Internal: Bad register: %d" msgstr "" #. Presumably there's a missing case above if we get here. -#: config/mmix/mmix.c:1608 +#: config/mmix/mmix.c:1607 #, gcc-internal-format msgid "MMIX Internal: Missing %qc case in mmix_print_operand" msgstr "" -#: config/mmix/mmix.c:1894 +#: config/mmix/mmix.c:1893 #, gcc-internal-format msgid "stack frame not a multiple of 8 bytes: %wd" msgstr "" -#: config/mmix/mmix.c:2130 +#: config/mmix/mmix.c:2129 #, gcc-internal-format msgid "stack frame not a multiple of octabyte: %wd" msgstr "" -#: config/mmix/mmix.c:2470 config/mmix/mmix.c:2534 +#: config/mmix/mmix.c:2469 config/mmix/mmix.c:2533 #, gcc-internal-format msgid "MMIX Internal: %s is not a shiftable int" msgstr "" -#: config/mt/mt.c:313 +#: config/mt/mt.c:312 #, gcc-internal-format msgid "info pointer NULL" msgstr "" -#: config/pa/pa.c:471 +#: config/pa/pa.c:470 #, gcc-internal-format msgid "PIC code generation is not supported in the portable runtime model" msgstr "" -#: config/pa/pa.c:476 +#: config/pa/pa.c:475 #, gcc-internal-format msgid "PIC code generation is not compatible with fast indirect calls" msgstr "" -#: config/pa/pa.c:481 +#: config/pa/pa.c:480 #, gcc-internal-format msgid "-g is only supported when using GAS on this processor," msgstr "" -#: config/pa/pa.c:482 +#: config/pa/pa.c:481 #, gcc-internal-format msgid "-g option disabled" msgstr "" -#: config/pa/pa.c:8225 +#: config/pa/pa.c:8233 #, gcc-internal-format msgid "alignment (%u) for %s exceeds maximum alignment for global common data. Using %u" msgstr "" -#: config/pa/pa-hpux11.h:85 +#: config/pa/pa-hpux11.h:84 #, gcc-internal-format msgid "-munix=98 option required for C89 Amendment 1 features.\n" msgstr "" -#: config/rs6000/host-darwin.c:62 +#: config/rs6000/host-darwin.c:61 #, gcc-internal-format msgid "Segmentation Fault (code)" msgstr "" -#: config/rs6000/host-darwin.c:132 +#: config/rs6000/host-darwin.c:131 #, gcc-internal-format msgid "Segmentation Fault" msgstr "" -#: config/rs6000/host-darwin.c:146 +#: config/rs6000/host-darwin.c:145 #, gcc-internal-format msgid "While setting up signal stack: %m" msgstr "" -#: config/rs6000/host-darwin.c:152 +#: config/rs6000/host-darwin.c:151 #, gcc-internal-format msgid "While setting up signal handler: %m" msgstr "" @@ -23632,273 +23637,273 @@ #. rs6000_default_long_calls is set to the value of TOGGLE, changing #. whether or not new function declarations receive a longcall #. attribute by default. -#: config/rs6000/rs6000-c.c:53 +#: config/rs6000/rs6000-c.c:51 #, gcc-internal-format msgid "ignoring malformed #pragma longcall" msgstr "" -#: config/rs6000/rs6000-c.c:66 +#: config/rs6000/rs6000-c.c:64 #, fuzzy, gcc-internal-format msgid "missing open paren" msgstr "Прапушчана назва" -#: config/rs6000/rs6000-c.c:68 +#: config/rs6000/rs6000-c.c:66 #, fuzzy, gcc-internal-format msgid "missing number" msgstr "Прапушчана назва" -#: config/rs6000/rs6000-c.c:70 +#: config/rs6000/rs6000-c.c:68 #, fuzzy, gcc-internal-format msgid "missing close paren" msgstr "Прапушчана назва класа" -#: config/rs6000/rs6000-c.c:73 +#: config/rs6000/rs6000-c.c:71 #, gcc-internal-format msgid "number must be 0 or 1" msgstr "" -#: config/rs6000/rs6000-c.c:76 +#: config/rs6000/rs6000-c.c:74 #, gcc-internal-format msgid "junk at end of #pragma longcall" msgstr "" -#: config/rs6000/rs6000-c.c:2533 +#: config/rs6000/rs6000-c.c:2531 #, gcc-internal-format msgid "passing arg %d of %qE discards qualifiers frompointer target type" msgstr "" -#: config/rs6000/rs6000-c.c:2576 +#: config/rs6000/rs6000-c.c:2574 #, fuzzy, gcc-internal-format msgid "invalid parameter combination for AltiVec intrinsic" msgstr "нявернае выкарыстанне \"restict\"" -#: config/rs6000/rs6000.c:1293 +#: config/rs6000/rs6000.c:1296 #, gcc-internal-format msgid "-mmultiple is not supported on little endian systems" msgstr "" -#: config/rs6000/rs6000.c:1300 +#: config/rs6000/rs6000.c:1303 #, gcc-internal-format msgid "-mstring is not supported on little endian systems" msgstr "" -#: config/rs6000/rs6000.c:1314 +#: config/rs6000/rs6000.c:1317 #, gcc-internal-format msgid "unknown -mdebug-%s switch" msgstr "" -#: config/rs6000/rs6000.c:1326 +#: config/rs6000/rs6000.c:1329 #, gcc-internal-format msgid "unknown -mtraceback arg %qs; expecting %, % or %" msgstr "" -#: config/rs6000/rs6000.c:1377 +#: config/rs6000/rs6000.c:1380 #, gcc-internal-format msgid "AltiVec and E500 instructions cannot coexist" msgstr "" -#: config/rs6000/rs6000.c:1602 +#: config/rs6000/rs6000.c:1636 #, fuzzy, gcc-internal-format msgid "unknown -m%s= option specified: '%s'" msgstr "невядомы рэжым машыны \"%s\"" -#: config/rs6000/rs6000.c:1818 +#: config/rs6000/rs6000.c:1852 #, gcc-internal-format msgid "not configured for ABI: '%s'" msgstr "" -#: config/rs6000/rs6000.c:1831 +#: config/rs6000/rs6000.c:1865 #, gcc-internal-format msgid "Using darwin64 ABI" msgstr "" -#: config/rs6000/rs6000.c:1836 +#: config/rs6000/rs6000.c:1870 #, gcc-internal-format msgid "Using old darwin ABI" msgstr "" -#: config/rs6000/rs6000.c:1843 +#: config/rs6000/rs6000.c:1877 #, gcc-internal-format msgid "Using IBM extended precision long double" msgstr "" -#: config/rs6000/rs6000.c:1849 +#: config/rs6000/rs6000.c:1883 #, gcc-internal-format msgid "Using IEEE extended precision long double" msgstr "" -#: config/rs6000/rs6000.c:1854 +#: config/rs6000/rs6000.c:1888 #, fuzzy, gcc-internal-format msgid "unknown ABI specified: '%s'" msgstr "невядомы рэжым машыны \"%s\"" -#: config/rs6000/rs6000.c:1881 +#: config/rs6000/rs6000.c:1915 #, fuzzy, gcc-internal-format msgid "invalid option for -mfloat-gprs: '%s'" msgstr "Нерэчаісны выбар \"%s\"" -#: config/rs6000/rs6000.c:1891 +#: config/rs6000/rs6000.c:1925 #, gcc-internal-format msgid "Unknown switch -mlong-double-%s" msgstr "" -#: config/rs6000/rs6000.c:1912 +#: config/rs6000/rs6000.c:1946 #, gcc-internal-format msgid "-malign-power is not supported for 64-bit Darwin; it is incompatible with the installed C and C++ libraries" msgstr "" -#: config/rs6000/rs6000.c:1920 +#: config/rs6000/rs6000.c:1954 #, fuzzy, gcc-internal-format msgid "unknown -malign-XXXXX option specified: '%s'" msgstr "невядомы рэжым машыны \"%s\"" -#: config/rs6000/rs6000.c:4352 +#: config/rs6000/rs6000.c:4386 #, gcc-internal-format msgid "GCC vector returned by reference: non-standard ABI extension with no compatibility guarantee" msgstr "" -#: config/rs6000/rs6000.c:4425 +#: config/rs6000/rs6000.c:4459 #, gcc-internal-format msgid "cannot return value in vector register because altivec instructions are disabled, use -maltivec to enable them" msgstr "" -#: config/rs6000/rs6000.c:4683 +#: config/rs6000/rs6000.c:4717 #, gcc-internal-format msgid "cannot pass argument in vector register because altivec instructions are disabled, use -maltivec to enable them" msgstr "" -#: config/rs6000/rs6000.c:5540 +#: config/rs6000/rs6000.c:5574 #, gcc-internal-format msgid "GCC vector passed by reference: non-standard ABI extension with no compatibility guarantee" msgstr "" -#: config/rs6000/rs6000.c:6732 +#: config/rs6000/rs6000.c:6766 #, fuzzy, gcc-internal-format msgid "argument 1 must be a 5-bit signed literal" msgstr "першым аргументам \"%s\" павінен быць \"int\"" -#: config/rs6000/rs6000.c:6835 config/rs6000/rs6000.c:7629 +#: config/rs6000/rs6000.c:6869 config/rs6000/rs6000.c:7663 #, fuzzy, gcc-internal-format msgid "argument 2 must be a 5-bit unsigned literal" msgstr "першым аргументам \"%s\" павінен быць \"int\"" -#: config/rs6000/rs6000.c:6875 +#: config/rs6000/rs6000.c:6909 #, fuzzy, gcc-internal-format msgid "argument 1 of __builtin_altivec_predicate must be a constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: config/rs6000/rs6000.c:6928 +#: config/rs6000/rs6000.c:6962 #, fuzzy, gcc-internal-format msgid "argument 1 of __builtin_altivec_predicate is out of range" msgstr "аргумент `__builtin_args_info' выйшаў за межы" -#: config/rs6000/rs6000.c:7090 +#: config/rs6000/rs6000.c:7124 #, fuzzy, gcc-internal-format msgid "argument 3 must be a 4-bit unsigned literal" msgstr "першым аргументам \"%s\" павінен быць \"int\"" -#: config/rs6000/rs6000.c:7262 +#: config/rs6000/rs6000.c:7296 #, fuzzy, gcc-internal-format msgid "argument to %qs must be a 2-bit unsigned literal" msgstr "першым аргументам \"%s\" павінен быць \"int\"" -#: config/rs6000/rs6000.c:7406 +#: config/rs6000/rs6000.c:7440 #, gcc-internal-format msgid "unresolved overload for Altivec builtin %qF" msgstr "" -#: config/rs6000/rs6000.c:7488 +#: config/rs6000/rs6000.c:7522 #, fuzzy, gcc-internal-format msgid "argument to dss must be a 2-bit unsigned literal" msgstr "першым аргументам \"%s\" павінен быць \"int\"" -#: config/rs6000/rs6000.c:7749 +#: config/rs6000/rs6000.c:7783 #, fuzzy, gcc-internal-format msgid "argument 1 of __builtin_spe_predicate must be a constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: config/rs6000/rs6000.c:7821 +#: config/rs6000/rs6000.c:7855 #, fuzzy, gcc-internal-format msgid "argument 1 of __builtin_spe_predicate is out of range" msgstr "аргумент `__builtin_args_info' выйшаў за межы" -#: config/rs6000/rs6000.c:13884 +#: config/rs6000/rs6000.c:13919 #, fuzzy, gcc-internal-format msgid "stack frame too large" msgstr "%s - вельмі вялікі" -#: config/rs6000/rs6000.c:16413 +#: config/rs6000/rs6000.c:16448 #, gcc-internal-format msgid "no profiling of 64-bit code for this ABI" msgstr "" -#: config/rs6000/rs6000.c:17523 +#: config/rs6000/rs6000.c:17558 #, gcc-internal-format msgid "use of % in AltiVec types is invalid for 64-bit code" msgstr "" -#: config/rs6000/rs6000.c:17525 +#: config/rs6000/rs6000.c:17560 #, gcc-internal-format msgid "use of % in AltiVec types is deprecated; use %" msgstr "" -#: config/rs6000/rs6000.c:17529 +#: config/rs6000/rs6000.c:17564 #, gcc-internal-format msgid "use of % in AltiVec types is invalid" msgstr "" -#: config/rs6000/rs6000.c:17531 +#: config/rs6000/rs6000.c:17566 #, gcc-internal-format msgid "use of % in AltiVec types is invalid" msgstr "" -#: config/rs6000/rs6000.c:17533 +#: config/rs6000/rs6000.c:17568 #, gcc-internal-format msgid "use of % in AltiVec types is invalid" msgstr "" -#: config/rs6000/rs6000.c:17535 +#: config/rs6000/rs6000.c:17570 #, gcc-internal-format msgid "use of boolean types in AltiVec types is invalid" msgstr "" -#: config/rs6000/rs6000.c:17537 +#: config/rs6000/rs6000.c:17572 #, gcc-internal-format msgid "use of % in AltiVec types is invalid" msgstr "" -#: config/rs6000/rs6000.c:17539 +#: config/rs6000/rs6000.c:17574 #, gcc-internal-format msgid "use of decimal floating point types in AltiVec types is invalid" msgstr "" -#: config/rs6000/aix43.h:39 config/rs6000/aix51.h:38 config/rs6000/aix52.h:38 +#: config/rs6000/aix43.h:38 config/rs6000/aix51.h:37 config/rs6000/aix52.h:38 #, gcc-internal-format msgid "-maix64 and POWER architecture are incompatible" msgstr "" -#: config/rs6000/aix43.h:44 config/rs6000/aix51.h:43 config/rs6000/aix52.h:43 +#: config/rs6000/aix43.h:43 config/rs6000/aix51.h:42 config/rs6000/aix52.h:43 #, gcc-internal-format msgid "-maix64 requires PowerPC64 architecture remain enabled" msgstr "" -#: config/rs6000/aix43.h:50 config/rs6000/aix52.h:49 +#: config/rs6000/aix43.h:49 config/rs6000/aix52.h:49 #, gcc-internal-format msgid "soft-float and long-double-128 are incompatible" msgstr "" -#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:47 config/rs6000/aix52.h:53 +#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:46 config/rs6000/aix52.h:53 #, gcc-internal-format msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported" msgstr "" #. The Darwin ABI always includes AltiVec, can't be (validly) turned off. -#: config/rs6000/darwin.h:81 +#: config/rs6000/darwin.h:80 #, gcc-internal-format msgid "-mdynamic-no-pic overrides -fpic or -fPIC" msgstr "" -#: config/rs6000/darwin.h:92 +#: config/rs6000/darwin.h:91 #, gcc-internal-format msgid "-m64 requires PowerPC64 architecture, enabling" msgstr "" @@ -23906,12 +23911,12 @@ #. See note below. #. if (!rs6000_explicit_options.long_double) #. rs6000_long_double_type_size = 128; -#: config/rs6000/eabispe.h:46 config/rs6000/linuxspe.h:62 +#: config/rs6000/eabispe.h:46 config/rs6000/linuxspe.h:61 #, fuzzy, gcc-internal-format msgid "-m64 not supported in this configuration" msgstr "-pipe не падтрымліваецца" -#: config/rs6000/linux64.h:109 +#: config/rs6000/linux64.h:108 #, gcc-internal-format msgid "-m64 requires a PowerPC64 cpu" msgstr "" @@ -23928,7 +23933,7 @@ #. 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:1509 +#: config/rs6000/rs6000.h:1508 #, gcc-internal-format msgid "RETURN_ADDRESS_OFFSET not supported" msgstr "" @@ -23941,200 +23946,200 @@ #. #. The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to #. get control. -#: config/rs6000/sysv4.h:130 +#: config/rs6000/sysv4.h:129 #, gcc-internal-format msgid "bad value for -mcall-%s" msgstr "" -#: config/rs6000/sysv4.h:146 +#: config/rs6000/sysv4.h:145 #, gcc-internal-format msgid "bad value for -msdata=%s" msgstr "" -#: config/rs6000/sysv4.h:163 +#: config/rs6000/sysv4.h:162 #, gcc-internal-format msgid "-mrelocatable and -msdata=%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:172 +#: config/rs6000/sysv4.h:171 #, gcc-internal-format msgid "-f%s and -msdata=%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:181 +#: config/rs6000/sysv4.h:180 #, gcc-internal-format msgid "-msdata=%s and -mcall-%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:190 +#: config/rs6000/sysv4.h:189 #, gcc-internal-format msgid "-mrelocatable and -mno-minimal-toc are incompatible" msgstr "" -#: config/rs6000/sysv4.h:196 +#: config/rs6000/sysv4.h:195 #, gcc-internal-format msgid "-mrelocatable and -mcall-%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:203 +#: config/rs6000/sysv4.h:202 #, gcc-internal-format msgid "-fPIC and -mcall-%s are incompatible" msgstr "" -#: config/rs6000/sysv4.h:210 +#: config/rs6000/sysv4.h:209 #, gcc-internal-format msgid "-mcall-aixdesc must be big endian" msgstr "" -#: config/rs6000/sysv4.h:215 +#: config/rs6000/sysv4.h:214 #, gcc-internal-format msgid "-msecure-plt not supported by your assembler" msgstr "" -#: config/rs6000/sysv4.h:233 +#: config/rs6000/sysv4.h:232 #, fuzzy, gcc-internal-format msgid "-m%s not supported in this configuration" msgstr "-pipe не падтрымліваецца" -#: config/s390/s390.c:1370 +#: config/s390/s390.c:1369 #, gcc-internal-format msgid "stack guard value must be an exact power of 2" msgstr "" -#: config/s390/s390.c:1377 +#: config/s390/s390.c:1376 #, gcc-internal-format msgid "stack size must be an exact power of 2" msgstr "" -#: config/s390/s390.c:1422 +#: config/s390/s390.c:1421 #, fuzzy, gcc-internal-format msgid "z/Architecture mode not supported on %s" msgstr "-pipe не падтрымліваецца" -#: config/s390/s390.c:1424 +#: config/s390/s390.c:1423 #, gcc-internal-format msgid "64-bit ABI not supported in ESA/390 mode" msgstr "" -#: config/s390/s390.c:1435 +#: config/s390/s390.c:1434 #, gcc-internal-format msgid "-mbackchain -mpacked-stack -mhard-float are not supported in combination" msgstr "" -#: config/s390/s390.c:1441 +#: config/s390/s390.c:1440 #, gcc-internal-format msgid "-mstack-size implies use of -mstack-guard" msgstr "" -#: config/s390/s390.c:1443 +#: config/s390/s390.c:1442 #, gcc-internal-format msgid "stack size must be greater than the stack guard value" msgstr "" -#: config/s390/s390.c:1445 +#: config/s390/s390.c:1444 #, gcc-internal-format msgid "stack size must not be greater than 64k" msgstr "" -#: config/s390/s390.c:1448 +#: config/s390/s390.c:1447 #, gcc-internal-format msgid "-mstack-guard implies use of -mstack-size" msgstr "" -#: config/s390/s390.c:6613 +#: config/s390/s390.c:6612 #, gcc-internal-format msgid "total size of local variables exceeds architecture limit" msgstr "" -#: config/s390/s390.c:7269 +#: config/s390/s390.c:7268 #, fuzzy, gcc-internal-format msgid "frame size of %qs is " msgstr "памер \"%s\" - %d байт" -#: config/s390/s390.c:7269 +#: config/s390/s390.c:7268 #, gcc-internal-format msgid " bytes" msgstr "" -#: config/s390/s390.c:7273 +#: config/s390/s390.c:7272 #, gcc-internal-format msgid "%qs uses dynamic stack allocation" msgstr "" -#: config/score/score.c:514 +#: config/score/score.c:513 #, gcc-internal-format msgid "-fPIC and -G are incompatible" msgstr "" -#: config/sh/sh.c:6624 +#: config/sh/sh.c:6632 #, fuzzy, gcc-internal-format msgid "__builtin_saveregs not supported by this subtarget" msgstr "__buitin_saveregs не падтрымліваецца гэтай мэтай" -#: config/sh/sh.c:7629 +#: config/sh/sh.c:7637 #, fuzzy, gcc-internal-format msgid "%qs attribute only applies to interrupt functions" msgstr "\"%s\" звычайна функцыя" -#: config/sh/sh.c:7715 +#: config/sh/sh.c:7723 #, gcc-internal-format msgid "attribute interrupt_handler is not compatible with -m5-compact" msgstr "" #. The argument must be a constant string. -#: config/sh/sh.c:7737 +#: config/sh/sh.c:7745 #, fuzzy, gcc-internal-format msgid "%qs attribute argument not a string constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" #. The argument must be a constant integer. -#: config/sh/sh.c:7762 +#: config/sh/sh.c:7770 #, fuzzy, gcc-internal-format msgid "%qs attribute argument not an integer constant" msgstr "аргумент `__builtin_args_info' павінен быць канстантай" -#: config/sh/sh.c:9814 +#: config/sh/sh.c:9822 #, gcc-internal-format msgid "r0 needs to be available as a call-clobbered register" msgstr "" -#: config/sh/sh.c:9835 +#: config/sh/sh.c:9843 #, gcc-internal-format msgid "Need a second call-clobbered general purpose register" msgstr "" -#: config/sh/sh.c:9843 +#: config/sh/sh.c:9851 #, gcc-internal-format msgid "Need a call-clobbered target register" msgstr "" -#: config/sh/symbian.c:147 +#: config/sh/symbian.c:146 #, gcc-internal-format msgid "function %q+D is defined after prior declaration as dllimport: attribute ignored" msgstr "" -#: config/sh/symbian.c:159 +#: config/sh/symbian.c:158 #, gcc-internal-format msgid "inline function %q+D is declared as dllimport: attribute ignored" msgstr "" -#: config/sh/symbian.c:280 +#: config/sh/symbian.c:279 #, gcc-internal-format msgid "failure in redeclaration of %q+D: dllimport'd symbol lacks external linkage" msgstr "" -#: config/sh/symbian.c:326 +#: config/sh/symbian.c:325 #, gcc-internal-format msgid "%s %q+D %s after being referenced with dllimport linkage" msgstr "" -#: config/sh/symbian.c:892 cp/tree.c:2411 +#: config/sh/symbian.c:891 cp/tree.c:2411 #, gcc-internal-format msgid "lang_* check: failed in %s, at %s:%d" msgstr "" #. FIXME -#: config/sh/netbsd-elf.h:95 +#: config/sh/netbsd-elf.h:94 #, gcc-internal-format msgid "unimplemented-shmedia profiling" msgstr "" @@ -24143,7 +24148,7 @@ #. Relaxation isn't yet supported for SHmedia #. After reload, if conversion does little good but can cause ICEs: - find_if_block doesn't do anything for SH because we don't have conditional execution patterns. (We use conditional move patterns, which are handled differently, and only before reload). - find_cond_trap doesn't do anything for the SH because we #. don't have conditional traps. - find_if_case_1 uses redirect_edge_and_branch_force in the only path that does an optimization, and this causes an ICE when branch targets are in registers. - find_if_case_2 doesn't do anything for the SHmedia after reload except when it can redirect a tablejump - and that's rather rare. #. -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:617 +#: config/sh/sh.h:616 #, fuzzy, gcc-internal-format msgid "profiling is still experimental for this target" msgstr "__buitin_saveregs не падтрымліваецца гэтай мэтай" @@ -24160,202 +24165,202 @@ #. Never run scheduling before reload, since that can break global alloc, and generates slower code anyway due to the pressure on R0. #. Enable sched1 for SH4; ready queue will be reordered by the target hooks when pressure is high. We can not do this for SH3 and lower as they give spill failures for R0. #. ??? Current exception handling places basic block boundaries after call_insns. It causes the high pressure on R0 and gives spill failures for R0 in reload. See PR 22553 and the thread on gcc-patches . -#: config/sh/sh.h:715 +#: config/sh/sh.h:714 #, gcc-internal-format msgid "ignoring -fschedule-insns because of exception handling bug" msgstr "" -#: config/sparc/sparc.c:671 +#: config/sparc/sparc.c:670 #, gcc-internal-format msgid "%s is not supported by this configuration" msgstr "" -#: config/sparc/sparc.c:678 +#: config/sparc/sparc.c:677 #, gcc-internal-format msgid "-mlong-double-64 not allowed with -m64" msgstr "" -#: config/sparc/sparc.c:703 +#: config/sparc/sparc.c:702 #, gcc-internal-format msgid "-mcmodel= is not supported on 32 bit systems" msgstr "" -#: config/stormy16/stormy16.c:500 +#: config/stormy16/stormy16.c:499 #, gcc-internal-format msgid "constant halfword load operand out of range" msgstr "" -#: config/stormy16/stormy16.c:510 +#: config/stormy16/stormy16.c:509 #, gcc-internal-format msgid "constant arithmetic operand out of range" msgstr "" -#: config/stormy16/stormy16.c:1111 +#: config/stormy16/stormy16.c:1110 #, gcc-internal-format msgid "local variable memory requirements exceed capacity" msgstr "" -#: config/stormy16/stormy16.c:1277 +#: config/stormy16/stormy16.c:1276 #, gcc-internal-format msgid "function_profiler support" msgstr "" -#: config/stormy16/stormy16.c:1366 +#: config/stormy16/stormy16.c:1365 #, gcc-internal-format msgid "cannot use va_start in interrupt function" msgstr "" -#: config/stormy16/stormy16.c:1909 +#: config/stormy16/stormy16.c:1908 #, gcc-internal-format msgid "switch statement of size %lu entries too large" msgstr "" -#: config/stormy16/stormy16.c:2277 +#: config/stormy16/stormy16.c:2276 #, fuzzy, gcc-internal-format msgid "%<__BELOW100__%> attribute only applies to variables" msgstr "\"%s\" атрыбут ігнарыруецца" -#: config/stormy16/stormy16.c:2284 +#: config/stormy16/stormy16.c:2283 #, gcc-internal-format msgid "__BELOW100__ attribute not allowed with auto storage class" msgstr "" -#: config/v850/v850-c.c:67 +#: config/v850/v850-c.c:66 #, gcc-internal-format msgid "#pragma GHS endXXXX found without previous startXXX" msgstr "" -#: config/v850/v850-c.c:70 +#: config/v850/v850-c.c:69 #, gcc-internal-format msgid "#pragma GHS endXXX does not match previous startXXX" msgstr "" -#: config/v850/v850-c.c:96 +#: config/v850/v850-c.c:95 #, gcc-internal-format msgid "cannot set interrupt attribute: no current function" msgstr "" -#: config/v850/v850-c.c:104 +#: config/v850/v850-c.c:103 #, gcc-internal-format msgid "cannot set interrupt attribute: no such identifier" msgstr "" -#: config/v850/v850-c.c:149 +#: config/v850/v850-c.c:148 #, gcc-internal-format msgid "junk at end of #pragma ghs section" msgstr "" -#: config/v850/v850-c.c:166 +#: config/v850/v850-c.c:165 #, gcc-internal-format msgid "unrecognized section name \"%s\"" msgstr "нераспазнаная назва сэкцыі \"%s\"" -#: config/v850/v850-c.c:181 +#: config/v850/v850-c.c:180 #, gcc-internal-format msgid "malformed #pragma ghs section" msgstr "" -#: config/v850/v850-c.c:200 +#: config/v850/v850-c.c:199 #, gcc-internal-format msgid "junk at end of #pragma ghs interrupt" msgstr "" -#: config/v850/v850-c.c:211 +#: config/v850/v850-c.c:210 #, gcc-internal-format msgid "junk at end of #pragma ghs starttda" msgstr "" -#: config/v850/v850-c.c:222 +#: config/v850/v850-c.c:221 #, gcc-internal-format msgid "junk at end of #pragma ghs startsda" msgstr "" -#: config/v850/v850-c.c:233 +#: config/v850/v850-c.c:232 #, gcc-internal-format msgid "junk at end of #pragma ghs startzda" msgstr "" -#: config/v850/v850-c.c:244 +#: config/v850/v850-c.c:243 #, gcc-internal-format msgid "junk at end of #pragma ghs endtda" msgstr "" -#: config/v850/v850-c.c:255 +#: config/v850/v850-c.c:254 #, gcc-internal-format msgid "junk at end of #pragma ghs endsda" msgstr "" -#: config/v850/v850-c.c:266 +#: config/v850/v850-c.c:265 #, gcc-internal-format msgid "junk at end of #pragma ghs endzda" msgstr "" -#: config/v850/v850.c:184 +#: config/v850/v850.c:183 #, gcc-internal-format msgid "value passed to %<-m%s%> is too large" msgstr "" -#: config/v850/v850.c:2159 +#: config/v850/v850.c:2158 #, gcc-internal-format msgid "%Jdata area attributes cannot be specified for local variables" msgstr "" -#: config/v850/v850.c:2170 +#: config/v850/v850.c:2169 #, fuzzy, gcc-internal-format msgid "data area of %q+D conflicts with previous declaration" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: config/v850/v850.c:2300 +#: config/v850/v850.c:2299 #, gcc-internal-format msgid "bogus JR construction: %d" msgstr "" -#: config/v850/v850.c:2318 config/v850/v850.c:2427 +#: config/v850/v850.c:2317 config/v850/v850.c:2426 #, gcc-internal-format msgid "bad amount of stack space removal: %d" msgstr "" -#: config/v850/v850.c:2407 +#: config/v850/v850.c:2406 #, gcc-internal-format msgid "bogus JARL construction: %d\n" msgstr "" -#: config/v850/v850.c:2706 +#: config/v850/v850.c:2705 #, gcc-internal-format msgid "bogus DISPOSE construction: %d" msgstr "" -#: config/v850/v850.c:2725 +#: config/v850/v850.c:2724 #, gcc-internal-format msgid "too much stack space to dispose of: %d" msgstr "" -#: config/v850/v850.c:2827 +#: config/v850/v850.c:2826 #, gcc-internal-format msgid "bogus PREPEARE construction: %d" msgstr "" -#: config/v850/v850.c:2846 +#: config/v850/v850.c:2845 #, gcc-internal-format msgid "too much stack space to prepare: %d" msgstr "" -#: config/xtensa/xtensa.c:1521 +#: config/xtensa/xtensa.c:1525 #, gcc-internal-format msgid "boolean registers required for the floating-point option" msgstr "" -#: config/xtensa/xtensa.c:1567 +#: config/xtensa/xtensa.c:1571 #, fuzzy, gcc-internal-format msgid "-f%s is not supported with CONST16 instructions" msgstr "ISO C не падтрымлівае комлексныя цэлалікавыя тыпы" -#: config/xtensa/xtensa.c:1572 +#: config/xtensa/xtensa.c:1576 #, gcc-internal-format msgid "PIC is required but not supported with CONST16 instructions" msgstr "" -#: config/xtensa/xtensa.c:2430 +#: config/xtensa/xtensa.c:2445 #, gcc-internal-format msgid "only uninitialized variables can be placed in a .bss section" msgstr "" @@ -24370,300 +24375,305 @@ msgid "%<-gnat%> misspelled as %<-gant%>" msgstr "" -#: cp/call.c:2420 +#: cp/call.c:2425 #, gcc-internal-format msgid "%s %D(%T, %T, %T) " msgstr "" -#: cp/call.c:2425 +#: cp/call.c:2430 #, gcc-internal-format msgid "%s %D(%T, %T) " msgstr "" -#: cp/call.c:2429 +#: cp/call.c:2434 #, gcc-internal-format msgid "%s %D(%T) " msgstr "" -#: cp/call.c:2433 +#: cp/call.c:2438 #, gcc-internal-format msgid "%s %T " msgstr "" -#: cp/call.c:2435 +#: cp/call.c:2440 #, gcc-internal-format msgid "%s %+#D " msgstr "" -#: cp/call.c:2437 cp/pt.c:1344 +#: cp/call.c:2442 cp/pt.c:1374 #, gcc-internal-format msgid "%s %+#D" msgstr "" -#: cp/call.c:2659 +#: cp/call.c:2664 #, fuzzy, gcc-internal-format msgid "conversion from %qT to %qT is ambiguous" msgstr "пераўтварэньне з `%T' у `%T'" -#: cp/call.c:2812 cp/call.c:2830 cp/call.c:2893 +#: cp/call.c:2817 cp/call.c:2835 cp/call.c:2898 #, gcc-internal-format msgid "no matching function for call to %<%D(%A)%>" msgstr "" -#: cp/call.c:2833 cp/call.c:2896 +#: cp/call.c:2838 cp/call.c:2901 #, gcc-internal-format 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:2968 +#: cp/call.c:2973 #, gcc-internal-format msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*" msgstr "" -#: cp/call.c:3042 +#: cp/call.c:3047 #, gcc-internal-format msgid "no match for call to %<(%T) (%A)%>" msgstr "" -#: cp/call.c:3051 +#: cp/call.c:3056 #, fuzzy, gcc-internal-format msgid "call of %<(%T) (%A)%> is ambiguous" msgstr "памер \"%s\" - %d байт" -#: cp/call.c:3089 +#: cp/call.c:3094 #, gcc-internal-format msgid "%s for ternary % in %<%E ? %E : %E%>" msgstr "" -#: cp/call.c:3095 +#: cp/call.c:3100 #, gcc-internal-format msgid "%s for % in %<%E%s%>" msgstr "" -#: cp/call.c:3099 +#: cp/call.c:3104 #, gcc-internal-format msgid "%s for % in %<%E[%E]%>" msgstr "" -#: cp/call.c:3104 +#: cp/call.c:3109 #, gcc-internal-format msgid "%s for %qs in %<%s %E%>" msgstr "" -#: cp/call.c:3109 +#: cp/call.c:3114 #, gcc-internal-format msgid "%s for % in %<%E %s %E%>" msgstr "" -#: cp/call.c:3112 +#: cp/call.c:3117 #, gcc-internal-format msgid "%s for % in %<%s%E%>" msgstr "" -#: cp/call.c:3204 +#: cp/call.c:3209 #, gcc-internal-format msgid "ISO C++ forbids omitting the middle term of a ?: expression" msgstr "" -#: cp/call.c:3281 +#: cp/call.c:3286 #, gcc-internal-format msgid "%qE has type % and is not a throw-expression" msgstr "" -#: cp/call.c:3320 cp/call.c:3540 +#: cp/call.c:3325 cp/call.c:3545 #, gcc-internal-format msgid "operands to ?: have different types %qT and %qT" msgstr "" -#: cp/call.c:3494 +#: cp/call.c:3499 #, gcc-internal-format msgid "enumeral mismatch in conditional expression: %qT vs %qT" msgstr "" -#: cp/call.c:3501 +#: cp/call.c:3506 #, gcc-internal-format msgid "enumeral and non-enumeral type in conditional expression" msgstr "" -#: cp/call.c:3798 +#: cp/call.c:3803 #, gcc-internal-format msgid "no %<%D(int)%> declared for postfix %qs, trying prefix operator instead" msgstr "" -#: cp/call.c:3871 +#: cp/call.c:3876 #, gcc-internal-format msgid "comparison between %q#T and %q#T" msgstr "" -#: cp/call.c:4127 +#: cp/call.c:4143 +#, gcc-internal-format +msgid "no corresponding deallocation function for `%D'" +msgstr "" + +#: cp/call.c:4148 #, fuzzy, gcc-internal-format msgid "no suitable % for %qT" msgstr "немагчымы апэратар '%s'" -#: cp/call.c:4145 +#: cp/call.c:4166 #, gcc-internal-format msgid "%q+#D is private" msgstr "" -#: cp/call.c:4147 +#: cp/call.c:4168 #, gcc-internal-format msgid "%q+#D is protected" msgstr "" -#: cp/call.c:4149 +#: cp/call.c:4170 #, gcc-internal-format msgid "%q+#D is inaccessible" msgstr "" -#: cp/call.c:4150 +#: cp/call.c:4171 #, gcc-internal-format msgid "within this context" msgstr "" -#: cp/call.c:4239 cp/cvt.c:265 +#: cp/call.c:4260 cp/cvt.c:265 #, fuzzy, gcc-internal-format msgid "invalid conversion from %qT to %qT" msgstr "пераўтварэньне з `%T' у `%T'" -#: cp/call.c:4241 +#: cp/call.c:4262 #, gcc-internal-format msgid " initializing argument %P of %qD" msgstr "" -#: cp/call.c:4253 +#: cp/call.c:4274 #, gcc-internal-format msgid "passing NULL to non-pointer argument %P of %qD" msgstr "" -#: cp/call.c:4256 +#: cp/call.c:4277 #, gcc-internal-format msgid "converting to non-pointer type %qT from NULL" msgstr "" -#: cp/call.c:4264 +#: cp/call.c:4285 #, gcc-internal-format msgid "passing %qT for argument %P to %qD" msgstr "" -#: cp/call.c:4267 +#: cp/call.c:4288 #, fuzzy, gcc-internal-format msgid "converting to %qT from %qT" msgstr "пераўтварэньне з `%T' у `%T'" -#: cp/call.c:4407 +#: cp/call.c:4428 #, fuzzy, gcc-internal-format msgid "cannot bind bitfield %qE to %qT" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/call.c:4410 cp/call.c:4426 +#: cp/call.c:4431 cp/call.c:4447 #, gcc-internal-format msgid "cannot bind packed field %qE to %qT" msgstr "" -#: cp/call.c:4413 +#: cp/call.c:4434 #, fuzzy, gcc-internal-format msgid "cannot bind rvalue %qE to %qT" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/call.c:4527 +#: cp/call.c:4548 #, gcc-internal-format msgid "cannot pass objects of non-POD type %q#T through %<...%>; call will abort at runtime" msgstr "" #. Undefined behavior [expr.call] 5.2.2/7. -#: cp/call.c:4555 +#: cp/call.c:4576 #, gcc-internal-format msgid "cannot receive objects of non-POD type %q#T through %<...%>; call will abort at runtime" msgstr "" -#: cp/call.c:4598 +#: cp/call.c:4619 #, gcc-internal-format msgid "the default argument for parameter %d of %qD has not yet been parsed" msgstr "" -#: cp/call.c:4682 +#: cp/call.c:4723 #, gcc-internal-format msgid "argument of function call might be a candidate for a format attribute" msgstr "" -#: cp/call.c:4819 +#: cp/call.c:4860 #, gcc-internal-format msgid "passing %qT as % argument of %q#D discards qualifiers" msgstr "" -#: cp/call.c:4838 +#: cp/call.c:4879 #, gcc-internal-format msgid "%qT is not an accessible base of %qT" msgstr "" -#: cp/call.c:5094 +#: cp/call.c:5135 #, gcc-internal-format msgid "could not find class$ field in java interface type %qT" msgstr "" -#: cp/call.c:5337 +#: cp/call.c:5378 #, gcc-internal-format msgid "call to non-function %qD" msgstr "" -#: cp/call.c:5459 +#: cp/call.c:5500 #, gcc-internal-format msgid "no matching function for call to %<%T::%s(%A)%#V%>" msgstr "" -#: cp/call.c:5477 +#: cp/call.c:5518 #, gcc-internal-format msgid "call of overloaded %<%s(%A)%> is ambiguous" msgstr "" -#: cp/call.c:5503 +#: cp/call.c:5544 #, gcc-internal-format msgid "cannot call member function %qD without object" msgstr "" -#: cp/call.c:6123 +#: cp/call.c:6164 #, gcc-internal-format msgid "passing %qT chooses %qT over %qT" msgstr "" -#: cp/call.c:6125 cp/name-lookup.c:4259 cp/name-lookup.c:4680 +#: cp/call.c:6166 cp/name-lookup.c:4300 cp/name-lookup.c:4721 #, gcc-internal-format msgid " in call to %qD" msgstr "" -#: cp/call.c:6182 +#: cp/call.c:6223 #, gcc-internal-format msgid "choosing %qD over %qD" msgstr "" -#: cp/call.c:6183 +#: cp/call.c:6224 #, fuzzy, gcc-internal-format msgid " for conversion from %qT to %qT" msgstr "пераўтварэньне з `%T' у `%T'" -#: cp/call.c:6185 +#: cp/call.c:6226 #, gcc-internal-format msgid " because conversion sequence for the argument is better" msgstr "" -#: cp/call.c:6299 +#: cp/call.c:6340 #, gcc-internal-format 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:6443 +#: cp/call.c:6484 #, gcc-internal-format msgid "could not convert %qE to %qT" msgstr "" -#: cp/call.c:6577 +#: cp/call.c:6618 #, gcc-internal-format msgid "invalid initialization of non-const reference of type %qT from a temporary of type %qT" msgstr "" -#: cp/call.c:6581 +#: cp/call.c:6622 #, gcc-internal-format msgid "invalid initialization of reference of type %qT from expression of type %qT" msgstr "" @@ -24764,17 +24774,17 @@ msgid " by %q+D" msgstr "" -#: cp/class.c:2483 cp/decl2.c:1037 +#: cp/class.c:2483 cp/decl2.c:1036 #, gcc-internal-format msgid "%q+#D invalid; an anonymous union can only have non-static data members" msgstr "" -#: cp/class.c:2489 cp/decl2.c:1043 +#: cp/class.c:2489 cp/decl2.c:1042 #, gcc-internal-format msgid "private member %q+#D in anonymous union" msgstr "" -#: cp/class.c:2491 cp/decl2.c:1045 +#: cp/class.c:2491 cp/decl2.c:1044 #, gcc-internal-format msgid "protected member %q+#D in anonymous union" msgstr "" @@ -24944,7 +24954,7 @@ msgid "layout of classes derived from empty class %qT may change in a future version of GCC" msgstr "" -#: cp/class.c:4980 cp/parser.c:13573 +#: cp/class.c:4980 cp/parser.c:13584 #, fuzzy, gcc-internal-format msgid "redefinition of %q#T" msgstr "папярэдняе вызначэньне `%#T'" @@ -24959,42 +24969,42 @@ msgid "trying to finish struct, but kicked out due to previous parse errors" msgstr "" -#: cp/class.c:5690 +#: cp/class.c:5702 #, fuzzy, gcc-internal-format msgid "language string %<\"%E\"%> not recognized" msgstr "мова %s не распазнана" -#: cp/class.c:5779 +#: cp/class.c:5791 #, gcc-internal-format msgid "cannot resolve overloaded function %qD based on conversion to type %qT" msgstr "" -#: cp/class.c:5908 +#: cp/class.c:5920 #, gcc-internal-format msgid "no matches converting function %qD to type %q#T" msgstr "" -#: cp/class.c:5931 +#: cp/class.c:5943 #, gcc-internal-format msgid "converting overloaded function %qD to type %q#T is ambiguous" msgstr "" -#: cp/class.c:5957 +#: cp/class.c:5969 #, fuzzy, gcc-internal-format msgid "assuming pointer to member %qD" msgstr "прапушчан ініцыялізатар" -#: cp/class.c:5960 +#: cp/class.c:5972 #, gcc-internal-format msgid "(a pointer to member can only be formed with %<&%E%>)" msgstr "" -#: cp/class.c:6016 cp/class.c:6050 +#: cp/class.c:6028 cp/class.c:6062 #, gcc-internal-format msgid "not enough type information" msgstr "" -#: cp/class.c:6033 +#: cp/class.c:6045 #, gcc-internal-format msgid "argument of type %qT does not match %qT" msgstr "" @@ -25004,12 +25014,12 @@ #. 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:6320 cp/decl.c:1192 cp/name-lookup.c:509 +#: cp/class.c:6332 cp/decl.c:1191 cp/name-lookup.c:509 #, fuzzy, gcc-internal-format msgid "declaration of %q#D" msgstr "абвяшчэньне `%#D'" -#: cp/class.c:6321 +#: cp/class.c:6333 #, gcc-internal-format msgid "changes meaning of %qD from %q+#D" msgstr "" @@ -25049,7 +25059,7 @@ msgid "conversion from %qT to %qT discards qualifiers" msgstr "" -#: cp/cvt.c:518 cp/typeck.c:5160 +#: cp/cvt.c:518 cp/typeck.c:5157 #, gcc-internal-format msgid "casting %qT to %qT does not dereference pointer" msgstr "" @@ -25137,112 +25147,112 @@ msgid " candidate conversions include %qD and %qD" msgstr "" -#: cp/decl.c:1059 +#: cp/decl.c:1058 #, gcc-internal-format msgid "%qD was declared % and later %" msgstr "" -#: cp/decl.c:1060 cp/decl.c:1593 objc/objc-act.c:2921 objc/objc-act.c:7489 +#: cp/decl.c:1059 cp/decl.c:1593 objc/objc-act.c:2921 objc/objc-act.c:7489 #, fuzzy, gcc-internal-format msgid "previous declaration of %q+D" msgstr "папярэдняе абвяшчэньне `%D'" -#: cp/decl.c:1093 +#: cp/decl.c:1092 #, gcc-internal-format msgid "declaration of %qF throws different exceptions" msgstr "" -#: cp/decl.c:1094 +#: cp/decl.c:1093 #, fuzzy, gcc-internal-format msgid "from previous declaration %q+F" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:1146 +#: cp/decl.c:1145 #, fuzzy, gcc-internal-format msgid "function %q+D redeclared as inline" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/decl.c:1148 +#: cp/decl.c:1147 #, fuzzy, gcc-internal-format msgid "previous declaration of %q+D with attribute noinline" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:1155 +#: cp/decl.c:1154 #, fuzzy, gcc-internal-format msgid "function %q+D redeclared with attribute noinline" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/decl.c:1157 +#: cp/decl.c:1156 #, fuzzy, gcc-internal-format msgid "previous declaration of %q+D was inline" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:1179 cp/decl.c:1252 +#: cp/decl.c:1178 cp/decl.c:1251 #, fuzzy, gcc-internal-format msgid "shadowing %s function %q#D" msgstr "у функцыі \"%s\":" -#: cp/decl.c:1188 +#: cp/decl.c:1187 #, gcc-internal-format msgid "library function %q#D redeclared as non-function %q#D" msgstr "" -#: cp/decl.c:1193 +#: cp/decl.c:1192 #, fuzzy, gcc-internal-format msgid "conflicts with built-in declaration %q#D" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/decl.c:1247 cp/decl.c:1356 cp/decl.c:1372 +#: cp/decl.c:1246 cp/decl.c:1355 cp/decl.c:1371 #, fuzzy, gcc-internal-format msgid "new declaration %q#D" msgstr "новае абвяшчэньне `%#D'" -#: cp/decl.c:1248 +#: cp/decl.c:1247 #, fuzzy, gcc-internal-format msgid "ambiguates built-in declaration %q#D" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/decl.c:1320 +#: cp/decl.c:1319 #, gcc-internal-format msgid "%q#D redeclared as different kind of symbol" msgstr "" -#: cp/decl.c:1323 +#: cp/decl.c:1322 #, fuzzy, gcc-internal-format msgid "previous declaration of %q+#D" msgstr "папярэдняе абвяшчэньне `%#D'" -#: cp/decl.c:1342 +#: cp/decl.c:1341 #, fuzzy, gcc-internal-format msgid "declaration of template %q#D" msgstr "абвяшчэньне шаблёну `%#D'" -#: cp/decl.c:1343 cp/name-lookup.c:510 +#: cp/decl.c:1342 cp/name-lookup.c:510 #, fuzzy, gcc-internal-format msgid "conflicts with previous declaration %q+#D" msgstr "канфлікт з папярэднім абвяшчэньнем `%#D'" -#: cp/decl.c:1357 cp/decl.c:1373 +#: cp/decl.c:1356 cp/decl.c:1372 #, fuzzy, gcc-internal-format msgid "ambiguates old declaration %q+#D" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/decl.c:1365 +#: cp/decl.c:1364 #, fuzzy, gcc-internal-format msgid "declaration of C function %q#D conflicts with" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:1367 +#: cp/decl.c:1366 #, fuzzy, gcc-internal-format msgid "previous declaration %q+#D here" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:1381 +#: cp/decl.c:1380 #, fuzzy, gcc-internal-format msgid "conflicting declaration %q#D" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/decl.c:1382 +#: cp/decl.c:1381 #, fuzzy, gcc-internal-format msgid "%q+D has a previous declaration as %q#D" msgstr "няма папярэдняга аб'яўлення для \"%s\"" @@ -25254,63 +25264,63 @@ #. 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:1434 +#: cp/decl.c:1433 #, fuzzy, gcc-internal-format msgid "declaration of namespace %qD conflicts with" msgstr "абвяшчэньне шаблёну `%#D'" -#: cp/decl.c:1435 +#: cp/decl.c:1434 #, fuzzy, gcc-internal-format msgid "previous declaration of namespace %q+D here" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:1446 +#: cp/decl.c:1445 #, fuzzy, gcc-internal-format msgid "%q+#D previously defined here" msgstr "папярэдняе вызначэньне" -#: cp/decl.c:1447 +#: cp/decl.c:1446 #, fuzzy, gcc-internal-format msgid "%q+#D previously declared here" msgstr "няма папярэдняга аб'яўлення для \"%s\"" #. Prototype decl follows defn w/o prototype. -#: cp/decl.c:1456 +#: cp/decl.c:1455 #, fuzzy, gcc-internal-format msgid "prototype for %q+#D" msgstr "няма папярэдняга прататыпа для \"%s\"" -#: cp/decl.c:1457 +#: cp/decl.c:1456 #, fuzzy, gcc-internal-format msgid "%Jfollows non-prototype definition here" msgstr "папярэдняе вызначэньне" -#: cp/decl.c:1497 +#: cp/decl.c:1496 #, fuzzy, gcc-internal-format msgid "previous declaration of %q+#D with %qL linkage" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:1499 +#: cp/decl.c:1498 #, fuzzy, gcc-internal-format msgid "conflicts with new declaration with %qL linkage" -msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" +msgstr "канфлікт з папярэднім абвяшчэньнем `%#D'" -#: cp/decl.c:1522 cp/decl.c:1528 +#: cp/decl.c:1521 cp/decl.c:1527 #, fuzzy, gcc-internal-format msgid "default argument given for parameter %d of %q#D" msgstr "нехапае аргументаў у функцыі \"%s\"" -#: cp/decl.c:1524 cp/decl.c:1530 +#: cp/decl.c:1523 cp/decl.c:1529 #, fuzzy, gcc-internal-format msgid "after previous specification in %q+#D" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:1539 +#: cp/decl.c:1538 #, gcc-internal-format msgid "%q#D was used before it was declared inline" msgstr "" -#: cp/decl.c:1540 +#: cp/decl.c:1539 #, fuzzy, gcc-internal-format msgid "%Jprevious non-inline declaration here" msgstr "няма папярэдняга аб'яўлення для \"%s\"" @@ -25343,288 +25353,288 @@ msgid "%Jconflicts with previous declaration here" msgstr "канфлікт з папярэднім абвяшчэньнем `%#D'" -#: cp/decl.c:2312 +#: cp/decl.c:2328 #, fuzzy, gcc-internal-format msgid "jump to label %qD" msgstr "паўтарэнне \"%s\"" -#: cp/decl.c:2314 +#: cp/decl.c:2330 #, gcc-internal-format msgid "jump to case label" msgstr "" -#: cp/decl.c:2316 +#: cp/decl.c:2332 #, fuzzy, gcc-internal-format msgid "%H from here" msgstr " адсюль" -#: cp/decl.c:2335 cp/decl.c:2498 +#: cp/decl.c:2351 cp/decl.c:2514 #, gcc-internal-format msgid " exits OpenMP structured block" msgstr "" -#: cp/decl.c:2356 +#: cp/decl.c:2372 #, fuzzy, gcc-internal-format msgid " crosses initialization of %q+#D" msgstr "ініцыялізацыя" -#: cp/decl.c:2358 cp/decl.c:2473 +#: cp/decl.c:2374 cp/decl.c:2489 #, gcc-internal-format msgid " enters scope of non-POD %q+#D" msgstr "" -#: cp/decl.c:2371 cp/decl.c:2477 +#: cp/decl.c:2387 cp/decl.c:2493 #, gcc-internal-format msgid " enters try block" msgstr "" -#: cp/decl.c:2373 cp/decl.c:2479 +#: cp/decl.c:2389 cp/decl.c:2495 #, gcc-internal-format msgid " enters catch block" msgstr "" -#: cp/decl.c:2383 cp/decl.c:2482 +#: cp/decl.c:2399 cp/decl.c:2498 #, gcc-internal-format msgid " enters OpenMP structured block" msgstr "" -#: cp/decl.c:2454 cp/decl.c:2494 +#: cp/decl.c:2470 cp/decl.c:2510 #, fuzzy, gcc-internal-format msgid "jump to label %q+D" msgstr "паўтарэнне \"%s\"" -#: cp/decl.c:2455 cp/decl.c:2495 +#: cp/decl.c:2471 cp/decl.c:2511 #, gcc-internal-format msgid " from here" msgstr " адсюль" #. Can't skip init of __exception_info. -#: cp/decl.c:2467 +#: cp/decl.c:2483 #, gcc-internal-format msgid "%J enters catch block" msgstr "" -#: cp/decl.c:2471 +#: cp/decl.c:2487 #, fuzzy, gcc-internal-format msgid " skips initialization of %q+#D" msgstr "ініцыялізацыя" -#: cp/decl.c:2547 +#: cp/decl.c:2563 #, gcc-internal-format msgid "label named wchar_t" msgstr "" -#: cp/decl.c:2551 +#: cp/decl.c:2567 #, fuzzy, gcc-internal-format msgid "duplicate label %qD" msgstr "паўтарэнне \"%s\"" -#: cp/decl.c:2814 +#: cp/decl.c:2830 #, fuzzy, gcc-internal-format msgid "%qD is not a type" msgstr "\"%s\" мае незавершаны тып" -#: cp/decl.c:2820 cp/parser.c:3841 +#: cp/decl.c:2836 cp/parser.c:3852 #, fuzzy, gcc-internal-format msgid "%qD used without template parameters" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/decl.c:2835 +#: cp/decl.c:2851 #, fuzzy, gcc-internal-format msgid "%q#T is not a class" msgstr "\"%s\" мае незавершаны тып" -#: cp/decl.c:2847 cp/decl.c:2915 +#: cp/decl.c:2863 cp/decl.c:2931 #, gcc-internal-format msgid "no class template named %q#T in %q#T" msgstr "" -#: cp/decl.c:2848 +#: cp/decl.c:2864 #, fuzzy, gcc-internal-format msgid "no type named %q#T in %q#T" msgstr "вяртаемы тып \"%s\" не \"int\"" -#: cp/decl.c:2855 +#: cp/decl.c:2871 #, gcc-internal-format msgid "% names %q#T, which is not a class template" msgstr "" -#: cp/decl.c:2862 +#: cp/decl.c:2878 #, gcc-internal-format msgid "% names %q#T, which is not a type" msgstr "" -#: cp/decl.c:2924 +#: cp/decl.c:2940 #, fuzzy, gcc-internal-format msgid "template parameters do not match template" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:2925 cp/friend.c:322 cp/friend.c:330 +#: cp/decl.c:2941 cp/friend.c:321 cp/friend.c:329 #, fuzzy, gcc-internal-format msgid "%q+D declared here" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/decl.c:3596 +#: cp/decl.c:3612 #, gcc-internal-format msgid "%Jan anonymous union cannot have function members" msgstr "" -#: cp/decl.c:3614 +#: cp/decl.c:3630 #, gcc-internal-format msgid "member %q+#D with constructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:3617 +#: cp/decl.c:3633 #, gcc-internal-format msgid "member %q+#D with destructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:3620 +#: cp/decl.c:3636 #, gcc-internal-format msgid "member %q+#D with copy assignment operator not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:3645 +#: cp/decl.c:3661 #, gcc-internal-format msgid "multiple types in one declaration" msgstr "" -#: cp/decl.c:3649 +#: cp/decl.c:3665 #, fuzzy, gcc-internal-format msgid "redeclaration of C++ built-in type %qT" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:3686 +#: cp/decl.c:3702 #, gcc-internal-format msgid "missing type-name in typedef-declaration" msgstr "" -#: cp/decl.c:3694 +#: cp/decl.c:3710 #, gcc-internal-format msgid "ISO C++ prohibits anonymous structs" msgstr "" -#: cp/decl.c:3701 +#: cp/decl.c:3717 #, fuzzy, gcc-internal-format msgid "%qs can only be specified for functions" msgstr "\"%s\" звычайна функцыя" -#: cp/decl.c:3707 +#: cp/decl.c:3723 #, gcc-internal-format msgid "% can only be specified inside a class" msgstr "" -#: cp/decl.c:3709 +#: cp/decl.c:3725 #, gcc-internal-format msgid "% can only be specified for constructors" msgstr "" -#: cp/decl.c:3711 +#: cp/decl.c:3727 #, gcc-internal-format msgid "a storage class can only be specified for objects and functions" msgstr "" -#: cp/decl.c:3717 +#: cp/decl.c:3733 #, gcc-internal-format msgid "qualifiers can only be specified for objects and functions" msgstr "" -#: cp/decl.c:3747 +#: cp/decl.c:3763 #, fuzzy, gcc-internal-format msgid "attribute ignored in declaration of %q+#T" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:3748 +#: cp/decl.c:3764 #, gcc-internal-format msgid "attribute for %q+#T must follow the %qs keyword" msgstr "" -#: cp/decl.c:3862 +#: cp/decl.c:3878 #, gcc-internal-format msgid "function %q#D is initialized like a variable" msgstr "" -#: cp/decl.c:3873 +#: cp/decl.c:3889 #, gcc-internal-format msgid "declaration of %q#D has % and is initialized" msgstr "" -#: cp/decl.c:3889 +#: cp/decl.c:3905 #, gcc-internal-format msgid "definition of %q#D is marked %" msgstr "" -#: cp/decl.c:3908 +#: cp/decl.c:3924 #, gcc-internal-format msgid "%q#D is not a static member of %q#T" msgstr "" -#: cp/decl.c:3914 +#: cp/decl.c:3930 #, gcc-internal-format msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>" msgstr "" -#: cp/decl.c:3923 +#: cp/decl.c:3939 #, gcc-internal-format msgid "template header not allowed in member definition of explicitly specialized class" msgstr "" -#: cp/decl.c:3931 +#: cp/decl.c:3947 #, fuzzy, gcc-internal-format msgid "duplicate initialization of %qD" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/decl.c:3969 +#: cp/decl.c:3985 #, gcc-internal-format msgid "declaration of %q#D outside of class is not definition" msgstr "" -#: cp/decl.c:4036 +#: cp/decl.c:4052 #, fuzzy, gcc-internal-format msgid "variable %q#D has initializer but incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: cp/decl.c:4043 cp/decl.c:4770 +#: cp/decl.c:4059 cp/decl.c:4786 #, fuzzy, gcc-internal-format msgid "elements of array %q#D have incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: cp/decl.c:4053 +#: cp/decl.c:4069 #, gcc-internal-format msgid "aggregate %q#D has incomplete type and cannot be defined" msgstr "" -#: cp/decl.c:4100 +#: cp/decl.c:4116 #, gcc-internal-format msgid "%qD declared as reference but not initialized" msgstr "" -#: cp/decl.c:4106 +#: cp/decl.c:4122 #, gcc-internal-format msgid "ISO C++ forbids use of initializer list to initialize reference %qD" msgstr "" -#: cp/decl.c:4132 +#: cp/decl.c:4148 #, fuzzy, gcc-internal-format msgid "cannot initialize %qT from %qT" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/decl.c:4160 +#: cp/decl.c:4176 #, gcc-internal-format msgid "name %qD used in a GNU-style designated initializer for an array" msgstr "" -#: cp/decl.c:4209 +#: cp/decl.c:4225 #, gcc-internal-format msgid "initializer fails to determine size of %qD" msgstr "" -#: cp/decl.c:4216 +#: cp/decl.c:4232 #, fuzzy, gcc-internal-format msgid "array size missing in %qD" msgstr "прапушчан памер масіва ў `%D'" -#: cp/decl.c:4228 +#: cp/decl.c:4244 #, fuzzy, gcc-internal-format msgid "zero-size array %qD" msgstr "нулявы памер масіва `%D'" @@ -25632,228 +25642,228 @@ #. 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:4271 +#: cp/decl.c:4287 #, gcc-internal-format msgid "storage size of %qD isn't known" msgstr "" -#: cp/decl.c:4293 +#: cp/decl.c:4309 #, fuzzy, gcc-internal-format msgid "storage size of %qD isn't constant" msgstr "тып параметра \"%s\" не аб'яўлены" -#: cp/decl.c:4342 +#: cp/decl.c:4358 #, gcc-internal-format msgid "sorry: semantics of inline function static data %q+#D are wrong (you'll wind up with multiple copies)" msgstr "" -#: cp/decl.c:4345 +#: cp/decl.c:4361 #, gcc-internal-format msgid "%J you can work around this by removing the initializer" msgstr "" -#: cp/decl.c:4372 +#: cp/decl.c:4388 #, fuzzy, gcc-internal-format msgid "uninitialized const %qD" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/decl.c:4484 +#: cp/decl.c:4500 #, fuzzy, gcc-internal-format msgid "invalid type %qT as initializer for a vector of type %qT" msgstr "нерэчаісны ініцыялізатар" -#: cp/decl.c:4526 +#: cp/decl.c:4542 #, gcc-internal-format msgid "initializer for %qT must be brace-enclosed" msgstr "" -#: cp/decl.c:4544 +#: cp/decl.c:4560 #, gcc-internal-format msgid "%qT has no non-static data member named %qD" msgstr "" -#: cp/decl.c:4595 +#: cp/decl.c:4611 #, fuzzy, gcc-internal-format msgid "braces around scalar initializer for type %qT" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/decl.c:4678 +#: cp/decl.c:4694 #, fuzzy, gcc-internal-format msgid "missing braces around initializer for %qT" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/decl.c:4735 +#: cp/decl.c:4751 #, fuzzy, gcc-internal-format msgid "too many initializers for %qT" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/decl.c:4778 +#: cp/decl.c:4794 #, gcc-internal-format msgid "variable-sized object %qD may not be initialized" msgstr "" -#: cp/decl.c:4784 +#: cp/decl.c:4800 #, fuzzy, gcc-internal-format msgid "%qD has incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: cp/decl.c:4796 +#: cp/decl.c:4812 #, gcc-internal-format msgid "scalar object %qD requires one element in initializer" msgstr "" -#: cp/decl.c:4844 +#: cp/decl.c:4860 #, gcc-internal-format msgid "%qD must be initialized by constructor, not by %<{...}%>" msgstr "" -#: cp/decl.c:4880 +#: cp/decl.c:4896 #, gcc-internal-format msgid "array %qD initialized by parenthesized string literal %qE" msgstr "" -#: cp/decl.c:4895 +#: cp/decl.c:4911 #, fuzzy, gcc-internal-format msgid "structure %qD with uninitialized const members" msgstr "параметр \"%s\" ініцыялізаваны" -#: cp/decl.c:4897 +#: cp/decl.c:4913 #, fuzzy, gcc-internal-format msgid "structure %qD with uninitialized reference members" msgstr "параметр \"%s\" ініцыялізаваны" -#: cp/decl.c:5106 +#: cp/decl.c:5152 #, gcc-internal-format msgid "assignment (not initialization) in declaration" msgstr "" -#: cp/decl.c:5184 +#: cp/decl.c:5242 #, fuzzy, gcc-internal-format msgid "shadowing previous type declaration of %q#D" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:5214 +#: cp/decl.c:5272 #, gcc-internal-format msgid "%qD cannot be thread-local because it has non-POD type %qT" msgstr "" -#: cp/decl.c:5250 +#: cp/decl.c:5308 #, gcc-internal-format msgid "%qD is thread-local and so cannot be dynamically initialized" msgstr "" -#: cp/decl.c:5268 +#: cp/decl.c:5326 #, gcc-internal-format msgid "%qD cannot be initialized by a non-constant expression when being declared" msgstr "" -#: cp/decl.c:5857 +#: cp/decl.c:5926 #, gcc-internal-format msgid "destructor for alien class %qT cannot be a member" msgstr "" -#: cp/decl.c:5859 +#: cp/decl.c:5928 #, gcc-internal-format msgid "constructor for alien class %qT cannot be a member" msgstr "" -#: cp/decl.c:5880 +#: cp/decl.c:5949 #, gcc-internal-format msgid "%qD declared as a % %s" msgstr "" -#: cp/decl.c:5882 +#: cp/decl.c:5951 #, gcc-internal-format msgid "%qD declared as an % %s" msgstr "" -#: cp/decl.c:5884 +#: cp/decl.c:5953 #, gcc-internal-format msgid "% and % function specifiers on %qD invalid in %s declaration" msgstr "" -#: cp/decl.c:5888 +#: cp/decl.c:5957 #, gcc-internal-format msgid "%q+D declared as a friend" msgstr "" -#: cp/decl.c:5894 +#: cp/decl.c:5963 #, fuzzy, gcc-internal-format msgid "%q+D declared with an exception specification" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/decl.c:5928 +#: cp/decl.c:5997 #, gcc-internal-format msgid "definition of %qD is not in namespace enclosing %qT" msgstr "" -#: cp/decl.c:6017 +#: cp/decl.c:6086 #, fuzzy, gcc-internal-format msgid "defining explicit specialization %qD in friend declaration" msgstr "ініцыялізацыя" #. Something like `template friend void f()'. -#: cp/decl.c:6027 +#: cp/decl.c:6096 #, fuzzy, gcc-internal-format msgid "invalid use of template-id %qD in declaration of primary template" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/decl.c:6057 +#: cp/decl.c:6126 #, gcc-internal-format msgid "default arguments are not allowed in declaration of friend template specialization %qD" msgstr "" -#: cp/decl.c:6065 +#: cp/decl.c:6134 #, gcc-internal-format msgid "% is not allowed in declaration of friend template specialization %qD" msgstr "" -#: cp/decl.c:6108 +#: cp/decl.c:6177 #, gcc-internal-format msgid "cannot declare %<::main%> to be a template" msgstr "" -#: cp/decl.c:6110 +#: cp/decl.c:6179 #, gcc-internal-format msgid "cannot declare %<::main%> to be inline" msgstr "" -#: cp/decl.c:6112 +#: cp/decl.c:6181 #, gcc-internal-format msgid "cannot declare %<::main%> to be static" msgstr "" -#: cp/decl.c:6140 +#: cp/decl.c:6209 #, gcc-internal-format msgid "non-local function %q#D uses anonymous type" msgstr "" -#: cp/decl.c:6143 cp/decl.c:6425 +#: cp/decl.c:6212 cp/decl.c:6494 #, gcc-internal-format msgid "%q+#D does not refer to the unqualified type, so it is not used for linkage" msgstr "" -#: cp/decl.c:6149 +#: cp/decl.c:6218 #, gcc-internal-format msgid "non-local function %q#D uses local type %qT" msgstr "" -#: cp/decl.c:6172 +#: cp/decl.c:6241 #, fuzzy, gcc-internal-format msgid "%smember function %qD cannot have cv-qualifier" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:6224 +#: cp/decl.c:6293 #, fuzzy, gcc-internal-format msgid "%<::main%> must return %" msgstr "`main' павінна вяртаць `int'" -#: cp/decl.c:6258 +#: cp/decl.c:6327 #, gcc-internal-format msgid "definition of implicitly-declared %qD" msgstr "" -#: cp/decl.c:6273 cp/decl2.c:677 +#: cp/decl.c:6342 cp/decl2.c:676 #, gcc-internal-format msgid "no %q#D member function declared in class %qT" msgstr "" @@ -25862,546 +25872,546 @@ #. no linkage can only be used to declare extern "C" #. entities. Since it's not always an error in the #. ISO C++ 90 Standard, we only issue a warning. -#: cp/decl.c:6422 +#: cp/decl.c:6491 #, gcc-internal-format msgid "non-local variable %q#D uses anonymous type" msgstr "" -#: cp/decl.c:6431 +#: cp/decl.c:6500 #, gcc-internal-format msgid "non-local variable %q#D uses local type %qT" msgstr "" -#: cp/decl.c:6548 +#: cp/decl.c:6617 #, gcc-internal-format msgid "invalid in-class initialization of static data member of non-integral type %qT" msgstr "" -#: cp/decl.c:6558 +#: cp/decl.c:6627 #, gcc-internal-format msgid "ISO C++ forbids in-class initialization of non-const static member %qD" msgstr "" -#: cp/decl.c:6562 +#: cp/decl.c:6631 #, gcc-internal-format msgid "ISO C++ forbids initialization of member constant %qD of non-integral type %qT" msgstr "" -#: cp/decl.c:6586 +#: cp/decl.c:6655 #, fuzzy, gcc-internal-format msgid "size of array %qD has non-integral type %qT" msgstr "памер масіва `%D' не цэлалікавы тып" -#: cp/decl.c:6588 +#: cp/decl.c:6657 #, fuzzy, gcc-internal-format msgid "size of array has non-integral type %qT" msgstr "памер масіва \"%s\" адмоўны" -#: cp/decl.c:6624 +#: cp/decl.c:6693 #, fuzzy, gcc-internal-format msgid "size of array %qD is negative" msgstr "памер масіва `%D' - адмоўны" -#: cp/decl.c:6626 +#: cp/decl.c:6695 #, gcc-internal-format msgid "size of array is negative" msgstr "адмоўны памер масіва " -#: cp/decl.c:6634 +#: cp/decl.c:6703 #, fuzzy, gcc-internal-format msgid "ISO C++ forbids zero-size array %qD" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: cp/decl.c:6636 +#: cp/decl.c:6705 #, fuzzy, gcc-internal-format msgid "ISO C++ forbids zero-size array" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: cp/decl.c:6643 +#: cp/decl.c:6712 #, fuzzy, gcc-internal-format msgid "size of array %qD is not an integral constant-expression" msgstr "памер масіва \"%s\" адмоўны" -#: cp/decl.c:6646 +#: cp/decl.c:6715 #, gcc-internal-format msgid "size of array is not an integral constant-expression" msgstr "" -#: cp/decl.c:6652 +#: cp/decl.c:6721 #, fuzzy, gcc-internal-format msgid "ISO C++ forbids variable-size array %qD" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: cp/decl.c:6654 +#: cp/decl.c:6723 #, fuzzy, gcc-internal-format msgid "ISO C++ forbids variable-size array" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: cp/decl.c:6685 +#: cp/decl.c:6754 #, gcc-internal-format msgid "overflow in array dimension" msgstr "" -#: cp/decl.c:6759 +#: cp/decl.c:6828 #, fuzzy, gcc-internal-format msgid "declaration of %qD as %s" msgstr "абвяшчэньне `%#D'" -#: cp/decl.c:6761 +#: cp/decl.c:6830 #, gcc-internal-format msgid "creating %s" msgstr "" -#: cp/decl.c:6773 +#: cp/decl.c:6842 #, gcc-internal-format msgid "declaration of %qD as multidimensional array must have bounds for all dimensions except the first" msgstr "" -#: cp/decl.c:6777 +#: cp/decl.c:6846 #, gcc-internal-format msgid "multidimensional array must have bounds for all dimensions except the first" msgstr "" -#: cp/decl.c:6812 +#: cp/decl.c:6881 #, gcc-internal-format msgid "return type specification for constructor invalid" msgstr "" -#: cp/decl.c:6822 +#: cp/decl.c:6891 #, gcc-internal-format msgid "return type specification for destructor invalid" msgstr "" -#: cp/decl.c:6835 +#: cp/decl.c:6904 #, gcc-internal-format msgid "operator %qT declared to return %qT" msgstr "" -#: cp/decl.c:6837 +#: cp/decl.c:6906 #, gcc-internal-format msgid "return type specified for %" msgstr "" -#: cp/decl.c:6859 +#: cp/decl.c:6928 #, gcc-internal-format msgid "unnamed variable or field declared void" msgstr "" -#: cp/decl.c:6863 +#: cp/decl.c:6932 #, fuzzy, gcc-internal-format msgid "variable or field %qE declared void" msgstr "тып параметра \"%s\" не аб'яўлены" -#: cp/decl.c:6866 +#: cp/decl.c:6935 #, gcc-internal-format msgid "variable or field declared void" msgstr "" -#: cp/decl.c:7031 +#: cp/decl.c:7100 #, fuzzy, gcc-internal-format msgid "invalid use of qualified-name %<::%D%>" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/decl.c:7034 +#: cp/decl.c:7103 #, fuzzy, gcc-internal-format msgid "invalid use of qualified-name %<%T::%D%>" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/decl.c:7037 +#: cp/decl.c:7106 #, fuzzy, gcc-internal-format msgid "invalid use of qualified-name %<%D::%D%>" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/decl.c:7049 +#: cp/decl.c:7118 #, gcc-internal-format msgid "type %qT is not derived from type %qT" msgstr "" -#: cp/decl.c:7065 cp/decl.c:7155 cp/decl.c:8228 +#: cp/decl.c:7134 cp/decl.c:7224 cp/decl.c:8297 #, fuzzy, gcc-internal-format msgid "declaration of %qD as non-function" msgstr "няма папярэдняга аб'яўлення для \"%s\"" -#: cp/decl.c:7071 +#: cp/decl.c:7140 #, fuzzy, gcc-internal-format msgid "declaration of %qD as non-member" msgstr "абвяшчэньне `%#D'" -#: cp/decl.c:7100 +#: cp/decl.c:7169 #, gcc-internal-format msgid "declarator-id missing; using reserved word %qD" msgstr "" -#: cp/decl.c:7147 +#: cp/decl.c:7216 #, gcc-internal-format msgid "function definition does not declare parameters" msgstr "" -#: cp/decl.c:7189 +#: cp/decl.c:7258 #, fuzzy, gcc-internal-format msgid "two or more data types in declaration of %qs" msgstr "пустое абвяшчэнне" -#: cp/decl.c:7256 cp/decl.c:7258 +#: cp/decl.c:7325 cp/decl.c:7327 #, fuzzy, gcc-internal-format msgid "ISO C++ forbids declaration of %qs with no type" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: cp/decl.c:7283 +#: cp/decl.c:7352 #, fuzzy, gcc-internal-format msgid "% or % invalid for %qs" msgstr "long, short, signed ці unsigned нерэчаісны для \"%s\"" -#: cp/decl.c:7285 +#: cp/decl.c:7354 #, gcc-internal-format msgid "% and % specified together for %qs" msgstr "" -#: cp/decl.c:7287 +#: cp/decl.c:7356 #, fuzzy, gcc-internal-format msgid "% invalid for %qs" msgstr "complex нерэчаісны для \"%s\"" -#: cp/decl.c:7289 +#: cp/decl.c:7358 #, fuzzy, gcc-internal-format msgid "% invalid for %qs" msgstr "complex нерэчаісны для \"%s\"" -#: cp/decl.c:7291 +#: cp/decl.c:7360 #, fuzzy, gcc-internal-format msgid "% invalid for %qs" msgstr "complex нерэчаісны для \"%s\"" -#: cp/decl.c:7293 +#: cp/decl.c:7362 #, fuzzy, gcc-internal-format msgid "% or % invalid for %qs" msgstr "long, short, signed ці unsigned нерэчаісны для \"%s\"" -#: cp/decl.c:7295 +#: cp/decl.c:7364 #, gcc-internal-format msgid "% or % specified with char for %qs" msgstr "" -#: cp/decl.c:7297 +#: cp/decl.c:7366 #, gcc-internal-format msgid "% and % specified together for %qs" msgstr "" -#: cp/decl.c:7303 +#: cp/decl.c:7372 #, fuzzy, gcc-internal-format msgid "long, short, signed or unsigned used invalidly for %qs" msgstr "long, short, signed ці unsigned нерэчаісны для \"%s\"" -#: cp/decl.c:7367 +#: cp/decl.c:7436 #, fuzzy, gcc-internal-format msgid "complex invalid for %qs" msgstr "complex нерэчаісны для \"%s\"" -#: cp/decl.c:7396 +#: cp/decl.c:7465 #, gcc-internal-format msgid "qualifiers are not allowed on declaration of %" msgstr "" -#: cp/decl.c:7408 cp/typeck.c:6842 +#: cp/decl.c:7477 cp/typeck.c:6840 #, fuzzy, gcc-internal-format msgid "ignoring %qV qualifiers added to function type %qT" msgstr "Нерэчаісны выбар \"%s\"" -#: cp/decl.c:7431 +#: cp/decl.c:7500 #, gcc-internal-format msgid "member %qD cannot be declared both virtual and static" msgstr "" -#: cp/decl.c:7439 +#: cp/decl.c:7508 #, fuzzy, gcc-internal-format msgid "%<%T::%D%> is not a valid declarator" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cp/decl.c:7448 +#: cp/decl.c:7517 #, gcc-internal-format msgid "typedef declaration invalid in parameter declaration" msgstr "" -#: cp/decl.c:7454 +#: cp/decl.c:7523 #, gcc-internal-format msgid "storage class specifiers invalid in parameter declarations" msgstr "" -#: cp/decl.c:7461 +#: cp/decl.c:7530 #, gcc-internal-format msgid "virtual outside class declaration" msgstr "" -#: cp/decl.c:7479 +#: cp/decl.c:7548 #, fuzzy, gcc-internal-format msgid "multiple storage classes in declaration of %qs" msgstr "паўторнае абвяшчэньне адмеціны `%s'" -#: cp/decl.c:7484 +#: cp/decl.c:7553 #, fuzzy, gcc-internal-format msgid "conflicting specifiers in declaration of %qs" msgstr "канфлікт з папярэднім абвяшчэньнем `%#D'" -#: cp/decl.c:7507 +#: cp/decl.c:7576 #, gcc-internal-format msgid "storage class specified for %qs" msgstr "" -#: cp/decl.c:7541 +#: cp/decl.c:7610 #, gcc-internal-format msgid "top-level declaration of %qs specifies %" msgstr "" -#: cp/decl.c:7553 +#: cp/decl.c:7622 #, gcc-internal-format msgid "storage class specifiers invalid in friend function declarations" msgstr "" -#: cp/decl.c:7673 +#: cp/decl.c:7742 #, gcc-internal-format msgid "destructor cannot be static member function" msgstr "" -#: cp/decl.c:7674 +#: cp/decl.c:7743 #, gcc-internal-format msgid "constructor cannot be static member function" msgstr "" -#: cp/decl.c:7678 +#: cp/decl.c:7747 #, gcc-internal-format msgid "destructors may not be cv-qualified" msgstr "" -#: cp/decl.c:7679 +#: cp/decl.c:7748 #, gcc-internal-format msgid "constructors may not be cv-qualified" msgstr "" -#: cp/decl.c:7696 +#: cp/decl.c:7765 #, gcc-internal-format msgid "constructors cannot be declared virtual" msgstr "" -#: cp/decl.c:7709 +#: cp/decl.c:7778 #, fuzzy, gcc-internal-format msgid "can't initialize friend function %qs" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" #. Cannot be both friend and virtual. -#: cp/decl.c:7713 +#: cp/decl.c:7782 #, gcc-internal-format msgid "virtual functions cannot be friends" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:7717 +#: cp/decl.c:7786 #, gcc-internal-format msgid "friend declaration not in class definition" msgstr "" -#: cp/decl.c:7719 +#: cp/decl.c:7788 #, fuzzy, gcc-internal-format msgid "can't define friend function %qs in a local class definition" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/decl.c:7732 +#: cp/decl.c:7801 #, gcc-internal-format msgid "destructors may not have parameters" msgstr "" -#: cp/decl.c:7750 cp/decl.c:7757 +#: cp/decl.c:7819 cp/decl.c:7826 #, fuzzy, gcc-internal-format msgid "cannot declare reference to %q#T" msgstr "Не магу знайсці файл для класа %s." -#: cp/decl.c:7751 +#: cp/decl.c:7820 #, fuzzy, gcc-internal-format msgid "cannot declare pointer to %q#T" msgstr "\"%s\" мае незавершаны тып" -#: cp/decl.c:7759 +#: cp/decl.c:7828 #, gcc-internal-format msgid "cannot declare pointer to %q#T member" msgstr "" -#: cp/decl.c:7822 +#: cp/decl.c:7891 #, gcc-internal-format msgid "template-id %qD used as a declarator" msgstr "" -#: cp/decl.c:7872 +#: cp/decl.c:7941 #, gcc-internal-format msgid "member functions are implicitly friends of their class" msgstr "" -#: cp/decl.c:7874 +#: cp/decl.c:7943 #, gcc-internal-format msgid "extra qualification %<%T::%> on member %qs" msgstr "" -#: cp/decl.c:7906 +#: cp/decl.c:7975 #, gcc-internal-format msgid "cannot define member function %<%T::%s%> within %<%T%>" msgstr "" -#: cp/decl.c:7907 +#: cp/decl.c:7976 #, gcc-internal-format msgid "cannot declare member function %<%T::%s%> within %<%T%>" msgstr "" -#: cp/decl.c:7923 +#: cp/decl.c:7992 #, gcc-internal-format msgid "cannot declare member %<%T::%s%> within %qT" msgstr "" -#: cp/decl.c:7957 +#: cp/decl.c:8026 #, gcc-internal-format msgid "data member may not have variably modified type %qT" msgstr "" -#: cp/decl.c:7959 +#: cp/decl.c:8028 #, gcc-internal-format msgid "parameter may not have variably modified type %qT" msgstr "" #. [dcl.fct.spec] The explicit specifier shall only be used in #. declarations of constructors within a class definition. -#: cp/decl.c:7967 +#: cp/decl.c:8036 #, gcc-internal-format msgid "only declarations of constructors can be %" msgstr "" -#: cp/decl.c:7975 +#: cp/decl.c:8044 #, fuzzy, gcc-internal-format msgid "non-member %qs cannot be declared %" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:7980 +#: cp/decl.c:8049 #, gcc-internal-format msgid "non-object member %qs cannot be declared %" msgstr "" -#: cp/decl.c:7986 +#: cp/decl.c:8055 #, fuzzy, gcc-internal-format msgid "function %qs cannot be declared %" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:7991 +#: cp/decl.c:8060 #, fuzzy, gcc-internal-format msgid "static %qs cannot be declared %" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:7996 +#: cp/decl.c:8065 #, fuzzy, gcc-internal-format msgid "const %qs cannot be declared %" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:8028 +#: cp/decl.c:8097 #, gcc-internal-format msgid "%Jtypedef name may not be a nested-name-specifier" msgstr "" -#: cp/decl.c:8044 +#: cp/decl.c:8113 #, gcc-internal-format msgid "ISO C++ forbids nested type %qD with same name as enclosing class" msgstr "" -#: cp/decl.c:8134 +#: cp/decl.c:8203 #, fuzzy, gcc-internal-format msgid "qualified function types cannot be used to declare %s functions" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:8160 +#: cp/decl.c:8229 #, gcc-internal-format msgid "type qualifiers specified for friend class declaration" msgstr "" -#: cp/decl.c:8165 +#: cp/decl.c:8234 #, fuzzy, gcc-internal-format msgid "% specified for friend class declaration" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/decl.c:8173 +#: cp/decl.c:8242 #, fuzzy, gcc-internal-format msgid "template parameters cannot be friends" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl.c:8175 +#: cp/decl.c:8244 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %" msgstr "" -#: cp/decl.c:8179 +#: cp/decl.c:8248 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %" msgstr "" -#: cp/decl.c:8192 +#: cp/decl.c:8261 #, gcc-internal-format msgid "trying to make class %qT a friend of global scope" msgstr "" -#: cp/decl.c:8203 +#: cp/decl.c:8272 #, gcc-internal-format msgid "invalid qualifiers on non-member function type" msgstr "" -#: cp/decl.c:8218 +#: cp/decl.c:8287 #, gcc-internal-format msgid "abstract declarator %qT used as declaration" msgstr "" -#: cp/decl.c:8247 +#: cp/decl.c:8316 #, fuzzy, gcc-internal-format msgid "cannot use %<::%> in parameter declaration" msgstr "Не магу знайсці дэкларацыю пратакола для \"%s\"" #. Something like struct S { int N::j; }; -#: cp/decl.c:8293 +#: cp/decl.c:8362 #, fuzzy, gcc-internal-format msgid "invalid use of %<::%>" msgstr "нерэчаіснае выкарыстаньне `::'" -#: cp/decl.c:8308 +#: cp/decl.c:8377 #, gcc-internal-format msgid "can't make %qD into a method -- not in a class" msgstr "" -#: cp/decl.c:8317 +#: cp/decl.c:8386 #, fuzzy, gcc-internal-format msgid "function %qD declared virtual inside a union" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/decl.c:8326 +#: cp/decl.c:8395 #, gcc-internal-format msgid "%qD cannot be declared virtual, since it is always static" msgstr "" -#: cp/decl.c:8342 +#: cp/decl.c:8411 #, gcc-internal-format msgid "expected qualified name in friend declaration for destructor %qD" msgstr "" -#: cp/decl.c:8352 +#: cp/decl.c:8421 #, fuzzy, gcc-internal-format msgid "declaration of %qD as member of %qT" msgstr "абвяшчэньне шаблёну `%#D'" -#: cp/decl.c:8428 +#: cp/decl.c:8497 #, fuzzy, gcc-internal-format msgid "field %qD has incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: cp/decl.c:8430 +#: cp/decl.c:8499 #, fuzzy, gcc-internal-format msgid "name %qT has incomplete type" msgstr "\"%s\" мае незавершаны тып" -#: cp/decl.c:8439 +#: cp/decl.c:8508 #, fuzzy, gcc-internal-format msgid " in instantiation of template %qT" msgstr "абвяшчэньне шаблёну `%#D'" -#: cp/decl.c:8448 +#: cp/decl.c:8517 #, fuzzy, gcc-internal-format msgid "%qE is neither function nor member function; cannot be declared friend" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" @@ -26418,93 +26428,93 @@ #. 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:8500 +#: cp/decl.c:8569 #, fuzzy, gcc-internal-format msgid "ISO C++ forbids initialization of member %qD" msgstr "ініцыялізацыя" -#: cp/decl.c:8502 +#: cp/decl.c:8571 #, gcc-internal-format msgid "making %qD static" msgstr "" -#: cp/decl.c:8572 +#: cp/decl.c:8641 #, gcc-internal-format msgid "storage class % invalid for function %qs" msgstr "" -#: cp/decl.c:8574 +#: cp/decl.c:8643 #, gcc-internal-format msgid "storage class % invalid for function %qs" msgstr "" -#: cp/decl.c:8576 +#: cp/decl.c:8645 #, gcc-internal-format msgid "storage class %<__thread%> invalid for function %qs" msgstr "" -#: cp/decl.c:8587 +#: cp/decl.c:8656 #, gcc-internal-format msgid "% specified invalid for function %qs declared out of global scope" msgstr "" -#: cp/decl.c:8590 +#: cp/decl.c:8659 #, gcc-internal-format msgid "% specifier invalid for function %qs declared out of global scope" msgstr "" -#: cp/decl.c:8598 +#: cp/decl.c:8667 #, gcc-internal-format msgid "virtual non-class function %qs" msgstr "" -#: cp/decl.c:8629 +#: cp/decl.c:8698 #, gcc-internal-format msgid "cannot declare member function %qD to have static linkage" msgstr "" #. FIXME need arm citation -#: cp/decl.c:8636 +#: cp/decl.c:8705 #, gcc-internal-format msgid "cannot declare static function inside another function" msgstr "" -#: cp/decl.c:8666 +#: cp/decl.c:8735 #, gcc-internal-format msgid "% may not be used when defining (as opposed to declaring) a static data member" msgstr "" -#: cp/decl.c:8673 +#: cp/decl.c:8742 #, gcc-internal-format msgid "static member %qD declared %" msgstr "" -#: cp/decl.c:8678 +#: cp/decl.c:8747 #, gcc-internal-format msgid "cannot explicitly declare member %q#D to have extern linkage" msgstr "" -#: cp/decl.c:8816 +#: cp/decl.c:8885 #, fuzzy, gcc-internal-format msgid "default argument for %q#D has type %qT" msgstr "звычайны аргумэнт для `%#D' мае тып `%T'" -#: cp/decl.c:8819 +#: cp/decl.c:8888 #, fuzzy, gcc-internal-format msgid "default argument for parameter of type %qT has type %qT" msgstr "звычайны аргумэнт для `%#D' мае тып `%T'" -#: cp/decl.c:8836 +#: cp/decl.c:8905 #, fuzzy, gcc-internal-format msgid "default argument %qE uses local variable %qD" msgstr "нехапае аргументаў у функцыі \"%s\"" -#: cp/decl.c:8905 +#: cp/decl.c:8974 #, fuzzy, gcc-internal-format msgid "parameter %qD invalidly declared method type" msgstr "тып параметра \"%s\" не аб'яўлены" -#: cp/decl.c:8929 +#: cp/decl.c:8998 #, gcc-internal-format msgid "parameter %qD includes %s to array of unknown bound %qT" msgstr "" @@ -26524,138 +26534,138 @@ #. 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:9097 +#: cp/decl.c:9166 #, gcc-internal-format msgid "invalid constructor; you probably meant %<%T (const %T&)%>" msgstr "" -#: cp/decl.c:9219 +#: cp/decl.c:9288 #, fuzzy, gcc-internal-format msgid "%qD may not be declared within a namespace" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/decl.c:9224 +#: cp/decl.c:9293 #, fuzzy, gcc-internal-format msgid "%qD may not be declared as static" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/decl.c:9247 +#: cp/decl.c:9316 #, gcc-internal-format msgid "%qD must be a nonstatic member function" msgstr "" -#: cp/decl.c:9256 +#: cp/decl.c:9325 #, gcc-internal-format msgid "%qD must be either a non-static member function or a non-member function" msgstr "" -#: cp/decl.c:9277 +#: cp/decl.c:9346 #, gcc-internal-format msgid "%qD must have an argument of class or enumerated type" msgstr "" -#: cp/decl.c:9318 +#: cp/decl.c:9387 #, gcc-internal-format msgid "conversion to %s%s will never use a type conversion operator" msgstr "" #. 13.4.0.3 -#: cp/decl.c:9326 +#: cp/decl.c:9395 #, gcc-internal-format msgid "ISO C++ prohibits overloading operator ?:" msgstr "" -#: cp/decl.c:9331 +#: cp/decl.c:9400 #, gcc-internal-format msgid "%qD must not have variable number of arguments" msgstr "" -#: cp/decl.c:9382 +#: cp/decl.c:9451 #, gcc-internal-format msgid "postfix %qD must take % as its argument" msgstr "" -#: cp/decl.c:9385 +#: cp/decl.c:9454 #, gcc-internal-format msgid "postfix %qD must take % as its second argument" msgstr "" -#: cp/decl.c:9393 +#: cp/decl.c:9462 #, gcc-internal-format msgid "%qD must take either zero or one argument" msgstr "" -#: cp/decl.c:9395 +#: cp/decl.c:9464 #, gcc-internal-format msgid "%qD must take either one or two arguments" msgstr "" -#: cp/decl.c:9417 +#: cp/decl.c:9486 #, gcc-internal-format msgid "prefix %qD should return %qT" msgstr "" -#: cp/decl.c:9423 +#: cp/decl.c:9492 #, gcc-internal-format msgid "postfix %qD should return %qT" msgstr "" -#: cp/decl.c:9432 +#: cp/decl.c:9501 #, gcc-internal-format msgid "%qD must take %" msgstr "" -#: cp/decl.c:9434 cp/decl.c:9443 +#: cp/decl.c:9503 cp/decl.c:9512 #, gcc-internal-format msgid "%qD must take exactly one argument" msgstr "" -#: cp/decl.c:9445 +#: cp/decl.c:9514 #, gcc-internal-format msgid "%qD must take exactly two arguments" msgstr "" -#: cp/decl.c:9454 +#: cp/decl.c:9523 #, gcc-internal-format msgid "user-defined %qD always evaluates both arguments" msgstr "" -#: cp/decl.c:9468 +#: cp/decl.c:9537 #, gcc-internal-format msgid "%qD should return by value" msgstr "" -#: cp/decl.c:9480 cp/decl.c:9484 +#: cp/decl.c:9549 cp/decl.c:9553 #, fuzzy, gcc-internal-format msgid "%qD cannot have default arguments" msgstr "нехапае аргументаў у функцыі \"%s\"" -#: cp/decl.c:9542 +#: cp/decl.c:9611 #, fuzzy, gcc-internal-format msgid "using template type parameter %qT after %qs" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/decl.c:9557 +#: cp/decl.c:9626 #, gcc-internal-format msgid "using typedef-name %qD after %qs" msgstr "" -#: cp/decl.c:9558 +#: cp/decl.c:9627 #, fuzzy, gcc-internal-format msgid "%q+D has a previous declaration here" msgstr "гэта папярэдняе абвяшчэньне" -#: cp/decl.c:9566 +#: cp/decl.c:9635 #, gcc-internal-format msgid "%qT referred to as %qs" msgstr "" -#: cp/decl.c:9567 cp/decl.c:9574 +#: cp/decl.c:9636 cp/decl.c:9643 #, fuzzy, gcc-internal-format msgid "%q+T has a previous declaration here" msgstr "гэта папярэдняе абвяшчэньне" -#: cp/decl.c:9573 +#: cp/decl.c:9642 #, gcc-internal-format msgid "%qT referred to as enum" msgstr "" @@ -26667,67 +26677,67 @@ #. void f(class C); // No template header here #. #. then the required template argument is missing. -#: cp/decl.c:9588 +#: cp/decl.c:9657 #, fuzzy, gcc-internal-format msgid "template argument required for %<%s %T%>" msgstr "параметр \"%s\" ініцыялізаваны" -#: cp/decl.c:9636 cp/name-lookup.c:2658 +#: cp/decl.c:9705 cp/name-lookup.c:2658 #, gcc-internal-format msgid "%qD has the same name as the class in which it is declared" msgstr "" -#: cp/decl.c:9774 +#: cp/decl.c:9843 #, fuzzy, gcc-internal-format msgid "use of enum %q#D without previous declaration" msgstr "секцыя \"%s\" канфліктуе з папярэдняй дэкларацыяй" -#: cp/decl.c:9795 +#: cp/decl.c:9864 #, fuzzy, gcc-internal-format msgid "redeclaration of %qT as a non-template" msgstr "абвяшчэньне шаблёну `%#D'" -#: cp/decl.c:9796 cp/pt.c:3373 +#: cp/decl.c:9865 cp/pt.c:3403 #, fuzzy, gcc-internal-format msgid "previous declaration %q+D" msgstr "папярэдняе абвяшчэньне `%D'" -#: cp/decl.c:9907 +#: cp/decl.c:9976 #, gcc-internal-format msgid "derived union %qT invalid" msgstr "" -#: cp/decl.c:9916 +#: cp/decl.c:9985 #, gcc-internal-format msgid "Java class %qT cannot have multiple bases" msgstr "" -#: cp/decl.c:9927 +#: cp/decl.c:9996 #, gcc-internal-format msgid "Java class %qT cannot have virtual bases" msgstr "" -#: cp/decl.c:9948 +#: cp/decl.c:10017 #, gcc-internal-format msgid "base type %qT fails to be a struct or class type" msgstr "" -#: cp/decl.c:9981 +#: cp/decl.c:10050 #, gcc-internal-format msgid "recursive type %qT undefined" msgstr "" -#: cp/decl.c:9983 +#: cp/decl.c:10052 #, fuzzy, gcc-internal-format msgid "duplicate base type %qT invalid" msgstr "паўтарэнне \"restrict\"" -#: cp/decl.c:10055 +#: cp/decl.c:10124 #, fuzzy, gcc-internal-format msgid "multiple definition of %q#T" msgstr "папярэдняе вызначэньне `%#T'" -#: cp/decl.c:10056 +#: cp/decl.c:10125 #, fuzzy, gcc-internal-format msgid "%Jprevious definition here" msgstr "папярэдняе вызначэньне" @@ -26736,177 +26746,177 @@ #. #. IF no integral type can represent all the enumerator values, the #. enumeration is ill-formed. -#: cp/decl.c:10195 +#: cp/decl.c:10264 #, gcc-internal-format msgid "no integral type can represent all of the enumerator values for %qT" msgstr "" -#: cp/decl.c:10306 +#: cp/decl.c:10375 #, gcc-internal-format msgid "enumerator value for %qD not integer constant" msgstr "" -#: cp/decl.c:10334 +#: cp/decl.c:10403 #, gcc-internal-format msgid "overflow in enumeration values at %qD" msgstr "" -#: cp/decl.c:10409 +#: cp/decl.c:10478 #, fuzzy, gcc-internal-format msgid "return type %q#T is incomplete" msgstr "вяртаемы тып \"%s\" не \"int\"" -#: cp/decl.c:10519 cp/typeck.c:6579 +#: cp/decl.c:10588 cp/typeck.c:6576 #, gcc-internal-format msgid "% should return a reference to %<*this%>" msgstr "" -#: cp/decl.c:10877 +#: cp/decl.c:10946 #, fuzzy, gcc-internal-format msgid "parameter %qD declared void" msgstr "тып параметра \"%s\" не аб'яўлены" -#: cp/decl.c:11358 +#: cp/decl.c:11427 #, fuzzy, gcc-internal-format msgid "invalid member function declaration" msgstr "паўторнае абвяшчэнне меткі \"%s\"" -#: cp/decl.c:11373 +#: cp/decl.c:11442 #, fuzzy, gcc-internal-format msgid "%qD is already defined in class %qT" msgstr "не знойдзен клас \"%s\"" -#: cp/decl.c:11582 +#: cp/decl.c:11651 #, gcc-internal-format msgid "static member function %q#D declared with type qualifiers" msgstr "" -#: cp/decl2.c:268 +#: cp/decl2.c:267 #, gcc-internal-format msgid "name missing for member function" msgstr "" -#: cp/decl2.c:339 cp/decl2.c:353 +#: cp/decl2.c:338 cp/decl2.c:352 #, gcc-internal-format msgid "ambiguous conversion for array subscript" msgstr "" -#: cp/decl2.c:347 +#: cp/decl2.c:346 #, gcc-internal-format msgid "invalid types %<%T[%T]%> for array subscript" msgstr "" -#: cp/decl2.c:390 +#: cp/decl2.c:389 #, gcc-internal-format msgid "deleting array %q#D" msgstr "" -#: cp/decl2.c:396 +#: cp/decl2.c:395 #, gcc-internal-format msgid "type %q#T argument given to %, expected pointer" msgstr "" -#: cp/decl2.c:408 +#: cp/decl2.c:407 #, gcc-internal-format msgid "cannot delete a function. Only pointer-to-objects are valid arguments to %" msgstr "" -#: cp/decl2.c:416 +#: cp/decl2.c:415 #, fuzzy, gcc-internal-format msgid "deleting %qT is undefined" msgstr "метка \"%s\" ужываецца, але не вызначана" -#: cp/decl2.c:459 cp/pt.c:3116 +#: cp/decl2.c:458 cp/pt.c:3146 #, fuzzy, gcc-internal-format msgid "template declaration of %q#D" msgstr "пустое абвяшчэнне" -#: cp/decl2.c:511 +#: cp/decl2.c:510 #, gcc-internal-format msgid "Java method %qD has non-Java return type %qT" msgstr "" -#: cp/decl2.c:528 +#: cp/decl2.c:527 #, gcc-internal-format msgid "Java method %qD has non-Java parameter type %qT" msgstr "" -#: cp/decl2.c:639 +#: cp/decl2.c:638 #, gcc-internal-format msgid "prototype for %q#D does not match any in class %qT" msgstr "" -#: cp/decl2.c:726 +#: cp/decl2.c:725 #, gcc-internal-format msgid "local class %q#T shall not have static data member %q#D" msgstr "" -#: cp/decl2.c:734 +#: cp/decl2.c:733 #, gcc-internal-format msgid "initializer invalid for static member with constructor" msgstr "" -#: cp/decl2.c:737 +#: cp/decl2.c:736 #, gcc-internal-format msgid "(an out of class initialization is required)" msgstr "" -#: cp/decl2.c:797 +#: cp/decl2.c:796 #, gcc-internal-format msgid "member %qD conflicts with virtual function table field name" msgstr "" -#: cp/decl2.c:816 +#: cp/decl2.c:815 #, gcc-internal-format msgid "applying attributes to template parameters is not implemented" msgstr "" -#: cp/decl2.c:826 +#: cp/decl2.c:825 #, fuzzy, gcc-internal-format msgid "%qD is already defined in %qT" msgstr "не знойдзен клас \"%s\"" -#: cp/decl2.c:847 +#: cp/decl2.c:846 #, fuzzy, gcc-internal-format msgid "initializer specified for static member function %qD" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/decl2.c:870 +#: cp/decl2.c:869 #, gcc-internal-format msgid "field initializer is not constant" msgstr "" -#: cp/decl2.c:897 +#: cp/decl2.c:896 #, gcc-internal-format msgid "% specifiers are not permitted on non-static data members" msgstr "" -#: cp/decl2.c:948 +#: cp/decl2.c:947 #, fuzzy, gcc-internal-format msgid "bit-field %qD with non-integral type" msgstr "бітавае поле \"%s\" мае нерэчаісны тып" -#: cp/decl2.c:954 +#: cp/decl2.c:953 #, fuzzy, gcc-internal-format msgid "cannot declare %qD to be a bit-field type" msgstr "не магу атрымаць адрас бітавага поля \"%s\"" -#: cp/decl2.c:964 +#: cp/decl2.c:963 #, fuzzy, gcc-internal-format msgid "cannot declare bit-field %qD with function type" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/decl2.c:971 +#: cp/decl2.c:970 #, fuzzy, gcc-internal-format msgid "%qD is already defined in the class %qT" msgstr "не знойдзен клас \"%s\"" -#: cp/decl2.c:978 +#: cp/decl2.c:977 #, fuzzy, gcc-internal-format msgid "static member %qD cannot be a bit-field" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/decl2.c:1024 +#: cp/decl2.c:1023 #, gcc-internal-format msgid "anonymous struct not inside named type" msgstr "" @@ -26941,99 +26951,99 @@ msgid "% takes type %qT as first parameter" msgstr "" -#: cp/decl2.c:1862 +#: cp/decl2.c:1864 #, gcc-internal-format msgid "%qT has a field %qD whose type uses the anonymous namespace" msgstr "" -#: cp/decl2.c:1868 +#: cp/decl2.c:1871 #, gcc-internal-format msgid "%qT declared with greater visibility than the type of its field %qD" msgstr "" -#: cp/decl2.c:1879 +#: cp/decl2.c:1884 #, gcc-internal-format msgid "%qT has a base %qT whose type uses the anonymous namespace" msgstr "" -#: cp/decl2.c:1884 +#: cp/decl2.c:1890 #, gcc-internal-format msgid "%qT declared with greater visibility than its base %qT" msgstr "" -#: cp/decl2.c:3308 +#: cp/decl2.c:3316 #, fuzzy, gcc-internal-format msgid "inline function %q+D used but never defined" msgstr "адмеціна `%D' выкарыстоўвываецца, але ня вызначана" -#: cp/decl2.c:3462 +#: cp/decl2.c:3470 #, fuzzy, gcc-internal-format msgid "default argument missing for parameter %P of %q+#D" msgstr "аргумент для \"%s\" прапушчан" #. Can't throw a reference. -#: cp/except.c:267 +#: cp/except.c:269 #, gcc-internal-format msgid "type %qT is disallowed in Java % or %" msgstr "" -#: cp/except.c:278 +#: cp/except.c:280 #, gcc-internal-format msgid "call to Java % or % with % undefined" msgstr "" #. Thrown object must be a Throwable. -#: cp/except.c:285 +#: cp/except.c:287 #, gcc-internal-format msgid "type %qT is not derived from %" msgstr "" -#: cp/except.c:348 +#: cp/except.c:350 #, gcc-internal-format msgid "mixing C++ and Java catches in a single translation unit" msgstr "" -#: cp/except.c:614 +#: cp/except.c:619 #, gcc-internal-format msgid "throwing NULL, which has integral, not pointer type" msgstr "" -#: cp/except.c:637 cp/init.c:1723 +#: cp/except.c:642 cp/init.c:1723 #, gcc-internal-format msgid "%qD should never be overloaded" msgstr "" -#: cp/except.c:720 +#: cp/except.c:725 #, gcc-internal-format msgid " in thrown expression" msgstr "" -#: cp/except.c:876 +#: cp/except.c:881 #, gcc-internal-format msgid "expression %qE of abstract class type %qT cannot be used in throw-expression" msgstr "" -#: cp/except.c:961 +#: cp/except.c:966 #, gcc-internal-format msgid "%Hexception of type %qT will be caught" msgstr "" -#: cp/except.c:963 +#: cp/except.c:968 #, gcc-internal-format msgid "%H by earlier handler for %qT" msgstr "" -#: cp/except.c:993 +#: cp/except.c:998 #, gcc-internal-format msgid "%H%<...%> handler must be the last handler for its try block" msgstr "" -#: cp/friend.c:157 +#: cp/friend.c:156 #, fuzzy, gcc-internal-format msgid "%qD is already a friend of class %qT" msgstr "не знойдзен клас \"%s\"" -#: cp/friend.c:233 +#: cp/friend.c:232 #, fuzzy, gcc-internal-format msgid "invalid type %qT declared %" msgstr "тып параметра \"%s\" не аб'яўлены" @@ -27045,64 +27055,64 @@ #. [temp.friend] #. Friend declarations shall not declare partial #. specializations. -#: cp/friend.c:249 cp/friend.c:279 +#: cp/friend.c:248 cp/friend.c:278 #, gcc-internal-format msgid "partial specialization %qT declared %" msgstr "" -#: cp/friend.c:257 +#: cp/friend.c:256 #, gcc-internal-format msgid "class %qT is implicitly friends with itself" msgstr "" -#: cp/friend.c:315 +#: cp/friend.c:314 #, fuzzy, gcc-internal-format msgid "%qT is not a member of %qT" msgstr "\"%s\" мае незавершаны тып" -#: cp/friend.c:320 +#: cp/friend.c:319 #, fuzzy, gcc-internal-format msgid "%qT is not a member class template of %qT" msgstr "\"%s\" мае незавершаны тып" -#: cp/friend.c:328 +#: cp/friend.c:327 #, gcc-internal-format msgid "%qT is not a nested class of %qT" msgstr "" #. template friend class T; -#: cp/friend.c:341 +#: cp/friend.c:340 #, fuzzy, gcc-internal-format msgid "template parameter type %qT declared %" msgstr "тып параметра \"%s\" не аб'яўлены" #. template friend class A; where A is not a template -#: cp/friend.c:347 +#: cp/friend.c:346 #, fuzzy, gcc-internal-format msgid "%q#T is not a template" msgstr "\"%s\" мае незавершаны тып" -#: cp/friend.c:369 +#: cp/friend.c:368 #, fuzzy, gcc-internal-format msgid "%qD is already a friend of %qT" msgstr "не знойдзен клас \"%s\"" -#: cp/friend.c:378 +#: cp/friend.c:377 #, fuzzy, gcc-internal-format msgid "%qT is already a friend of %qT" msgstr "не знойдзен клас \"%s\"" -#: cp/friend.c:495 +#: cp/friend.c:494 #, gcc-internal-format msgid "member %qD declared as friend before type %qT defined" msgstr "" -#: cp/friend.c:551 +#: cp/friend.c:550 #, gcc-internal-format msgid "friend declaration %q#D declares a non-template function" msgstr "" -#: cp/friend.c:555 +#: cp/friend.c:554 #, gcc-internal-format 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 "" @@ -27272,62 +27282,62 @@ msgid "ISO C++ forbids initialization in array new" msgstr "" -#: cp/init.c:2105 +#: cp/init.c:2104 #, gcc-internal-format msgid "size in array new must have integral type" msgstr "" -#: cp/init.c:2121 +#: cp/init.c:2120 #, gcc-internal-format msgid "allocating zero-element array" msgstr "" -#: cp/init.c:2129 +#: cp/init.c:2128 #, gcc-internal-format msgid "new cannot be applied to a reference type" msgstr "" -#: cp/init.c:2135 +#: cp/init.c:2134 #, gcc-internal-format msgid "new cannot be applied to a function type" msgstr "" -#: cp/init.c:2168 +#: cp/init.c:2167 #, gcc-internal-format msgid "call to Java constructor, while % undefined" msgstr "" -#: cp/init.c:2186 +#: cp/init.c:2185 #, fuzzy, gcc-internal-format msgid "can't find % in %qT" msgstr "Не магу знайсці клас \"%s\"" -#: cp/init.c:2545 +#: cp/init.c:2544 #, gcc-internal-format msgid "initializer ends prematurely" msgstr "" -#: cp/init.c:2600 +#: cp/init.c:2599 #, gcc-internal-format msgid "cannot initialize multi-dimensional array with initializer" msgstr "" -#: cp/init.c:2737 +#: cp/init.c:2736 #, gcc-internal-format msgid "possible problem detected in invocation of delete operator:" msgstr "" -#: cp/init.c:2740 +#: cp/init.c:2739 #, gcc-internal-format 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:2761 +#: cp/init.c:2760 #, gcc-internal-format msgid "unknown array size in delete" msgstr "" -#: cp/init.c:3001 +#: cp/init.c:3006 #, gcc-internal-format msgid "type to vector delete is neither pointer or array type" msgstr "" @@ -27387,22 +27397,22 @@ msgid "(if you use %<-fpermissive%>, G++ will accept your code, but allowing the use of an undeclared name is deprecated)" msgstr "" -#: cp/mangle.c:2165 +#: cp/mangle.c:2164 #, gcc-internal-format msgid "call_expr cannot be mangled due to a defect in the C++ ABI" msgstr "" -#: cp/mangle.c:2173 +#: cp/mangle.c:2172 #, gcc-internal-format msgid "zero-operand casts cannot be mangled due to a defect in the C++ ABI" msgstr "" -#: cp/mangle.c:2223 +#: cp/mangle.c:2222 #, gcc-internal-format msgid "omitted middle operand to % operand cannot be mangled" msgstr "" -#: cp/mangle.c:2533 +#: cp/mangle.c:2532 #, gcc-internal-format msgid "the mangled name of %qD will change in a future version of GCC" msgstr "" @@ -27673,348 +27683,348 @@ msgid "%J other type here" msgstr "" -#: cp/name-lookup.c:4257 +#: cp/name-lookup.c:4298 #, fuzzy, gcc-internal-format msgid "%q+D is not a function," msgstr "`%D' - гэта ня функцыя," -#: cp/name-lookup.c:4258 +#: cp/name-lookup.c:4299 #, gcc-internal-format msgid " conflict with %q+D" msgstr "" -#: cp/name-lookup.c:4679 +#: cp/name-lookup.c:4720 #, gcc-internal-format msgid "argument dependent lookup finds %q+D" msgstr "" -#: cp/name-lookup.c:5111 +#: cp/name-lookup.c:5152 #, gcc-internal-format msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:5120 +#: cp/name-lookup.c:5161 #, gcc-internal-format msgid "XXX leaving pop_everything ()\n" msgstr "" -#: cp/parser.c:1965 +#: cp/parser.c:1964 #, fuzzy, gcc-internal-format msgid "%<#pragma%> is not allowed here" msgstr "Клас \"%s\" ужо існуе" -#: cp/parser.c:1995 +#: cp/parser.c:1994 #, gcc-internal-format msgid "%<%D::%D%> has not been declared" msgstr "" -#: cp/parser.c:1998 cp/semantics.c:2410 +#: cp/parser.c:1997 cp/semantics.c:2414 #, gcc-internal-format msgid "%<::%D%> has not been declared" msgstr "" -#: cp/parser.c:2001 +#: cp/parser.c:2000 #, gcc-internal-format msgid "request for member %qD in non-class type %qT" msgstr "" -#: cp/parser.c:2004 +#: cp/parser.c:2003 #, fuzzy, gcc-internal-format msgid "%<%T::%D%> has not been declared" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cp/parser.c:2007 +#: cp/parser.c:2006 #, fuzzy, gcc-internal-format msgid "%qD has not been declared" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/parser.c:2010 +#: cp/parser.c:2009 #, gcc-internal-format msgid "%<%D::%D%> %s" msgstr "" -#: cp/parser.c:2012 +#: cp/parser.c:2011 #, gcc-internal-format msgid "%<::%D%> %s" msgstr "" -#: cp/parser.c:2014 +#: cp/parser.c:2013 #, gcc-internal-format msgid "%qD %s" msgstr "" -#: cp/parser.c:2050 +#: cp/parser.c:2049 #, fuzzy, gcc-internal-format msgid "ISO C++ does not support %" msgstr "ISO C++ не падтрымлівае \"long long\"" -#: cp/parser.c:2070 +#: cp/parser.c:2069 #, fuzzy, gcc-internal-format msgid "duplicate %qs" msgstr "паўтарэньне `%s'" -#: cp/parser.c:2113 +#: cp/parser.c:2112 #, gcc-internal-format msgid "new types may not be defined in a return type" msgstr "" -#: cp/parser.c:2114 +#: cp/parser.c:2113 #, fuzzy, gcc-internal-format msgid "(perhaps a semicolon is missing after the definition of %qT)" msgstr "Не магу знайсці дэкларацыю інтэрфейса для \"%s\"" -#: cp/parser.c:2133 cp/parser.c:3885 cp/pt.c:4557 +#: cp/parser.c:2132 cp/parser.c:3896 cp/pt.c:4587 #, fuzzy, gcc-internal-format msgid "%qT is not a template" msgstr "\"%s\" мае незавершаны тып" -#: cp/parser.c:2135 +#: cp/parser.c:2134 #, fuzzy, gcc-internal-format msgid "%qE is not a template" msgstr "\"%s\" мае незавершаны тып" -#: cp/parser.c:2137 +#: cp/parser.c:2136 #, fuzzy, gcc-internal-format msgid "invalid template-id" msgstr "Нерэчаісны выбар %s" -#: cp/parser.c:2166 +#: cp/parser.c:2165 #, fuzzy, gcc-internal-format msgid "%s cannot appear in a constant-expression" msgstr "памер масіва \"%s\" адмоўны" -#: cp/parser.c:2191 +#: cp/parser.c:2190 #, fuzzy, gcc-internal-format msgid "invalid use of template-name %qE without an argument list" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/parser.c:2193 +#: cp/parser.c:2192 #, fuzzy, gcc-internal-format msgid "invalid use of destructor %qD as a type" msgstr "нявернае выкарыстанне \"restict\"" #. Something like 'unsigned A a;' -#: cp/parser.c:2196 +#: cp/parser.c:2195 #, gcc-internal-format msgid "invalid combination of multiple type-specifiers" msgstr "" #. Issue an error message. -#: cp/parser.c:2200 +#: cp/parser.c:2199 #, fuzzy, gcc-internal-format msgid "%qE does not name a type" msgstr "\"%s\" мае незавершаны тып" -#: cp/parser.c:2232 +#: cp/parser.c:2231 #, gcc-internal-format msgid "(perhaps % was intended)" msgstr "" -#: cp/parser.c:2247 +#: cp/parser.c:2246 #, gcc-internal-format msgid "%qE in namespace %qE does not name a type" msgstr "" -#: cp/parser.c:2250 +#: cp/parser.c:2249 #, gcc-internal-format msgid "%qE in class %qT does not name a type" msgstr "" -#: cp/parser.c:3010 +#: cp/parser.c:3009 #, gcc-internal-format msgid "ISO C++ forbids braced-groups within expressions" msgstr "" -#: cp/parser.c:3019 +#: cp/parser.c:3018 #, gcc-internal-format msgid "statement-expressions are allowed only inside functions" msgstr "" -#: cp/parser.c:3070 +#: cp/parser.c:3069 #, fuzzy, gcc-internal-format msgid "% may not be used in this context" msgstr "\"%s\" не абвешчан (першае выкарыстанне ў гэтай функцыі)" -#: cp/parser.c:3222 +#: cp/parser.c:3233 #, gcc-internal-format msgid "local variable %qD may not appear in this context" msgstr "" -#: cp/parser.c:3519 +#: cp/parser.c:3530 #, gcc-internal-format msgid "scope %qT before %<~%> is not a class-name" msgstr "" -#: cp/parser.c:3620 +#: cp/parser.c:3631 #, gcc-internal-format msgid "declaration of %<~%T%> as member of %qT" msgstr "" -#: cp/parser.c:3634 +#: cp/parser.c:3645 #, gcc-internal-format msgid "typedef-name %qD used as destructor declarator" msgstr "" -#: cp/parser.c:3844 cp/parser.c:13003 cp/parser.c:15155 +#: cp/parser.c:3855 cp/parser.c:13014 cp/parser.c:15166 #, fuzzy, gcc-internal-format msgid "reference to %qD is ambiguous" msgstr "памер \"%s\" - %d байт" -#: cp/parser.c:3886 cp/typeck.c:2050 cp/typeck.c:2070 +#: cp/parser.c:3897 cp/typeck.c:2047 cp/typeck.c:2067 #, fuzzy, gcc-internal-format msgid "%qD is not a template" msgstr "\"%s\" мае незавершаны тып" -#: cp/parser.c:4275 +#: cp/parser.c:4286 #, fuzzy, gcc-internal-format msgid "ISO C++ forbids compound-literals" msgstr "ISO C не дазваляе дэкларацыі метак (label)" -#: cp/parser.c:4623 +#: cp/parser.c:4634 #, fuzzy, gcc-internal-format msgid "%qE does not have class type" msgstr "\"%s\" мае незавершаны тып" -#: cp/parser.c:4699 cp/typeck.c:1979 +#: cp/parser.c:4710 cp/typeck.c:1976 #, fuzzy, gcc-internal-format msgid "invalid use of %qD" msgstr "нерэчаіснае выкарыстаньне `%D'" -#: cp/parser.c:5223 +#: cp/parser.c:5234 #, gcc-internal-format msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:5224 +#: cp/parser.c:5235 #, gcc-internal-format msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:5426 +#: cp/parser.c:5437 #, gcc-internal-format msgid "expression in new-declarator must have integral or enumeration type" msgstr "" -#: cp/parser.c:5615 +#: cp/parser.c:5626 #, gcc-internal-format msgid "use of old-style cast" msgstr "" -#: cp/parser.c:6404 +#: cp/parser.c:6415 #, gcc-internal-format msgid "case label %qE not within a switch statement" msgstr "" -#: cp/parser.c:6970 +#: cp/parser.c:6981 #, gcc-internal-format msgid "ISO C++ forbids computed gotos" msgstr "" -#: cp/parser.c:7102 +#: cp/parser.c:7113 #, gcc-internal-format msgid "extra %<;%>" msgstr "" -#: cp/parser.c:7441 +#: cp/parser.c:7452 #, gcc-internal-format msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:7573 +#: cp/parser.c:7584 #, gcc-internal-format msgid "% used outside of class" msgstr "" -#: cp/parser.c:7727 +#: cp/parser.c:7738 #, fuzzy, gcc-internal-format msgid "class definition may not be declared a friend" msgstr "віртуальныя функцыі не могуць быць сяброўскімі" -#: cp/parser.c:7791 cp/parser.c:14109 +#: cp/parser.c:7802 cp/parser.c:14120 #, gcc-internal-format msgid "templates may not be %" msgstr "" -#: cp/parser.c:8044 +#: cp/parser.c:8055 #, gcc-internal-format msgid "only constructors take base initializers" msgstr "" -#: cp/parser.c:8096 +#: cp/parser.c:8107 #, gcc-internal-format msgid "anachronistic old-style base class initializer" msgstr "" -#: cp/parser.c:8140 +#: cp/parser.c:8151 #, gcc-internal-format msgid "keyword % not allowed in this context (a qualified member initializer is implicitly a type)" msgstr "" #. Warn that we do not support `export'. -#: cp/parser.c:8485 +#: cp/parser.c:8496 #, gcc-internal-format msgid "keyword % 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:8878 +#: cp/parser.c:8889 #, gcc-internal-format msgid "%<<::%> cannot begin a template-argument list" msgstr "" -#: cp/parser.c:8879 +#: cp/parser.c:8890 #, gcc-internal-format msgid "%<<:%> is an alternate spelling for %<[%>. Insert whitespace between %<<%> and %<::%>" msgstr "" -#: cp/parser.c:8886 +#: cp/parser.c:8897 #, gcc-internal-format msgid "(if you use -fpermissive G++ will accept your code)" msgstr "" -#: cp/parser.c:8959 +#: cp/parser.c:8970 #, gcc-internal-format msgid "parse error in template argument list" msgstr "" #. Explain what went wrong. -#: cp/parser.c:9072 +#: cp/parser.c:9083 #, gcc-internal-format msgid "non-template %qD used as template" msgstr "" -#: cp/parser.c:9073 +#: cp/parser.c:9084 #, gcc-internal-format msgid "use %<%T::template %D%> to indicate that it is a template" msgstr "" -#: cp/parser.c:9583 +#: cp/parser.c:9594 #, gcc-internal-format msgid "template specialization with C linkage" msgstr "" -#: cp/parser.c:10158 +#: cp/parser.c:10169 #, gcc-internal-format msgid "using % outside of template" msgstr "" -#: cp/parser.c:10378 +#: cp/parser.c:10389 #, gcc-internal-format msgid "attributes ignored on uninstantiated type" msgstr "" -#: cp/parser.c:10382 +#: cp/parser.c:10393 #, gcc-internal-format msgid "attributes ignored on template instantiation" msgstr "" -#: cp/parser.c:10387 +#: cp/parser.c:10398 #, gcc-internal-format msgid "attributes ignored on elaborated-type-specifier that is not a forward declaration" msgstr "" -#: cp/parser.c:10601 +#: cp/parser.c:10612 #, fuzzy, gcc-internal-format msgid "%qD is not a namespace-name" msgstr "`%D' - гэта ня функцыя," @@ -28022,137 +28032,137 @@ #. [namespace.udecl] #. #. A using declaration shall not name a template-id. -#: cp/parser.c:10821 +#: cp/parser.c:10832 #, fuzzy, gcc-internal-format msgid "a template-id may not appear in a using-declaration" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cp/parser.c:11166 +#: cp/parser.c:11177 #, gcc-internal-format msgid "an asm-specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:11168 +#: cp/parser.c:11179 #, fuzzy, gcc-internal-format msgid "attributes are not allowed on a function-definition" msgstr "\"%s\" - гэта не пачатак дэкларацыі" -#: cp/parser.c:11301 +#: cp/parser.c:11312 #, fuzzy, gcc-internal-format msgid "initializer provided for function" msgstr "не магу ініцыялізаваць сяброўскую функцыю \"%s\"" -#: cp/parser.c:11321 +#: cp/parser.c:11332 #, gcc-internal-format msgid "attributes after parenthesized initializer ignored" msgstr "" -#: cp/parser.c:11701 cp/pt.c:7312 +#: cp/parser.c:11712 cp/pt.c:7351 #, fuzzy, gcc-internal-format msgid "array bound is not an integer constant" msgstr "памер масіва \"%s\" адмоўны" -#: cp/parser.c:11778 +#: cp/parser.c:11789 #, fuzzy, gcc-internal-format msgid "%<%T::%D%> is not a type" msgstr "\"%s\" мае незавершаны тып" -#: cp/parser.c:11803 +#: cp/parser.c:11814 #, fuzzy, gcc-internal-format msgid "invalid use of constructor as a template" msgstr "нявернае выкарыстанне \"restict\"" -#: cp/parser.c:11804 +#: cp/parser.c:11815 #, gcc-internal-format msgid "use %<%T::%D%> instead of %<%T::%D%> to name the constructor in a qualified name" msgstr "" -#: cp/parser.c:11963 +#: cp/parser.c:11974 #, gcc-internal-format msgid "%qD is a namespace" msgstr "" -#: cp/parser.c:12038 +#: cp/parser.c:12049 #, fuzzy, gcc-internal-format msgid "duplicate cv-qualifier" msgstr "паўтарэнне \"volatile\"" -#: cp/parser.c:12586 +#: cp/parser.c:12597 #, fuzzy, gcc-internal-format msgid "file ends in default argument" msgstr "нехапае аргументаў у функцыі \"%s\"" -#: cp/parser.c:12659 +#: cp/parser.c:12670 #, gcc-internal-format msgid "deprecated use of default argument for parameter of non-function" msgstr "" -#: cp/parser.c:12662 +#: cp/parser.c:12673 #, gcc-internal-format msgid "default arguments are only permitted for function parameters" msgstr "" -#: cp/parser.c:12862 +#: cp/parser.c:12873 #, gcc-internal-format msgid "ISO C++ does not allow designated initializers" msgstr "" -#: cp/parser.c:13446 +#: cp/parser.c:13457 #, fuzzy, gcc-internal-format msgid "invalid class name in declaration of %qD" msgstr "Нерэчаіснае абвяшчэнне" -#: cp/parser.c:13457 +#: cp/parser.c:13468 #, gcc-internal-format msgid "declaration of %qD in %qD which does not enclose %qD" msgstr "" -#: cp/parser.c:13470 +#: cp/parser.c:13481 #, gcc-internal-format msgid "extra qualification ignored" msgstr "" -#: cp/parser.c:13481 +#: cp/parser.c:13492 #, fuzzy, gcc-internal-format msgid "an explicit specialization must be preceded by %